PROJET AUTOBLOG


Marien Fressinaud

Site original : Marien Fressinaud

⇐ retour index

Mise à jour

Mise à jour de la base de données, veuillez patienter...

Nouvelle version de Lessy : Ara

dimanche 9 septembre 2018 à 14:35

Quelques jours seulement après l’annonce de la version précédente, voici déjà une nouvelle version. Les deux derniers weekends ont été particulièrement productifs bien que n'abordant pas le cœur de métier de l’application.

Pour rappel, Lessy est un gestionnaire de temps destiné à vous aider à mieux vous organiser en associant à vos tâches des indicateurs clairs sur ce que vous avez de plus urgent à réaliser (ou abandonner) dans l’immédiat. Un service est mis à disposition gratuitement sur lessy.io et le code est hébergé sur GitHub, le tout sous licence libre.

Cette fois-ci, les améliorations ont autant porté sur l’interface que sur l’architecture technique. Les principales nouveautés d’un point de vue utilisateur sont :

Autant vous dire que cela fait un petit paquet de changements.

Écran pour modifier son profil dans Lessy

Au niveau de l’architecture technique, j’ai revu l’organisation des composants de l’interface qui gèrent l’affichage des pages. Ce fut là aussi un gros morceau, mais nécessaire pour garder l’application maintenable sur le long terme. J’envisage d’écrire un article technique pour détailler ma façon de faire.

Cette version marque aussi la fin des travaux portant sur les « à-côtés » de l’application. Je les aurai donc répartis sur deux versions de Lessy, mais en réalité sur neuf mois à cause de la pause que j’ai prise dans le développement. Je vais donc désormais pouvoir me reconcentrer sur le cœur de Lessy en repensant le tableau de bord ainsi que l’accueil des nouveaux utilisateur·trices. Encore une fois, l’avancement est visible sur GitHub.

N’hésitez pas à me faire des retours sur les nouvelles fonctionnalités, comme elles sont toutes neuves, j’ai peut-être oublié de gérer certains cas particuliers !

Nouvelle version de Lessy : Aries

jeudi 30 août 2018 à 17:45

Lessy a connu une période de ralentissement ces derniers mois, due à des raisons externes (fonctionnement qui me correspond globalement bien, des choses plus urgentes sur le feu et petit coup de fatigue). Cette pause dans le développement m’a tout de même permis de prendre un peu de recul sur l’outil et me permettra ainsi de réorienter certaines fonctionnalités qui existent aujourd’hui… peut-être. Autant ne pas trop s’avancer sur le sujet.

Pour rappel, Lessy est un gestionnaire de temps destiné à vous aider à mieux vous organiser en associant à vos tâches des indicateurs clairs sur ce que vous avez de plus urgent à réaliser (ou abandonner) dans l’immédiat. Un service est mis à disposition gratuitement sur lessy.io et le code est hébergé sur GitHub, le tout sous licence libre.

Dashboard de Lessy

Malgré le ralentissement évoqué plus haut, j’ai tout de même avancé un petit peu sur quelques fonctionnalités, notamment :

Cette dernière fonctionnalité m’a pris plus de temps que prévu, mais je suis assez fier de ce que j’ai fait. Les conditions en elles-mêmes sont accessibles sur lessy.io. En résumé : je fais du mieux que je peux, mais je ne m’engage ni sur la qualité, ni sur la pérennité du service (je ne fais pas ça dans un cadre professionnel). Je m’engage évidemment à ne pas toucher à vos données personnelles ni à les revendre.

Pour celles et ceux qui avaient souhaité s’inscrire alors que j’avais fermé les inscriptions, ces conditions d’utilisation marquent la réouverture du service. Notez toutefois que je risque de les refermer au-delà d’un certain nombre d’inscrit·es (mais je ferai du tri avant dans les comptes non activés ou dans ceux qui n’auront pas accepté les conditions d’utilisation d’ici 6 mois).

Les prochains développements porteront sur un espace pour modifier son profil et sur la possibilité de choisir la langue de l’interface (enfin !). Vous pouvez suivre l’avancement sur le projet GitHub.

Je remercie encore une fois celles et ceux qui parlent de Lessy autour d’elleux, qui l’utilisent ou qui me suggèrent des améliorations. C’est aussi ça, contribuer :). Et merci à Sarah pour avoir pris le temps de relire mes conditions d’utilisation et Erwan pour… avoir essayé ;).

Un homme sans rêve

jeudi 31 mai 2018 à 00:10

Écrire un bouquin de 50 000 mots en un mois, c’était le défi que je m’étais fixé en novembre 2014. Ces mots, je ne les ai jamais publiés nulle part. Ils étaient pourtant là, couchés sur de multiples octets, ces 50 000 mots et le défi du NaNoWriMo relevé. Mais l’excitation redescendue, les deux pieds à nouveau sur Terre, il fallait se rendre à l’évidence : ce n’était vraiment pas terrible. Des fautes, des incohérences, des dialogues pourris, des éléments de l’intrigue avec lesquels je n’étais pas à l’aise… et même une intrigue pas intrigante pour un sou !

Pourtant, au milieu de tout ça il y avait forcément moyen de sauver quelques meubles. En 50 000 mots, il y a forcément des fulgurances, des choses qui fonctionnent mieux que d’autres, un ensemble de mots et de phrases qui « sonnent » bien. C’est en mars 2016 que je relus l’histoire d’Asmara, avec beaucoup de recul et que je reprenais un certain plaisir à me plonger dans un univers que j’avais créé (hey ! C’est pas rien non plus). Un chapitre en particulier (le dernier écrit) retint mon attention : il y avait matière à en tirer une mini-nouvelle.

Quelques relectures et corrections plus tard, elle était prête. Cela m’avait pris seulement 9 jours à retravailler ce court texte, mais il me fallut deux ans de plus pour trouver le courage de le publier. Alors voilà, je pose tout ça là, ignorant si ma nouvelle sera lue ou non. Pour moi il s’agit surtout de mener un peu plus loin ce que j’ai entamé il y a 3 ans et demi avec le NaNoWriMo, bien qu’il reste encore beaucoup de chemin à parcourir avant d’en dévoiler plus sur Asmara.

La nouvelle se nomme Un homme sans rêve et est placée sous licence CC BY.

Ce chapitre/nouvelle est en fait une réinterprétation d’un chapitre de 1984 de Georges Orwell, toute ressemblance n’est absolument pas fortuite. Le défi lors de cette réécriture était surtout de travailler les dialogues et l’évolution psychologique du personnage. Comme la nouvelle s’inscrit dans un contexte plus global, il subsiste des références au reste de l’histoire que vous ne saisirez probablement pas. J’ai décidé de les conserver pour me laisser des pistes à explorer de nouveau lorsque je souhaiterai me replonger dans Asmara.

Je vous souhaite une bonne lecture !

Ce qui nous pousse au Libre

mardi 1 mai 2018 à 16:00

Il y a quelques jours, Maiwann proposait dans un article, de réconcilier designers et logiciels libres. L’article ne manque pas d’intérêt, ne serait-ce que par ses suggestions d’actions. Bien que je partage bon nombre des constats, je souhaitais le « compléter » d’un point de vue de développeur. Je vous propose donc d’entamer une petite mise en perspective à travers mes expériences personnelles, que ce soit celles sur FreshRSS, Lessy, les actions menées au nom de Framasoft ou encore à travers les écrits que j’ai pu lire à droite à gauche.

J’ai décidé de découper ces réflexions en une suite de plusieurs articles (sans me forcer à tenir sur la durée). Et comme l’idée me trottait depuis un moment, j’en profite pour inaugurer une nouvelle catégorie sur ce blog intitulée « Libres ? ».

Le premier sujet que je souhaite aborder en est un que Maiwann n’aborde quasiment pas : pourquoi faire du logiciel libre ? J’aurais en effet aimé mieux comprendre ce qui motive des designers à vouloir contribuer au Libre. J’essaye donc dans mon article de faire le tour de ce qui peut pousser un développeur à en faire, sans prétendre être exhaustif.

Apprentissage

De l’article de Maiwann, la seule référence à une potentielle motivation se trouve au détour d’un paragraphe :

Lors de nos études, […] alors que nous cherchons à nous entraîner, sur notre temps libre ou pour des projets de fin d’année, nous nous plaignons de ne connaître aucun développeur avec qui co-créer des sites ou logiciels.

Voilà une raison qui devrait parler à bon nombre d’étudiants et d’étudiantes ! Appliquer ce que l’on a pu apprendre en cours et donc, par extension, apprendre par la pratique est souvent moteur chez les développeurs. J’ai moi-même développé un certain nombre de programmes avec cette simple motivation. Par exemple, Minz fut ma tentative de comprendre le fonctionnement interne des frameworks web. FreshRSS a été l’occasion de travailler véritablement en communauté, et donc en équipe travaillant à distance et asynchrone. Petit aparté : paraît-il que ce mode de travail est compliqué à mettre en place dans les boîtes, mais cela se fait très naturellement sur les projets communautaires ; peut-être y a-t-il des choses à en tirer ? Sur Lessy, j’ai pu consolider tout un paquet de connaissances que j’ai ensuite pu proposer et appliquer au boulot. Le logiciel libre est une formidable source d’apprentissage que je recommande fortement à toutes et tous.

Cela étant dit, considérer l’apprentissage comme seul moteur dans le développement d’un logiciel libre est bien entendu extrêmement réducteur et j’aurais tendance à dire que ce n’est pas la raison principale (bien qu’il s’agisse probablement de la porte d’entrée principale pour bon nombre d’entre nous). Cherchons donc ailleurs d’autres raisons qui nous poussent, nous développeurs et développeuses, à produire du logiciel libre.

Plaisir

Dans le prologue du bouquin L’Éthique hacker, Linus Torvalds explique les motivations des hackers derrière le système d’exploitation Linux comme ceci :

La raison pour laquelle les hackers derrière Linux se lancent dans quelque chose, c’est qu’ils trouvent ça très intéressant et qu’ils veulent le partager avec d’autres. Tout d’un coup, vous avez le plaisir parce que vous faites quelque chose d’intéressant et vous avez aussi le pendant social.

Il nous dit plusieurs choses ici. Tout d’abord, le développement d’un tel système relève avant tout du plaisir. Et il est vrai qu’on peut se demander ce qui pousse des milliers de développeurs à partager leurs savoirs et leur temps, généralement de façon gratuite, si ce n’est le plaisir de le faire ? D’ailleurs Pekka Himanen (l’auteur du bouquin) cite un peu plus loin Éric Raymond, à l’origine de la popularisation du terme « open source » (j’aurai l’occasion de revenir sur ce terme plus tard) :

La conception de logiciel et sa mise en œuvre devraient être un art jubilatoire, et une sorte de jeu haut de gamme. Si cette attitude te paraît absurde ou quelque peu embarrassante, arrête et réfléchis un peu. Demande-toi ce que tu as pu oublier. Pourquoi développes-tu un logiciel au lieu de faire autre chose pour gagner de l’argent ou passer le temps ?

On y retrouve la notion de plaisir à travers le « jeu haut de gamme ». Je prends souvent l’exemple du Sudoku ou de la grille de mots-croisés : il n’y a, à priori, aucune raison de remplir ces cases de chiffres ou de lettres, si ce n’est le plaisir de résoudre un problème, parfois complexe. Je trouve personnellement que le développement de logiciel peut amener à un état de satisfaction similaire lorsqu’on se trouve face à un problème et qu’on arrive finalement à le résoudre après plusieurs heures jours semaines de recherche.

D’un point de vue personnel, j’ai toujours été attiré par les domaines de « création ». J’ai immédiatement accroché au développement lorsque j’ai découvert que créer un site web était aussi simple que créer un fichier texte avec quelques mots dedans. Les balises HTML ? un simple jeu de légo. Le CSS ? quelques directives de base à connaître et on arrive rapidement à quelque chose de totalement différent. Un serveur web ? un ordinateur avec un logiciel spécifique qui tourne dessus. Un bug ? une « chasse » durant laquelle on déroule le programme qui nous semblait si logique au moment de l’écrire (mais qui l’est maintenant beaucoup moins !). Pour moi, la beauté de l’informatique réside dans sa simplicité et sa logique : il y a un véritable plaisir à comprendre comment toutes ces petites boîtes s’agencent entre elles et que tout devient plus clair.

Partage

Si l’on se tient aux notions d’apprentissage et de plaisir, il n’y a rien qui distingue le logiciel libre du logiciel propriétaire. Vous pouvez très bien apprendre et éprouver du plaisir en développant du code fermé. Il nous faut revenir à la citation de Torvalds pour commencer à percevoir ce qui les différencie :

[…] ils veulent le partager avec d’autres.

Le partage : on a là une valeur fondamentale du logiciel libre qui ne trouve pas véritablement son pendant du côté du logiciel propriétaire. Bien que j’ai plus de mal à identifier clairement ce qui peut motiver l’être humain à partager ses savoirs, c’est quelque chose que je ressens effectivement. Cet aspect coopératif — Torvalds parle d’un « pendant social » — peut créer ou renforcer des liens avec d’autres personnes ce qui rend cette activité profondément humaine.

Partager, c’est donc transmettre. Transmettre à une communauté, donner les clés pour que celle-ci soit indépendante. Partager ses savoirs qui permettront peut-être à d’autres de bâtir autre chose par-dessus. Cela permet aussi de créer du lien humain, rencontrer des personnes et ouvrir ses perspectives en créant son propre réseau. C’est aussi s’offrir un coin de canapé quand on voyage (coucou Alex 👋). Je me suis rendu compte assez récemment de ce que m’offrait aujourd’hui cette décision en IUT de partager les petits programmes que je pouvais développer sur mon temps libre. La liberté n’est pas que celle du code.

Il y a certainement une forme de fierté à avoir exploré un domaine le premier, ou développé une application que d’autres vont utiliser (« Quoi ? Ce que j’ai fabriqué de mes propres mains t’est aussi utile ? »). Si cette fierté est par essence un peu narcissique (je suis toujours un peu pénible lorsque je suis cité chez NextInpact ou chez Korben 😇), elle est aussi bénéfique car elle encourage à rendre son travail public et donc… partager encore.

Éthique

On retrouve aussi cette notion de partage dans les écrits de Richard Stallman lorsqu’il nous parle des quatre libertés du logiciel :

Elles sont essentielles, pas uniquement pour les enjeux individuels des utilisateurs, mais parce qu’elles favorisent le partage et la coopération qui fondent la solidarité sociale.

Ces mots, pris du point de vue de Stallman, sont bien évidemment à interpréter sous la dimension éthique (et donc politique) du logiciel libre, ce qui n’est pas forcément le cas de Torvalds (je ne saurais néanmoins l’affirmer). Puisque Stallman est à l’origine du mouvement du logiciel libre, on ne peut évidemment pas enlever l’éthique de son équation ou alors vous obtenez de l’open source (comme il l’explique dans l’article cité plus haut). On peut toutefois raisonnablement penser que les partisans du logiciel libre sont moins nombreux que ceux de l’open source, ce que j’explique par une peur ou un désintérêt envers cet objet politisé.

Je trouve toutefois dommage de ne pas plus s’y intéresser. En effet, la dimension éthique aide à répondre à une question que beaucoup de personnes peuvent se poser : « ce que je fais au quotidien a-t-il du sens ? ». Stallman y répond par la défense et le respect des utilisateurs et utilisatrices :

Le mouvement du logiciel libre fait campagne pour la liberté des utilisateurs de l’informatique depuis 1983.

Ou encore :

Pour qu’on puisse dire d’un logiciel qu’il sert ses utilisateurs, il doit respecter leur liberté. Que dire s’il est conçu pour les enchaîner ?

Si je souhaitais conclure par cet argument, c’est parce qu’il aide à boucler la boucle avec l’article de Maiwann. En effet, en tant qu’UX designer, elle va avoir à cœur de répondre aux besoins de ses utilisateur·trices et donc d’imaginer des mécanismes pour rendre l’outil le plus utilisable et accessible possible. Aujourd’hui il me semble percevoir dans cette communauté un mouvement de prise de conscience que ces mécanismes doivent respecter (on y revient !) les personnes utilisant le logiciel. Cela est superbement bien illustré par la vidéo « Temps de cerveau disponible » (de la série « (Tr)oppressé » que je recommande vivement) dans laquelle un ancien employé de Google, expert en éthique, témoigne :

Le but est de capter et d’exploiter au maximum l’attention.

Il l’illustre ensuite par le lancement automatique de l’épisode suivant sur Netflix et par le défilement infini sur Facebook ou Twitter (incitant de ce fait à parcourir son fil d’actualité dans son ensemble) ; ces petits riens qui font que nous revenons sans cesse à ces applications et nous en rendent dépendant alors qu’elles n’ont d’intérêt que de nous divertir.

L’un des problèmes que j’identifie aujourd’hui est que le logiciel libre copie beaucoup (trop) ce qui se fait dans le propriétaire, et en particulier chez GAFAM et consorts… jusque dans leurs mécanismes nocifs. On peut ici reprendre l’exemple du mécanisme de défilement infini que l’on retrouve chez Mastodon ou Diaspora (et même sur FreshRSS !). Une certaine forme de dépendance peut donc s’installer au sein même de logiciels libres.

Convergence des buts ?

Les designers peuvent aujourd’hui nous aider, développeurs et développeuses, à repenser l’éthique de nos logiciels en replaçant les usages au centre de nos préoccupations et en imaginant et proposant des mécanismes permettant « d’endiguer » ce flux permanent d’informations qu’il nous faut ingurgiter.

Elles et ils peuvent aussi nous aider à atteindre véritablement nos utilisateurs en rendant nos outils utilisables et… utilisés. Car un logiciel non utilisable peut-il véritablement être considéré comme Libre ? Je ne peux m’empêcher de faire ici le parallèle avec l’association Liberté 0 qui a pour objet de « sensibiliser et de promouvoir le numérique libre et accessible à toutes et tous ». Dans leur charte, il est explicité :

Les membres du groupe « Liberté 0 » considèrent que la liberté d’exécuter un programme n’a de sens que si celui-ci est utilisable effectivement.

L’association est donc dans cette même démarche de promouvoir l’utilisabilité des logiciels, au même titre que les UX designers (mais sous le prisme de l’accessibilité).

N’y aurait-il pas ici une convergence des buts ? N’existe-t-il pas un lieu où nous pourrions nous regrouper tou·tes ensemble pour imaginer des outils autres que ceux issus du « capitalisme de surveillance » ?


Merci à Maiwann pour sa relecture attentive !

Nouvelle version de Lessy : Aquila

samedi 27 janvier 2018 à 17:35

J’ai désormais adopté un petit rythme de croisière quant aux sorties des nouvelles versions de Lessy et je peux donc annoncer la sortie de la version Aquila.

Pour rappel, Lessy est un gestionnaire de temps destiné à vous aider à mieux vous organiser en associant à vos tâches des indicateurs clairs sur ce que vous avez de plus urgent à réaliser (ou abandonner) dans l’immédiat. Un service est mis à disposition gratuitement sur lessy.io et le code est hébergé sur GitHub, le tout sous licence libre.

Cette nouvelle version n’apporte pas énormément de nouvelles fonctionnalités mais le mois de janvier a tout de même été chargé pour moi.

Tout d’abord, l’amélioration phare de cette nouvelle version est l’arrivée d’un mécanisme pour synchroniser différents navigateurs : concrêtement, si vous modifiez une tâche dans un navigateur, cette modification sera aussitôt répercutée si vous avez ouvert Lessy dans un autre navigateur. Cette fonctionnalité est encore expérimentale et elle n’est pas aussi aboutie que ce que je souhaiterais, mais elle impliquait un gros changement dans l’infrastructure du projet (un serveur Redis est maintenant nécessaire). Je souhaitais donc m’en occuper avant d’aller plus loin dans le développement.

Ce qui m’a le plus occupé au final est le soudain coup de projecteur qu’a reçu le projet au début du mois avec la parution d’un article chez Korben. Celui-ci n’a pas eu pour effet de faire tomber mon serveur (ouf !) mais a permis une augmentation du nombre de retours ainsi qu’une apparition temporaire dans le trending Ruby de GitHub. Les retours que j’ai eu ont été particulièrement intéressants puisqu’ils m’ont fait réaliser que je suis encore très loin d’avoir l’outil idéal que je souhaite développer et qu’il y a encore beaucoup à faire malgré le travail réalisé jusqu’à maintenant. Les efforts à fournir vont aussi bien se situer au niveau des fonctionnalités, de l’ergonomie ou encore de l’accueil au sein de la communauté.

Je suis tout de même ravi qu’au bout de seulement un an le projet obtienne un tel coup de projecteur, ça avait été plus compliqué pour FreshRSS par exemple (qui par contre vit très bien aujourd’hui sans mon implication). J’espère que l’intérêt manifesté saura se transformer en contributions actives et régulières ! Merci au passage à toutes celles et tous ceux qui m’ont fait des retours et/ou ont contribué d’une façon ou d’une autre (commentaires dans les tickets GitHub, ouverture de pull requests, etc.)

La prochaine version verra l’apparition d’une administration afin de me permettre de mieux surveiller ce qu’il se passe sur le serveur. Aujourd’hui il y a quelques 2200 comptes sur lessy.io, dont la moitié ont été activés. J’en profite pour rappeler l’existence d’une page sur Liberapay si vous souhaitez participer aux frais du serveur (merci au passage aux trois valeureux donateurs actuels).

J’ai aussi ouvert un espace sur Framateam si vous souhaitez venir discuter du projet directement avec moi. J’aimerais que les échanges sur celui-ci se déroulent essentiellement en anglais puisque c’est la langue par défaut que j’ai choisi pour le projet, mais un canal pour les Français a été ouvert donc n’hésitez pas à venir et vous présenter !

Pour terminer, je remercie Gavy pour avoir ouvert une notice sur Framalibre à propos de Lessy, non seulement ça permet de faire vivre ce projet historique de Framasoft, mais en plus ça permet de faire encore un peu plus connaître Lessy :).