Browser Language Detection and Redirection [en]

[fr] Une explication de la méthode que j'ai suivie pour que http://stephanie-booth.com redirige le visiteur soit vers la version anglaise du site, soit la française, en fonction des préférences linguistiques définies dans son navigateur.

Update, 29.12.2007: scroll to the bottom of this post for a more straightforward solution, using Multiviews.

I’ve been working on stephanie-booth.com today. One of my objectives is the add an English version to the previously French-only site.

I’m doing this by using two separate installations of WordPress. The content in both languages should be roughly equivalent, and I’ll write a WordPress plugin which allows to “automate” the process of linking back and forth from equivalent content in different languages.

What I did today is solve a problem I’ve been wanting to attack for some time now: use people’s browser settings to direct them to the “correct” language for the site. Here is what I learnt in the process, and how I did it. It’s certainly not the most elegant way to do things, so let me know if you have a better solution by using the comments below.

First, what I needed to know was that the browser language preferences are sent in the HTTP_ACCEPT_LANGUAGE header (HTTP header). First, I thought of capturing the information through PHP, but I discovered that Apache (logical, if you think of it) could handle it directly.

This tutorial was useful in getting me started, though I think it references an older version of Apache. Out of the horses mouth, Apache content negotiation had the final information I needed.

I’ll first explain the brief attempt I did with Multiviews (because it can come in handy) before going through the setup I currently have.

Multiviews

In this example, you request a file, e.g. test.html which doesn’t physically exist, and Apache uses either test.html.en or test.html.fr depending on your language preferences. You’ll still see test.html in your browser bar, though.

To do this, add the line:

Options +Multiviews

to your .htaccess file. Create the files test.html.en and test.html.fr with sample text (“English” and “French” will do if you’re just trying it out).

Then, request the file test.html in your browser. You should see the test content of the file corresponding to your language settings appear. Change your browser language prefs and reload to see what happens.

This is pretty neat, but it forces you to open a file — and I wanted / to redirect either to /en/ or to /fr/.

It’s explained pretty well in this tutorial I already linked to, and this page has some useful information too.

Type maps

I used a type map and some PHP redirection magic to achieve my aim. A type map is not limited to languages, but this is what we’re going to use it for here. It’s a text file which you can name menu.var for example. In that case, you need to add the following line to your .htaccess so that the file is dealth with as a type map:

AddHandler type-map .var

Here is the content of my type-map, which I named menu.var:

URI: en.php
Content-Type: text/html
Content-Language: en, en-us, en-gb

URI: fr.php
Content-Type: text/html
Content-Language: fr, fr-ch, fr-qc

Based on my tests, I concluded that the value for URI in the type map cannot be a directory, so I used a little workaround. This means that if you load menu.var in the browser, Apache will serve either en.php or fr.php depending on the content-language the browser accepts, and these two PHP files redirect to the correct URL of the localized sites. Here is what en.php looks like:

And fr.php, logically:

Just in case somebody came by with a browser providing neither English nor French in the HTTP_ACCEPT_LANGUAGE header, I added this line to my .htaccess to catch any 406 errors (“not acceptable”):

ErrorDocument 406 /en.php

So, if something goes wrong, we’re redirected to the English version of the site.

The last thing that needs to be done is to have menu.var (the type map) load automatically when we go to stephanie-booth.com. I first tried by adding a DirectoryIndex directive to .htaccess, but that messed up the use of index.php as the normal index file. Here’s the line for safe-keeping, if you ever need it in other circumstances, or if you want to try:

DirectoryIndex menu.var

Anyway, I used another PHP workaround. I created an index.php file with the following content:

And there we are!

Accepted language priority and regional flavours

In my browser settings, I’ve used en-GB and fr-CH to indicate that I prefer British English and Swiss French. Unfortunately, the header matching is strict. So if the order of your languages is “en-GB, fr-CH, fr, en” you will be shown the French page (en-GB and fr-CH are ignored, and fr comes before en). It’s all explained in the Apache documentation:

The server will also attempt to match language-subsets when no other match can be found. For example, if a client requests documents with the language en-GB for British English, the server is not normally allowed by the HTTP/1.1 standard to match that against a document that is marked as simply en. (Note that it is almost surely a configuration error to include en-GB and not en in the Accept-Language header, since it is very unlikely that a reader understands British English, but doesn’t understand English in general. Unfortunately, many current clients have default configurations that resemble this.) However, if no other language match is possible and the server is about to return a “No Acceptable Variants” error or fallback to the LanguagePriority, the server will ignore the subset specification and match en-GB against en documents. Implicitly, Apache will add the parent language to the client’s acceptable language list with a very low quality value. But note that if the client requests “en-GB; q=0.9, fr; q=0.8”, and the server has documents designated “en” and “fr”, then the “fr” document will be returned. This is necessary to maintain compliance with the HTTP/1.1 specification and to work effectively with properly configured clients.

Apache, Content Negotiation

This means that I added regional language codes to the type map (“fr, fr-ch, fr-qc”) and also that I changed the order of my language preferences in Firefox, making sure that all variations of one language were grouped together, in the order in which I prefer them:

Language Prefs in Firefox

Catching old (now invalid) URLs

There are lots of incoming links to pages of the French site, where it used to live — at the web root. For example, the contact page address used to be http://stephanie-booth.com/contact, but it is now http://stephanie-booth.com/fr/contact. I could write a whole list of permanent redirects in my .htaccess file, but this is simpler. I just copied and modified the rewrite rules that WordPress provides, to make sure that the correct blog installation does something useful with those old URLs (bold is my modification):

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . **/fr**/index.php [L]


# END WordPress

In this way, as you can check, http://stephanie-booth.com/contact is not broken.

Next steps

My next mission is to write a small plugin which I will install on both WordPress sites (I’ve got to write it for a client too, so double benefit). This plugin will do the following:

  • add a field to the write/edit post field in which to type the post slug of the correponding page/post in the other language *(e.g. “particuliers” in French will be “individuals” in English)
  • add a link to each post pointing to the equivalent page in the other language

It’s pretty basic, but it beats manual links, and remains very simple. (I like simple.)

As I said, if you have a better (simpler!) way of doing all this, please send it my way.

A simpler solution [Added 29.12.2007]

For each language, create a file named index.php.lg where “lg” is the language code. For French, you would create index.php.fr with the following content:

Repeat for each language available.

Do not put an index.php file in your root directory, just the index.php.lg files.

Add the two following lines to your .htaccess:

Options +Multiviews
ErrorDocument 406 /fr/

…assuming French is the default language you want your site to show up in if your visitor’s browser doesn’t accept any of the languages you provide your site in.

You’re done!

Qu'est-ce que je fais, au juste? [fr]

[en] Roughly the French equivalent of the post Working on My Professional Site, with an added question in the end. I'd like to provide a list of the talks I've given and clients I've had. Most of my commercial clients have been public about my involvement, so that's not the issue -- it's more the dozens of schools I've spoken in. Some were long ago, I've lost my contacts, so I'm quite tempted to simply put the list online, and remove names if I'm asked to. Do you think it's blatantly unprofessional to do so?

Je suis en train de donner un coup de peinture fraîche (enfin, plus qu’un coup de peinture, parce qu’il s’agit de contenu) à mon pauvre site professionnel. Qu’y mettre? Voilà la grande question. Donc, je brainstorme.

Voici un peu où j’en suis. Si quelqu’un a une bonne traduction pour “social media”, je suis preneuse. Pour l’instant, je vais utiliser le vaguement douteux “nouveaux médias”. Vos commentaires sont les bienvenus. Attention, c’est brouillon et redondant.

### qu’est-ce que je fais?

– j’aide les gens à comprendre des trucs au sujet d’internet (nouveaux médias)
– j’apprends aux gens comment utiliser ces nouveaux médias
– j’aide les entreprises à voir comment elles peuvent utiliser les nouveaux médias
– je donne des conférences
– je connecte les gens
– je veux donner les moyens aux gens d’avoir une voix sur internet
– je fais profiter ceux qui en ont besoin de mon expertise sur la culture internet
– j’aide les entreprises à repenser leur stratégie de communication
– j’organise des événements (journées de conférences, congrès)
– j’aide les gens à démarrer avec les blogs et outils associés
– j’initie les gens à la gestion des aspects techniques de l’installation et la maintenance d’outils comme WordPress

### qu’est-ce qui m’intéresse?

– les questions linguistiques sur internet (multilinguisme)
– les adolescents et internet
– les nouveaux médias et comment ils changent la façon dont les entreprises, institutions, et personnes communiquent
– les “social tools” (“outils socialisants”?), comment nous les utilisons, à quoi ils servent, et comment ils fonctionnent

### qui sont mes clients?

– gens normaux qui veulent en savoir plus (sur les blogs, les ados sur internet)
– écoles et associations travaillant avec les adolescents
– personnes occupant des positions-clés côté médias et communication dans de grandes entreprises
– petites entreprises ou indépendants
– médias
– gens du marketing, de la pub, ou de la comm
– webmasters ou techniciens

### qui suis-je?

– polyvalente
– je connais bien internet (de l’intérieur et de l’extérieur)
– je comprends également bien le fonctionnement des gens et des cultures
– blogueuse depuis belle lurette, citoyenne du net
– compétences: expliquer, enseigner, inspirer, assister processus de décision ou de pensée, conseiller

De là où vous êtes, j’ai raté quelque chose?

J’ai aussi commencé à compiler une liste de toutes les conférences que j’ai données (et il y en a un paquet, je peux vous dire). La part de moi qui a un peu froid au pieds me dit que je devrais demander à tous mes “clients” (surtout des écoles pour les conférences “privées”, en l’occurence) leur accord avant de mettre leur nom sur une liste publique. (La plupart de mes contrats commerciaux sont déjà publics d’une façon où d’une autre.)

Je suis cependant bien consciente d’une chose: en “demandant la permission” de rendre quelque chose public, on court bien des risques de se heurter à un “non” prenant racine dans des peurs infondées ou simplement du “on sait jamais, soyons prudents”. Alors que mis devant le fait accompli, probablement que personne ne trouverait quoi que ce soit à redire. Ce n’est pas un processus nouveau, clairement.

Que feriez-vous à ma place, sachant que bon nombre datent d’il y a lontemps, que je n’ai plus forcément les contacts de l’époque, et que je suis prête à courir le risque qu’on me demande de retirer un nom ou deux de la liste après-coup?

Granular Privacy Control (GPC) [en]

[fr] Google Reader permet maintenant à vos contacts GTalk d'avoir un accès facile à vos "shared items" (articles lus dans votre newsreader et que vous avez partagés). Il semblerait que beaucoup de personnes ont mal interprété cette nouvelle fonction, imaginant que leurs éléments partagés étaient privés, et qu'ils sont maintenant devenus publics. Nous voilà encore une fois face au même problème: l'internaute moyen (et même le pas-si-moyen) surestime complètement à quel point les informations qu'il publie ou partage en ligne sont confidentielles. Au risque de me répéter: internet est un espace public.

Cet incident nous montre aussi, à nouveau, à quel point nous avons besoin de pouvoir structurer de façon fine (Granular Privacy Control = GPC) les accès à nos données à l'intérieur d'un réseau social. Facebook est sur la bonne piste avec ses "listes d'amis", mais on ne peut pas encore les utiliser pour gérer les droits d'accès.

In response to Robert Scoble‘s post about how Google Reader needs to implement finer privacy controls. Let’s see what Robert says, first:

Oh, man, is the Google Reader team under attack for its new social networking features.

There’s a few ways I could take this.

  1. I could call people idiots for not understanding the meaning of the word “public.”
  2. I could call the Google Reader team idiots for not putting GPC into its social networking and sharing features.
  3. I could call the media idiots for not explaining these features better and for even making it sound like stuff that isn’t shared at all is being shared (which absolutely isn’t true).

I’m going to take #2: that the Google Reader team screwed up here and needs to implement GPC as soon as possible. What’s GPC? Granular Privacy Controls.

Here’s how Google screwed up: Google didn’t understand that some users thought that their shared items feeds were private and didn’t know that they were going to be turned totally public. The users who are complaining about this feature assumed that since their feed had a weird URL (here’s mine so you can see that the URL isn’t easy to figure out the way other URLs are) that their feed couldn’t be found by search engines or by people who they didn’t explicitly give the URL to, etc. In other words, that their feed and page would, really, be private, even though it was shared in a public way without a password required or anything like that.

Robert Scoble, Google Reader needs GPC

Wow, I really didn’t think that this feature was going to create trouble. I was personally thrilled to see it implemented. So, here are two thoughts following what Robert wrote:

  • I’ve noticed time and time again that you can tell people something is “public” as much as you like, they still don’t really grasp what “public” means. Because things are not “automatically found” on the internet, they still tend to consider public stuff as being “somewhat private”. This is a general “media education” problem (with adults as much as teenagers). So, Robert is completely right to point this out.
  • GPC is a very important thing we need much more of online (see my SPSN and Ethics and Privacy posts) but I disagree with Robert when he says that Facebook has it. Facebook isn’t there yet, though they are on “the right path”. I can’t yet use my friend lists to decide who gets to see what on my profile. That would truly be GPC (in addition to that, their friends list interface is clunky — I need to blog about it, btw).

Marketing expérientiel vs. publireportage [fr]

[en] A post by a French blogger made me realise the fundamental difference between being "paid to blog" (à la PayPerPost, to take the worst cases) and experiential marketing. In EM, publication of the post is a means, not an end. It is a "small" part of the mandate. The mandate itself is using the service/product and giving account of the experience in a transparent way.

A side-effect of this is that I'm actually doing work for the client in an EM campaign. If I'm just paid to blog about a topic n times a month, I'm not doing any work for them. Chances are, too, that I'm not really adding much value for my readers (witness to that the endless justifications some "paid" bloggers seem to feel the need to get into, and the tendancy to "bury" sponsored posts under "real" ones).

Chez Mercenaire, le blog d’un consultant web freelance que je viens de découvrir (via Ollie, qui nous envoie y lire quelques bons conseils pour freelancers), je trouve un article sur les articles de blog payés — publireportages qui m’interpelle.

Vous connaissez le refrain: un commentaire qui prend trop d’importance et qui finit par émigrer ici sous forme d’un billet de plein droit.

Ce billet m’a donc fait prendre conscience de quelque chose d’important. Commençons ici:

Si un éditeur de Blog veut faire du publi reportage, ce n’est pas pour le bien de sa ligne éditorial ou de son audience mais pour gagner de l’argent avec ce contenu et monétiser son audience.

Thierry Bézier, C’est super d’être honnête avec son audience… alors pourquoi ne pas l’être avec son sponsor ?

Il y a quelque temps, j’ai essayé de mettre en avant mes services de marketing expérientiel, non sans une petite crise de conscience. Je me disais: mais où est la ligne avec le “publireportage” ou le “paid to post”, que je ne franchirai pas? J’ai toujours été assez férocement contre ce genre de pratique (Pay per post, en particulier, me hérisse le poil), et maintenant je comprends pourquoi, et en quoi ce que je fais s’en différencie.

Dans le marketing expérientiel, je rends compte d’une expérience utilisateur qui a une valeur en tant que telle, que ce soit pour le client ou pour mes lecteurs. La visibilité est un effet de bord — recherché bien entendu — mais le contenu n’est pas un simple prétexte pour celle-ci, comme dans le cas du “publireportage”. (Notons, dans un souci d’équité, qu’il y a sans doute publireportage et publireportage: de la pub de bas étage à peine déguisée à l’article qui apporte vraiment une information utile en soi.)

Ce qui m’a amenée au marketing expérientiel il y a un mois environ, c’est le fait que j’étais en discussion avec plusieurs clients potentiels qui voulaient tous que je “blogue pour eux”. J’avais d’ailleurs fait ma petite enquête pour tenter de déterminer combien étaient payés ceux qui “bloguent pour de l’argent”, et grosso modo, ça variait de $5 à plus de $500 par article. Voici un billet intéressant sur le sujet, et un autre concernant les tarifs, en passant. Mais dans l’ensemble, les sommes qu’on se proposait de me payer étaient vraiment très basses, compte tenu du temps à investir, de la prise de risque pour ma réputation, et… mes compétences (quand même!)

Donc, je n’aimais pas l’idée “d’écrire sur commande” (je ne suis pas copywriter), mais je sentais qu’il y avait tout de même quelque chose de valable à proposer à ces clients qui s’adressaient à moi pour que je leur fasse un peu profiter de ma visibilité.

Je gardais toujours à l’esprit le genre d’opération-test menée (gratuitement à l’époque) pour les blogs de Romandie.com (on m’avait d’ailleurs dit que j’aurais dû me faire payer pour ça), mes tests de plate-forme de blogs hébergées en 2004, et quantité d’autres billets écrits sur Dopplr, vPod.tv, coComment bien sûr, et hier, Kayak (il y en a d’autres, mais voilà ceux qui me viennent à l’esprit). En même temps, je parlais avec mon ami Stowe Boyd (qui a recyclé/inventé le terme “experiential marketing” dans notre contexte) qui me disait “tu devrais leur proposer une campagne de marketing expérientiel”.

Eh bien oui. Il s’agirait simplement de formaliser (et de me faire payer pour!) ce que je fais naturellement, spontanément, sur un coup de tête.

The basic idea is the following: a typical “customer” uses a service or product and chronicles their experience in public.

Focus > Experiential Marketing

En clair, le client paie [le blogueur] pour qu’il utilise son service/produit et rende compte régulièrement de l’expérience sur son blog durant une période donnée, en toute transparence. Ce qu’il y a d’artificiel dans cette démarche, c’est qu’on paie une personne pour consacrer une partie de son temps et de son énergie à l’utilisation d’un produit ou d’un service, partant du principe qu’il ne le ferait pas forcément autrement. On détermine également la fréquence à laquelle cette personne rendra compte de son expérience (positive ou négative!) avec le produit/service en question.

Prenons un exemple (tout à fait fictif, car je n’ai jamais eu de conversation à ce sujet avec eux): je n’utilise pas netvibes, même si je connais le service, lui préférant Google Reader comme lecteur RSS. Dans le cadre d’une campagne de marketing expérientiel, mon mandat serait d’utiliser netvibes et d’écrire, par exemple, un article par semaine sur mon blog pour en parler. On se rend tout de suite compte de l’investissement en temps (et aussi, en changement d’habitudes!) que cela requiert.

Le client y gagne du feedback utilisateur détaillé, un point de vue professionel externe sur son produit qu’on peut assimiler à du consulting (parce que j’ai aussi une casquette d’experte des outils du web, sociaux ou autres), de la visibilité (d’où “marketing”, une première fois) via les articles sur mon blog, et du “capital social” (très important, ça, et deuxième pour le “marketing”) pour avoir accepté de laisser le contrôle éditorial entre mes mains et de discuter ouvertement forces et faiblesses. (Il va sans dire qu’on va pas être extrémiste, si je découvre un gros problème de sécurité ou autre, je les avertis directement, comme je le ferais dans n’importe quelle autre circonstance.)

C’est donc bien une opération qui dépasse le simple “bloguer pour le client” et qui lui apporte véritablement quelque chose. Le contenu des articles que j’écris dans le cadre d’une campagne de marketing expérientiel a de la valeur pour le client et pour les lecteurs, qui ont l’occasion de découvrir un service/produit via une expérience authentique — sans la couche de fond de teint et le maquillage habituel de beaucoup d’opérations marketing traditionnelles.

Pour boucler la boucle: on ne peut pas vraiment dire que “être payé pour bloguer” soit populaire dans la blogosphère — voir cet article chez Embruns par exemple. Pour le blogueur qui envisage d’une façon ou d’une autre de tirer un profit financier de son lectorat, il est primordial de garder à l’esprit que ce ne peut être la seule composante dans le contrat avec son “sponsor/client”, sous peine que son lectorat se sente (à juste titre) utilisé.

C’est le problème que j’ai avec les opérations de publireportage: il n’y a pas tellement de valeur là-dedans pour le lecteur. Le fait que le billet pour lequel le blogueur a été payé offre du “contenu de valeur” au lecteur est à mon avis une faible tentative de justification. Thierry relève d’ailleurs deux attitudes de blogueurs qui le confirment à mes yeux (même si ce n’est probablement pas deans ce sens-là qu’il les partage avec ses lecteurs: les justifications à n’en plus finir, et la tendance à enterrer les billets sponsorisés au plus vite.

[…] En tant que communicant je dois dire que je suis contre ses pratiques de “déversement de justifications” qui vont tuer le publi reportage…

[…]

Ce qui est nuisible, c’est cette justification permanente

ce qui est borderline : la justification

Peu importe si c’est la version techcrunch, presse citron ou autre… tout ce que je lis concerne le saint lecteur, “je garderais mon intégrité” “je ne changerais pas mon ton” “j’en ferais pas beaucoup” “je ne te trahirais pas lecteur”….

Thierry Bézier, C’est super d’être honnête avec son audience… alors pourquoi ne pas l’être avec son sponsor ?

Je suis consciente que je sors un petit peu cette citation de son contexte. Thierry a raison d’être contre les justifications, mais peut-être pas pour les raisons qu’il donne. Il a raison d’être contre, parce qu’en général (au risque de faire de la psycho à deux balles) quand on ressent le besoin de se justifier encore et encore, c’est qu’on n’est pas tout à fait tranquille avec ce que l’on est en train de faire.

(On pourrait d’ailleurs retourner cette réflexion contre moi, et suggérer que cet article témoigne de mon malaise face au marketing expérientiel — c’est vrai, je ne suis pas 100% à l’aise avec l’idée. Reste ensuite à voir si c’est un souci légitime ou si c’est le fruit de mes angoisses personnelles internes et de mes sentiments de culpabilité souvent mal placés. Je penche pour la seconde. Du coup, le lecteur peut être assuré que je mets tout en oeuvre pour être certaine de ne pas “l’exploiter”, ça c’est sûr.)

Je l’ais vu avec Monabanq par exemple, qui n’est pas un mauvais produit, avec des retours positifs d’expériences, qui a laissé une grande liberté d’expression… beaucoup de ces publis ont été publiés hier dans la soirée 18h-21h et même plus tard…. et le lendemain à midi?

ben les billets ne sont pas en haut de page! très souvent ils ne le sont jamais et arrivent direct à la 2e ou 3e place et en fin de journée on ne les remarque plus, deux jours plus tard ils sont plus en home…

Thierry Bézier, C’est super d’être honnête avec son audience… alors pourquoi ne pas l’être avec son sponsor ?

A mon avis, si les blogueurs qui se font payer pour écrire des articles ressentent le besoin de se justifier à outrance, et ne sont pas à l’aise de laisser en haut de page ou bien en évidence ces “articles sponsorisés”, il y a un problème fondamental avec le modèle que l’on essaie d’appliquer.

Ce problème fondamental, pour être claire, c’est que le blogueur “vend” au client son lectorat, sans vraiment donner quoi que ce soit de valeur à celui-ci en échange. On a donc une situation où l’une des parties (au moins!) est “lésée” — je dis “au moins” parce que je pense qu’en fin de compte, le client l’est aussi. Le malaise dans la relation entre le blogueur et ses lecteurs va rejaillir (négativement) sur le client.

Le contrat est focalisé sur la publication et le lectorat. Le blogueur essaie de faire de l’argent “avec” le blog, au lieu de “parce qu’il a” un blog, ne tenant aucun compte du fameux “Because Effect”.

Ce genre de pratique est vouée à l’échec, à long terme, car il est une simple tentative de transposer dans le monde des blogs, avec un faible déguisement pour tenter de faire passer la pilule, la fameuse “pub”. Je ne dis pas que personne ne peut se faire d’argent comme ça (ce n’est clairement pas vrai, et ça va continuer encore) — mais j’affirme par contre que ce n’est pas un modèle économique qui tiendra. Quand on parle de la façon dont les blogs bouleversent la communication (et donc le marketing et la pub), des social media (en anglais), il ne s’agit pas de payer des blogueurs pour écrire ses pubs à sa place et les servir à leurs lecteurs.

On se déplace par contre vers des modèles de collaboration entre vendeurs, blogueurs, et lecteurs qui sont beaucoup plus complexes, car ils prennent en compte une plus grande part de la richesse des relations humaines et des interactions sociales. Le marketing expérientiel en est un exemple — il y a d’autres formules à créer. Elles auront en commun deux des leçons fondamentales du Cluetrain Manifesto (au risque de me répéter, à lire absolument si ça n’est pas déjà fait, oui, même si “vous connaissez”):

  • il n’y a pas de marché pour les “messages” (“pas de marché” dans le sens où personne n’a activement envie de les écouter; et hop, ça règle le sort d’une bonne partie de la pub)
  • nos décisions (d’achat, en particulier) se basent sur nos conversations humaines plus que sur n’importe quelle opération publicitaire ou marketing.

J’en ai écrit bien plus que j’en avais l’intention. Je pourrais continuer encore, certainement, mais je crois que l’essentiel est dit. Si vous avez des questions sur ce que j’essaie d’expliquer ici, ou si vous n’êtes pas d’accord, les commentaires sont à vous!

Hashtags For My Followees [en]

[fr] En utilisant un dièze # devant un mot dans un message Twitter, on en fait un tag (un "hashtag", pour être précis -- "hash" étant un nom du dièze). Le site hashtags.org indexe ces tags. Pour y retrouver vos tweets, suivez hashtags sur Twitter.

Hashtags.org popped up on my radar roughly a week ago, I’d say. I mentioned hashtags once already here. They’re a “user-generated” system for implementing tags into Twitter. (User-generated, here, does not mean the same as in the ugly “user-generated content (UCG)” everybody is talking about these days, but points to the fact that hashtags were initiated by users, not by the Twitter-makers — just like the @convention.)

So, what does hashtags.org do? Basically, it makes those hashtags visible. In September, Twitter introduced tracking, which I realise now I haven’t mentioned here yet. Tracking allows you to “subscribe” to keywords. I personally chose to track “stephtara” and “@stephtara” so that any @replies would arrive directly on my phone as texts. I had the bad idea to track “fowa” during the Future of Web Apps conference. By break time I had 300 text messages in my inbox. Oopsie!

Hashtags.org allows you to view tweets labeled with a hashtag on a web page. Look at #leweb3 for example, #twitter, or #wordpress.

A few remarks:

  • it’s not very populated yet, because you need to follow @hashtags for them to track your tags; as of writing, only 132 people are — so start following!
  • I’m getting 500 internal server errors when I try to look at a tag that doesn’t exist (#lausanne, as of writing)
  • once “everybody” starts using hashtags, it will be very useful to be able to narrow down a collection of tagged tweets to “my followees only”; imagine I’m at LeWeb3, and everybody is twittering about it: I’m not interested in getting the thousands of tweets, just those from the people I’m following
  • for a long time, I’ve been a proponent of stickemtogether multi-word tags; recently, I’ve revised my ideas about them and come to realise that multi-word tags really need spaces in them, for better indexing; at the moment, you need to use “+” instead of spaces, like “#san+francisco” (unfortunately these don’t get indexed correctly, another 500 error); Stowe suggests opening and closing hash as an alternative, which is a bit hashy though it has its charm (“#san francisco#”).

In any case, nice to see such an initiative up and running!

WordPress Deaf to Pings [en]

[fr] Mon installation WordPress semble refuser les pings depuis deux semaines environ. Aucune idée ce qui peut causer ça.

While I’m at it in the “technical annoyances instead of getting work done” department, with the misbehaving plugin and the Sandbox trouble, my WordPress installation has obviously become deaf to pings/trackbacks over the last two weeks.

I can send trackbacks fine, but not receive them. Even from my own blog. I don’t know where to start searching for the problem.

Oh, and I’ve lost the French excerpt to my post Advisors, Boards, Companies, Partners, Oh My! so if you happen to have a cached copy, would you check it out for me, please?

Damn. This morning is not turning out the way I hoped.

Update, 17:30: the pings from my most recent post just came through! I’m only running Spam Karma 2 now, deactivated both Akismet and Bad Behavior. Hope to identify the culprit soon.

Update, 17:53: now, when I save a post, it sends one ping. If there is more than one pingable URL in the post, I need to save it multiple times. Got bug?

Nasty Problem With Basic Bilingual Plugin [en]

[fr] Un problème avec le plugin Basic Bilingual qui fait disparaître les extraits dans "l'autre langue". Je bosse sur une solution (voir commentaires).

Heck. I just spent the last 15 minutes digging through the Google cache to retrieve “other language excerpts” which had been wiped from a good dozen of my recent posts. Not all of them, mind you — almost all of them. I haven’t yet managed to reproduce the problem, but clearly, the meta fields get reset in some circumstances.

I suspect it might be something that has to do with editing posts. Maybe related to the old disappearing tags problem?

In any case, I’m afraid Basic Bilingual must be misbehaving. Be particularly cautious when editing posts. Let me know if you have the same problem or a path to a fix — I’m working on it now.

Update: if somebody has the French excerpt to my post Advisors, Boards, Companies, Partners, Oh My! in their newsreader or browser cache, could you please send it to me or copy-paste it here as a comment? Thanks a lot.

Update, 17:30: I think I solved the problem (see comments) and corrected the files available on my server, bumping up the version to 0.31. Please download the latest version if you’re using this plugin.

WordPress Sandbox Theme Problems [en]

[fr] Deux problèmes avec Sandbox: les menus déroulants qui se déroulent décalés sur la droite dans IE, et l'absence de feuille de style pour l'impression. Toute aide bienvenue.

As you might have seen, Sandbox is now my theme of choice for WordPress. Diurnal, here on CTTS, is built upon Sandbox, and I’m using it with a client to build a new design from scratch. It’s a nice base to work from, in a CSS Zen Garden way.

However, there are problems. Here are two I’m stuck with on my client site. I posted them to the Sandbox forums, but I thought I’d mention them here in case one of you smart readers had an answer.

  1. No print stylesheet?: does anybody have a print stylesheet handy for use with Sandbox? If I can avoid writing one from scratch…
  2. Broken drop-down menus in IE: I’m far from a drop-down menu specialist, so I’m not sure where to start to fix the IE wonkiness I’ve noticed. The menus in IE do not drop right below the parent menu as shown here, but overlap on the neighbouring menu item on the right.

Thanks for any help or pointers you can bring me.

Feeling Like a Born-Again Blogger [en]

[fr] Depuis quelques jours, je blogue à donf, comme on dit -- et j'ai l'impression de redécouvrir ce média. Oui, ça marche vraiment de mettre par écrit ses idées, ses doutes, ses problèmes stratégiques ou organisationnels. La communauté est une précieuse alliée. Continuez à laisser vos commentaires, je les apprécie beaucoup!

I feel like a born-again blogger.

Over the last days, I’ve been blogging like a madwoman about Going Solo (and other things), and I feel like I’m rediscovering blogging. All this stuff that I tell my clients about, I’m in it now:

  • blog about the process, the ideas — you’ll get great feedback
  • blog about your doubts or problems — your readers are smarter than you are
  • blog about stuff you want to get out there — once it’s online, it’s ready to spread.

Funnily, I find myself faced with the same kind of doubts that my clients often express (though, I’m happy to say, they’re fading fast):

  • can I really blog about this when it hasn’t been set in stone yet?
  • what if people steal my ideas?
  • should I mention this or that, or is it best kept under wraps for the moment?
  • how much should I tell people?
  • do I make a separate blog for my event/company, or keep it all on mine?
  • how do I get my partners to blog?

So far, the responses I’ve got to my blogging and talking about my project (online, offline, in public, or in private) have been overwhelmingly supportive, positive, and constructive. It’s very encouraging. Keep it coming. Reaching out to the community really does work — I knew it, but now I’m experimenting it again.

Thanks to everybody.

Qui prendrait des "cours de blog"? [fr]

Tout d’abord, merci à tous pour vos commentaires sur mon projet de cours d’initiation aux blogs. Ils me sont très utiles, donc continuez à me dire ce que vous pensez! Je me rends compte que je n’ai pas du tout défini assez clairement à qui s’adresserait ce cours et pourquoi. Je vais essayer de remédier ici à ce manquement.

Tout d’abord, il s’agit d’un cours d’initiation au blog personnel. Comme je l’explique dans les conférences que je donne au sujet des blogs en entreprise, le blog est à la fois un outil (technologique), une culture, et une stratégie de communication.

Dès qu’on commence à parler de blog en entreprise (même TPE ou pour un indépendant), en milieu associatif, ou politique, on ne peut échapper à la discussion sur le blog-comme-stratégie-de-communication. Et croyez-moi, ce n’est pas une mince affaire. On se retrouve très vite à faire ce que j’appelle du “Cluetrain 101”, c’est-à-dire expliquer les transformations en profondeur qu’internet (et les blogs, qui sont une manifestation visible et médiatisée d’un bouleversement plus fondamental) a amené dans la façon de concevoir la communication. Ça prend vite des heures, voire des jours. On parle de transparence, d’authenticité, de comment écrire comme un être humain au lieu d’une brochure marketing, de quoi on va parler, comment on va réagir aux commentaires négatifs, de lire d’autres blogs et y réagir. Il y a des peurs, des réticences, des soucis plus ou moins justifiés. C’est une opération qui peut transformer en profondeur la façon dont on communique, et même dont fonctionne l’entreprise à l’interne. “Ouvrir un blog”, c’est la pointe de l’iceberg.

Pour ce genre de service, il faut compter des journées entières de consulting et de formation, avec un suivi qui peut durer des mois. (Si on veut faire les choses bien, il va de soi.) C’est un service personnalisé qui dépend de l’entreprise ou de l’association en question, des personnes impliquées, et qu’il est impossible à packager en une demi-journée. Le cours sur deux journées qu’Anne Dominique et moi-même avons mis sur pied représente un premier pas dans ce processus, une initiation.

Il s’agit donc ici de faire quelque chose de tout à fait différent.

Je désire donner un cours de blog-outil. On n’abordera pas la stratégie de communication, juste l’outil et un peu de la culture. Quand on approche les choses ainsi en entreprise, c’est en général la recette pour avoir un blog qui ne fonctionne pas. Pour l’individu, le particulier, par contre, c’est parfait.

Le blog est un très chouette outil d’expression personnelle. Si on a le désir de raconter des choses, de partager une passion, de pousser des coups de gueule, de rentrer en contact avec des personnes partageant des intérêts similaires aux siens, franchement, cela vaut la peine d’avoir un blog: un petit espace à soi sur internet, que l’on peut alimenter à sa convenance, qui ne coûte rien, et ne demande pas beaucoup plus de maîtrise technique que celle requise pour envoyer un e-mail avec hotmail ou bluewin.

Mais, me direz-vous (et on me le dit!) — bloguer, c’est tellement facile que y’a pas besoin de cours!

Erreur.

Ceux qui disent cela sont des personnes que j’appelle des “blogueurs naturels”. Des gens comme moi, ou comme vous qui avez déjà un blog. Vous avez ça dans le sang, si on peut dire. On est assez à l’aise avec notre ordinateur pour aller s’inscrire sur WordPress et se lancer tout seul. Tenez, je vous explique même comment faire ça dans mon blog. Allez-y. Ouvrez votre blog. Lancez-vous à l’eau. Si ces quelques indications vous suffisent, alors vous n’avez pas besoin de mon cours d’initiation pour apprendre à bloguer.

Je pense à toutes les autres personnes, celles qui ne lisent pas ce blog, ou celles qui le lisent mais ne sont pas assez sûres d’elles sur un ordinateur ou internet pour faire le pas sans assistance. Tout le monde (ou presque) est capable de tenir un blog, mais encore faut-il le croire. Si vous avez des doutes, ou si simplement vous trouvez plus confortable de faire ça accompagné, je suis là pour vous.

Durant ces dernières années, je suis régulièrement approchée par des personnes (de mon entourage ou d’ailleurs) qui veulent que je leur apprenne à bloguer, ce que je fais volontiers. Ces personnes existent donc. Il y a un besoin. J’ai aussi compris, avec le temps, que toutes ces choses qui nous semblent évidentes, à nous les blogueurs naturels, ne vont pas forcément de soi pour le commun des mortels. Il est normal de devoir passer par une phase d’apprentissage ou d’apprivoisement pour se mettre à quelque chose de nouveau. On prend des cours de sport, de peinture, de poterie, de massage, d’informatique, ou d’anglais. On peut aussi apprendre à utiliser internet, et les blogs en particuliers.

En plus des amis et des membres de ma famille que j’ai accompagné lors de leurs premiers pas dans la blogosphère, j’ai appris à bloguer à toutes sortes de personnes, que ce soit lors de séances particulières ou de cours en groupe: indépendants, enseignants, hommes politiques, camarades de chant, employés d’entreprises petites et grandes, journalistes… Oui, il y a un besoin pour ce genre de formation. (Je l’ai déjà dit… je me répète?)

Donc, les particuliers. Pourquoi paieraient-ils pour quelque chose que “n’importe qui” peut leur montrer comment faire? Ben justement, parce que “n’importe qui” ne pourra pas le faire aussi bien que moi (ouh là là, elle est gonflée, non mais, vous avez vu ça?). En fait, c’est la vieille rengaine: suffit pas de savoir faire quelque chose pour être capable de l’enseigner — et j’aime à penser que c’est une chose que je ne fais pas trop mal. Aussi, (je fais ma pub, attention!) apprendre avec moi, c’est tout de même une garantie qu’on partira dans le droit chemin, et que je serai en mesure de répondre à toutes les questions qui risquent de se poser. Je dis pas qu’il n’y a pas dans le coin d’autres personnes aussi capables, hein, mais c’est tout de même autre chose que la nièce de Gérard qui a un Skyblog

Un autre avantage dans le fait de prendre un cours c’est qu’on bloque le temps nécessaire. Souvent, on a envie de faire des choses (“ah ouais, ce serait cool d’avoir un blog, j’en ouvrirais bien un un de ces quatre, mais bon je suis pas tout à faire sûr comment faire, on verra ça…”) mais on ne s’y met pas. Le cours d’initiation, c’est l’occasion de donner le coup d’envoi, avec de nouveau (la satanée garantie) qu’on va pas y passer la soirée pour se retrouver avec rien entre les mains à la fin parce que ça aura foiré.

Bon, trève de plaisanteries, je récapitule. Voici à qui s’adresse mon cours:

  • des personnes qui ont envie d’avoir un blog, ou un espace à elles pour partager sur internet des pensées, une passion, des textes, des critiques de films… peu importe — mais a priori, quelque chose de non-professionnel (“qu’est-ce qui vous intéresse dans la vie?”)
  • des personnes qui ne sont pas des cracks d’informatique, mais qui savent envoyer un e-mail
  • des personnes qui veulent un blog mais ont besoin d’un petit coup de pouce (rassurant ou organisationel) pour donner le coup d’envoi
  • bref, n’importe qui ayant le désir d’avoir un blog personnel, mais n’ayant pas toutes les cartes en main pour se lancer sans aide.

Donc:

  • où annoncer mon cours pour toucher ces gens? (sur mon blog, clairement, c’est pas le meilleur endroit)
  • comment présenter le cours pour qu’ils sentent que c’est à eux que je m’adresse?