Dette technique : ma bibliothèque Rust est désormais un CDO
- Pour plaisanter sur la dette technique, on dit parfois que s’il existe de la dette technique, il devrait aussi exister des produits dérivés pour la traiter.
- L’écosystème Rust a trouvé une solution qui donne l’impression de titriser la dette technique.
- Par exemple, une bibliothèque
stuff dépend d’une autre bibliothèque learned-rust-this-way, mais l’auteur de learned-rust-this-way s’en désintéresse et les problèmes commencent à s’accumuler.
La réalité de la dette technique
learned-rust-this-way est considérée comme de la dette technique : elle ne provoque pas de problème direct, mais reste malgré tout une dette.
- À un moment donné, quelqu’un se rend compte que
learned-rust-this-way est une dette, n’arrive pas à joindre l’auteur d’origine, et elle est ajoutée à la base de données RUSTSEC.
- RUSTSEC, en tant qu’agence de notation, classe cette dette comme un déchet, ce qui entraîne l’échec des CI (intégration continue) de nombreuses personnes.
Comment traiter la dette
- En tant que mainteneur de
stuff, le stress augmente lorsque les utilisateurs soulèvent des problèmes liés à l’usage de learned-rust-this-way, et l’on vous demande d’agir pour traiter cette dette.
- Migrer vers une alternative est une option, mais dans ce cas aucune des alternatives n’est vraiment séduisante.
- Forker
learned-rust-this-way revient à faire face aux mêmes exigences : ce n’est qu’une solution temporaire qui ne résout pas réellement le problème.
La solution qui fonctionne vraiment
- Si l’on fusionne ce code dans sa propre bibliothèque, cette dette technique considérée comme un déchet se retrouve soudainement notée « AAA ».
- On ne touche plus au code, on dissimule le fait qu’il a été fusionné, et on continue à maintenir la bibliothèque comme avant : le monde continue de tourner.
- En intégrant
yaml-rust directement dans insta, celui-ci est devenu un assemblage de code insta et yaml-rust, ce qui a permis de faire passer cette dette technique à une note AAA.
L’avis de GN⁺
- Cet article compare avec humour la dette technique à des produits dérivés financiers pour expliquer avec esprit des problèmes qui surviennent dans le développement logiciel.
- La dette technique est un problème fréquent en développement logiciel, et cet article propose aux développeurs une manière créative de la gérer.
- Des systèmes d’évaluation comme RUSTSEC dans l’écosystème Rust peuvent aider les développeurs à estimer la stabilité des bibliothèques, tout en pouvant aussi générer du stress inutile.
- Fusionner le code pour résoudre la dette technique peut constituer une solution temporaire, et une stratégie de maintenance durable reste nécessaire à long terme.
- Dans ce type de situation, on peut envisager plusieurs solutions, comme une maintenance pilotée par la communauté, la co-maintenance de projets open source, ou la recherche d’une version alternative de la bibliothèque.
1 commentaires
Avis sur Hacker News