craft-letter/content/newsletter/craft-letter-17.md
2026-04-08 21:21:33 +02:00

6.8 KiB
Raw Permalink Blame History

Title: Lettre n°17 — 30 mars 2026 Date: 2026-03-30 09:00 Category: Newsletter JsonLD: Logo Craft Letter

Ce que les développeurs fonctionnels nont pas compris à propos des systèmes

Ian Duncan pense que les développeurs qui utilisent des langages fonctionnels fortement typés ont tendance à confondre la correction du code avec celle du système🇬🇧. Les garanties apportées par ces langages éliminent des classes entières derreurs. Mais cela ne suffit pas à certifier que les programmes se comporteront correctement en production —en tout cas pas dans le cas des services Web, sur lesquels porte larticle. En effet, ce qui doit fonctionner cest le système complet, qui nest pas limité à un programme : il peut en comporter plusieurs instances, ainsi quune base de données, des serveurs divers, etc.

Les développeurs qui utilisent dautres langages souffrent du même travers, mais dans une moindre mesure, car ils ne peuvent pas avoir autant confiance dans le code vérifié par le compilateur.

Pourquoi un thème clair est préférable à un thème sombre

Jben explique, de façon très détaillée, pourquoi un thème clair est souvent préférable à un thème sombre🇫🇷. En bref : cest plus facile à lire par les personnes souffrant dastigmatisme ou de myopie, cest-à-dire une large partie de la population. Et ça ne concerne pas que nos IDE, mais aussi les présentations.

Un contre-exemple est cité dans les commentaires, mais il est marginal : cest celui dun écran de contrôle consulté de nuit par des personnes qui ne peuvent pas en régler la luminosité.

Des palettes de couleurs pour les personnes qui ne les voient pas bien

Une personne sur vingt souffre dun problème de vision des couleurs. David Nichols met à disposition un outil simple qui permet de sassurer que les couleurs que vous avez choisies sont distinguables🇬🇧 par toutes les personnes qui visitent votre site. Il fournit aussi quelques exemples de palettes prédéfinies qui prennent en compte ces problèmes.

Ces détails qui rendent les interfaces plus agréables

Jakub Krehel fournit une liste dastuces qui permettent de peaufiner les IHM web🇬🇧, avec des exemples interactifs.

La différence saute aux yeux pour certains exemples. Pour dautres, cest beaucoup plus subtil. À un point tel que je nai toujours pas compris lexemple danimation des icônes…

Tansu

Peter Morgan a développé Tansu🇬🇧, un message broker alternatif à Kafka, qui en utilise le protocole, mais repose sur une architecture beaucoup plus simple. Tansu sappuie sur des back-ends existants pour le stockage et la résilience, plutôt que de chercher à développer des workers résilients comme ceux de Kafka. Ces back-ends peuvent être des systèmes compatibles S3, Postgresql ou Sqlite. Contrairement à Kafka, Tansu vérifie le format des messages, plutôt que de déléguer cette tâche aux clients. Tansu ne semble pas être tout à fait prêt pour la production, mais cest un projet à suivre.

Comment la Nasa conçoit des systèmes résilients

Lorsquon parle dun appareil qui quitte le sol de notre planète, parfois pour sen éloigner de plusieurs millions de kilomètres, la gestion des défaillances matérielles et des erreurs logicielles🇬🇧 prend une toute autre dimension. Surtout sil sagit dune navette ou autre fusée qui embarque des humains à son bord.

Les fichiers magiques de Git

Au-delà du bien connu .gitignore, Git lit plusieurs autres fichiers de configuration🇬🇧.

Ce que ne mentionne pas Andrew Nessbit dans cet article, cest que vous pouvez avoir, en complétement de ces fichiers, des configurations personnelles, qui ne seront pas publiées sur le dépôt Git contrairement aux précédentes. Je les utilise pour ne pas polluer avec mes préférences les dépôts Git des projets auxquels je contribue.

Pour ignorer des fichiers dans tous vos projets suivis par Git, vous pouvez définir un fichier .gitgnore global🇬🇧. Je recommande dy déclarer les fichiers ou répertoires générés par votre IDE. Cela garantit que ce sera fait lorsque vous démarrer un nouveau projet ; et cela évite dajouter dans .gitignore du contenu qui ne concerne quune personne dans léquipe, car il peut y avoir autant dIDEs que de contributeurs.

Pour ignorer du contenu spécifique à un clone dun projet, il suffit de le déclarer dans .git/info/exclude, avec la même syntaxe que dans .gitignore. Vous voyez ce fichier que vous devez penser à ne pas inclure, à chaque fois que vous créez un commit ? Cest là quil faut le déclarer. Étant situé dans le dossier .git, le contenu du fichier exclude ne sera pas suivi par Git, contrairement à celui de .gitignore.

Npmx

Npmx🇬🇧 est une nouvelle interface pour naviguer parmi les paquets NodeJS. Il sagit dune réponse aux frustrations de nombreux développeurs insatisfaits de leur expérience avec npm. Npmx fournit des informations indisponibles sur Npm, sur les performances des modules par exemple. Npmx est encore en version alpha mais progresse rapidement.

Écrire des extensions PHP en Rust

PHP suit la tendance mainstream en offrant la possibilité décrire des extensions en Rust🇬🇧, et plus seulement en C.

Paris Web 2026

Paris Web est un événement consacré, sans surprise, au développement Web. Lédition 2026 se tiendra du 24 au 26 septembre. Lappel à sujets🇫🇷 pour les conférences et les ateliers est ouvert jusquau 12 avril.