Naissance de l’idée

À la base, j’avais personnellement un besoin en tant qu’utilisateur et n’ai pas trouvé d’outil sur internet y répondant : je devais renouveller la police d’assurance de mon appartement et il était écrit dans les petites lignes qu’il serait assuré contre le terrorisme. N’ayant pas envie de l’assurer contre ce risque (position philosophique toussa) et de payer en conséquence, je suis allé voir le code des assurances. Celui-ci stipule, si je comprends bien, qu’il est obligatoire pour les assurances habitation de protéger contre ce risque. Bon, soit, pas moyen d’y échapper.

J’aurai pu en rester là, mais je me suis demandé quand avait eu lieu cette modification. Sur Légifrance, code des assurances, j’ai donc parcouru les articles et sections et navigué entre les différentes versions historiques, et ça n’était pas très pratique. Pour la petite histoire, l’assurance contre le terrorisme est régie par les articles L422-1 et suivants, coûtait 3,30€ par contrat en 2010, et a été introduite le 20 mars 1988 (ce lien mène vers archeo-lex.fr). De là est née l’idée de mettre les codes sur une seule page – pour chercher facilement dans tout le code – et de les versionner – pour suivre leur évolution. Git, pour le versionnement, s’est imposé rapidement (répandu, pratique, loué par tout le monde, et comprend l’outil git blame pour recherche qui a écrit quoi) associé à la syntaxe légère Markdown (lisible et répandue, même si d’autres syntaxe légères existent aussi).

Réalisation technique du prototype

J’ai réalisé le prototype d’Archéo Lex fin juillet 2014 en environ 5 jours en y travaillant seul, de la naissance de l’idée au prototype fonctionnel. Si cela a été aussi rapide, c’est que j’ai réutilisé dans ce contexte ce sur quoi j’avais travaillé dix jours auparavant dans un autre contexte.

Cet autre contexte s’appelle Kiwix+Gutenberg. Sur l’invitation d’Emmanuel Engelhart, créateur de Kiwix, et grâce au soutien de Wikimedia CH, de la Fondation Orange et de Framasoft, j’avais participé mi-juillet à la création de fichiers ZIM, habituellement utilisés pour contenir tout Wikipédia pour de la lecture hors-ligne, mais cette fois-ci contenant la bibliothèque numérique Gutenberg contenant des textes dans le domaine public. À quatre personnes, dans un studio loué pour l’occasion à Lyon, on a mangé des nouilles (surtout) et codé du Python. Le résultat est désormais publié et accessible, et voici un exemple de livre (il y a des versions epub pour liseuses et des versions ZIM pour Android et ordinateur via Kiwix).

En gros, ce projet Kiwix+Gutenberg lit la base XML de Gutenberg, récupère les métadonnées, les affiche dans une jolie interface, et en parallèle récupère les epub et HTML de Gutenberg, les uniformise et les intègre dans le fichier ZIM. Archéo Lex fait sensiblement la même chose : il lit la base LEGI, récupère les métadonnées, assemble les codes avec un soupçon de Markdown et les intègre ensuite dans Git. Quoique j’ai recommencé from scratch le code Python, on retrouve la même architecture et les mêmes librairies utilisées.

Avec le recul, j’ai beaucoup apprécié de travailler sur ce projet Kiwix+Gutenberg (bénévolement mais tous frais payés) et également de transposer les mêmes méthodes et savoir-faire dans un autre contexte. Cela est dû en grande partie à l’ouverture et à la philosophie du logiciel libre. J’y reviendrai dans le prochain billet, mais j’aimerais beaucoup pouvoir réussir à vivre (juste vivre) grâce à la création de logiciels libres.

Communication

En tant que geek et hacker, la communication est un concept que j’aurai fui il y a quelque temps (communication prêt-à-penser, publicité promouvant la consommation, marketing acéré, etc.). Toutefois, depuis Snowden, j’ai revu ma position (et la communauté geek/hacker aussi je crois) : même si les logiciels libres ont plein de qualités (leur sécurité, leur décentralisation, leur philosophie de partage, leurs communautés, etc.), il est une qualité dont ils manquent souvent et qui leur fait défaut pour être plus répandus au sein du grand public : leur beauté extérieure, c’est-à-dire leur design, leur utilisabilité, l’explication de ce qu’ils font exactement, leur promotion, la qualité de leur documentation, etc. Bien sûr, tout cela est en partie fait, mais pas suffisamment pour avoir une bonne image globale et faire que les utilisateurs les choisissent en priorité (dernièrement, j’ai encore rencontré une personne qui a été surprise que mon Linux ne soit pas en ligne de commande).

Pour en revenir à Archéo Lex, j’ai passé une après-midi avec ma sœur, non-technicienne de l’informatique, pour discuter de la façon de présenter les choses et pour choisir un nom. Je lui dois beaucoup pour la clarté et la concision du billet de blog introductif, pour ce qui est directement visible, mais plus globalement pour le discours non-technique de présentation. Et finalement, je suis heureux de voir que cette clarté ait été efficace.

Futur

Depuis août, Archéo Lex n’avait pas tellement évolué, mais je m’y remet depuis quelques jours, entre autres à la suite du programme OpenLaw, et je viens d’ouvrir le site archeo-lex.fr qui contiendra à terme tous les codes. Essentiellement, le futur d’Archéo Lex dépendra en grande partie des attentes des utilisateurs (oui, vous! :). J’exposerai les possibilités dans un futur billet, mais n’hésitez pas à ouvrir des discussions sur Github (en attendant d’avoir une liste de discussion dédiée).