Comment s’attaquer aux problèmes (Libres conseils 10/42)

Chaque jeudi à 21h, rendez-vous sur le framapad de traduction, le travail collaboratif sera ensuite publié ici même.

Traduction Framalang : Sky, LIAR, lerouge, Goofy, peupleLa, lamessen LAuXKoS, Nys, Julius22, okram, kalupa, 4nti7rust, CoudCoud, zn01wr + Sinma

L’art de résoudre les problèmes

Thiago Madeira

Thiago Macieira est doublement diplômé. Il a une maîtrise en administration des affaires (MBA) et un diplôme d’ingénieur. Mais son implication dans le mouvement open source, depuis près de 15 ans maintenant, est antérieur à ses diplômes. Participant actif des communautés KDE, Qt et MeeGo, il a été ingénieur logiciel et responsable produit pour Qt, il a fait des conférences et il a écouté les gens. À présent, Thiago vit à Oslo en Norvège et quand il ne travaille pas sur Qt, il essaye — sans grande réussite — d’améliorer son skill à StarCraft 2.


Les problèmes forment une routine à laquelle nous sommes confrontés presque tous les jours ; nous les résolvons et c’est tellement habituel que bien souvent nous n’en avons même pas conscience. Cela peut être des situations aussi simples que chercher le meilleur chemin pour arriver à destination ou trouver la meilleure façon de tout faire tenir dans le réfrigérateur. Ce n’est que lorsque nous ne parvenons pas à les résoudre immédiatement que nous remarquons les problèmes car nous devons alors nous arrêter et y réfléchir. Notre vie professionnelle n’échappe pas à cette règle et la résolution de problèmes commence à faire partie de la description du poste à pourvoir.

La résolution de problèmes était le sujet de mon premier cours quand j’ai commencé ma formation d’ingénieur. Dans cet amphithéâtre bondé du siècle dernier, notre professeur expliquait à environ 700 étudiants de première année en quoi les ingénieurs étaient des solutionneurs de problèmes et comment nos vies professionnelles consisteraient à enchaîner les problèmes à résoudre. Certains seraient des problèmes faciles résolus en deux temps trois mouvements ; d’autres seraient tellement difficiles que nous aurions besoin d’une structure de projet et d’une équipe pour les résoudre — mais la plupart se situeraient entre ces deux extrêmes. Puis il commença à donner des exemples sur la façon dont sa propre mentalité de « solutionneur de problèmes » l’avait aidé dans sa vie professionnelle et personnelle, et nous offrit même un exemple en direct quand tout à coup le projecteur nous tomba dessus.

La faculté de résoudre des problèmes est un talent que nous pouvons affiner par la pratique et un travail de fond. La pratique est quelque chose que l’on ne peut acquérir que par l’expérience, par succession d’essais et d’erreurs (1) ; ce n’est donc pas quelque chose qu’on peut apprendre dans un livre. Se mettre en situation de résoudre des problèmes, en revanche, est quelque chose que l’on peut apprendre. Face au problème, l’expérience est comme notre boîte à outils, et les techniques de résolution le mode d’emploi des outils.

Formuler correctement la question

La question à laquelle nous essayons de répondre fournit la direction que nous allons prendre en essayant de résoudre le problème. Posez la mauvaise question et les réponses seront peu pertinentes, invalides ou juste complètement fausses. Par conséquent, poser la bonne question est essentiel. De plus, poser correctement la bonne question est important, car cela apporte des indices quant à ce que nous recherchons. La manière la plus inutile d’énoncer un problème qu’on puisse rencontrer est : « ça marche pas », c’est pourtant un grand classique. Certes, l’énoncé est juste, puisque manifestement quelque chose a planté. Néanmoins, cette façon de présenter le problème n’apporte aucun indice sur le point de départ pour rechercher des solutions.

Les systèmes de gestion de bogues imposent souvent au rapporteur du bogue de préciser les actions effectuées qui ont conduit à ce problème, la description de ce qui s’est passé (c’est-à-dire le symptôme) et une description du comportement attendu. La comparaison entre le symptôme et le comportement attendu est un bon point de départ pour poser la question fondamentale : «  pourquoi cela s’est-il produit, pourquoi cet autre comportement ne s’est-il pas produit ? ». Même si ce n’est pas la seule manière d’y arriver, appliquer cette technique à des problèmes peut certainement aider à formuler la question.

Formuler correctement le problème et la question, dans ses moindres détails, est aussi une manière de décrire davantage le problème tel qu’il s’est manifesté. En premier lieu, nous devons avoir conscience que le problème ne se trouve probablement pas où nous nous attendons à le trouver — si c’était le cas, nous l’aurions probablement déjà résolu. Présenter tous les détails du problème permet à l’assistance technique d’avoir plus d’informations pour travailler. De plus, même si c’est contre-intuitif, le fait de décrire le problème dans sa totalité conduit souvent à trouver la solution, si bien que de nombreux groupes de développement ont besoin que des développeurs se concentrent sur cette tâche, soit en discutant avec un collègue soit en s’adressant à un être innocent, tel qu’un canard en caoutchouc ou M. Patate.

De plus, il faut revenir régulièrement à la question afin de garder l’objectif dans le viseur. Lors de la résolution du problème, il convient de faire attention à ne pas se concentrer exclusivement sur l’une de ses parties en perdant de vue l’objectif global. Pour la même raison, il est nécessaire de reprendre la question de départ lorsqu’on a trouvé une solution éventuelle, pour pouvoir s’assurer qu’elle couvre bien l’intégralité du problème. Là encore, cela prouve bien la nécessité de poser la bonne question, qui décrira le problème dans son intégralité : sans la question complète, la solution pourrait être également incomplète.

Diviser pour mieux régner (2)

L’expérience que j’ai acquise en aidant des utilisateurs en ligne à résoudre leurs problèmes m’a appris que la plupart des personnes considérent leurs difficultés comme des blocs d’achoppement, monolithiques et indivisibles, qu’il faut traiter comme un tout. Vu sous cet angle, un vaste problème pose une question à laquelle il est très difficile de répondre entièrement.

À vrai dire, la grande majorité de ces problèmes peut se décomposer en plusieurs petits problèmes qu’il est donc plus facile de traiter séparément afin de déterminer s’ils sont la cause originelle du problème, sans parler de la possibilité qu’il y ait plusieurs origines au symptôme rapporté. Répéter cette opération, ne serait-ce qu’un petit nombre de fois, revient à s’attaquer à des problèmes mieux circonscrits, et amène par conséquent à des solutions plus rapides.

Cependant, plus nous sommes obligés de décomposer, plus nous devons connaître le fonctionnement interne du système que nous avons sous la main. De fait, celui qui doit résoudre un problème ne pourra le décomposer qu’aussi loin que sa connaissance du sujet le lui permettra, et c’est depuis ce point qu’il pourra ensuite traiter la question.

Pour ce qui concerne le développement logiciel, les sous-systèmes utilisés sont souvent de bons indices pour trouver comment décomposer le problème. Par exemple, si le problème implique une transmission de données par TCP/IP, deux subdivisions possibles sont l’expéditeur et le destinataire : il ne sert à rien de chercher le problème du côté du destinataire si l’expéditeur ne transmet pas les données correctement. De même, une application graphique qui n’affiche pas les données appelées dans une base de données a une division claire : ce serait une bonne idée de vérifier d’abord que l’accès à la base de données fonctionne avant d’enquêter sur la cause du mauvais affichage. Par ailleurs, on pourrait également envoyer des informations quelconques aux fonctions d’affichage et vérifier que ces données s’affichent correctement.

Même quand les regroupements ne sont pas faciles à faire, diviser le problème peut tout de même contribuer à éclairer la question. En fait, les divisions sont presque toujours utiles, car elles réduisent la quantité de code à inspecter et le niveau de complexité à gérer. Au pire, le simple fait de diviser le code en deux parties et de chercher le problème dans l’une des deux peut être utile. Cette technique, nommée bissection, est recommandée si les divisions créées à partir des sous-systèmes et des interfaces n’ont pas encore apporté de solution.

Une succession de divisions appropriées aura pour résultat final un petit exemple autonome qui expose le problème. À ce stade, l’une des trois options suivantes est habituellement la bonne : le problème peut être identifié et localisé ; le code est en fait correct et c’était ce que l’on en attendait qui était faux ; ou bien un bogue a été trouvé dans la couche de code de plus bas niveau. Un des avantages de ce procédé, c’est qu’il génère un scénario de test à joindre à un rapport de bogue, pour peu qu’un bogue soit en cause.

Conditions aux limites (3)

Une question similaire à la division du problème est celle des conditions aux limites. En mathématiques et en physique, les conditions aux limites sont l’ensemble des valeurs qui déterminent la région de validité des équations résolues. Pour le logiciel, les conditions aux limites sont l’ensemble des conditions qui doivent être satisfaites pour que le code s’exécute correctement. Habituellement, les conditions aux limites sont loin d’être simples : à la différence des mathématiques ou de la physique, les variables des systèmes logiciels sont beaucoup trop nombreuses, ce qui signifie que leurs conditions aux limites sont également légion.

Dans les systèmes logiciels, les conditions aux limites sont souvent nommées « conditions préalables », c’est-à-dire des conditions qui doivent être satisfaites avant qu’une certaine action ne soit autorisée. Vérifier que ces conditions prélalables ont été satisfaites est un bon exercice dans la recherche d’une réponse, car leur violation est clairement un problème qui doit être résolu — quand bien même ce n’est pas la cause première du problème initial. Des conditions préalables peuvent tout simplement prendre la forme d’un pointeur qui doit être valide avant qu’on puisse le déréférencer, ou d’un objet qui ne doit pas être éliminé avant de pouvoir être utilisé. Les conditions préalables complexes seront très probablement documentées en vue de l’utilisation du logiciel.

Un autre groupe intéressant de conditions aux limites se caractérise, curieusement, par ce qui n’est pas autorisé : le comportement indéfini. Ce type de conditions aux limites est très commun lorsque l’on traite des spécifications qui essaient d’être très explicites sur la manière dont le logiciel est censé se comporter. Les compilateurs et les définitions de langage en sont un bon exemple. À strictement parler, déréférencer un pointeur null est un comportement indéfini : la conséquence la plus commune en est l’enregistrement d’une exception du processeur et l’arrêt du programme, mais d’autres comportements sont aussi autorisés, y compris le fonctionnement sans faille.

Le bon outil pour le bon usage

Si les ingénieurs sont des solutionneurs de problèmes, la devise de l’ingénieur est « Utilise le bon outil pour le bon usage ». Cela peut sembler évident, étant donné qu’on ne s’attend pas à ce que quelqu’un utilise un marteau pour résoudre un problème électronique. Cependant, les cas d’utilisation du mauvais outil sont plutôt fréquents, souvent parce qu’on ignore qu’il existe un meilleur outil.

Certains de ces outils sont la base du développement logiciel, comme le compilateur et le débogueur. L’incapacité à se servir de ces outils est impardonnable : le professionnel qui se retrouve dans un environnement d’outils nouveaux ou inconnus, si par exemple il change de poste ou d’emploi, doit consacrer du temps à apprendre à les utiliser, à se familiariser avec leurs fonctionnalités et limitations. Par exemple, si un programme plante, être capable de déterminer l’endroit du plantage ainsi que les variables appelées dans cette portion du code peut aider à trouver la cause du problème et donc la solution.

D’autres outils peu connus sont plus évolués, prévus pour des emplois spécifiques, ou encore ne sont disponibles qu’à un prix ou sous des conditions que l’ingénieur ne peut réunir. Ils peuvent toutefois être incroyablement utiles pour contribuer à la résolution de problèmes. Il peut s’agir de vérificateurs de code statique ou de processus, de débogueurs de mémoire, d’enregistreurs d’événements matériels, etc. Par exemple, le matériel de développement inclut souvent un système permettant de le contrôler à l’aide d’une interface spéficique comme JTAG ou de lister toutes les instructions exécutées et l’état des processeurs. Mais cela nécessite d’avoir du matériel et des outils spécifiques, qui ne sont pas facilement accessibles et coûtent plus cher que les machines et périphériques grand public. Un autre exemple est la suite d’outils Valgrind (4), qui comprend un vérificateur de processus et des débogueurs de mémoire. L’ensemble est gratuit, facilement disponible, mais fait partie de ces outils spécifiques de haut niveau dont l’usage n’est pas enseigné à l’école.

Connaître le contenu de sa boîte à outils est un savoir précieux. L’utilisation d’un outil spécialisé pour chercher un problème va probablement donner un résultat plus rapide, qu’il soit positif — et confirme le problème — ou négatif, et oriente la recherche dans une autre direction. Par ailleurs, il est important de savoir comment utiliser ces outils, ce qui justifie le temps passé à lire la documentation, à  s’entraîner ou simplement à expérimenter ces outils avec des problèmes connus pour comprendre comment ils fonctionnent.

Conclusion

Résoudre  les problèmes est un art accessible à tous. Comme pour tous les arts, certaines personnes semblent avoir une telle facilité qu’ils semblent être nés avec cette compétence. Mais en réalité, avec assez d’expérience et de pratique, la résolution des problèmes devient une activité insconsciente.

Quand on est confronté à un problème qui n’est pas évident à résoudre, il faut s’asseoir et le considérer dans son intégralité. Quel problème avons-nous ? Pouvons-nous formuler la question à laquelle nous devons répondre ? Une fois que nous savons ce que nous cherchons, nous pouvons commencer à examiner où peut être situé le problème. Peut-on le décomposer en parties plus petites et plus maniables ? Quels sont les meilleurs outils à utiliser pour chaque partie ? Avons-nous vérifié que nous utilisions correctement les fonctionnalités et services disponibles ?

Après avoir résolu de nombreux problèmes, on commence à repérer des schémas. Il devient plus facile de détecter des indices subtils à partir des symptômes et de diriger les recherches vers le problème réel. Un correcteur de problèmes expérimenté peut même ne pas se rendre compte que cette action a lieu. C’est un signe que l’expérience et les automatismes se sont si bien mis en place qu’il n’y a plus besoin d’effort conscient pour accéder à ces compétences.

Bien sûr il, y aura toujours des problèmes qui seront difficiles à résoudre dans la vie : problèmes professionnels, existentiels, philosophiques ou même ceux qui sont causés par la pure curiosité. Là encore, c’est le défi qui nous stimule, le besoin de comprendre toujours plus et mieux. Sans cela, la vie serait trop triste.

(1) http://fr.wikipedia.org/wiki/Apprentissage#Apprentissage_par_essais_et_erreurs

(2) http://fr.wikipedia.org/wiki/Diviser_pour_régner_(informatique)

(3) http://fr.wikipedia.org/wiki/Condition_aux_limites

(4) http://fr.wikipedia.org/wiki/Valgrind

Crédit photo Luxuryluke (CC BY-NC-ND 2.0)




Inviter à l’audace (Libres conseils 7/42)

Chaque jeudi à 21h, rendez-vous sur le framapad de traduction, le travail collaboratif sera ensuite publié ici même.

Traduction Framalang : Goofy, lerouge, lamessen, peupleLa (relectures), maxlath, Julius22, kalupa, ga3lig, lamessen

Laisser le champ libre

Lydia Pintscher

Lydia Pintscher est une femme naturellement douée pour apprivoiser les gens, les geeks et les chatons. Entre autres, elle est en charge des programmes de mentors de KDE (Google Summer of Code, Google Code-in, Season of KDE), membre fondateur des groupes de travail de la communauté KDE et membre du conseil de KDE e.V.

Le logiciel libre a un ennemi. Ce n’est pas celui auquel pensent la plupart des personnes sur Internet. Non, l’ennemi, c’est le manque de participation active.

Chaque jour des milliers de personnes se mettent à chercher ce qui pourrait bien donner un sens à leur vie, et se demandent comment réaliser quelque chose qui compte vraiment. Tous les jours des milliers de lignes de code pour des logiciels libres sont en attente d’écriture et de débogage, des programmes attendent d’être mis en avant et traduits, des éléments artistiques attendent de voir le jour et ainsi de suite.

Malheureusement, il arrive beaucoup trop souvent que la connexion ne s’établisse pas entre tous ces individus et tous ces projets. Il y a plusieurs raisons à cela. Tout commence avec des personnes qui ne connaissent rien au logiciel libre, à tous ses avantages et à ses valeurs. Mais on commence à y arriver. Les gens commencent à utiliser et peut-être même à comprendre le logiciel libre à grande échelle. Les projets de logiciels libres vivent de la conversion de certains de leurs utilisateurs en contributeurs actifs. Et c’est là que les problèmes sérieux commencent.

J’ai accompagné des centaines d’étudiants avec des programmes de tutorat et je suis allée sensibiliser de diverses façons aux projets de logiciels libres. J’ai travaillé avec des gens enthousiastes dont la vie a pris un tour bien meilleur grâce à leurs contributions aux logiciels libres. Mais il y a un leitmotiv que je vois encore et toujours et ça me brise le cœur parce que je sais maintenant à côté de quels talents nous passons à cause de ça : ne pas se sentir autorisé à faire quelque chose d’extraordinaire. Un collègue tuteur du Google Summer of Code a mieux résumé ceci en disant : « on a rarement l’impression que les contributeurs de l’open source n’ont pas eu la permission de travailler sur des trucs mais plutôt qu’ils ne se sont pas précipités assez vite au bon moment ». Les contributeurs potentiels pensent souvent qu’ils ne sont pas autorisés à contribuer. Les raisons en sont nombreuses et reposent toutes sur des malentendus. Voici les préjugés les plus courants d’après mon expérience :

  • « Je ne sais pas coder. Pas moyen pour moi de contribuer. »
  • « Je ne suis pas vraiment bon pour ça. On n’a pas besoin de mon aide. »
  • « Je serais rien qu’un boulet. Ils ont des choses plus importantes à gérer. »
  • « On n’a pas besoin de moi. Ils doivent avoir déjà assez de gens bien plus brillants que moi. »

Ces préjugés sont presque toujours sans fondement et j’aurais aimé savoir il y a bien longtemps qu’ils sont si répandus. J’aurais dès le début abordé très différemment mon travail de sensibilisation.

Le plus simple, pour sortir quelqu’un de cette situation, c’est de l’inviter en personne. « Cet atelier que nous proposons ? — Oui, bien sûr, tu devrais venir ». « Ce bogue remonté dans le traqueur de bogues ? — Je suis sûre que tu es la personne idéale pour essayer de le corriger ». « Ce communiqué de presse qu’il faut préparer ? — Ce serait super si tu pouvais le relire et t’assurer qu’il est bon ». Et si ce n’est pas possible, assurez-vous que votre matériel de promotion — vous en avez bien un peu, non ? — précise clairement quel genre de personnes vous recherchez et ce que vous estimez être les prérequis.

Assurez-vous surtout de toucher les personnes en-dehors du cercle des contributeurs habituels, car la barrière est encore plus haute pour eux. À moins de dépasser cette limite, vous ne recruterez que vous-même — c’est-à-dire que vous aurez davantage de contributeurs semblables à ceux que vous avez déjà. Les personnes semblables à celles déjà présentes sont géniales, mais pensez à toutes les autres personnes extraordinaires à côté desquelles vous passez et qui pourraient apporter de nouvelles idées et de nouvelles compétences à votre projet.




Geektionnerd : Impression 3D de disque

Geektionnerd - Simon Gee Giraudot - CC by-sa

Geektionnerd - Simon Gee Giraudot - CC by-sa

Source : Impression 3D : une Américaine conçoit son propre disque vinyle (Numerama)

Crédit : Simon Gee Giraudot (Creative Commons By-Sa)




« Libres conseils », une, première !

Qui n’a pas son projet libre ?

Plus qu’une mode ou un engouement passager, c’est un véritable mouvement de fond depuis quelques années : toute une communauté qui crée, échange, élabore, donne et reçoit des contributions, enfourche de nouveaux projets…

Fort bien, mais…

SourceForge récemment et Github aujourd’hui sont de véritables cimetières de projets libres et open source qui n’ont jamais trouvé d’audience, d’équipe de développement, de communauté active. Rien de bien tragique là-dedans. On peut estimer que ces plateformes sont pour beaucoup de libristes une sorte de terrain de jeu, de laboratoire, d’incubateur où le code et sa documentation s’expérimentent par à-coups, avec l’enthousiasme et l’énergie de ceux qui s’emparent d’un outil pour le mettre au service de leur créativité. Un excellent moyen d’apprendre en faisant finalement, à code ouvert. Et qu’importe alors l’absence d’aboutissement dans 80% des cas puisque c’est la démarche qui a été formatrice.

Cependant vous pouvez avoir envie de dépasser le stade du hobbyiste sympathique qui va bricoler son génial projet dans son coin. Vous pouvez avoir le désir de mettre toutes le chances de votre côté pour que le projet libre aboutisse vraiment, gagne en notoriété, entre dans une logique commerciale, vous procure amour, gloire et beauté.

C’est précisément l’intérêt du feuilleton dont vous allez déguster les épisodes semaine après semaine.

42 auteurs vous feront partager leur expérience, avec sérieux et humour, vous raconteront leurs ratages et leurs succès, vous diront comment éviter les uns et atteindre les autres. Des principes, des recommandations mais aussi des trucs et des ficelles, bref une ribambelle chatoyante de libres conseils.

Chaque semaine ou presque, l’équipe framalang vous proposera un nouvel épisode traduit du livre électronique en anglais Open Advice.

Chaque semaine — top départ chaque jeudi soir à 21h — une ou deux tranches du gâteau seront proposées à la traduction collaborative sur un framapad, donc en libre accès pour tous ceux qui souhaitent y contribuer. Participez à l’aventure !

La version que nous publierons ensuite ici même, comme dans le premier échantillon ci-dessous qui est une sorte de préambule, est un premier état de la traduction (donc évidemment perfectible), l’étape suivante sera une révision générale de tous les articles pour les joindre en un Framabook à venir.

Eh oui ça se passe comme ça chez Frama !

Les traducteurs de ce premier round d’échauffement :

peupleLa, Astalaseven, Hideki, Vilnus Atyx, liu qihao, Cyrille L., Khyvodul, jcr83, Slystone, schap2, 4nti7rust, Goofy, Antoine, lamessen + 4 anonymes

Libres Conseils

Logiciels libres et open source : ce que nous aurions aimé savoir avant de commencer

Open Advice est une base de connaissances provenant d’une grande variété de projets de logiciels libres. Elle répond à des questions dont 42 contributeurs majeurs auraient aimé connaître les réponses lorsqu’ils ont débuté. Vous aurez ainsi une longueur d’avance quelle que soit la façon dont vous contribuez et quel que soit le projet que vous avez choisi.

Les projets de logiciels libres modifient le paysage du logiciel de façon impressionnante grâce à des utilisateurs dévoués et une gestion innovante. Chacun apporte quelque chose au mouvement à sa façon, avec ses capacités et ses connaissances. Cet engagement personnel et la puissance du travail collaboratif sur Internet donnent toute leur force aux logiciels libres et c’est ce qui a rassemblé les auteurs de ce livre.

Ce livre est la réponse à la question « Qu’auriez-vous aimé savoir avant de commencer à contribuer ? » Les auteurs offrent un aperçu de la grande variété de talents qu’il faut rassembler pour réussir un projet de logiciel : le codage bien sûr, mais aussi le design, la traduction, le marketing et bien d’autres compétences. Nous sommes là pour vous donner une longueur d’avance si vous êtes nouveau. Et si ça fait déjà un moment que vous contribuez, nous sommes là pour vous donner un aperçu d’autres domaines et projets.

pour les géants et ceux qui se tiendront sur leurs épaules [1] 

Avant-propos

Ce livre parle de communauté et de technologies. Il est le fruit d’un travail collectif, un peu comme la technologie que nous construisons ensemble. Si c’est votre première rencontre avec notre communauté, vous pourrez trouver étrange de penser qu’une communauté puisse être le moteur qui propulse la technologie. La technologie n’est-elle pas l’œuvre des grands groupes industriels ? En fait, pour nous c’est presque l’inverse. Les auteurs de ce livre sont tous membres de ce que vous pourriez appeler la communauté du logiciel libre. Un groupe de personnes qui partagent l’idée fondatrice que les logiciels sont plus puissants, plus utiles, plus flexibles, mieux contrôlables, plus justes, plus englobants, plus durables, plus efficaces, plus sûrs et finalement simplement meilleurs quand ils sont fournis avec les quatre libertés fondamentales : la liberté d’utiliser, la liberté d’étudier, la liberté de partager et la liberté d’améliorer le logiciel.

Et bien qu’il y ait maintenant un nombre croissant de communautés qui ont appris à se passer de la proximité géographique grâce aux moyens de communication virtuels, c’est cette communauté qui en a été le précurseur.

En fait, Internet et la communauté du logiciel libre[2] suivaient des développements mutuellement dépendants. Au fur et à mesure qu’Internet grandissait, notre communauté pouvait grandir en même temps. Mais sans les valeurs ni la technologie qu’apportait notre communauté, il ne fait aucun doute à mes yeux que jamais Internet n’aurait pu devenir ce réseau global reliant les personnes et les groupes du monde entier.

À ce jour, nos logiciels font fonctionner la majeure partie d’Internet, et vous devez en connaitre au moins quelques-uns, comme Mozilla Firefox, OpenOffice.org, Linux, et peut-être même Gnome ou KDE. Mais notre technologie peut aussi se cacher dans votre téléviseur, votre routeur sans fil, votre distributeur automatique de billets, et même votre radio, système de sécurité ou bataille navale. Elle est littéralement omniprésente.

Ils ont été essentiels dans l’émergence de quelques-unes des plus grandes sociétés que vous connaissez, comme Google, Facebook, Twitter et bien d’autres. Aucune d’entre elles n’aurait pu accomplir autant en si peu de temps sans le pouvoir du logiciel libre qui leur a permis de monter sur les épaules de ceux qui étaient là avant eux. Mais il existe également de nombreuses petites entreprises qui vivent de, avec, et pour le logiciel libre, dont la mienne, Kolab Systems. Le fait d’agir activement avec la communauté et dans un bon esprit est devenu un élément de succès essentiel pour nous tous. Et c’est aussi vrai pour les plus grosses, comme Oracle nous l’a involontairement démontré durant et après sa prise de contrôle de Sun Microsystems. Il est important de comprendre que notre communauté n’est pas opposée au commerce. Nous aimons notre travail, et beaucoup d’entre nous en ont fait leur métier pour gagner leur vie et rembourser leurs crédits. Donc quand nous parlons de communauté, nous voulons dire des étudiants, des entrepreneurs, des développeurs, des artistes, des documentalistes, des professeurs, des bricoleurs, des hommes d’affaires, des commerciaux, des bénévoles et des utilisateurs. Oui, des utilisateurs. Même si vous ne vous en êtes pas encore rendu compte ou n’avez jamais appartenu à une communauté, vous faites en réalité déjà partie de la nôtre. La question est de savoir si vous allez y participer activement. Et c’est cela qui nous différencie des poids lourds de la monoculture, des communautés fermées, des jardins clôturés de sociétés telles qu’Apple, Microsoft et d’autres. Nos portes sont ouvertes. Tout comme nos conseils. Et également notre potentiel. Il n’y a pas de limite à ce que vous pouvez devenir — cela dépend uniquement de votre choix personnel comme cela a été le cas pour chacun d’entre nous.

Donc si vous ne faites pas encore partie de notre communauté, ou si vous êtes simplement curieux, ce livre offre un bon point de départ. Et si vous êtes déjà un participant actif, ce livre pourrait vous offrir un aperçu de quelques facettes et de quelques perspectives qui seront nouvelles pour vous.

En effet, ce livre contient d’importantes graines de ce savoir implicite que nous avons l’habitude de construire et de transférer à l’intérieur de nos sous-communautés qui travaillent sur diverses technologies. Ce savoir circule généralement des contributeurs les plus expérimentés vers les moins expérimentés. C’est pourquoi il semble tellement évident et naturel à ceux qui fréquentent notre communauté. Ce savoir et cette culture de la collaboration nous permettent de créer d’extraordinaires technologies avec de petites équipes du monde entier au-delà des différences culturelles, linguistiques et de nationalité. Cette manière de fonctionner permet de surpasser des équipes de développement bien plus grandes de certaines des plus grosses sociétés au monde. Tous les contributeurs de ce livre ont une expérience solide dans au moins un domaine, parfois plusieurs. Ils sont devenus des enseignants et des mentors. Au cours des quinze dernières années, j’ai eu le plaisir d’apprendre à connaître la plupart d’entre eux, de travailler avec beaucoup, et j’ai le privilège de compter certains parmi mes amis.

Comme l’a dit judicieusement Kévin Ottens pendant le Desktop Summit 2011 à Berlin, « construire une communauté, c’est construire de la famille et de l’amitié ».

C’est donc en réalité avec un profond sentiment de gratitude que je peux dire qu’il n’y a aucune autre communauté dont je préférerais faire partie, et je suis impatient de vous rencontrer à l’une ou l’autre des conférences à venir.

— Georg Greve

Zürich, Suisse, le 20 août 2011

Georg Greve a fondé la Free Software Foundation Europe (FSFE) en 2000 et en a été le président fondateur jusqu’en 2009. Durant cette période, il a été responsable du lancement et du développement de nombreuses activités de la FSFE, telles que les alliances, la politique ou les travaux juridiques. Il a intensivement travaillé avec de nombreuses communautés. Aujourd’hui, il poursuit ce travail en tant qu’actionnaire et PDG de Kolab Systems AG, une société qui se consacre entièrement aux logiciels libres. Pour ses actions en faveur du logiciel libre et des standards ouverts, Georg Greve a été décoré de la croix fédérale du mérite (Bundesverdienstkreuz am Bande) par la République Fédérale d’Allemagne le 18 décembre 2009. Thank You! Merci !

Ce livre n’aurait pu voir le jour sans la participation de chaque auteur et des personnes suivantes, qui ont aidé à sa réalisation :

Anne Gentle (relecture)

Bernhard Reiter (relecture)

Celeste Lyn Paul (relecture)

Daniel Molkentin (mise en page)

Debajyoti Datta (site internet)

Irina Rempt (relecture)

Jeff Mitchell (relecture)

Mans Rullgard (relecture)

Noirin Plunkett (relecture)

Oregon State University Open Source Lab (hébergement du site internet)

Stuart Jarvis (relecture)

Supet Pal Singh (site internet)

Saransh Sinha (site internet)

Vivek Prakash (site internet)

Will Kahn-Greene (relecture)

* * * * * *

[1] Note des traducteurs : dédicace par allusion à « Nous sommes des nains juchés sur les épaules de géants. » Bernard de Chartres, XIIe siècle

[2] Note de l’auteur : pour moi, l’Open Source n’est que l’un des aspects de cette communauté. Cet aspect particulier a trouvé son articulation en 1998, c’est-à-dire quelque temps après l’arrivée d’Internet. Mais n’hésitez pas à dire « Open Source » au lieu de « logiciel libre » si vous préférez ce terme.

Crédits photo hellojenuine (CC-BY-SA)




Framasoft a fait son original le week-end dernier à Paris

Il est rare que Framasoft s’évade d’Internet et encore plus rare qu’il organise lui-même des évènements sur le terrain de la vraie vie. Alors autant que ça sorte un peu de l’ordinaire, comme ce fut le cas vendredi 7 décembre à la Rockette Libre et samedi 8 décembre à la librairie « À Livr’Ouvert ».

aKa - CC by

Framathon à la Rockette Libre

C’est temps libre chaque vendredi soir à la Petite Rockette. Et c’était au tour de Framasoft d’investir le lieu le 7 décembre dernier.

Il s’agissait de lancer le top départ d’un ambitieux projet en partenariat avec LinuxFr : traduire dans son intégralité le livre Open Advice: what we wish we had known when we started (avec le recul, qu’auriez-vous voulu savoir quand vous avez commencé à contribuer à la communauté du libre ?)

Or nous manquions d’ordinateurs, nous étions un peu fatigués en cette fin de semaine, et nous avions plein de choses à nous dire car certains ne s’étaient pas vus depuis bien longtemps (parfois depuis leur naissance). Donc rares étaient ceux qui travaillaient effectivement sur la traduction : trois, quatre personnes tout au plus au maximum de l’activité. Il faut aussi vous avouer que le slogan détourné par Pouhiou à cette occasion ne nous a pas vraiment motivés : « Boire ou traduire, il faut choisir ! » 😉

aKa - CC byEt pourtant le travail proposé fut réalisé « vite fait bien fait » ! Pourquoi ? Parce que nous avions déposé les deux premiers articles du livre sur Framapad et sollicité dans le même temps la participation d’Internet. Pour ce qui nous concerne, nous avions projeté sur le mur les pads en question et jetions un oeil de temps en temps sur le texte et les couleurs qui défilaient à l’écran.

L’originalité est là.

La majorité des lecteurs de ce blog est désormais habituée à un tel l’outil et une telle manière de procéder ensemble. Mais pour quelqu’un qui découvre, cela a quelques chose de magique ! Et il n’est pas au bout de sa surprise car quand il arrive (enfin) à comprendre que derrière chaque couleur en mouvement se cache quelque part une personne connectée, il lui est tout aussi suprenant d’apprendre que tout ce petit monde n’a pas été « sélectionné » et surtout travaille « pour rien ». Pour la beauté du geste, pour la beauté du Libre…

Cette dernière phrase valait bien une danse 😉

aKa - CC by

Framabook chez « À Livr’Ouvert »

Comment donc ? Tous les livres de notre libre collection Framabook dans une librairie parisienne ! En vitrine même !

Il fallait marquer le coup en invitant les lecteurs à rencontrer les auteurs.

aKa - CC byC’est ainsi que fut organisée une très conviviale mais somme toute classique séance de dédicaces avec trois de nos auteurs : le gendre idéal Benjamin Jean, le plus célèbre auteur vivant du domaine public Pouhiou et l’homme qui gratte plus vite son ukulélé que son ombre Simon Gee Giraudot.

Un petit ordinateur se trouvait au milieu d’eux. Il contenait les versions numériques intégrales de toute la collection.

L’originalité est là.

Les gens étaient évidemment cordialement invités à acheter et repartir avec des livres, c’est normal nous sommes dans une librairie. Mais ils pouvaient aussi sortir leur clé USB que nous nous faisions un plaisir de remplir avec la version numérique du ou des livre(s) de leur choix.

C’est gratuit, mais c’est surtout libre. C’est à notre connaissance une grande première que de proposer, dans un tel lieu, un tel service libre en libre service. Et c’est tout à l’honneur de l’audacieuse librairie qui porte décidément bien son nom. Nous sommes tout d’un coup très loin d’Hadopi.

Ah, et sinon nous avons vendu une trentaine de livres papiers Framabook ce jour-là.

aKa - CC by

Nous remercions toutes celles et ceux qui sont venus et ont participé à ces deux singuliers évènements et plus particulièrement Olive (Rockette Libre) et Bookynette (À Livr’Ouvert) pour leur invitation, accueil, disponibilité et bonne humeur.

C’est quand vous voulez pour recommencer 😉

Crédit photo : aKa (Creative Commons By)




Merci le piratage, on n’est pas au chômage

Le jeune blogueur roumain qui témoigne ci-dessous de façon courageuse et provocatrice écrit également sur son blog : « Le Lumia 920 est en ce moment mon smartphone favori et Microsoft est l’entreprise high-tech la plus excitante… du moins cette semaine ». Ce qui convenons-en n’est guère conforme ni au cliché du pirate anti-monopole propriétaire, ni à celui du casseur de code qui monnaye au prix fort des données captées par effraction.

En jetant un coup d’œil rétrospectif sur ses années de formation et à la manière dont il a appris les logiciels et l’informatique, il constate que par nécessité le plus souvent — et non dans le seul but d’économiser le prix d’une licence — il a utilisé des logiciels piratés.

Que ceux qui n’en ont jamais fait autant lui jettent la première pierre.

Ce qui est original en revanche, c’est l’effet formateur du piratage selon lui : en ayant un accès, certes illégal, à de puissants logiciels coûteux, les adolescents de pays longtemps négligés par les campagnes marketing de Microsoft ont pu apprendre, comprendre et maîtriser leurs usages. Au point qu’une génération entière peut accéder avec des compétences sérieuses à une activité professionnelle dans le domaine de l’informatique.

La trajectoire de Vlad Dudau est pleine d’enseignements pour la communauté libriste : n’ayant manifestement jamais été en contact avec les logiciels libres (manqueraient-ils de visibilité en Roumanie comme ailleurs ? — oui bien sûr !), c’est très logiquement qu’après avoir été formé par les logiciels propriétaires, il les célèbre maintenant et les chronique aujourd’hui dans son travail de journaliste du Net. Imaginez maintenant comment la mise à disposition de logiciels libres dès les années de formation scolaire pourrait inversement former toute une génération. Pas besoin de transgresser la loi ni de pirater pour cela. Nous savons que de nombreux enseignants agissent déjà en employant les outils et les valeurs du Libre. Mais la force du logiciel libre reste à déployer bien plus largement, sans doute. Après la circulaire recommandant l’usage du logiciel libre dans l’administration, aurons-nous bientôt son équivalent pour préconiser le logiciel libre dans l’éducation ?

jeunes pirates à l'assaut du savoir numérique

Comment le piratage a changé ma vie

How piracy changed my life

Vlad Dudau – 1er décembre 2012 – Blog Neowin.net

(Traduction framalang : peupleLa, Yoha, Kiwileaks, Robin Dupret, LeCoyote, GPif, goofy, Cyb)

De nombreuses discussions récentes ont porté sur le piratage et les moyens de le combattre, y compris par certaines mesures assez radicales. Mais je pense que la plupart des gens négligent certains des aspects positifs du piratage. Comprenez-moi bien : je n’encourage pas le piratage et je ne dis pas que c’est bien ; je dis juste que ça n’est ni tout noir ni tout blanc. Le piratage n’est qu’un symptôme de quelque chose de plus global, que ce soit les mauvais modèles économiques, les marchés restrictifs ou les problèmes financiers. Et je pense que mon histoire personnelle le prouve.

Je suis né en Roumanie, un pays qui venait de traverser une révolution et redevenait une démocratie. En tant que société, nous étions en train de nous souvenir de ce qu’était la démocratie et du fonctionnement du libre échange. Nous découvrions les avancées technologiques majeures réalisées à l’Ouest ces 30 dernières années alors que notre propre pays et notre peuple étaient restés coupés de l’information et technologiquement dépassés.

Mon premier PC était un impressionnant Pentium MMX cadencé à 166 MHz, avec un disque dur de 2Go et 64Mo de RAM si je me souviens bien. À cette époque les gens avaient des 386 et 486 sous DOS ; donc le fond bleuté de Windows 95, c’était quand même quelque chose. Mais voilà le problème : la copie de Windows 95 que j’utilisais était piratée. Elle venait d’un ami de la famille qui l’avait sur quelques disquettes. Ce n’est pas parce que ma famille était chiche ou qu’elle voulait commettre un crime, c’était simplement parce qu’il n’y avait pas d’autre solution. Windows n’était vendu nulle part dans le pays — en tout cas pas légalement.

Quelques années plus tard, lors de la sortie de Windows 98, la même chose se reproduisit. Cet ami de la famille est venu avec un tas de disquettes et a installé l’OS sur notre PC.

Quand XP est sorti, Microsoft avait enfin commencé à s’intéresser à notre pays, sans parler du fait que que le libre-échange était enfin en pleine expansion ; il y avait donc plein de moyens légaux d’ acheter ce nouvel OS. Le problème, c’est que l’OS était souvent au moins aussi cher que l’ordinateur lui-même, donc l’acheter doublait littéralement les coûts. Oh, et au cas où vous vous poseriez la question cela représentait l’équivalent d’environ 3 mois de salaire. Pour vous donner une meilleure idée, imaginez que Windows coûte dans les 2 000 dollars.

J’ai eu la chance d’avoir une copie originale de XP livrée avec le nouveau PC que ma famille venait d’acheter. Cependant, un an après, quand la carte mère a brûlé et que nous avons dû acheter du nouveau matériel, nous nous sommes de nouveau tournés vers l’ami de la famille.

Durant les 5 à 6 années suivantes, j’ai utilisé ce PC avec cette version piratée de Windows pour télécharger une quantité infinie de jeux et de logiciels — toujours illégalement. Des plus basiques Half-Life et Warcraft jusqu’à l’intégrale de la Creative Suite d’Adobe. Encore une fois ce n’était pas à cause du prix, encore que dépenser quelques milliers de dollars pour Adobe CS aurait été complètement insensé et aurait précipité n’importe quelle famille dans la pauvreté, mais surtout parce que la plupart de ces logiciels n’étaient même pas disponibles sur le marché.

C’est grâce au piratage que j’ai eu accès à une quantité d’informations qu’il aurait été impossible de trouver autrement. C’est grâce au piratage que j’ai appris à utiliser Photoshop, à faire du montage vidéo, à installer un système d’exploitation.

Et je ne suis pas le seul. Parmi mes amis, tous ceux qui ont fini par travailler dans l’informatique ont commencé en utilisant des logiciels piratés. Comment un jeune de 15 ans pourrait-il sinon apprendre à se servir d’un logiciel qui coûte des milliers de dollars, quand le revenu mensuel moyen tourne autour de $200 ? Comment dans ce pays un gamin normal aurait-il pu apprendre avec des trucs dont le prix est prohibitif même aux États-Unis ou au Royaume-Uni ?

Donc voilà : c’est grâce au piratage que beaucoup d’entre nous ont un emploi aujourd’hui. Sans toutes ces heures passées à comprendre les logiciels, mes amis et moi ne serions jamais devenus graphistes, ou développeurs de jeux vidéos, ou journalistes en informatique. J’ose dire que nous aurions été des membres de la société beaucoup moins productifs.

Je sais que je viens de dire des choses plutôt compromettantes, mais le truc, c’est qu’aucun de nous ne pirate plus aujourd’hui. Pourquoi ? Parce que nous avons toujours su que ce n’était pas bien de pirater, bien que nous n’ayons jamais vraiment eu le choix. Maintenant que nous avons tous du boulot, que le contenu est enfin disponible, et que les entreprises ont changé leur modèle économique pour offrir un accès bon marché aux étudiants et aux écoles (une licence Windows à $39 , qui en veut ?), nous faisons tous le choix de payer pour les logiciels, la musique et les films. Ah oui ! Cet ami de la famille qui piratait systématiquement les OS pour nous ? Il est maintenant manager chez IBM.

La plupart des gens piratent par besoin, pas par appât du gain. Et les logiciels piratés peuvent être d’une importance vitale pour le développement d’une génération dans les régions défavorisées. Bien sûr, des logiciels accessibles et bon marché seraient largement préférables, mais il y en a si peu qui circulent.

Quant à ceux qui piratent par cupidité, eh bien ce ne sont que des trous du cul ; mais heureusement pour nous il n’y en a pas tant que ça. Je suis vraiment curieux de savoir ce que vous en pensez, et j’espère que nous pourrons lancer une conversation vraiment constructive.

Crédit photo : oakleyoriginals licence Creative Commons Attribution 2.0




Libérer nos médias captifs du matériel ?

Matériels incompatibles, absence d’interopérabilité, formats fermés, logiciels propriétaires… des motifs de colère et de combats familiers de la communauté libriste. Ces problématiques sont cependant un peu désincarnées aux yeux de la majeure partie de nos concitoyens du Net tant qu’ils n’ont pas été personnellement confrontés à des blocages fort irritants.

Une situation concrète est le point de départ du coup de gueule de Terence Eden. Quant à la véhémence de ses propos, elle est à la mesure de l’urgence. Car dans la guerre en cours, celle de notre liberté de choix, Apple, Amazon, Google et quelques autres ont plusieurs longueurs d’avance : des millions d’utilisateurs sont déjà entrés de leur plein gré dans des prisons numériques dorées.

Dans cet environnement, nous ne sommes plus propriétaires des fichiers médias que nous avons pourtant achetés, nous n’en sommes que les usagers à titre révocable et temporaire ! Autant dire que nous perdons la possibilité de réutiliser nos biens dès lors que nous changeons de support matériel. Du disque vinyle au CD-ROM et du DVD au fichier numérique, nous avons déjà vu comment un saut technologique nous contraint à acheter de nouveau. Eh bien cette farce au goût amer se joue maintenant sur la scène des médias numériques.

Parviendrons-nous à libérer nos médias captifs du matériel ? Il faudra certes bien plus qu’un coup de gueule comme celui qui suit, mais il n’est pas mauvais qu’un cri de colère agite un peu nos esprits de consommateurs endormis.

Luke Addison - CC by-sa

Je ne veux pas faire partie de votre putain d’écosystème

I Don’t Want To Be Part of Your Fucking Ecosystem

Terence Eden – 23 novembre 2012 – Blog personnel
(Traduction framalang & les twittos : Gatitac, Zii, ga3lig, Stan, Isdf, Slystone, Quartz, Coyau, Goofy, Exirel, greygjhart)

Je discutais avec un ami qui exprimait une opinion que je trouve assez répandue :

— Alors oui, j’aimerais bien passer à Android, mais tous mes données sont dans iTunes.

J’ai découvert que le problème, ce ne sont pas les applications : les racheter est pénible, mais la plupart sont gratuites. Le problème, ce sont les données qui emprisonnent les utilisateurs avec des services dont ils ne veulent plus.

Les musiques, les films, les séries TV, les abonnements et les podcasts. Tout est fermé à double tour dans l’étroit écosystème d’Apple. C’est une façon bien pensée d’enchaîner les gens à leur matériel.

Imaginez, ne serait-ce qu’un instant, que votre lecteur de DVD Sony ne puisse lire que des films de chez Sony. Si vous décidiez d’acheter un nouveau lecteur de marque Samsung par exemple, aucun de ces contenus ne serait lisible sur votre nouvel appareil sans un sérieux bidouillage.

Voilà les hauts murs derrière lesquels tant de grandes entreprises voudraient bien nous enfermer. Et je trouve que ça pue.

Sur un réseau de téléphonie mobile au Royaume-Uni, on peut utiliser le téléphone de son choix. Le matériel et les services sont complètement indépendants les uns des autres. Cela suscite de la concurrence parce que les consommateurs savent que s’ils sont mécontents de HTC, ils peuvent passer à Nokia et que tout fonctionnera comme avant.

Mais si tous vos contacts, vos services de divertissement et sauvegardes sont enchaînés à HTC, eh bien, vous êtes juste dans la merde si vous voulez changer.

Je veux assister à une séparation complète de l’Église et de l’État. Le matériel devrait être séparé du logiciel. Le logiciel devrait être séparé des services. Je veux pouvoir regarder des films achetés chez Nokia sur un système Google Android tournant sur un appareil Samsung, et ensuite sauvegarder le tout sur Dropbox.

C’est comme cela que ça fonctionne, plus ou moins, dans le monde du PC. Je ne comprends pas pourquoi cela n’est pas pareil dans le monde des tablettes et des smartphones. Pourquoi est-ce que j’achèterais une tablette qui ne fonctionnerait qu’avec le contenu d’un seul fournisseur ? Que ce soit Amazon, Microsoft ou Apple, ils constituent un dangereux petit monopole qui fera augmenter les prix et diminuer la qualité.

Bon, je sais. Le mantra du « It just works » (« Ça marche, tout simplement » ). Je suis légèrement dégoûté de devoir configurer ma tablette pour qu’elle parle à mon NAS, puis de faire en sorte que mon téléviseur fonctionne avec les deux à la fois. Cette situation n’est pas due à mes équipements multimédias qui viennent de différents fabricants, elle est plutôt due à ces différents fabricants qui n’utilisent pas de standards ouverts.

J’ai peur de ce qui arrivera lorsqu’un fournisseur mettra fin à un service. Je rigole à l’idée d’une éventuelle faillite d’Apple : même s’ils restent solvables, qu’est-ce qui les empêchera de supprimer tous vos achats de films et de musiques ? Après tout, ils ont fermé leur service Mobile Me quasiment sans avertissement et détruit toutes les données que leurs clients payants hébergeaient chez eux.

Adobe a fermé ses serveurs de DRM après un court préavis de 9 mois, en empêchant de fait quiconque de lire les livres pourtant achetés (Amazon peut vider votre Kindle).

Google a emmené Google Video au bûcher et lui a tiré une balle dans la tête — tout comme Buzz, Wave et qui sait combien d’autres produits.

Microsoft a mis en place PlaysForSure, puis l’a laissé mourir, piégeant ainsi des millions de fichiers musicaux sur des appareils qui ne sont plus pris en charge.

Donc peut-être vais-je m’en tenir à Google et espérer que mon téléviseur Google communiquera avec mon téléphone Google pendant que je regarderai des vidéos Google Play et que j’écouterai des musiques Google Play sur mon ChromeBook Google que je partagerai sur Google+ et que j’achèterai avec Google Wallet. Et je leur enverrai la prière du geek : « S’il vous plaît, ne décidez pas que ce service bien pratique n’est pas rentable ».

Je veux simplement que l’on s’entende tous. Je veux que mes équipements disparates se parlent. Je ne veux pas vivre dans une maison où chaque composant doit être fabriqué par une unique entreprise sous peine de ne rien voir marcher correctement. Je ne veux pas être bloqué ni devoir utiliser un mauvais produit parce que c’est le seul à offrir un certain service.

Je ne veux pas de vos jouets qui ne fonctionnent qu’avec les piles de votre marque.

Je ne veux pas faire partie de votre putain d’écosystème.

Crédit photo : Luke Addison (Creative Commons By-Sa)




Rencontre avec trois papas du Coding Goûter

Des kids, du code et du cake…

Le 29 septembre dernier je me suis rendu avec Adrienne Alix (Wikimédia France), Frédéric Couchet (April, de dos sur la première photo) et nos enfants respectifs à un « Coding Goûter » parisien.

Jugeant l’expérience tout à fait intéressante, et ma fille aussi (au tableau sur la seconde photo, présentant son travail sur Scratch), j’ai proposé aux organisateurs Julien Dorra, Jonathan Perret et Raphaël Pierquin un entretien pour en savoir plus et donner éventuellement envie d’essaimer.

Coding Goûter - CC by

Bonjour, pouvez-vous vous présenter succinctement ?

Julien : J’anime des communautés techno-créatives 🙂 C’est à dire que je crée les bonnes conditions pour que des personnes d’horizons différents créent avec les technologies d’aujourd’hui. Dans des universités, pour des institutions, et bien sûr avec Dorkbot Paris, Museomix, ArtGame weekend… et Coding Goûter !

Jonathan et Raphaël : Nous sommes tous les deux papas et développeurs. Nous travaillons chez /ut7, une coopérative d’agilistes. Notre métier, c’est d’aider d’autres développeurs à travailler en équipe. Nous animons aussi des ateliers de co-apprentissage avec des enfants de plus de 25 ans : nos formations, mais aussi Dojo de Développement, Agile Open, Dojo Lean Startup, soirées Cambouis…

Alors un « Coding Goûter » c’est quoi ?

Raphaël : Un Coding Goûter, c’est un rendez-vous festif avec des gâteaux, où petits et grands apprennent à programmer, ensemble.

Julien : C’est aussi un moment pour partager le plaisir de créer des choses avec du code, et d’expérimenter. Et pour les adultes qui, comme moi, ont programmé quand ils étaient enfants mais ont ensuite arrêté d’écrire des programmes – c’est une manière de réveiller une pratique qui était passé au second plan. Il y a des peintres du dimanche, je me revendique comme codeur du dimanche !

Comment l’idée est-elle donc née ?

Julien : J’ai rencontré Jonathan lorsqu’il a participé au premier – et au second ! – ArtGame weekend. Après ça, on a beaucoup discuté de ce que pouvait signifier l’éducation au code, de l’impact des nouveaux outils, à quoi pouvait ressembler un jeu de programmation.

Jonathan : Je cherchais à partager avec mes filles mon métier de développeur, mon plaisir d’écrire des programmes. J’étais frustré de ne pas trouver les moments « à la maison ». D’où l’idée d’un goûter avec des enfants, où l’on programmerait.

Julien : J’ai lancé de mon côté une petite enquête pour mieux comprendre ce que les parents (non tech inclus) pensaient du sujet. Les dizaines de réactions extrêmement diverses nous ont assez étonnés. Cela allait de l’évidence, au dégoût de l’idée même d’apprendre aux enfants à programmer !

Jonathan : Finalement, un matin de décembre 2011, j’ai réalisé que nous avions déjà toutes les cartes en main. Il suffisait de choisir une date, lancer des invitations et ouvrir les bureaux de /ut7 un samedi après-midi.

Raphaël : Quand Jonathan a évoqué son idée, j’étais enthousiaste. Ma motivation première, était de montrer à mes enfants ce qu’était mon métier. Après plusieurs séances, ce qui persiste, c’est le même plaisir que celui de jouer aux LEGO avec mon fils : s’amuser en construisant des choses ensemble.

Vous en êtes désormais à huit Coding Goûters, quel retour d’expérience en faites-vous ? Qu’est-ce qui a bien fonctionné ? Qu’est-ce qui peut être amélioré ?

Julien : On sait qu’il ne faut pas trop d’enfants, 12 c’est bien. On sait aussi que à la maison, ça marche moins bien, on est pas assez hors-contexte. Il y a plein de sollicitations, y compris pour les grands !

Raphaël : Une leçon essentielle que j’ai apprise : quand il s’agit d’apprendre, les adultes sont des enfants comme les autres. Une autre encore : c’est important de ponctuer les goûters avec des pauses où l’on prend le temps de célébrer les réalisations des participants. Une piste d’amélioration : publier un petit manuel pour aider de potentiels organisateurs de Coding Goûters à se lancer.

Est-ce facile de gérer en même temps différentes classes d’âge (quant on sait par exemple les écarts qu’il peut y avoir entre un enfant de 6 ans et de 12 ans) ?

Julien : Cela ne se pose pas dans ces termes. On vient avec nos enfants. Chacun fait.

Raphaël : Nous utilisons le même principe que dans les formations pour adultes de /ut7 : une grande variété d’activités, et la liberté pour chacun de choisir ce dont il a besoin pour apprendre. Ça marche très bien, encore mieux qu’avec des groupes sans enfant.


Julien : Séparer les classes d’âge peut sembler plus facile, mais c’est une homogénéité fictive. Les enfants d’un même âge n’ont ni le même niveau, ni les mêmes envies. Par exemple un enfant de 10 ans avait envie de créer des applications iPad, ce qui l’a motivé pendant tout un goûter pour explorer Xcode et Objective-C. Un grand de 14 ans pendant ce temps-là faisait du RoboZZle.

Plutôt que des séances « one shot » envisagez-vous d’organiser à terme des « Coding Goûter » plus réguliers tout au long de l’année avec le même groupe d’enfants-parents ? Et de ce fait pouvoir alors proposer quelque chose de plus structuré et progressif ?

Julien : Ce ne sont déjà plus des séances uniques, puisque nous avons organisé près d’un Coding Goûter par mois tout au long de 2012. Selon leurs disponibilités, les enfants et les adultes reviennent d’un goûter à l’autre. Mais derrière cette régularité, il n’y a pas de volonté de structurer l’apprentissage, ni d’introduire de la progressivité. C’est un moment d’exploration, de découverte. Le but n’est pas d’enseigner. Le but n’est pas l’acquisition de compétence en soi. De la même manière que l’on ne fait pas faire du dessin aux enfants pour qu’ils acquièrent une compétence technique précise.

Raphaël : Pour moi, le Coding Goûter est avant tout un loisir créatif, famillial et social. De fait, les familles qui participent, ponctuellement ou régulièrement forment une communauté qui crée une continuité entre chaque séance. Néanmoins, nous ne suivons pas de plan d’une séance sur l’autre, et ce n’est pas prévu.
Je me lancerai peut-être un jour dans la construction d’un programme structuré, mais ça sera en plus du Coding Goûter.

Ne pensez-vous pas que les « Coding Goûter » viennent combler une lacune, un vide de l’Education nationale ? Un déficit aussi bien dans le fond (inviter à coder, à créer) que dans la forme (le dispositif pédagogique assez novateur que vous proposez). A moins que vous jugiez que tout va bien et que chacun est à sa place ?

Raphaël : La pauvreté du programme informatique de l’école m’attriste, et le potentiel de progression est énorme. Attention néanmoins : la recette des Coding Goûters n’est pas nécessairement adaptée au contexte de l’école.

Jonathan : Je regrette également de voir que l’école ne donne plus aux enfants l’occasion de découvrir la magie de la programmation, comme nous en avons eu la chance à l’époque du plan « Informatique pour tous », mais elle ne peut peut-être pas tout faire non plus…

Julien : Au cours des prochaines années, on va à nouveau beaucoup entendre parler de l’enseignement de la programmation. La discussion est actuellement très active au Royaume-Uni, cela va revenir en France.
Et tu peux être sûr que cela sera principalement axé sur le « besoin de développeurs pour l’économie numérique ». On n’est pas du tout sur cet axe. On a envie que nos enfants programment, et oui, c’est vrai qu’ils ne le font pas à l’école et c’est dommage – car ils vont passer beaucoup de temps à l’école. Mais on ne cherche pas à fournir des développeurs aux SSII françaises dans 15 ans ! Probablement même le contraire 🙂
Est-ce qu’on comble un manque ? Avant tout, on comble un manque… pour nous et nos enfants ! Puis les enfants de nos amis, de nos collègues 😉
D’une certaine manière, on a été obligés de reconnaître qu’on répondait à un besoin fort, car nous avons des emails réguliers de parents qui veulent en organiser dans leur ville, ou être avertis du prochain goûter. À peine visibles, nous étions déjà sollicités.
Est-ce qu’on peut-être une part de la réponse aux difficultés de l’école de s’ouvrir aux changements sociaux en cours ? Pour l’instant non : on est en parallèle du système scolaire, et nous n’avons aucun lien avec les instances scolaires.

Si je vous dis que les « Coding Goûter » c’est quand même encore un « truc de bobos », vous pensez que c’est juste un gros troll ou bien une remarque valide ?

Raphaël : Quand j’avais 8 ans, dans ma campagne, il y avait un « club informatique » (MO5 rul3z !). C’était comme un Coding Goûter, mais sans les gâteaux. Ça me passionnait, je n’étais pas le seul, et personne ne s’en étonnait. On ne connaissait pas encore le mot « bobo », ni le mot « troll », d’ailleurs. Cela dit, oui, je suis bobo, et troll-proof, aussi.

Jonathan : La contrainte que nous avons mise pour l’accès au Coding Goûter, à savoir le fait de faire participer parents et enfants ensemble, crée probablement une barrière pour certaines familles où tout simplement les activités partagées ne sont pas la norme. Je ne peux qu’espérer que d’autres formats existeront pour donner à chaque enfant une chance de découvrir la programmation.

Julien : Coding Goûter est issu de parents qui apprécient la culture du code, et qui ont envie de la partager avec leur enfants. Il y a eu des réactions vaguement négatives. La ligne de partage ne semble pas être le niveau d’études, le niveau d’intellectualisme ou le revenu, mais plus la vision de la technologie comme quelque chose de positif, créatif, avec un empowerment possible ou comme un aspect négatif et enfermant de la vie contemporaine.
À ma connaissance, il y a des enfants de tout milieu qui ont envie de coder.
À l’opposé, il y a des parents de milieux aisés qui n’ont aucune motivation pour encourager leurs enfants à programmer, et même au contraire, y sont hostiles.
Maintenant, si la vraie question est « quelle diversité pour les Coding Goûter ? » on peut noter que nous avons déjà une parité fille-garçon des enfants qui est unique pour des sessions de programmation mixte (en fait, on a même toujours eu plus de filles que de garçons…).
C’est un bon signe. Il y a un effet de réseau sur les parents, c’est certain, tout simplement car on est un tout petit groupe qui grandit de proche en proche. Mais du coup, il y a peu de pression de sélection sur les enfants.

Plus concrètement, quels sont, dans le détail, les logiciels que vous proposez ? Quels sont leurs spécificités ? Pourquoi les avoir choisis ?

Julien : On a testé beaucoup de choses, et on continue de tester des nouveaux outils. Il y a des choses incroyables qui se passent du côté des outils web, dans le navigateur. J’ai adoré faire du LiveCodeLab avec des ados, en particulier.
Mais les grands classiques comme Scratch sont toujours aussi intéressants.
Le choix se fait sur la facilité de prise en main, le niveau des enfants (et des adultes !), le but (si un enfant veut faire un jeu sur tablette, on va l’orienter vers GameSalad, par exemple), et les découvertes du moment.

Raphaël : Pour les logiciels : à chaque séance, on en essaye de nouveaux, et on garde ceux qui nous plaisent.
Je choisis les logiciels en fonction du ou des participants qui programment avec moi, par exemple avec un enfant qui ne sait pas encore lire, ou avec un ingénieur, j’aime bien commencer avec RoboZZle, tandis qu’avec des enfants de 5 à 7 ans, on se raconte une histoire, et on construit un jeu petit à petit sur Scratch. Même si ils ne conçoivent qu’une petite partie de l’algo, le plaisir d’avoir créé est bien là ! En général, on arrête de programmer quand ça devient plus amusant de jouer que de créer le jeu.
Scratch est aussi idéal pour la tranche d’âge intermédiaire : souvent, des groupes de deux ou trois enfants de 8 à 50 ans se forment. Ils suffit de les mettre sur la voie, et ils parviennent à créer des programmes, en s’appuyant sur les participants les plus expérimentés (pas nécessairement les plus âgés). Et avec des garçons pré-ados, on a tenté de construire un circuit logique dans un univers virtuel (Minecraft). Pas facile de faire collaborer tous ces avatars !

Comprenez-vous ceux qui (comme nous) souhaitent que les logiciels proposés soient « le plus libre possible » ?

Raphaël : Oui. Et d’ailleurs, goûter au plaisir d’utiliser du code que l’on a écrit soi-même, c’est faire un premier pas dans les traces qui mènent au logiciel libre, non ?

Jonathan : Je trouve cela assez sain. Au quotidien, je n’utilise pas que des logiciels libres, mais quand j’en ai l’occasion j’essaie d’expliquer à mes enfants ce qu’est un logiciel libre afin qu’elles puissent plus tard faire des choix informés.

Julien : Le logiciel libre fonctionne évidemment en harmonie avec les pratiques d’appropriations collectives.
Il y a des raisons idéologiques à ça, mais il y a aussi des raisons pratiques. Un exemple très concret : les enfants français ont besoin que les interfaces, la documentation, les exemples, soient traduits en français. Un outil libre est traduisible dès que la communauté le veut.
Par exemple, j’ai pris l’initiative de traduire LiveCodeLab, les tutoriaux en particulier, car je trouvais que c’était un outil fascinant, et je voulais voir comment les enfants et les ados allaient l’utiliser. Un code ouvert et un développeur amical, et cela a pris quelques heures !
Cela dit, j’aime les contradictions. Tester tous les outils, c’est se confronter, et confronter les enfants les plus grands, aux choix de leurs outils, aux système parfaits mais propriétaires et verticaux, aux possibilités des outils ouverts d’être modifiés, aux rythme d’évolutions des outils qui ne sont pas les mêmes.
De fait, des outils payants et fermés auront bien sûr bien moins de succès dans le contexte des Coding Goûters que des outils libres. La partie grise ce sont les outils propriétaires gratuits ou freemium très bien réalisés, comme GameSalad, qui ont une position unique et intéressante. On aime GameSalad comme on aime Photoshop, ou Google Docs. Un bel outil logiciel reste un bel outil logiciel.

Est-ce que vous avez déposé le nom et le concept de « Coding Goûter » ? Comme j’imagine que non, cela signifie que tout le monde peut en organiser ! Vous connaissant un peu, j’imagine même que c’est quelque chose que vous encouragez. Quels conseils donneriez-vous donc, comment vous contacter et trouver trace des « Coding Goûter » précédents ?

Jonathan : Pas de marque déposée effectivement. L’idéal serait au contraire que le mot devienne aussi banal que « week-end » ou « pique-nique » !

Julien : On encourage tout le monde à organiser des Coding Goûters, bien sûr !
On imagine que dans quelques temps, il y aura des Coding Goûter un peu partout en France, et ailleurs, et que nos enfants pourront y participer où qu’ils soient, se faire de nouvelles copines et de nouveaux copains.
Ce qui ne doit pas arriver, c’est de laisser le concept être avalé par les habitudes antérieures, et devenir trop scolaire ou trop orienté-animateur et donc moins exploratoire et moins dirigé par les désirs créatifs des enfants.
Si vous participez avec vos enfants à un Coding Goûter, vous savez que ça ne sera pas un cours ou un tutoriel, que vous pourrez rester avec vos enfants, qu’il y aura des démo-spectacles par les enfants – et des gâteaux ! Ce sont tous ces petits détails qui comptent pour nous.
Le format est encore en évolution, on teste des choses – mais on tient énormément à l’esprit.

Un dernier mot, un prochain rendez-vous ?

Julien : Il y a des Coding Goûter presque tous les mois. Pour être averti du prochain, il suffit d’envoyer un message à contact AT codinggouter.org, ou de fréquenter notre groupe Facebook.

Raphaël : A ceux qui voudraient organiser leur Coding Goûter : lancez-vous ! Si vous ne savez pas comment vous y prendre, venez nous voir, ou mieux : demandez de l’aide à vos enfants.

Coding Goûter - CC by