Ploum.netle blog de Lionel Dricot2023-12-01T09:51:47.226817Zhttps://ploum.net/Ploumhttps://ploum.netAnnouncing Offpunk 2.0https://ploum.net/2023-11-25-offpunk2.html2023-11-25T00:00:00Z2023-11-25T00:00:00Z
<h1>Announcing Offpunk 2.0</h1>
<p>I’m happy to announce the release, last week, of Offpunk 2.0.</p>
<p>Offpunk is an offline-first command-line browser/RSS reader. You control it by typing command and it maintains a cache of all the networked resources to allow you to access them offline indefinitely.</p>
<p>If a non-cached resource is tentatively accessed, the URL is marked as to be fetched later. Running periodically "offpunk --sync" will fetch those resources and add them to your "tour" to remind you that you wanted to access it.</p>
<ul>
<li><a href="https://sr.ht/~lioploum/offpunk/">Offpunk official website</a></li>
<li><a href="https://git.sr.ht/~lioploum/offpunk/refs/v2.0">Offpunk 2.0 changelog</a></li>
<li><a href="https://repology.org/project/offpunk/versions">List of available offpunk packages</a></li>
</ul>
<h2>Screenshot</h2>
<figure>
<a href="/files/offpunk2.png"><img alt="Mandatory screenshot showing Offpunk browsing Offpunk’s website. There’s a screenshot of Offpunk in the screenshot." src="/files/offpunk2.png" width="450" class="center"></a>
<figcaption>Mandatory screenshot showing Offpunk browsing Offpunk’s website. There’s a screenshot of Offpunk in the screenshot.</figcaption>
</figure>
<h2>Switching the license to AGPLv3</h2>
<p>Offpunk originally started as a branch then a friendly fork of AV-98. It was called AV-98-offline and, as such, shared the same BSD license.</p>
<ul>
<li><a href="https://tildegit.org/solderpunk/AV-98">AV-98, the first Gemini browser</a></li>
</ul>
<p>During multiple discussions, Solderpunk and I came to the conclusion that AV-98-offline was becoming too different from the initial goal of AV-98. It was thus renamed Offpunk. At the same time, I grew increasingly convinced that we needed more copyleft software and that the AGPL license was better suited to protect the commons.</p>
<ul>
<li><a href="/2023-06-19-more-rms.html">"We need more of Richard Stallman, not less", my take on why copyleft is important</a></li>
</ul>
<p>As a symbolic move, I’ve thus decided to switch Offpunk license from BSD to AGPLv3 but needed an opportunity to do so. The 2.0 release is such an opportunity.</p>
<h2>Multiple independent tools</h2>
<p>Like AV-98, Offpunk was one single big python file. I liked the simplicity of it. But it really became a mess and I wanted to offer Offpunk’s features as separate command-line tool. With Offpunk 2.0, you will thus have three new command-line tools:</p>
<p>- netcache : when given a URL, will download and cache this URL or only access the cache if the "--offline" option is provided.<br>
- ansicat : will render an HTML, an RSS, a Gemtext or even a picture in your terminal, with various options.<br>
- opnk : universal opener. Will try to render any file or any URL in your terminal. If it fails, it will fallback to xdg-open.</p>
<p>Those three commands should come with a man page and a "--help" but they are still quite new. To my own surprise, I found myself using "opnk" all the time. I don’t think anymore about how to handle a file, I simply give it to opnk.</p>
<p>Packaging those tools was a lot harder than expected and I want to thank all the contributors to this work, including Austreelis, David Zaslavsky and Jean Abou Samra.</p>
<h2>Themes</h2>
<p>The goal of Offpunk, through Ansicat, is to render web, RSS, gemini and gopher pages as coloured ANSI text in your terminal. Until now, those colours were hardcoded. With 2.0, they can be customised. See "help theme".</p>
<figure>
<a href="/files/offpunk2_theme.png"><img alt="Screenshot of Offpunk customised with the worst possible colours I could find." src="/files/offpunk2_theme.png" width="450" class="center"></a>
<figcaption>Screenshot of Offpunk customised with the worst possible colours I could find.</figcaption>
</figure>
<p>In offpunk, customisation can be made permanent by adding all the commands you want to run at startup in your .config/offpunk/offpunkrc file. Mine contains one single line: "offline", ensuring I use Offpunk only in offline mode.</p>
<h2>Getting started</h2>
<p>Using Offpunk daily as your main browsing/rss driver takes some learning. You need to get used to the Offpunk philosophy: adding elements to tour instead of clicking them, creating lists to read later, doing a daily synchronisation. It is not trivial.</p>
<p>The "help" command will probably be your best allies. The community also provide support on a user dedicated mailing-list.</p>
<ul>
<li><a href="https://lists.sr.ht/~lioploum/offpunk-users">Offpunk-users mailing list</a></li>
</ul>
<p>If Offpunk becomes useful to you, the community is open. Contributions, documentation, blog post about how you use Offpunk, help to new users and packaging are warmly welcome. Sometimes, simple feedback is all it takes to make a developer happy. So don’t hesitate to contribute in one of our lists.</p>
<ul>
<li><a href="https://lists.sr.ht/~lioploum/offpunk-devel">Offpunk-devel mailing list</a></li>
<li><a href="https://lists.sr.ht/~lioploum/offpunk-packagers">Offpunk-packagers mailing list</a></li>
</ul>
<p>I’ve also started an experimental Matrix room on #offpunk:matrix.org. I have the belief that mailing-list is better suited for discussions but I’m giving this the benefit of doubt and willing to explore whether or not direct real-time discussion could help new users.</p>
<ul>
<li><a href="https://matrix.to/#/#offpunk:matrix.org">Join the #offpunk:matrix.org room</a></li>
</ul>
<div class="signature"><p>As a writer and an engineer, I like to explore how technology impacts society. You can subscribe <a href="https://listes.ploum.net/mailman3/postorius/lists/en.listes.ploum.net/">by email</a> or <a href="/atom_en.xml">by rss</a>. I value privacy and never share your adress.</p>
<p>If you read French, you can support me by buying/sharing/reading <a href="/livres.html">my books</a> and subscribing to my <a href="https://listes.ploum.net/mailman3/postorius/lists/fr.listes.ploum.net/">newsletter in French</a> or <a href="/atom_fr.xml">RSS</a>. I also develop <a href="/software.html">Free Software</a>.</p>
</div>
Ploumhttps://ploum.netThe gift of timehttps://ploum.net/2023-11-10-the-gift-of-time.html2023-11-10T00:00:00Z2023-11-10T00:00:00Z
<h1>The gift of time</h1>
<p>Maintaining a free software project is spending years of your life to solve a problem that would have taken several hours or even days without the software.</p>
<p>Which is, joke aside, an incredible contribution to the common good.</p>
<p>The time saved is multiplied by the number of users and quickly compound. They are saving time without the need to exchange their own time. </p>
<p>Free software offers free time, free life extension to many human living now and maybe in the future.</p>
<p>Instead of contributing to the economy, free software developers contribute to humanity. To the global progress.</p>
<p>Free software is about making our short lifetimes a common good instead of an economical product.</p>
<div class="signature"><p>As a writer and an engineer, I like to explore how technology impacts society. You can subscribe <a href="https://listes.ploum.net/mailman3/postorius/lists/en.listes.ploum.net/">by email</a> or <a href="/atom_en.xml">by rss</a>. I value privacy and never share your adress.</p>
<p>If you read French, you can support me by buying/sharing/reading <a href="/livres.html">my books</a> and subscribing to my <a href="https://listes.ploum.net/mailman3/postorius/lists/fr.listes.ploum.net/">newsletter in French</a> or <a href="/atom_fr.xml">RSS</a>. I also develop <a href="/software.html">Free Software</a>.</p>
</div>
Ploumhttps://ploum.netPourquoi sommes-nous tellement accros à Google Maps et Waze ?https://ploum.net/2023-11-03-logiciels-de-navigation.html2023-11-03T00:00:00Z2023-11-03T00:00:00Z
<h1>Pourquoi sommes-nous tellement accros à Google Maps et Waze ?</h1>
<p>S’il y’a bien un logiciel propriétaire difficile à lâcher, c’est Google Maps. Ou Waze, qui appartient également à Google. Pourquoi est-ce si compliqué de produire un logiciel de navigation libre ? Ayant passé quelques années dans cette industrie, je vais vous expliquer les différents composants d’un logiciel de navigation.</p>
<p>Les briques de base d’un logiciel de navigation sont la position, les données, le mapmatching, le routing, la recherche et les données temps réel. Pour chaque composant, je propose une explication et une analyse des solutions libres.</p>
<h2>La position</h2>
<p>Le premier composant est un système de positionnement qui va fournir une coordonnée géographique avec, parfois, un degré de précision. Une longitude et une latitude, tout simplement.</p>
<p>Il existe plusieurs manières d’estimer une position. Le plus connu est le GPS qui capte des ondes émises par les satellites du même nom. Contrairement à une idée tenace, votre téléphone n’émet rien lorsqu’il utilise le GPS, il se contente d’écouter les signaux GPS tout comme une radio FM écoute les ondes déjà présentes. Votre téléphone n’a de toute façon pas la puissance d’émettre jusqu’à un satellite. Les satellites GPS sont, au plus près, à 20.000 km de vous. Vous croyez que votre téléphone puisse envoyer un signal à 20.000 km ?</p>
<p>Pour simplifier à outrance, le principe d’un satellite GPS est d’émettre en permanence un signal avec l’heure qu’il est à son bord. Votre téléphone, en captant ce signal, compare cette heure avec sa propre horloge interne. Le décalage entre les deux permet de mesurer la distance entre le téléphone et le satellite, sachant que l’onde se déplace à la vitesse de la lumière, une onde radio n’étant que de la lumière dans un spectre invisible à l’œil humain. En refaisant cette opération pour trois satellites dont la position est connue, le téléphone peut, par triangulation, connaître sa position exacte.</p>
<p>Fait intéressant: ce calcul n’est possible qu’en connaissant la position des satellites GPS. Ces positions étant changeantes et difficilement prévisibles à long terme, elles sont envoyées par les satellites eux-mêmes, en plus de l’heure. On parle des « éphémérides ». Cependant, attendre l’envoi des éphémérides complètes peut prendre plusieurs minutes, le signal GPS ne pouvant envoyer que très peu de données.</p>
<p>C’est la raison pour laquelle un GPS éteint depuis longtemps mettra un long moment avant d’afficher sa position. Un GPS éteint depuis quelques heures seulement pourra réutiliser les éphémérides précédentes. Et pour votre smartphone, c’est encore plus facile : il profite de sa connexion 4G ou Wifi pour télécharger les éphémérides sur Internet et vous offrir un positionnement (un « fix ») quasi instantané.</p>
<p>Le système GPS appartient à l’armée américaine. Le concurrent russe s’appelle GLONASS et la version civile européenne Galileo. La plupart des appareils récents supportent les trois réseaux, mais ce n’est pas universel.</p>
<p>Même sans satellite, votre smartphone vous positionnera assez facilement en utilisant les bornes wifi et les appareils Bluetooth à proximité. De quelle manière ? C’est très simple : les appareils Google et Apple envoient, en permanence, à leur propriétaires respectifs (les deux entreprises susnommées) votre position GPS ainsi que la liste des wifi, appareils Bluetooth et NFC dans le voisinage. Le simple fait d’avoir cet engin nous transforme un espion au service de ces entreprises. En fait, de nombreux engins espionnent en permanence notre position pour revendre ces données.</p>
<ul>
<li><a href="https://doubleagent.net/2023/05/21/a-car-battery-monitor-tracking-your-location">Exemple d’un moniteur de batterie de voiture Bluetooth qui collecte les données de position à l’insu de son propriétaire.</a></li>
</ul>
<p>Si on coupe le GPS d’un appareil Android Google, celui-ci se contentera d’envoyer une requête à Google sous la forme : « Dis, je ne connais pas ma position, mais je capte le wifi grandmaman64 et superpotes89 ainsi qu’une télé Samsung compatible Bluetooth, t’aurais pas une idée d’où je suis ? ». Réponse : « Ben justement, j’ai trois utilisateurs qui sont passés hier près de ces wifis et de cette télé, ils étaient dans la rue Machinchose. Donc tu es probablement dans la rue Machinchose. » Apple fait exactement pareil.</p>
<p>Quelle que soit la solution utilisée, GPS ou autre, la position d’un smartphone est fournie par le système d’exploitation et ne pose donc aucun problème au développeur d’application. C’est complètement transparent, mais l’obtention d’une position sera parfois légèrement plus longue sans les services Google ou Apple propriétaires décrits ci-dessus. </p>
<h2>Les datas (données cartographiques)</h2>
<p>Ce n’est pas tout d’avoir une position, encore faut-il savoir à quoi elle correspond. C’est le rôle des données cartographiques, souvent appelées "data" dans l’industrie.</p>
<p>Obtenir des données cartographiques est un boulot inimaginable qui, historiquement, impliquait de faire rouler des voitures sur toutes les routes d’un pays, croisant les données avec la cartographie officielle puis mêlant cela aux données satellites. Dans les années 2000, deux fournisseurs se partageaient un duopole (Navteq, acquis par Nokia en 2007 et TeleAtlas, acquis par Tomtom en 2008). Google Maps utilisait d’ailleurs souvent des données issues de ces fournisseurs (ainsi que tous les GPS de l’époque). Dans certaines régions, le logo Navteq était même visible sur la cartographie Google Maps. Mais plutôt que de payer une fortune à ces entreprises, Google a décidé de lancer sa propre base de données, envoyant ses propres voitures sur les routes (et profitant de l’occasion pour lancer Google Street View).</p>
<p>La toute grande difficulté des data, c’est qu’elles changent tout le temps. Les sentiers et les chemins se modifient. Des routes sont ouvertes. D’autres, fermées. Des constructions se font, des quartiers entiers apparaissent alors qu’une voie se retrouve à sens unique. Parcourir la campagne à vélo m’a appris que chaque jour peut être complètement différent. Des itinéraires deviennent soudainement impraticables pour cause de ronces, de fortes pluies ou de chutes d’arbres. D’autres apparaissent comme par magie. C’est un peu moins rapide pour les automobilistes, mais tentez de traverser l’Europe avec une carte d’une dizaine d’années et vous comprendrez votre douleur.</p>
<p>En parallèle de ces fournisseurs commerciaux est apparu le projet OpenStreetMap que personne ne voulait prendre au sérieux dans l’industrie. On m’a plusieurs fois ri au nez lorsque j’ai suggéré que cette solution était l’avenir. Tout comme Universalis ne prenait pas Wikipédia au sérieux.</p>
<figure>
<a href="/files/osm_lln.jpg"><img alt="Ma région sur OpenStreetMap" src="/files/osm_lln.jpg" width="450" class="center"></a>
<figcaption>Ma région sur OpenStreetMap</figcaption>
</figure>
<p>Le résultat, nous le connaissons : OpenStreetMap est aujourd’hui la meilleure base de données cartographiques pour la plupart des cas d’usage courant. À tel point que les géants comme Waze n’hésitent pas à les repomper illégalement. Sebsauvage signale le cas d’un contributeur OSM qui a sciemment inventé un parc de toutes pièces. Ce parc s’est retrouvé sur Waze…</p>
<ul>
<li><a href="https://sebsauvage.net/links/?drfIkA">Sebsauvage: j’ai un problème avec Waze</a></li>
</ul>
<p>Mais les applications utilisant OpenStreetMap doivent faire face à un gros défi : soit demander à l’utilisateur de charger les cartes à l’avance et de les mettre à jour régulièrement, soit de les télécharger au fur et à mesure, ce qui rend l’utilisation peu pratique (comment calculer un itinéraire ou trouver une adresse dans une zone dont on n’a pas la carte ?). Le projet OpenStreetMaps est en effet financé essentiellement par les dons et ne peut offrir une infrastructure de serveurs répondant immédiatement à chaque requête, chose que Google peut confortablement se permettre.</p>
<h2>Le mapmatching</h2>
<p>Une fois qu’on a la carte et la position, il suffit d’afficher la position sur la carte, non ? Et bien ce n’est pas aussi simple. Tout d’abord parce que la planète est loin de correspondre à une surface plane. Il faut donc considérer la courbure de la terre et le relief. Mais, surtout, le GPS tout comme les données cartographiques peuvent avoir plusieurs mètres d’imprécision.</p>
<p>Le mapmatching consiste à tenter de faire coïncider les deux informations : si un GPS se déplace à 120km/h sur une ligne parallèle située à quelques mètres de l’autoroute, il est probablement sur l’autoroute ! Il faut donc corriger la position en fonction des données.</p>
<p>En ville, des hauts bâtiments peuvent parfois refléter le signal GPS et donc allonger le temps de parcours de celui-ci. Le téléphone croira alors être plus loin du satellite que ce n’est réellement le cas. Dans ce genre de situation, le mapmatching vous mettra dans une rue parallèle. Cela vous est peut-être déjà arrivé et c’est assez perturbant.</p>
<p>Une autre application du mapmatching, c’est de tenter de prédire la position future, par exemple dans un tunnel. La position GPS, de par son fonctionnement, introduit en effet une latence de quelques secondes. Dans une longue ligne droite, ce n’est pas dramatique. Mais quand il s’agit de savoir à quel embranchement d’un rond-point tourner, chaque seconde est importante.</p>
<p>Le logiciel peut alors tenter de prédire, en fonction de votre vitesse, votre position réelle. Parfois, ça foire. Comme lorsqu’il vous dit que vous avez déjà dépassé l’embranchement que vous devez prendre alors que ce n’est pas le cas. Ou qu’il vous dit de tourner dans trente mètres alors que vous êtes déjà passé.</p>
<h2>La recherche</h2>
<p>On a la position sur la carte qui est, le plus souvent, notre point de départ. Il manque un truc important: le point d’arrivée. Et pour trouver le point d’arrivée, il faut que l’utilisateur l’indique.</p>
<p>Les recherches géographiques sont très compliquées, car la manière dont nous écrivons les adresses n’a pas beaucoup de sens : on donne le nom de la rue avant de donner la ville avant de donner le pays ! Dans les voitures, la solution a été de forcer les utilisateurs à entrer leurs adresses à l’envers: pays, ville, rue, numéro. C’est plus logique, mais nous sommes tellement habitués à l’inverse que c’est contre-intuitif.</p>
<p>Le problème de la recherche dans une base de données est un problème très complexe. Avec les applications OpenStreetMap, la base de données est sur votre téléphone et votre recherche est calculée par le minuscule processeur de ce dernier.</p>
<p>Ici, Google possède un avantage concurrentiel incommensurable. Ce n’est pas votre téléphone qui fait la recherche, mais bien les gigantesques serveurs de Google. Tapez "rue Machinchose" et la requête est immédiatement envoyée à Google (qui en profite pour prendre note dans un coin, histoire de pouvoir utiliser ces informations pour mieux vous cibler avec des publicités). Les ordinateurs de Google étant tellement rapide, ils peuvent même tenter d’être intelligent: il y’a 12 rue Machinchose dans tout le pays, mais une MachinChause, avec une orthographe différente, dans un rayon de 10km, on va donc lui proposer celle-là. Surtout que, tient, nous avons en mémoire qu’il s’est rendu 7 fois dans cette rue au cours des trois dernières années, même sans utiliser le GPS. </p>
<p>Force est de constater que les applications libres qui font la recherche sur votre téléphone ne peuvent rivaliser en termes de rapidité et d’aisance. Pour les utiliser, il faut s’adapter, accepter de refaire la recherche avec des orthographes différentes et d’attendre les résultats.</p>
<h2>Le routing</h2>
<p>On a le départ, on a l’arrivée. Maintenant il s’agit de calculer la route, une opération appelée « routing ». Pour faire du routing, chaque tronçon de route va se voir attribuer différentes valeurs : longueur, temps estimé pour le parcourir, mais aussi potentiellement le prix (routes payantes), la beauté (si on veut proposer un trajet plus agréable), le type de revêtement, etc.</p>
<p>L’algorithme de routing va donc aligner tous les tronçons de route entre le départ et l’arrivée, traçant des centaines ou des milliers d’itinéraires possibles, calculant pour chaque itinéraire la valeur totale en additionnant les valeurs de chaque tronçon.</p>
<p>Il va ensuite sélectionner l’itinéraire avec la meilleure valeur totale. Si on veut le plus rapide, c’est le temps total estimé le plus court. Si on veut la distance, c’est la distance la plus courte, etc.</p>
<p>À mon époque, l’algorithme utilisé était le plus souvent de type « Bidirectionnal weighted A-star ». Cela signifie qu’on commence à la fois du départ et de l’arrivée, en explorant jusqu’au moment où les chemins se rencontrent et en abandonnant les chemins qui sont déjà de toute façon disqualifiés, car un plus court existe (oui, on peut aller de Bruxelles à Paris en passant par Amsterdam, mais ce n’est pas le plus efficace).</p>
<p>Une fois encore, le problème est particulièrement complexe et votre téléphone va prendre un temps énorme à calculer l’itinéraire. Alors que les serveurs de Google vont le faire pour vous. Google Maps ne fait donc aucun calcul sur votre téléphone : l’application se contente de demander aux serveurs Google de les faire à votre place. Ceux-ci centralisent les milliers d’itinéraires demandés par les utilisateurs et les réutilisent parfois sans tout recalculer. Quand on est un monopole, il n’y a pas de petits profits.</p>
<h2>Les données temps réels</h2>
<p>Mais si on veut le trajet le plus rapide en voiture, une évidence saute aux yeux: il faut éviter les embouteillages. Et les données concernant les embouteillages sont très difficiles à obtenir en temps réel.</p>
<p>Sauf si vous êtes un monopole qui se permet d’espionner une immense majorité de la population en temps réel. Il vous suffit alors, pour chaque tronçon de route, de prendre la vitesse moyenne des téléphones qui sont actuellement sur ce tronçon.</p>
<p>L’artiste Simon Weckert avait d’ailleurs illustré ce principe en promenant 99 smartphones connectés sur Google maps dans un chariot. Le résultat ? Une rue déserte est devenue un embouteillage sur Google Maps.</p>
<figure>
<a href="/files/weckert4.jpg"><img alt="Simon Weckert créant un embouteillage sur Google Maps en tirant 99 smartphones dans un petit chariot" src="/files/weckert4.jpg" width="450" class="center"></a>
<figcaption>Simon Weckert créant un embouteillage sur Google Maps en tirant 99 smartphones dans un petit chariot</figcaption>
</figure>
<ul>
<li><a href="https://www.simonweckert.com/googlemapshacks.html">La performance Google Maps de Simon Weckert</a></li>
</ul>
<p>Là, force est de constater qu’il est difficile, voire impossible, de fournir ces données sans espionner massivement toute la population. À ce petit jeu, les alternatives libres ne pourront donc jamais égaler un monopole de surveillance comme celui de Google.</p>
<p>Mais tout n’est pas noir, car, contrairement à ce qu’on pourrait croire, les infos trafic ne nous permettent pas d’aller plus vite. Elles donnent une illusion d’optimalité qui empire le trafic sur les itinéraires alternatifs et, au final, le temps perdu reste identique. Le seul avantage est que la prévision du temps de trajet est grandement améliorée.</p>
<ul>
<li><a href="https://hardfault.life/p/organic-maps-review">Une expérience du routing sur Organic Maps</a></li>
<li><a href="https://trid.trb.org/view/1495267">Une étude démontrant que les infotrafics ne font que modifier le problème sans le résoudre.</a></li>
</ul>
<p>Ce résultat résulte de ce que j’appelle le paradoxe de l’embouteillage. C’est un fait bien connu des scientifiques et ignoré à dessein des politiciens que le trafic automobile est contre-intuitif. Au plus la route est large et permet à de nombreux véhicules de passer, au plus les embouteillages seront importants et la circulation chaotique. Si votre politicien propose de rajouter une bande sur le périphérique pour fluidifier la circulation, changez de politicien !</p>
<p>L’explication de ce phénomène tient au fait que lorsqu’il y’a un embouteillage sur le périphérique, ce n’est pas le périphérique qui bouche. C’est qu’il y’a plus de voitures qui rentrent sur le périphérique que de voitures qui en sortent. Or, les sorties restent et resteront toujours limitées par la taille des rues dans les villes.</p>
<p>En bref, un embouteillage est causé par le goulot d’étranglement, les parties les plus étroites qui sont, le plus souvent, les rues et ruelles des différentes destinations finales. Élargir le périphérique revient à élargir le large bout d’un entonnoir en espérant qu’il se vide plus vite. Et, de fait, cela rend les choses encore pires, car cela augmente le volume total de l’entonnoir, ce qui fait qu’il contient plus d’eau et mettra donc plus longtemps à se vider.</p>
<figure>
<a href="/files/weckert2.jpg"><img alt="99 smartphones dans un bac à roulette: c’est tout ce que nous sommes pour Google" src="/files/weckert2.jpg" width="450" class="center"></a>
<figcaption>99 smartphones dans un bac à roulette: c’est tout ce que nous sommes pour Google</figcaption>
</figure>
<p>Les infotrafics et les itinéraires alternatifs proposés par Google Maps ne font pas autre chose que de rajouter une bande de trafic virtuelle (sous forme d’un itinéraire alternatif) et donc élargissent le haut de l’entonnoir. Les infos trafic restent utiles dans les cas particuliers où votre destination est complètement différente du reste de la circulation. Où si la congestion apparait brusquement, comme un accident : dans ce cas, vous pourriez avoir le bénéfice rare, mais enviable d’emprunter l’itinéraire de secours juste avant sa congestion.</p>
<p>La plupart du temps, les infotrafics sont globalement contre-productifs par le simple fait que tout le monde les utilise. Elles seraient parfaites si vous étiez la seule personne à en bénéficier. Mais comme tout le monde les utilise, vous êtes également obligé de les utiliser. Tout le monde y perd.</p>
<p>Leur impact premier est surtout psychologique: en jouant avec les itinéraires alternatifs, vous pouvez vous convaincre que vous n’avez pas d’autre choix que prendre votre mal en patience. Alors que, sans eux, vous serez persuadés qu’il y’a forcément une autre solution.</p>
<h2>Les logiciels</h2>
<p>Alors, se passer de Google Maps ? Comme nous l’avons vu, ce n’est pas évident. Le service Google Maps/Waze se base sur l’espionnage permanent et instantané de milliards d’utilisateurs, offrant une précision et une rapidité insurpassable. Quand on y pense, le coût de ce confort est particulièrement élevé. Et pourtant, Google Maps n’est pas la panacée.</p>
<p>J’ai personnellement un faible pour Organic Maps, que je trouve bien meilleur que Google Maps pour tout à l’exception du trafic routier : les itinéraires à pieds, en vélo et même en voiture hors des grands axes sont bien plus intéressants. Certes, il nécessite de télécharger les cartes. Inconvénient, selon moi, mineur, car permettant une utilisation même sans connexion. La recherche est, par contre, souvent frustrante et lente. </p>
<p>Mais le mieux est peut-être d’explorer les alternatives libres à Google Maps dans cet excellent article de Louis Derrac.</p>
<ul>
<li><a href="https://louisderrac.com/2023/05/5-alternatives-a-google-maps-et-les-autres/">5 alternatives à Google Maps, par Louis Derrac</a></li>
</ul>
<p>Et puis, pourquoi ne pas lutter contre la privatisation du bien commun qu’est la cartographie en apprenant à contribuer à OpenStreetMap ?</p>
<ul>
<li><a href="https://www.openstreetmap.fr/se-former-a-openstreetmap/">Se former à OpenStreetMap</a></li>
</ul>
<ul>
<li><a href="https://unsplash.com/fr/photos/globe-de-bureau-marron-et-bleu-IfYgg7ZLEQw">La photo d’illustration est de Al Soot, sur Unsplash</a></li>
</ul>
<div class="signature"><p>Ingénieur et écrivain, j’explore l’impact des technologies sur l’humain, tant par écrit que dans mes conférences.</p>
<p>Recevez directement par mail <a href="https://listes.ploum.net/mailman3/postorius/lists/fr.listes.ploum.net/">mes écrits en français</a> et <a href="https://listes.ploum.net/mailman3/postorius/lists/en.listes.ploum.net/">en anglais</a>. Votre adresse ne sera jamais partagée. Vous pouvez également utiliser <a href="/atom_fr.xml">mon flux RSS francophone</a> ou <a href="/atom.xml">le flux RSS complet</a>.</p>
<p>Pour me soutenir, <a href="/livres.html">achetez mes livres</a> (si possible chez votre libraire) ! Je viens justement de publier un <a href="/et-autres-joyeusetes-que-nous-reserve-le-futur/index.html">recueil de nouvelles</a> qui devrait vous faire rire et réfléchir.</p>
</div>
Ploumhttps://ploum.netLa fabrique à souvenirshttps://ploum.net/2023-10-30-fabrique-a-souvenirs.html2023-10-30T00:00:00Z2023-10-30T00:00:00Z
<h1>La fabrique à souvenirs</h1>
<h2>Extrait de mon journal du 21 octobre 2023.</h2>
<figure>
<a href="/files/festival_folklore.jpg"><img alt="Photo prise au bord de la Meuse, début août 2023, d’une affiche pour le « Festival du folklore » à Namur et Jambes. Sur l’affiche, des personnes, toutes habillées de différents costumes traditionnels, se regroupent pour prendre un selfie." src="/files/festival_folklore.jpg" width="450" class="center"></a>
<figcaption>Photo prise au bord de la Meuse, début août 2023, d’une affiche pour le « Festival du folklore » à Namur et Jambes. Sur l’affiche, des personnes, toutes habillées de différents costumes traditionnels, se regroupent pour prendre un selfie.</figcaption>
</figure>
<p>Les photos étaient une manière de garder la trace d’un événement. C’en est désormais devenu l’objectif premier. Plutôt que de nous souvenir de ce que nous avons vécu, nous créons de toutes pièces des faux souvenirs, de fausses memorabilia afin de tromper notre futur moi.</p>
<p>Nous souffrons une journée entière à faire la file dans un Disneyland bondé afin de pouvoir, dans cinq ou dix ans, prétendre que nos sourires étaient sincères, que notre amusement était réel.</p>
<p>D’ailleurs, cela nous sera confirmé par tous ceux qui ont reçu nos photos dans les heures, parfois les secondes après la prise de vue. Nos followers sont les faux témoins que nous achetons, que nous corrompons afin de nous inventer des souvenirs.</p>
<div class="signature"><p>Ingénieur et écrivain, j’explore l’impact des technologies sur l’humain, tant par écrit que dans mes conférences.</p>
<p>Recevez directement par mail <a href="https://listes.ploum.net/mailman3/postorius/lists/fr.listes.ploum.net/">mes écrits en français</a> et <a href="https://listes.ploum.net/mailman3/postorius/lists/en.listes.ploum.net/">en anglais</a>. Votre adresse ne sera jamais partagée. Vous pouvez également utiliser <a href="/atom_fr.xml">mon flux RSS francophone</a> ou <a href="/atom.xml">le flux RSS complet</a>.</p>
<p>Pour me soutenir, <a href="/livres.html">achetez mes livres</a> (si possible chez votre libraire) ! Je viens justement de publier un <a href="/et-autres-joyeusetes-que-nous-reserve-le-futur/index.html">recueil de nouvelles</a> qui devrait vous faire rire et réfléchir.</p>
</div>
Ploumhttps://ploum.netPourquoi j’ai supprimé mon compte Twitter (et pourquoi vous pouvez probablement en faire autant sans hésiter)https://ploum.net/2023-10-29-le-droit-de-supprimer-twitter.html2023-10-29T00:00:00Z2023-10-29T00:00:00Z
<h1>Pourquoi j’ai supprimé mon compte Twitter (et pourquoi vous pouvez probablement en faire autant sans hésiter)</h1>
<p>Je suis complètement addict aux réseaux sociaux. Je suis complètement obnubilé par mon image sur ceux-ci. Pendant des années, dès qu’une nouvelle plateforme apparaissait, j’y créais un compte "@ploum" histoire de « garder le contrôle » sur mon pseudonyme. Je tenais les comptes de mes followers sur chacune. Je me présentais comme « @ploum » dans le premier slide de mes conférences. </p>
<p>Il y a déjà un an, Elon Musk prenait les rênes de Twitter, le renommait en « X-anciennement-Twitter » et le transformait, d’après les témoignages que j’en ai, en une soupe nauséabonde. Je dis « d’après les témoignages » parce qu’à l’époque, cela faisait justement un an que j’avais supprimé mon compte.</p>
<p>Si j’ai supprimé mon compte, avant même l’arrivée d’Elon Musk, il y’a des chances que vous puissiez supprimer le vôtre également. Et peut-être pas seulement sur Twitter.</p>
<p>Je parle bien de le supprimer, pas de ne « plus l’utiliser » ou « le mettre en sommeil ». Je suis passé par là également et cela n’a rien à voir. C’est comme les personnes, dont la télé trône au milieu du salon, mais qui disent ne pas la regarder. Ou rarement. Enfin… pas trop souvent. Enfin, juste quand on s’ennuie. Ou quand il y’a un truc intéressant… Et puis aussi pour avoir une présence.</p>
<p>En supprimant mon compte, j’ai retiré un utilisateur de la plateforme et fait baisser sa valeur. J’ai supprimé toute possibilité de me contacter sur ces plateformes, possibilité qui faisait que, même si je n’utilisais plus un service, je m’y connectais une fois par mois pour répondre aux messages qui arrivaient forcément là-bas, car, si compte il y a, il y’aura toujours quelqu’un pour l’utiliser. </p>
<p>En supprimant mon compte, je suis devenu injoignable sur cette plateforme. Ce qui rend la plateforme un tout petit peu moins attractive pour mon entourage et ceux qui me suivent. Ce qui fait que la plateforme ne pourra pas montrer mon nom dans la liste de contacts lorsqu’une personne qui a mon numéro de téléphone s’inscrira pour la première fois. J’ai également supprimé un follower de tous ces créateurs que j’aime, mais qui sont, comme moi, un peu trop addicts aux likes.</p>
<p>Bref, en supprimant mon compte Twitter, j’ai rendu le monde un poil meilleur.</p>
<h2>Oui, mais si on veut te contacter via cette plateforme</h2>
<p>Si on veut me contacter, supprimer mon compte est la meilleure des choses. Parce que personne ne tentera de me contacter sur une plateforme où je ne suis pas. Personne ne pensera que j’ai reçu le message.</p>
<p>Comme je l’expliquais, les réseaux sociaux publicitaires ne nous mettent pas en relation, ils nous vendent l’illusion d’être en relation. En faisant parfois exactement le contraire.</p>
<ul>
<li><a href="/facebook-ma-rendu-injoignable/index.html">Facebook m’a rendu injoignable</a></li>
</ul>
<p>Pour le cas d’un groupe particulier utilisant une plateforme, c’est souvent difficile d’être le premier à quitter. J’ai souvent eu l’impression de m’exclure des groupes qui n’étaient pas techniques (les différents sports que je pratique dans mon cas). J’ai signalé à plusieurs personnes que je ne recevais pas les infos. J’ai rappelé que je n’étais pas sur la plateforme utilisée, Facebook, Twitter ou Whatsapp. J’ai demandé à certains de me faire suivre les messages.</p>
<p>Cela a été difficile jusqu’au moment où une deuxième personne s’est révélée ne pas être non plus sur la plateforme. Soit qu’elle l’ait quittée, soit qu’elle ne l’ait jamais été. À partir de ce moment-là, les membres du groupe prennent conscience que la plateforme n’est plus représentative du groupe. Et l’intérêt pour la plateforme diminue pour disparaitre totalement avec la troisième personne qui n’y est pas non plus.</p>
<p>Être le premier est difficile et pas toujours possible dans un groupe. Mais si vous ne savez pas être le premier, soutenez toute autre tentative et soyez le second.</p>
<h2>Oui, mais on peut usurper ton identité.</h2>
<p>Sur Twitter, je disposais d’un compte vérifié (et ce depuis plusieurs années, à une époque où c’était encore rare et une source de frime), un compte créé en 2007 avec presque 7000 followers. J’y étais attaché. J’en étais fier même si avoir un nombre de followers à 4 chiffres est un peu la gêne chez les influenceurs de la nouvelle génération.</p>
<p>Avant de supprimer mon compte, je l’ai annoncé. À tous les messages qui arrivaient pendant une semaine ou quelques jours, j’ai répondu que ce compte allait être supprimé. Je l’ai également annoncé sur mon site et sur Mastodon.</p>
<p>Il est important de rappeler qu’à la suppression d’un compte Twitter, le pseudo est bloqué pendant un an. Pendant un an, personne ne peut l’utiliser.</p>
<p>Un an plus tard, quelqu’un pourrait en effet utiliser votre identifiant. C’est arrivé avec @ploum, un an jour pour jour après la suppression du compte. Le nouveau compte @ploum n’a rien à voir avec moi et ne peut en aucun cas être confondu avec moi.</p>
<p>Oui, ma petite notoriété m’a déjà fait subir des attaques voire du harcèlement. Oui, j’ai déjà vu des faux ploum se faire passer pour moi, ce qui a motivé d’ailleurs à l’époque ma vérification par Twitter. Pourtant, la probabilité que l’identifiant soit réutilisé par une personne qui me connait et est motivée pour me nuire était tout de même très faible. Parce que, honnêtement, tout le monde s’en fout de mon compte Twitter. Surtout quand il faut attendre un an après sa disparition.</p>
<p>Mais admettons que ce soit le cas. Un compte Twitter serait apparu qui aurait repris mon pseudo et un avatar crédible avant de commencer à raconter des atrocités en se faisant passer pour moi.</p>
<p>Et alors ?</p>
<p>Ce genre de compte a toujours été possible en jouant sur de subtiles variations orthographiques. On pourrait imaginer @pl0um, @ploom, @p1oum, … Cela fait un an que mon compte avait disparu, il n’est plus référencé sur mon site ni dans aucune bio, il a 0 follower. Quelle est la crédibilité d’un faux compte ?</p>
<p>Ne pas supprimer son compte Twitter par peur d’usurpation d’identité, c’est reconnaître à Twitter un pouvoir énorme, un pouvoir étatique : celui d’assigner l’identité des individus. Reconnaissez-vous Elon Musk comme garant de votre identité ? Si non, il est urgent de supprimer votre compte. Et si oui, rappelez-vous que Musk peut s’arroger de prendre votre identifiant à sa guise. Il l’a déjà fait.</p>
<p>Ce genre d’argument, que j’entends très souvent, me fait également souvent sourire parce que, en toute honnêteté, qui est suffisamment important pour qu’on veuille usurper son identité sur Twitter ? Et quels problèmes de cette situation très hypothétique ne pourraient pas être réglés par un simple « Ce compte Twitter se fait passer pour moi, mais ce n’est pas moi » sur vos autres plateformes et sur votre site ? Franchement, au rythme où ça va, vous pensez vraiment qu’il y’aura quoi que ce soit de crédible sur Twitter dans un an ? Si votre identité numérique est importante, investissez dans un nom de domaine avant toute chose !</p>
<p>L’inventeur, auteur et technologiste Jaron Lanier, par exemple, n’a jamais eu de compte sur aucun réseau social. Il a d’ailleurs écrit un livre très court pour vous convaincre d’effacer vos comptes. Pourtant, il y’a plusieurs comptes à son nom, certains portant même la mention « officiel ». Il se contente de dire sur son site que ces comptes ne sont pas de lui. Point à la ligne, problème réglé.</p>
<ul>
<li><a href="https://www.jaronlanier.com/tenarguments.html">10 arguments pour supprimer vos comptes sur les réseaux sociaux</a></li>
</ul>
<h2>OK, toi tu l’as fait, mais moi je vais perdre ma communauté et mon audience</h2>
<p>Comme le raconte Cory Doctorow, votre audience Twitter a déjà disparu. Ce n’est qu’un chiffre. Le média NPR a supprimé son compte Twitter et ses visites ont baissé de moins de 1%. Cory Doctorow a 10 fois plus de followers sur Twitter que sur Mastodon. Mais quand on parle des partages et des réponses, le ratio s’inverse. Mastodon est clairement beaucoup plus actif.</p>
<ul>
<li><a href="https://pluralistic.net/2023/10/14/freedom-of-reach/">Blog de Cory Doctorow sur la disparition de l’audience Twitter</a></li>
</ul>
<p>La même expérience vient d’être menée involontairement par l’application Signal. Le compte Twitter officiel de Signal, 600k followers, a en effet réagi à l’annonce d’une faille de sécurité.</p>
<ul>
<li><a href="https://nitter.net/signalapp/status/1713789255359619171">Le message de Signal sur Twitter</a></li>
</ul>
<p>Ce message a fait la première page du populaire site Hacker News et a donc été vu beaucoup de fois, y compris par des gens ne suivant pas le compte Signal sur Twitter. </p>
<p>5h plus tard, alors que le message Twitter faisait déjà le buzz, Signal a reposté le contenu sur son compte Mastodon, qui n’a « que » 40k followers (15 fois moins).</p>
<ul>
<li><a href="https://mastodon.world/@signalapp/111243840362802813">Le même message de Signal sur Mastodon</a></li>
</ul>
<p>Pourtant, à l’heure où j’écris ces lignes, le nombre de partages est incroyablement identique (641 contre 615). Le nombre de réponses est également très similaire (30 contre 23). Et si on retire les "lol", les memes et autres réponses de moins de cinq mots, on peut même arriver à la conclusion que le fameux « engagement » sur Twitter est à peu près nul. (UPDATE: une semaine plus tard, le nombre de partages est passé à 1100 sur Mastodon pour 900 sur Twitter)</p>
<p>L’écrivain Henri Lœvenbruck a également supprimé complètement son compte Twitter et sa page Facebook en 2022. Il est pourtant connu et vit de sa notoriété. Son roman « Les disparus de Blackmore », publié quelques mois après cette suppression, s’est mieux vendu que le précédent. Nul ne saura jamais s’il aurait pu en vendre encore plus en étant sur Facebook ou Twitter. Mais la preuve est faite que cette présence n’est absolument pas indispensable.</p>
<p>Je le dis et le redis : le nombre de followers est faux. C’est une information qui est conçue dans l’optique de vous tromper.</p>
<ul>
<li><a href="/2023-07-23-pour-une-poignee-de-followers.html">Pour une poignée de followers (billet où je détaille cet argument)</a></li>
</ul>
<h2>Oui, vous avez le droit de supprimer vos comptes</h2>
<p>Le sentiment de m’être fait avoir en créant des comptes sur Twitter, Facebook et autres Medium est fort. Mais ma seule erreur a été de croire les promesses de cette industrie. Ce n’est pas moi qui me suis trompé, ce sont les plateformes qui nous ont menti. Certains le prédisaient déjà à l’époque et me traitaient de naïf. Je ne les ai pas écoutés, je m’en excuse auprès d’eux. J’ai parfois argué « qu’il fallait aller où les gens étaient », devenant moi-même un allié de ces plateformes. Je vous ai encouragé, vous qui me lisez depuis des années, à m’y rejoindre, contribuant à leur emprise. Je m’en excuse profondément auprès de vous.</p>
<p>Ne pas déceler un mensonge est une erreur. À ma décharge, c’est une erreur qui peut arriver à tout le monde.</p>
<p>Mais aujourd’hui, le mensonge est éclatant. Il est indéniable. Recommanderais-je à mes amis de s’inscrire sur ces plateformes ? Serais-je d’accord que mes enfants s’y inscrivent ? Si la réponse est non à l’une de ces questions, garder un compte sur ces plateformes n’est plus excusable.</p>
<p>Nous sommes le composant essentiel des plateformes centralisées. Si nous n’aimons pas ce qu’elles sont ou ce qu’elles deviennent, si leurs valeurs sont en contradiction avec les nôtres, notre devoir est de les quitter, de les assécher, pas de lutter pour les améliorer. </p>
<p>Ne pas réagir et continuer à se laisser faire lorsque le mensonge est flagrant n’est pas une erreur, c’est à la limite de la complicité. C’est encore plus le cas pour les organisations et les militants qui prétendent soutenir des valeurs opposées à celles de la plateforme. On ne peut pas lutter contre le capitalo-consumérisme sur Facebook ni contre l’extrême droite sur Twitter. Le prétendre n’est qu’hypocrisie intellectuelle.</p>
<p>Et j’en ai été le premier coupable.</p>
<p>Aujourd’hui, je tente de réparer mes erreurs du passé en vous demandant, à vous mes amis qui lisez ceci, de supprimer vos comptes sur ces réseaux sociaux publicitaires. Je peux vous rassurer : non, vous n’allez que peu ou prou manquer des choses importantes. Oui, ça sera dur au début, mais ça ira de mieux en mieux. Et peut-être que vous allez y gagner beaucoup plus que ce que vous imaginez.</p>
<p>Oui mes amis, vous avez le droit, vous avez le devoir de supprimer vos comptes !</p>
<p>PS : Je dédie ce post à Henri Lœvenbruck, cité plus haut dans cet article. Cela fait un an jour pour jour que t’es arrivé sur Mastodon. J’en suis heureux pour toutes les expériences vécues ensemble cette année et dans les prochaines. Joyeux mastanniversaire mon ami !</p>
<ul>
<li><a href="https://unsplash.com/fr/photos/pianta-di-vite-verde-sul-muro-di-mattoni-marrone-W_ilcp15zPM">Photo d’illustration par Max Böhme.</a></li>
</ul>
<div class="signature"><p>Ingénieur et écrivain, j’explore l’impact des technologies sur l’humain, tant par écrit que dans mes conférences.</p>
<p>Recevez directement par mail <a href="https://listes.ploum.net/mailman3/postorius/lists/fr.listes.ploum.net/">mes écrits en français</a> et <a href="https://listes.ploum.net/mailman3/postorius/lists/en.listes.ploum.net/">en anglais</a>. Votre adresse ne sera jamais partagée. Vous pouvez également utiliser <a href="/atom_fr.xml">mon flux RSS francophone</a> ou <a href="/atom.xml">le flux RSS complet</a>.</p>
<p>Pour me soutenir, <a href="/livres.html">achetez mes livres</a> (si possible chez votre libraire) ! Je viens justement de publier un <a href="/et-autres-joyeusetes-que-nous-reserve-le-futur/index.html">recueil de nouvelles</a> qui devrait vous faire rire et réfléchir.</p>
</div>
Ploumhttps://ploum.netLe nouveau transhumanismehttps://ploum.net/2023-10-17-transhumanisme.html2023-10-17T00:00:00Z2023-10-17T00:00:00Z
<h1>Le nouveau transhumanisme</h1>
<p>Les poumons remplis par la cigarette électronique, <br>
Les oreilles bouchées par les écouteurs, <br>
Les yeux obnubilés par l’écran, <br>
Les doigts agrippés au smartphone, <br>
Que l’on porte alternativement devant la bouche ou l’oreille,<br>
Dans son absurde horizontalité.</p>
<p>Nous rêvions d’un transhumanisme pour étendre nos capacités,<br>
Pour augmenter notre sensorialité,<br>
Pour démultiplier notre perception et notre impact sur la réalité.</p>
<p>Nous avons construit à la place une technologie de l’anesthésie.<br>
Nous bloquons, nous bouchons, nous tentons d’oublier.<br>
Nous désactivons nos sens pour ne pas nous sentir crever.</p>
<p>Et lorsque nous nous retrouvons brièvement déconnectés,<br>
Les sens soudain réveillés sur la conscience de la douleur d’exister,<br>
Angoissés nous cherchons une connexion, un substitut, un objet à acheter,<br>
Un cancer à consommer en cannette, barre sucrée ou cendres inhalées.</p>
<p>L’extension, l’amélioration de la réalité étaient un rêve.<br>
Mais les rêves ne sont plus faits pour se réaliser,<br>
Ils ne sont que l’inspiration de produits à consommer.<br>
J’aurais bien sauvé le monde, mais je vais rater.<br>
Le dernier épisode de la nouvelle série télé.</p>
<p>Après tout, ce petit écran ne me donne-t-il pas accès au monde entier ?<br>
Au savoir humain dans son entièreté ?<br>
Moi dont la voix pourrait porter à l’autre bout de la planète,<br>
Moi qui pourrais sans effort créer de quoi…</p>
<p>Oh, tiens, une mise à jour à installer !</p>
<div class="signature"><p>Ingénieur et écrivain, j’explore l’impact des technologies sur l’humain, tant par écrit que dans mes conférences.</p>
<p>Recevez directement par mail <a href="https://listes.ploum.net/mailman3/postorius/lists/fr.listes.ploum.net/">mes écrits en français</a> et <a href="https://listes.ploum.net/mailman3/postorius/lists/en.listes.ploum.net/">en anglais</a>. Votre adresse ne sera jamais partagée. Vous pouvez également utiliser <a href="/atom_fr.xml">mon flux RSS francophone</a> ou <a href="/atom.xml">le flux RSS complet</a>.</p>
<p>Pour me soutenir, <a href="/livres.html">achetez mes livres</a> (si possible chez votre libraire) ! Je viens justement de publier un <a href="/et-autres-joyeusetes-que-nous-reserve-le-futur/index.html">recueil de nouvelles</a> qui devrait vous faire rire et réfléchir.</p>
</div>
Ploumhttps://ploum.netLes territoires perdushttps://ploum.net/2023-10-12-territoires-perdus.html2023-10-12T00:00:00Z2023-10-12T00:00:00Z
<h1>Les territoires perdus</h1>
<p>Les hommes avaient mis la nature en prison, la détruisant, la repoussant pour planter ces immensités de jachères macadamisées où poussent la tôle, le bruit, l’air vicié et les accidents.</p>
<p>Les arbres tentaient vainement de subsister, leur chlorophylle grise en quête de quelques brins de lumière ayant traversé le smog.</p>
<p>Les ligneux esprits avaient du mal à comprendre cette humanité délirante : « Mais pourquoi les humains construisent-ils des cages à parking ? »</p>
<blockquote> Ce texte est une réponse instinctive et spontanée à la photo « Les territoires perdus » de Bruno Leyval, photo qui illustre cet article et reproduite ici avec sa bénédiction.<br></blockquote>
<ul>
<li><a href="https://www.brunoleyval.fr/les-territoires-perdus/">« Les territoires perdus » par Bruno Leyval</a></li>
</ul>
<div class="signature"><p>Ingénieur et écrivain, j’explore l’impact des technologies sur l’humain, tant par écrit que dans mes conférences.</p>
<p>Recevez directement par mail <a href="https://listes.ploum.net/mailman3/postorius/lists/fr.listes.ploum.net/">mes écrits en français</a> et <a href="https://listes.ploum.net/mailman3/postorius/lists/en.listes.ploum.net/">en anglais</a>. Votre adresse ne sera jamais partagée. Vous pouvez également utiliser <a href="/atom_fr.xml">mon flux RSS francophone</a> ou <a href="/atom.xml">le flux RSS complet</a>.</p>
<p>Pour me soutenir, <a href="/livres.html">achetez mes livres</a> (si possible chez votre libraire) ! Je viens justement de publier un <a href="/et-autres-joyeusetes-que-nous-reserve-le-futur/index.html">recueil de nouvelles</a> qui devrait vous faire rire et réfléchir.</p>
</div>
Ploumhttps://ploum.netCe que l’écologie peut apprendre du logiciel librehttps://ploum.net/2023-10-09-ecologie-et-opensource.html2023-10-09T00:00:00Z2023-10-09T00:00:00Z
<h1>Ce que l’écologie peut apprendre du logiciel libre</h1>
<h2>Extrait de mon journal du 8 octobre 2023.</h2>
<p>L’écologie a beaucoup à apprendre de l’échec du mouvement pour le logiciel libre. Celui-ci, perçu avec raison comme étant un combat moral s’opposant à la privatisation et la marchandisation des communs, s’est mué en open source, un mouvement très similaire, mais mettant en avant l’aspect technique afin de ne plus remettre en question l’aspect mercantile et la philosophie capitaliste.</p>
<p>Le résultat est sans appel: l’open source a gagné ! Il est partout. Il compose l’essentiel des logiciels que vous utilisez tous les jours. Le plus grand adversaire historique du logiciel libre, Microsoft, est devenu le plus grand contributeur à l’open source, étant même propriétaire de la plus grande et incontournable plateforme de développement open source : Github.</p>
<p>Et pourtant, les utilisateurs n’ont jamais eu aussi peu de liberté (ce qui justifie que je parle d’échec). Nous sommes espionnés, nous devons payer des abonnements mensuels pour tout, nous sommes soumis à des myriades de publicités. Nous n’avons aucun contrôle sur nos données ni même sur les ordinateurs que nous achetons. Là où le logiciel libre s’opposait à la privatisation des communs, l’open source contribue à cet accaparement.</p>
<p>La victoire à la Pyhrrus de l’open source entraine une désertion du combat pour la préservation de nos libertés fondamentales. La disparition de ces libertés n’était, au départ, que perçue comme un délire de quelques geeks paranoïaques. Elle est désormais un fait avéré et totalement banalisé, normalisé dans la vie quotidienne de l’immense majorité des humains. Le simple droit à exister sans être espionné, sans être envahi par les monopoles publicitaires et sans être forcé à dépenser de l’argent pour une énième mise à jour a essentiellement disparu. Se connecter aux plateformes en ligne officielles de nombreuses institutions, y compris étatiques, nécessite désormais le plus souvent un compte Google, Apple ou Microsoft. La plus grande université francophone de Belgique, où je suis employé, force chaque étudiant et chaque membre du personnel à utiliser un compte Microsoft et à y sauver toutes ses données, toutes ses communications.</p>
<p>Le parallèle avec l’écologie est troublant à l’heure où la doxa politique consiste à concilier écologie et consumérisme. L’écologie de marché est promue comme une solution exactement de la même manière que l’open source était vu comme une manière pour le logiciel libre de s’imposer. </p>
<p>Nul besoin d’être prophète pour prédire que le résultat sera identique, car il l’est déjà : une situation aggravée, mais perçue comme acceptable, car le combat fait désormais partie du passé. Les militants restants forment une arrière-garde décatie.</p>
<p>Le marché des compensations carbone, qui produit plus de pollution que s’il n’existait pas tout en autorisant les plus gros pollueurs à s’acheter une conscience, n’est que le premier de nombreux exemples. L’absurde hypocrisie des entreprises de se prétendre « écologiques » ou « vertes » en est une autre. En vérité, il n’y a pas de compromis à faire avec l’économie consumériste, car elle est la racine du mal qui nous ronge.</p>
<p>Bon nombre de militants écologistes se regroupent désormais sur des plateformes publicitaires comme Facebook ou Google qui cherchent à privatiser l’information et les espaces de discussions en nous poussant à la consommation. Ce n’est qu’une des nombreuses illustrations de notre incapacité à imaginer les conséquences logiques de nos actions dès le moment où notre salaire et notre confort quotidien dépendent du fait que nous ne les imaginions pas.</p>
<p>Mon expérience universitaire démontre que les organisations qui sont censées nous servir d’élite intellectuelle sont tout autant corrompues et dénuées de l’imagination qui est pourtant le cœur de leur mission.</p>
<div class="signature"><p>Ingénieur et écrivain, j’explore l’impact des technologies sur l’humain, tant par écrit que dans mes conférences.</p>
<p>Recevez directement par mail <a href="https://listes.ploum.net/mailman3/postorius/lists/fr.listes.ploum.net/">mes écrits en français</a> et <a href="https://listes.ploum.net/mailman3/postorius/lists/en.listes.ploum.net/">en anglais</a>. Votre adresse ne sera jamais partagée. Vous pouvez également utiliser <a href="/atom_fr.xml">mon flux RSS francophone</a> ou <a href="/atom.xml">le flux RSS complet</a>.</p>
<p>Pour me soutenir, <a href="/livres.html">achetez mes livres</a> (si possible chez votre libraire) ! Je viens justement de publier un <a href="/et-autres-joyeusetes-que-nous-reserve-le-futur/index.html">recueil de nouvelles</a> qui devrait vous faire rire et réfléchir.</p>
</div>
Ploumhttps://ploum.netThe future of Offpunk: UNIX command-line heaven and packaging hellhttps://ploum.net/2023-10-01-future-of-offpunk-packaging-hell.html2023-10-01T00:00:00Z2023-10-01T00:00:00Z
<h1>The future of Offpunk: UNIX command-line heaven and packaging hell</h1>
<blockquote> A story about how the UNIX philosophy made me develop tools I’m actually proud of and why packaging is holding me back.<br></blockquote>
<p>Two years ago, I decided that I wanted to be able to browse Gemini while offline. I started to add a permanent cache to Solderpunk’s AV-98, the simplest and first Gemini browser ever. It went surprisingly well. Then, as the excellent forlater.email service went down for a week, I thought that I would add a quick and hackish HTTP support to it. Just a temporary experiment. </p>
<p>The same week, I serendipitously stumbled upon chafa, an image rendering tool which was on my computer because of neofetch. I thought it would be funny to have pictures rendered in webpages in my terminal. Just an experiment to take some funny screenshots, nothing more.</p>
<p>But something really surprising happened: it was working. It was really useful. I was really using it and, after adding support for RSS, I realised that this experiment was actually working better for me than forlater.email and newsboat. Offpunk was born without really thinking about it and became a real project with its own philosophy.</p>
<ul>
<li><a href="https://sr.ht/~lioploum/offpunk/">Offpunk, a command line to browse Web, Gemini and Gopher while offline</a></li>
</ul>
<p>Born on Gemini, I wanted Offpunk to keep its minimalistic roots: keeping dependencies under control (making them optional and implementing the underlying feature myself as soon as it makes sense), keeping it simple (one single runnable python script), caring as much as possible about older versions of python, listening to people using it on very minimal systems. I also consciously choose to use only solutions that have been time-trial-tested. I’ve spent too many years of my life falling for the "new-trendy-technology" and learned from those mistakes. The one-file aspect assured that it was really easy to use and to hack: open the file, modify something, run it. </p>
<p>I’m not a good developer. Anything more complex than that is too much for my taste. Unless forced, I’ve never used an IDE, never understood complex toolchains nor packaging. I modify files with (neo)vim (without any plugin), compile from the command line and run the resulting binary (not even needing that step with python). Life is too short for making it more complex. I like to play with the code, not to learn tools that would do it for me.</p>
<p>But offpunk.py was becoming fat. 4500 lines of organic python which have grown over an AV-98 structured to be a test bed for an experimental protocol. The number of people able to understand its code entanglement varied between 0 and 1, depending on the quality of my morning Earl Grey.</p>
<p>I wanted to make life easier for contributors. I also realised that some features I developed might be useful without offpunk. So I stepped into a huge refactoring and managed to split offpunk into several components. My goal was to separate the code into multiple individual components doing one thing and doing it well. And, to my own surprise, I succeeded.</p>
<h2>Netcache.py</h2>
<p>I called the first component "netcache". Think of netcache as a cached version of wget. If possible, netcache will give you a cached version of the URL you are asking. If no cache or too old and if allowed to go online, netcache will download it.</p>
<p>It means that if you like Offpunk’s core concept but don’t like the interface and want, for example, a GUI, you could write your own browser that would, using netcache, share the cache with Offpunk.</p>
<p>Netcache is currently working just well enough for my needs but could do a lot better. I should, for example, investigate replacing the network code by libcurl and implementing support for multithreaded concurrent downloads.</p>
<h2>Ansicat.py</h2>
<p>Coloured output in your terminal is done through a standard called ANSI. As I wrote the first HTML to ANSI renderer for offpunk, I started to understand how awful the HTML standard was. Armed with that experience, I started a second renderer and, to be honest, it is actually not that bad. I’m even proud of it.</p>
<p>Ansicat is really useful when in a terminal because it will render HTML and gemtext in a good, readable way. If the optional library python-readability is present, ansicat will try to extract the main content from a web page (and, yes, python-readability is one dependency I would like to reimplement someday).</p>
<p>With netcache and ansicat, you can already do something like:</p>
<pre>netcache https://ploum.net | ansicat --format=html
</pre>
<p>Yes, it works. And yes, as a UNIX junkie, I was completely excited the first time it worked. Look mum, I’m Ken Thompson! Making ansicat a separate tool made me think about adding support for other formats. Like PDF or office documents. How cool would it be to have a single cat command for so many different formats?</p>
<h2>Opnk.py</h2>
<p>While netcache and ansicat were clear components I wanted to split from Offpunk’s core since the start of the refactoring, another tool appeared spontaneously: opnk.</p>
<p>Opnk (Open-like-a-punk) is basically a wrapper that will run ansicat on any file given. If given a URL, it will ask netcache for the file. Result will be displayed in less (after passing through ansicat, of course).</p>
<p>If ansicat cannot open the file, opnk fallbacks on xdg-open.</p>
<p>That looks like nothing but it proved to be massively useful in my workflow. I already use opnk every day. Each time I want to open a file, I don’t think about the command, I type "opnk". It even replaced cat for many use cases. I’m considering renaming it "opn" to save one character. Using opnk also explains why I want to work on supporting PDF/office documents with ansicat. That would be one less opportunity to leave the terminal.</p>
<h2>Offpunk.py</h2>
<p>Through this architecture, Offpunk became basically an interface above opnk. And this proved to work well. Many longstanding bugs were fixed, performance and usability were vastly improved.</p>
<p>Everything went so well that I dreamed releasing offpunk 2.0, netcache, ansicat and opnk while running naked with talking animals in field of flowers under a rainbow. Was it really Earl Grey in the cup that day? </p>
<h2>Packaging Offpunk.py</h2>
<p>Now for the bad news.</p>
<p>As expected, the refactoring forced me to break my "one-single-python-file" rule.</p>
<p>I felt guilty for those people who told me about using offpunk on very minimal systems, sometimes from a USB key. But I thought that this was not a real problem. Instead of one python script, I had four of them (and a fifth file containing some shared code). That should not be that much of a problem, isn’t it? </p>
<p>Well, python packaging systems would like to disagree. Flowers fade, the rainbow disappears behind black and heavy clouds while animals start to look at me with a devilish look and surprisingly sharp teeth.</p>
<p>I’ve spent many hours, asked several people on the best way to package multiple python files without making the whole thing a module. Without success. Hopefully, the community is really helpful. David Zaslavsky stepped on the mailing list to give lots of advice and, as I was discouraged, Austreelis started to work really hard to make offpunk both usable directly and packagable. I’m really grateful for their help and their work. But, so far, without clear success. I feel sad about the amount of energy required to address something as simple as "I’ve 5 python files which depend on each other and I want to be able to launch them separately".</p>
<ul>
<li><a href="https://gitlab.com/austreelis/offpunk.git">Austreelis’s branch where she works on making offpunk "packageable".</a></li>
</ul>
<p>The software is working really well. The refactoring allowed me to fix longstanding bugs and to improve a lot of areas while adding new features (colour themes anyone?) On my computer, I added four aliases in my zsh config: offpunk, opnk, ansicat and netcache. Each alias runs the corresponding python file. Nothing fancy and I want to keep it that way. I know for a fact that several users are doing something similar: git clone then run it from an arbitrary location.</p>
<p>Keeping things as simple as that is the main philosophical goal behind offpunk. It’s an essential part of the project. If people want to use pip or any other tool to mess up their computer configuration, that’s their choice. But it should never be required.</p>
<p>Which means that I’m now in a very frustrating position: Offpunk 2.0 is more than ready from a code point of view. But it cannot be shipped because there’s currently no easy way to package it. The pyproject.toml file had become an obstacle to the whole development process.</p>
<p>I’m contemplating putting everything back in one big file. Or removing the pyprojects.toml file from the repository and releasing offpunk "as it is".</p>
<p>Some will call me an old conservative fart for refusing to use one of those gazillion shiny packaging system. Others will judge me as a pretty poor programmer if I managed to do 20 years of Python without ever understanding pip nor using an IDE.</p>
<p>They are probably right. What would you seriously expect from someone doing a command-line tool to browse Gemini and Gopher?</p>
<p>But there’s maybe an easier solution than to change my mind and offpunk’s core philosophy. A simple solution that I missed. If that’s the case, don’t hesitate to drop a word on the devel mailing-list, Austreelis and I will be happy to hear about your opinion and your experience.</p>
<ul>
<li><a href="https://lists.sr.ht/~lioploum/offpunk-devel">offpunk-devel mailing list</a></li>
</ul>
<p>While you are at it, bug reports and feedback are also welcome. I’ve this odd custom of finding embarrassing bugs only hours after a release. I really hope to do better with offpunk 2.0.</p>
<p>And after we’ve solved that little packaging anecdote together, I will happily return to my bare neovim to code all the ideas I want to implement for 2.1, 2.2 and many more releases to come.</p>
<div class="signature"><p>As a writer and an engineer, I like to explore how technology impacts society. You can subscribe <a href="https://listes.ploum.net/mailman3/postorius/lists/en.listes.ploum.net/">by email</a> or <a href="/atom_en.xml">by rss</a>. I value privacy and never share your adress.</p>
<p>If you read French, you can support me by buying/sharing/reading <a href="/livres.html">my books</a> and subscribing to my <a href="https://listes.ploum.net/mailman3/postorius/lists/fr.listes.ploum.net/">newsletter in French</a> or <a href="/atom_fr.xml">RSS</a>. I also develop <a href="/software.html">Free Software</a>.</p>
</div>
Ploumhttps://ploum.net40 ans de GNUhttps://ploum.net/2023-09-27-40ans-gnu.html2023-09-27T00:00:00Z2023-09-27T00:00:00Z
<h1>40 ans de GNU</h1>
<p>Richard Stallman ne voulait pas changer le monde. Il ne voulait pas se battre contre les moulins à vent. Il ne voulait pas réinventer la roue. Richard Stallman voulait simplement retrouver ses amis, sa communauté.</p>
<p>Pour ce jeune homme barbu et rondouillard, les relations sociales n’avaient jamais été simples. Toujours plongé dans les livres et adorant résoudre des casse-têtes logiques, le jeune homme avait toujours eu un peu de mal à trouver sa place. Il avait beau adorer la compagnie, les longues discussions et la danse, ses intérêts pour les mathématiques semblaient toujours un peu en décalage. Son humour, surtout, était souvent mal perçu au point de choquer ou d’effrayer. C’est au laboratoire d’Intelligence Artificielle du MIT qu’il avait enfin eu l’impression d’être entièrement à sa place. Les jours et les nuits devant un écran, les doigts sur un clavier, entourés de personnes qui, comme lui, ne cherchaient que des problèmes à résoudre. À résoudre de la manière la plus simple, la plus élégante, la plus rigolote ou la plus absurde. Pour l’amour de l’art, par besoin ou par simple envie de faire une blague potache.</p>
<p>RMS, ainsi qu’il se présentait chaque fois que l’ordinateur lui affichait le mot "login:", était heureux.</p>
<p>Mais le vent changeait. En 1976, le très jeune dirigeant d’une obscure société vendant un compilateur BASIC s’était fendu d’une longue lettre ouverte à la communauté des utilisateurs d’ordinateurs. Dans cette lettre, il suppliait les amateurs d’ordinateurs d’arrêter de partager des logiciels, de le modifier, de les copier. À la place, arguait-il, il faut acheter les logiciels. Il faut payer les développeurs. Bref, il faut faire la différence entre les développeurs payés et les utilisateurs qui paient et n’ont pas le droit de comprendre comment le programme fonctionne.</p>
<p>S’il l’a lue, la lettre est passée au-dessus de la tête de Richard. Ce que produit ce jeune William Gates, dit Bill, et sa société « Micro-Soft » ne l’intéressait pas à l’époque. Il sait bien que l’esprit « hacker » est celui du partage, de la curiosité. Ken Thompson, l’inventeur d’Unix, n’avait jamais caché son désir de partager toutes ses expérimentations. Lorsque les avocats d’AT&T, son employeur, avaient commencé à rechigner en déposant la marque UNIX puis en interdisant tout partage, lui, Dennis Ritchie, Brian Kernighan et leurs comparses s’étaient amusés à contourner toutes les règles. Le code source se transmettait via des bandes « oubliées » dans un bureau voire sur les bancs des parcs. Le code source entier d’UNIX, annoté et commenté par John Lions pour servir de support éducatif à ses étudiants, se targuait d’être le livre d’informatique le plus photocopié du monde malgré l’interdiction d’en faire des copies.</p>
<p>Les Bill Gates et leurs armées d’avocats ne pourraient jamais venir à bout de l’esprit hacker. Du moins, c’est ce que Richard Stallman pensait en travaillant à sa machine virtuel LISP et à son éditeur Emacs.</p>
<p>Jusqu’au jour où il réalisa qu’une société, Symbolics, avait graduellement engagé tous ses collègues. Ses amis. Chez Symbolics, ceux-ci continuaient à travailler à une machine virtuelle LISP. Mais ils ne pouvaient plus rien partager avec Richard. Ils étaient devenus concurrents, un concept inimaginable pour le hacker aux cheveux en bataille. Par bravade, celui-ci se mit alors à copier et implémenter dans la machine LISP du MIT chaque nouvelle fonctionnalité développée par Symbolics. À lui tout seul, il abattait le même travail que des dizaines d’ingénieurs. Il n’avait bien entendu pas accès au code source et devait se contenter de la documentation de Symbolics pour deviner les principes de fonctionnement.</p>
<p>Le changement d’ambiance avait été graduel. Richard avait perdu ses amis, sa communauté. Il avait été forcé, à son corps défendant, de devenir un compétiteur plutôt qu’un collaborateur. Il ne s’en rendait pas complètement compte. Le problème était encore flou dans sa tête jusqu’au jour où une nouvelle imprimante fit son apparition dans les locaux du MIT.</p>
<p>Il faut savoir que, à l’époque, les imprimantes faisaient la taille d’un lit et avaient pas mal de problèmes. Sur la précédente, Richard avait bricolé un petit système envoyant automatiquement une alerte en cas de bourrage. Il n’avait pas réfléchi, il avait pris le code source de l’imprimante et l’avait modifié sans se poser de questions. Mais, contre toute attente, le code source de la nouvelle imprimante n’était pas livré avec. Le monde de l’informatique était encore tout petit et Richard avait une idée de qui, chez Xerox, avait pu écrire le logiciel faisant fonctionner l’imprimante. Profitant d’un voyage, il se rendit dans le bureau de la personne pour lui demander une copie.</p>
<p>La discussion fut très courte. La personne n’avait pas le droit de partager le code source. Et si elle le partageait, Richard devait signer un accord de non-divulgation. Il n’aurait, à son tour, pas le droit de partager.</p>
<p>Pas le droit de partager ? PAS LE DROIT DE PARTAGER ?</p>
<p>Le partage n’est-il pas l’essence même de l’humanité ? La connaissance ne repose-t-elle pas entièrement sur le partage intellectuel ?</p>
<p>Le ver glissé dans le fruit par Bill Gates commençait à faire son œuvre. Le monde commençait à souscrire à la philosophie selon laquelle faire de Bill Gates l’homme le plus riche du monde était une chose plus importante que le partage de la connaissance. Que la compétition devait nécessairement venir à bout de la collaboration. Les hackers avaient fini par enfiler une cravate et se soumettre aux avocats.</p>
<p>S’il ne faisait rien, Richard ne retrouverait plus jamais ses amis, sa communauté. Bouillonnant de colère, il décida de reconstruire, à lui tout seul, la communauté hacker. De la fédérer autour d’un projet que n’importe qui pourrait partager, améliorer, modifier. Que personne ne pourrait s’approprier. </p>
<p>Il nomma son projet « GNU », les initiales de « GNU’s Not Unix » et l’annonça sur le réseau Usenet le 27 septembre 1983. Il y a 40 ans aujourd’hui.</p>
<p>Bon anniversaire GNU.</p>
<p>Après cette annonce, Richard Stallman allait se mettre à réécrire chacun des très nombreux logiciels qui composaient le système Unix. Tout seul au début, il créait le système GNU de toutes pièces. Son seul échec fut le développement d’un noyau permettant de faire tourner GNU sur des ordinateurs sans avoir besoin d’un système non-GNU. Richard percevait le problème, car, en plus de coder, il développait la philosophie du partage et du libre. Il inventait les fondements du copyleft.</p>
<p>En 1991, en s’aidant des outils GNU, dont le compilateur GCC, un jeune Finlandais, Linus Torvalds, allait justement créer un noyau à partir de rien. Un noyau qu’il allait mettre sous la licence copyleft inventée par Stallman. </p>
<p>Mais ceci est une autre histoire…</p>
<h2>Lectures suggérées :</h2>
<ul><li>Richard Stallman et la révolution du logiciel libre, par Richard Stallman, Sam Williams et Christophe Masutti</li>
<li>The Daemon, the Gnu and the Penguin, par Peter H. Salus</li>
<li>UNIX, A history and a Memoir, par Brian Kernighan</li>
<li>Lion’s Commentary on UNIX 6th Edition with Source Code, par John Lions</li>
<li><a href="https://fr.wikipedia.org/wiki/An_Open_Letter_to_Hobbyists">Lettre ouverte aux utilisateurs d’ordinateurs, par Bill Gates</a></li>
</ul>
<div class="signature"><p>Ingénieur et écrivain, j’explore l’impact des technologies sur l’humain, tant par écrit que dans mes conférences.</p>
<p>Recevez directement par mail <a href="https://listes.ploum.net/mailman3/postorius/lists/fr.listes.ploum.net/">mes écrits en français</a> et <a href="https://listes.ploum.net/mailman3/postorius/lists/en.listes.ploum.net/">en anglais</a>. Votre adresse ne sera jamais partagée. Vous pouvez également utiliser <a href="/atom_fr.xml">mon flux RSS francophone</a> ou <a href="/atom.xml">le flux RSS complet</a>.</p>
<p>Pour me soutenir, <a href="/livres.html">achetez mes livres</a> (si possible chez votre libraire) ! Je viens justement de publier un <a href="/et-autres-joyeusetes-que-nous-reserve-le-futur/index.html">recueil de nouvelles</a> qui devrait vous faire rire et réfléchir.</p>
</div>