Title: Lettre n°16 — 23 mars 2026
Date: 2026-03-23 09:00
Category: Newsletter
JsonLD:  <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BlogPosting", "name": "Lettre n°16", "description": "Lettre de veille technologique en développement logiciel", "image": [ "https://www.craftletter.fr/images/craftletter.svg" ], "datePublished": "Mon Mar 23 2026 09:00:00 GMT+0200 (Coordinated Universal Time)", "author": { "@type": "Person", "name": "Pascal Le Merrer", "url": "https://www.linkedin.com/in/pascal-le-merrer/" } } </script>
<img class="logo" alt="Logo Craft Letter" src="{static}/images/craftletter.svg">

## Python 3.15 introduit les Imports paresseux 

La prochaine version de Python apportera une nouveauté attendue plusieurs années&nbsp;: [le chargement des dépendances au moment où elles sont requises](https://techlife.blog/posts/the-story-of-pythons-lazy-imports-why-it-took-three-years-and-two-attempts/)🇬🇧 pour l’exécution, et pas au lancement de l’application. Cela peut améliorer significativement le temps de démarrage des applications. Pour comprendre à quel point c’est important, je vous invite à relire l’article que je mentionnais dans la [Craft Letter n°6](https://www.craftletter.fr/lettre-ndeg6-12-janvier-2026.html)🇫🇷 dans "Les chiffres que devraient connaître les développeurs Python".
## Apprivoiser le ramasse-miette de Python
Le [comportement du ramasse-miettes de Python](https://making.close.com/posts/taming-the-python-gc/)🇬🇧 peut facilement être amélioré, et cela a des conséquences significatives sur les performances.

## Chaos Engineering
Adar Hilsenrat explique les bases du [Chaos Engineering](https://engineering.monday.com/chaos-engineering-practices-to-increase-confidence-and-reliability/)🇬🇧, cette pratique qui consiste à introduire volontairement des incidents sur une plateforme afin de vérifier comment elle se comporte dans ce cas.

## Apprendre le terminal avec WebTerm

[WebTerm](https://www.webterm.app/en/tutorials/beginner)🇬🇧 est un outil d’initiation à l’utilisation d’un émulateur de terminal. Il en simule un dans un navigateur. Il propose des tutoriels d’initiation aux commandes 

## Gram Code Editor

[Gram](https://codeberg.org/GramEditor/gram)🇬🇧 est un fork de [Zed](https://zed.dev/)🇬🇧, un éditeur de code similaire à VSCode, mais réputé pour sa rapidité. Les auteurs du fork le justifient notamment par l’incompatibilité des termes de la licence avec certains principes de l’open source. La version de base de Zed est gratuite, mais les fonctionnalités liées au IA génératives requièrent un abonnement.
Les auteurs du fork ont supprimé les fonctionnalités IA, les liens avec les serveurs de l’entreprise qui développe Zed, et les restrictions dans les conditions d’utilisation. C’est un hard fork, c’est-à-dire que Gram n’est pas compatible avec Zed.

À l’inverse, il offre quelques nouvelles fonctionnalités, comme la doc intégrée, le support de base pour Gleam, Zig et Odin, et une complétion inspirée du plugin Supertab de Vim.

Il n’y a pas de binaire pour Windows téléchargeable pour l’instant, seulement pour Linux et MacOs.

## Helix

Puisque je parle d’éditeur de code, je vais en profiter pour glisser un mot à propos de celui que j’utilise depuis deux ans&nbsp;: [Helix](https://helix-editor.com/)🇬🇧.

Helix est un éditeur qui fonctionne dans le terminal, comme VIM. À l’image de ce dernier, il fonctionne selon une logique modale, et repose sur l’utilisation des raccourcis claviers —l’usage de la souris est optionnel, et limité au déplacement du curseur et à la sélection de texte. Vous pouvez tout à fait vous en passer. 

Un appui sur une touche permet de changer de mode&nbsp;: Normal, Selection, Window, GoTo, etc. Dans chacun, un ensemble de raccourcis clavier spécifique est disponible. Il y en a des dizaines, ce qui peut faire peur, mais c’est là où Helix se distingue de certains de ses concurrents&nbsp;: pour les modes dit "mineurs", une fenêtre contextuelle indique les raccourcis clavier disponibles. Cela facilite grandement l’apprentissage, qui se fait petit à petit. 

De plus, il existe pour débuter un tutoriel intégré. Il suffit de lancer Helix avec le flag `--tutor`.
Ce tutoriel suffit pour apprendre les commandes indispensables à un usage minimal d’Helix. les fenêtres d’aide intégrées, et la doc parfois, permettent de poursuivre cet apprentissage à votre rythme. En peu de temps, j’ai été bien plus à l’aise qu’avec VI/Vim, dont j’avais un usage basique depuis une vingtaine d’années —je ne l’utilisais que lorsque j’étais connecté à un environnement sur lequel il était le seul éditeur disponible.

Helix supporte [plusieurs dizaines de langages et frameworks](https://github.com/helix-editor/helix/wiki/Language-Server-Configurations)🇬🇧 grâce à leurs LSP et formateurs. Il est rapide, notamment parce qu’il est codé en Rust. Il n’est pas encore extensible, mais il propose de base de nombreuses fonctionnalités qui requièrent des plugins et/ou de la configuration sur NeoVIM. Il est donc bien plus facile à mettre en oeuvre.

Helix a réussi à me faire passer d’un éditeur graphique comme éditeur principal à un éditeur basé sur le clavier. J’utilise encore Pycharm pour l’édition de code Python, quand j’ai une machine assez puissante pour cela, car il offre des fonctionnalités de refactoring bien plus puissantes que celles d’un LSP. Mais pour tout le reste, mon premier réflexe c’est d’utiliser Helix.

## Ghostty 1.3 est sorti

[Ghostty](https://ghostty.org/)🇬🇧, c’est c’est émulateur de terminal créé par Mitchell Hashimoto (Fondateur de Hashicorp). Il est multiplateforme (Linux, MacOs et Windows), et utilise des composants graphiques natifs afin de mieux s’intégrer à l’OS. Il est écrit en Zig et utilise l’accélération graphique matérielle pour procurer des performances optimales.

Et ça marche&nbsp;! Je trouvais iTerm2 lent, aussi je suis passé à Kitty. C’était mieux, mais lui aussi souffrait de quelques lenteurs, ce que je ne ressens pas sous Ghostty. 

De plus, j’apprécie particulièrement le fait de pouvoir passer chaque session en plein écran, puis sortir de ce mode avec le même raccourci clavier (CMD + SHIFT + Entrée sur Mac). 

## JReleaser et GoReleaser

[JReleaser](https://jreleaser.org)🇬🇧 est un outil qui simplifie la distribution d’applications via différents canaux,  pour Linux, Windows et MacOS. Il permet de préparer des packages pour Homebrew, Winget, Chocolatey, Scoop, Snapcraft et des images Docker par exemple. Il va générer préparer les fichiers requis, en fournissant des valeurs par défaut, puis les signer, ce qui va éliminer de nombreuses tâches manuelles et éviter de devoir se familiariser en détail avec chacun des outils. Malgré son nom, il n’est pas limité à Java. Des exemples sont fournis pour Ballerina, Bun, C++, Crystal, C#, Deno, Elixir, F#, Go, Haskell, Nim, OCaml, Odin, Pascal, Perl, Rust, Swift et Zig.

Il est inspiré de [GoReleaser](https://goreleaser.com/)🇬🇧, dont il a repris la mauvaise idée d’inclure le nom de la techno dans le nom du produit. Car les auteurs de GoReleaser sont eux aussi obligés d’expliquer qu’il ne se limite pas au packaging d’applications Go. GoReleaser supporte en effet Rust, TypeScript, Python et Zig, en plus de Go bien entendu.
## Revenir à Rails en 2026

Mark Dastmalchi Round raconte sa [redécouverte de Ruby On Rails](https://www.markround.com/blog/2026/03/05/returning-to-rails-in-2026/)🇬🇧, plus d’une douzaine d’années après s’en être éloigné. Il explique ce qui a fait que ce framework a connu un grand succès il y a 20 ans, et pourquoi il est encore utilisé aujourd’hui, malgré une perte de popularité importante.

## Packager du TypeScript en 2026

Toujours à propos de packaging, François Best décrit les pratiques pour [packager du TypeScript en 2026](https://www.youtube.com/watch?v=h5TKlpRZPzI)🇫🇷. Qui ne seront sans doute plus valables en 2027 😉.
