Lecture et joie

Je ne milite en aucun cas pour l’abolition de l’école. Je crois, effectivement, qu’il serait catastrophique, en l’état actuel des choses, de la supprimer. Je pense, effectivement, qu’il y a de nombreux parents qui ne pourraient, ne voudraient ou ne sauraient en aucun cas assumer cette nouvelle condition ; je pense, effectivement, que la situation actuelle de nombreuses personnes rendrait irréaliste, voire périlleuse, la non-scolarisation de leurs enfants.

Mais quid de tous ceux qui en ont la possibilité et, peut-être, le désir, mais qui l’ignorent ? C’est à eux que mon témoignage offre, je l’espère, l’inspiration pour une pensée nouvelle. Respecter ses convictions, faire, en toute conscience, des choix personnels, honorer son originalité, être l’artisan de son propre devenir : tout cela, bien davantage que l’endoctrinement des masses, contribue à la progression du monde et à l’apparition de nouveaux paradigmes.

… et je ne suis jamais allé à l’école, André Stern

J’ai terminé de lire … et je ne suis jamais allé à l’école à mon fils. Quelques pages quasiment chaque jour depuis 3 mois. La joie qu’il a manifesté lorsque j’ai sorti le livre les dernières fois m’a vraiment ému. Identifier le livre comme un moment de bonheur. Comme une vaine tentative de le dévorer littéralement aussi :-).

Au fil des pages, je me suis rendu compte à quel point ma lecture à voix haute a changée, une meilleure continuité, une meilleure gestion des liaisons, des différentes voix des personnages. Essayer de rendre la forme aussi intéressante que le fond a été un exercice quotidien, pour une lecture plus lente, plus détaillée, plus profonde. La prose d’André Stern se prête bien à une telle lecture et le propos est lucide et sensé, ça donne des idées…

Prochaine lecture : Libres enfants de Summerhill.

Adopting Omnifocus and GTD

I've tried to adopt the Getting Things Done method a few times already. Every time, it wasn't a success. I wasn't applying most principles and fell back to noting things down on a collection of small papers. This time, I had a huge advantage: at work, I'm sitting next to Étienne, a big proponent of GTD. He inspired me to try again and answered a lot of questions I had during my adoption.

This time, I chose Omnifocus for my GTD experimentation. It's a bit expensive to buy the three flavours but I was committed. I'll be talking about my experiences via Omnifocus but you should not focus too much on the software. You can adopt GTD with paper, with another software, whatever works for you.


In january, I started the capture part. That's when you note down in your GTD system everything you'd like to do. You need to create that habit and do it every time something pops in your head. I use three main methods to collect:

  1. When I'm in front of my computer, I use the ^⌥Space shortcut to open the Quick Entry panel
  2. When I'm not in front of my computer, I use the iPod Touch app
  3. When an email requires some action, I send a message to the mail drop address

I got a huge inbox but I was ok with it because I knew collecting was the first part to get right. There is a big relief in knowing that everything you need or want to do is explicitly written somewhere. You're not afraid of forgetting something anymore.

Capturing your thoughts like this also allows you to stay focused on the current task. You don't have to do that new task right now, you don't have to explore that idea yet. Just trust the system to remind it to you later.

To start this, you may also want to start by doing a mind sweep: sit down in front of a piece of paper, no distractions, half an hour and write down everything that comes to mind.


Once you have this exhaustive list of things you want to do, you process it in contexts and projects. You also flag some items you deem important and put important dates for those tasks. I only started doing this mid january. The tricky part for me was creating the projects and contexts.


In GTD, Contexts are things you need to achieve a task. It could be a location, a person or an object. I'm not really using the contexts because most of the time, I just need to be in front of my computer to accomplish work related tasks. I may need to tweak this again but for now, I don't feel the need to dive more in that area.

My contexts:

  • Errands: When I'm neither at home nor at work
  • Home: I don't have an office context because I can work from anywhere. I have a few tasks that require me to be in an office (like printing) but not enough to warrant a full context.
  • People: A nested list of some people and also a phone context
  • Technology: This is where you'll find most of my tasks. I have a nested email folder.
  • Waiting: When I'm waiting on something else to happen.


Let me give you three example of real projects:

Fixing a bug

I try to do this a lot :) So I have a template project that I copy when I intend to work on a bug. This is a sequential project, meaning I need to achieve a task before the next one is available.

  1. Find a fix: Well that sounds dumb but this is my first step
  2. Write tests: Even though I may write the tests as I fix the problem, I still keep this reminder to make sure I wrote enough tests
  3. Test on a phone: I will certainly have done this while developing but for small fixes that look obvious, I have been bitten by not testing on a real phone. Hence this reminder.
  4. Put in review: Uploading my patch and explaining my fix.
  5. Wait for review: This is in a waiting context so I can forget about this project until I receive an email about that review. If it's not good, I'll add a task for each comment to adress.
  6. Wait for green tests: In a waiting context too because you shouldn't land something if the tests are not green.
  7. Land patch and clean branches: When all is good, I can land my work. This is usually where I'll clean the branches I had to create.
  8. Close bug with link to commit: This is the last step so that people can track the work later.

Feedback on Openweb articles

The crazy hard worker that Nicolas Hoffmann is wrote a few articles on modern CSS practices on the OpenWeb group. I told him I wanted to read them and provide some feedback but I have no idea when I'll come around doing that. So I created one task per article. It's out of my mind but I know I'll do it one day because I have this reminder.

Birthday ideas

This is not a project per se. But when someone talks about a topic they like, I try to take a note of it. Then during the review process, I mark it as due a few days before the actual birthday.

In addition to these kinds of projects, I have a few projects called "Work :: Miscelleanous" or "Personal :: Miscelleanous". That's just things I need to do and don't really fit in a project.

Flags, deferred dates and due dates

This is how I have things popping up for attention. I try to use due dates as little as possible because otherwise, one day you end up with 10 things urgent to do and you get stuck. So only tasks that have a hard deadline (like filing taxes) get a due date.

I use flags for the tasks that are important but without a real deadline. During my weekly review (see below), I'll flag things that I want to do next week.

The capture phase was really refreshing because I knew everything was stored somewhere. Via the process phase, it's even more relaxing because I know the system will remind me when I need to do something. That completely changed how I think about being overwhelmed. Before, I had this blurry collection of things to do in my head. They were all collapsing and I had no sense of what was important to do or if I was forgetting something that matters to me. Now, when I feel overwhelmed, I know it just means I need to spend a bit of time in front of Omnifocus to process my inbox.


In february, I started doing reviews more often. First every two weeks and now every week. This is another step that gives me a great deal of comfort. This is when I'll decide what I want to do next week and put flags or due dates on things that I consider important for the coming week. I will also delete some items that I don't feel like doing anymore.


And this is the biggest part of GTD. Actually doing stuff. If you spend all that time in a tool to organise your tasks, it's not for the sake of it. That's why I did it gradually, to not spend too much time finding the perfect workflow.

I'm really happy with my adoption of the GTD method. It's not perfect, I'm still tweaking here and there.

I encourage you to try it. Reach out to me if you'd like to discuss it, I'd be happy to!

Éducation et informatique

Moins les enfants regarderont les écrans, plus ils développeront leur imagination et leur créativité. Car les écrans contiennent en eux des histoires visuelles et sonores qui empêcheraient les enfants d’imaginer d’autres images et d’autres mondes possibles.

Écran global, reportage de Anne-Sophie Lévy-Chambon

Protéger son enfant des écrans s’avère être une tâche plus difficile que ce que j’imaginais. Le compteur en cumulé doit être aux alentours des 10-15 minutes après 7 mois, ce qui est plutôt dans la limite haute de ce que je m’étais fixé. Et lorsque je vois l’attrait qu’il a pour un écran dès qu’il en croise un, cela me conforte dans l’idée qu’il va falloir attendre qu’il soit en mesure de comprendre un peu ce qu’il y a derrière : une fenêtre déshumanisée sur l’Humanité.

On parle souvent de la limite des 3 ans pour qu’un enfant puisse regarder/interagir avec un écran sans être perturbé par l’absence de retour de sa part. On verra à ce moment là si mon digital native souhaite faire usage de ses doigts.

L’élève sait que les équipements informatiques utilisent une information codée et il est initié au fonctionnement, au processus et aux règles des langages informatiques ; il est capable de réaliser de petites applications utilisant des algorithmes simples.

Socle commun de connaissances, de compétences et de culture

Damien B et Éric D. discutaient ce soir de l’apprentissage du code en primaire sur Twitter. J’ai beaucoup de mal avec cette question car le code constitue une part non négligeable de mon quotidien et de mon métier. Et si je trouve que la connaissance du Web devrait faire partie de l’éducation citoyenne, je suis plus circonspect sur le développement en lui-même. En fait, il s’agit d’une problématique de cohérence. Soit on considère que le codage (sic) est une activité artisanale et dans ce cas il faudrait également enseigner d’autres activités comme le travail du bois en primaire (ce que certaines écoles alternatives font — voir le reportage sus-cité). Soit on considère que l’industrialisation de l’informatique est inévitable et dans ce cas là toute la question algorithmique simple devient inutile puisqu’il s’agira d’empiler les boîtes noires à un autre niveau. Il faut bien définir les objectifs que l’on se fixe avec cet apprentissage du code dès la primaire. Dans quelle mesure permet-il la poursuite d’études, la construction d’un avenir personnel et professionnel et préparer à l’exercice de la citoyenneté ? Tous bidouilleurs, soit, mais que nous laisse-t-on bidouiller par la suite ?

Ce que je vois en filigrane de cette mutation est plus grave, c’est la mise sur un piédestal de ceux qui savent coder par pure incompréhension du changement de paradigme qui est en train de s’effectuer avec le numérique. Ou serait-ce pour pouvoir à terme alimenter plus facilement les canons publicitaires ? La question reste ouverte… jusqu’à la prochaine réforme.

Écriture et bonheur

Difficile d’écrire sur le bonheur. Sans faire dans le mièvre. Sans tomber dans les clichés. Sans craindre d’attiser les convoitises et jalousies. Sans avoir peur surtout de briser cet instant en tentant de le décrire. Sans mentir.

6 mois de vie. De survie. De co-vie. Je ne sais pas trop comment appeler cela, ni de quel point de vue. Toujours est-il que ça semble fonctionner. Des doutes, des essais, des désespoirs, des soulagements. Des moments spéciaux. Inattendus. Intimes.

Apprendre à flâner avec une poussette. Se défendre des fumées et des bruits de la ville. Réduire son exposition aux écrans. Se nourrir plus sainement. Sourire très souvent. Apprécier ce rythme plus lent qui contribue au bien-être. Et au bonheur.

Songer à cette question de l’héritage. Vouloir léguer des valeurs et une culture plus que des biens. Amasser du temps de vivre ensemble. Donner son attention avant tout. Et sentir qu’il s’agit d’un échange. Réciproque et gratuit.

Rire et s’émerveiller des nouveautés. Se demander qui éduque qui. S’endormir épuisé mais heureux. Se réveiller sur un simple sourire. Apprendre à se connaître, à apprécier des rituels. À cohabiter.

Et au milieu de tout cela des questionnements. Pourquoi est-ce que j’ai choisi de passer autant de temps avec mon fils ? Comment lui transmettre des valeurs sans ressentir la pression de l’exemplarité ? Quel enseignement lui proposer avant qu’il ne puisse choisir par lui-même ? Quels « effets papillons » lui permettront à terme de battre de ses propres ailes ? Quelle image va-t-il me renvoyer de moi-même ? Que ressent-il vraiment ? Et tant d’autres.

Fermer les yeux. Respirer. Faire le vide. Sourire. Se sentir bien.

Première version de Troubador

Ces derniers temps, j'ai cette impression que beaucoup de services en ligne ont eu des problèmes avec des accès à leurs bases de données. Certains font d'ailleurs partie de ceux que j'utilise (comme kickstarter). Il devenait urgent que j'ai une politique de gestion de mot de passe un peu plus solide (comprendre par là en avoir plus que 2 ou 3, répartis sur tous les comptes que j'ai ouvert un peu partout).

C'est de ce constat que j'ai eu l'idée de Troubador. Il s'agit d'un générateur de mot de passe en ligne. Jusque là, rien de très original, j'en conviens. Il s'agissait surtout pour moi de m'amuser un peu avec Flask, un framework en python.

Le principe est assez simple. Tout d'abord, pas d'inscription au site. Pour s'enregistrer et se loguer, la même méthode est appliquée : il suffit de rentrer un email valide. Un mail est envoyé avec un lien permettant l'authentification sur le site. Troubador est donc un service qui génére des mots de passe mais qui n'en a pas besoin, ça change. Ensuite, il est possible de paramétrer son compte, pour choisir la longueur des mots de passe qu'on souhaite générer et les différents symboles qu'on souhaite inclure. Il suffit ensuite d'indiquer le domaine pour lequel on souhaite un mot de passe et un "master password". L'application s'occupera de créer une chaîne de caractères utilisable sur le site.

Rien ne sera stocké dans la base de données de Troubador. Uniquement les domaines pour lesquels un mot de passe a été généré. Cela veut dire que si quelqu'un arrive à se connecter à votre compte, s'il ne dispose pas du mot passe maître, il ne pourra rien faire de plus. Pour un même trio utilisateur / domaine / master password, le secret généré sera toujours identique. Ça permet de pouvoir se reloguer ultérieurement au service externe en regénérant le mot de passe.

Pour l'instant, il s'agit uniquement de la première version utilisable, notée 0.1. J'ai l'intention d'ajouter d'autres choses à l'application. En premier lieu une api pour pouvoir l'utiliser via d'autres webapps. J'aimerais qu'on puisse aussi avoir des paramètres de gestion par domaine (par exemple pour les sites des banques qui ne veulent que 8 chiffres). Il faudra que j'ajoute aussi du javascript au site et un bookmarklet pour pouvoir générer et peupler un formulaire, sans avoir à se loguer directement sur le site principal.

Bref, n'hésitez pas à tester et me faire un retour. Et puis je ne suis pas assez réactif, le code de Troubador est disponible sur gitorious, envoyez moi des patches.

OpenData et évaluation

[De mémoire] J’aurais aimé que vous soyez là hier lorsque nous avons discuté, en partant de banalités jusqu’aux points de crispation très précis liés à l’OpenData.

Marylise Lebranchu, Ministre de la Décentralisation, de la Réforme de l’État et de la Fonction Publique lors de la Conférence de Paris

Il est peut-être temps d’initier notre gouvernement aux formats ouverts comme les Barcamps ou les OpenSpaces et ainsi que la parole publique cesse d’être une langue morte pour beaucoup de nos concitoyens comme le souhaite si candidement notre ministre. Mais les fauteuils de l’estrade de la Cour des Comptes semblent tellement confortables… et puis il faudrait rester plus d’une heure au contact des citoyens et réutilisateurs de données.

Ce n’est pourtant pas la partie de son discours qui m’a choqué. Alors que ses homologues anglais (Francis Maude) ou irlandais (Brendan Howlin T.D.) évoquaient l’importance de la transparence pour rétablir la confiance, Marylise Lebranchu a bien insisté sur le fait que l’OpenData est également un outil de mesure et d’évaluation pour pouvoir analyser la performance et l’efficacité de l’administration. Et je doute sincèrement que cet angle d’attaque permette d’avoir une approche sincère de la part des services de la puissance publique pour co-construire avec les citoyens.

En fixant des critères d’évaluation, on oriente complètement la réponse qui ne peut plus être innovante. C’est ce qui arrive avec l’école qui tue la créativité par la notation. C’est ce qui arrive avec la compétition sportive qui détruit le plaisir par les classements. C’est ce qui arrivera avec l’OpenData public qui ne pourra plus prendre le risque d’innover, de défricher ce terreau fertile avec les citoyens et se contentera de copier ce qui est considéré comme une réussite, bien souvent à l’étranger. En évaluant, on sanctionne l’échec ce qui crée de la peur et de la frustration. Je rêve d’un OpenData qui commence par rétablir la confiance au sein même de l’administration. Ce n’est qu’en rétablissant cette confiance en interne qu’elle pourra ensuite être transmise aux citoyens. Ce n’est qu’en embrassant une culture (de la donnée) que l’on peut la propager.

Aujourd’hui on n’a pas beaucoup entendu de citoyens.

Rolf Alter, Directeur de la Gouvernance publique et du Développement territorial, OCDE

Création de coopératives

Coopératives. Le mot semblerait presque désuet. À l’heure où l’économie est aux mains d’une finance high-tech, le mot sonne comme l’écho d’une vision vieillote, celle des utopies fouriéristes et d’un capitalisme soucieux de la condition ouvrière. La première coopérative a en effet vu le jour dans la ville minière du Rochdale, au Royaume-Uni, en 1844. Mais, en dépit de cette origine lointaine, le modèle coopératif n’a rien perdu de sa pertinence et il démontre tous les jours sa modernité.

Une coopérative est une structure de production de biens et de services dans laquelle les salariés sont copropriétaires du capital, codécisionnaires (« un membre, une voix ») et coélecteurs des dirigeants, ces derniers étant responsables devant eux. Une partie des bénéfices est obligatoirement réinvestie dans le développement de la coopérative et une autre est distribuée aux membres associés, sous forme de bénéfices sociaux. Avec l’accord des membres, la coopérative soutient aussi des activités extérieures, dans un esprit d’engagement envers la communauté. Le modèle coopératif est donc une forme d’organisation tournée vers l’intérêt collectif — c’est d’ailleurs à ce titre que l’Onu le défend (2012 Année internationale des coopératives) —, mais son dynamisme, ses capacités entrepreneuriales et ses résultats en font un substitut crédible au capitalisme financier.

Les coopératives emploient aujourd’hui 100 millions de salariés dans le monde, soit 20% de plus que les multinationales. […]

Ce modèle florissant vaut donc la peine d’être examiné. D’autant qu’il donne aux citoyens des leviers d’action sur l’économie, qu’il constitue un puissant outil de redistribution sociale et qu’il résiste mieux aux crises que les autres.

un million de révolutions tranquilles, Bénédicte Manier

Dans la perspective d’une refonte du site internet de scopyleft je m’interroge sur la pertinence d’avoir une partie dédiée à la création d’une SCOP (Société Coopérative et Participative). Il y aurait de la matière à partager sur ce que cela demande en termes administratif, comptable et stratégique. Mais aussi sur notre expérience.

Il y a des personnes qui nous ont contacté individuellement au cours de cette année, comme les happyculteurs, pour répondre ponctuellement à des questions précises relatives à la création et peut-être que cela suffit. Ou peut-être que cette partie du site serait aussi un acte de partage militant. Ou peut-être que cela nécessite un site dédié qui puisse être facilement enrichi par tous ?

Je suis prêt à passer un peu de temps là-dessus mais j’ai besoin de savoir si ça intéresse 2, 20 ou 200 personnes de façon à pouvoir trouver le support approprié. Quelles seraient vos attentes sur la création d’une telle ressource ?

Convertir un Raid1 Btrfs en Raid5

Toujours un peu joueur dans l'âme, j'ai monté il y a peu de temps un Raid1 natif avec Btrfs (donc sans LVM). Je dois avouer que ça fonctionne plutôt pas mal pour le moment. Le seul problème reste la sortie de df qui indique la taille totale des disques, alors que ça devrait être la moitié pour ce type de Raid. Une fois qu'on le sait, c'est moins génant.

Mais comme je suis encore plus joueur, j'ai décidé d'acheter un disque de 3T de plus et de switcher en Raid5. Je n'ai pas trouvé rapidement de solution pour le faire (et encore moins en français). Après avoir créé les bonnes partitions sur le disque, voici la procédure :

   # on formate la partition
   mkfs.btrfs /dev/sdXY
   # on ajoute la partition au raid existant
   btrfs device add /dev/sdXY /mount/path/
   # on converti en raid5
   btrfs balance start -dconvert=raid5 -mconvert=raid5 /mount/path/

Je vous conseille de lancer ça dans un screen, ça prend du temps. On peut vérifier que tout se passe bien via la sortie de dmesg (elle indique les extends qui sont déplacés). Deux commandes utiles également :

   btrfs fi show
   btrfs fi df /mount/path/

Vous verrez progressivement les données passer de Raid1 à Raid5, tout ça à chaud, le système de fichiers toujours accessible. C'est pas classe ?

Back on track

Après un disque dur mort, une réinstallation, l'absence de backup (qui a dit que les admins étaient les plus mal backupés ? ), finalement une sauvegarde retrouvée complètement par hasard, ce blog est de nouveau en ligne. Peut-être même qu'un jour j'écrirai un truc. Qui sait ?

iPad hair

C'est une révolution.