C’est le récit d’une aventure, celle de la création d’un logiciel Open Source, le plus génial de tous les temps. Un agenda révolutionnaire qui pourrait tout faire, qui serait l’outil ultime de toute personne bien organisée. Les utilisateurs pourraient partager leurs calendriers, les synchroniser sur différentes machines et tout cela sans serveur, l’indépendance et la flexibilité totale. Et ce n’est pas tout, il permettrait de gérer les e-mails, de les transformer en autre chose (des notes ou des rendez-vous), du polymorphisme à l’état pur. Il serait extensible en permettant d’ajouter des fonctionnalités sous la forme de plugins pour gérer d’autres choses comme des collections par exemple – pourquoi pas en effet. De cette façon, il pourrait répondre aux besoins des utilisateurs privés (calendrier personnel), public (les universités) et professionnels – où il supplanterait allègrement Outlook. Oups, j’oubliais un détail, il devrait fonctionner sur toutes les plate-formes de Windows aux Unix sans oublier Mac OS – et encore les plate-formes mobiles n’existaient pas sinon elles auraient été dans la cible.
Bon ça c’est la théorie et vous vérifierez en lisant ce livre que la pratique est légèrement plus compliquée et que l’excellente maxime d’Albert Einstein est souvent vraie.
In theory, theory and practice are the same. In practice, they are not.
Cet outil merveilleux s’appelle Chandler – oui oui comme l’excellent personnage de Friends, mais ici le nom a été emprunté à celui d’un chien. Comment ça, vous ne le connaissez pas, vous ne l’utilisez pas tous les jours, il n’est pas installé sur votre poste ?
C’est Mitch Kapor le créateur d’un agenda qui fut l’une des première killer app: Lotus Agenda. Un logiciel intelligent, en avance sur son temps qui a fait la fortune de son entreprise – et la sienne. Idéaliste incorrigible et visionnaire, il a souhaité faire encore mieux et comme on peut l’observer souvent, le mieux est l’ennemi du bien.
J’avais entendu dire que ce livre n’était pas destiné aux codeurs, mais c’est faux. Nous seulement, il raconte un morceau de l’histoire de l’informatique, mais Scott Rosenberg ne se contente pas de jouer au journaliste, il analyse et cite beaucoup de références, des livres notamment. Il prend aussi le temps de revenir sur certaines grandes étapes de l’histoire de l’informatique. La partie sur la méthodologie (cycle en V, CMMI, méthodes agiles) est particulièrement intéressante. Je trouve que l’on apprend beaucoup de choses sur la culture informatique et les initiés reconnaitront certains écueils si flagrants ici qu’ils semblent avoir été caricaturés – et pourtant ce n’est pas le cas, c’est une histoire vraie. Une lecture que je conseille à ceux qui s’intéressent au développement logiciel et à son histoire – à ceux-la, je conseille également la lecture du très bon Joel on software.
Scott Rosenberg, Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software, Crown, 2007, 416 p, Amazon.