Rust is the Paper Straw of Computers
L’intervenant compare le langage Rust à des produits imposés comme les pailles en papier, affirmant qu’il résout un problème inventé (la sécurité mémoire) tout en dégradant l’expérience utilisateur par des réécritures logicielles précipitées et de faible qualité.

SYNTHÈSE STRUCTURÉE
Une analogie provocante : Rust comme une paille en papier
L’intervenant établit un parallèle entre Rust et des produits devenus obligatoires malgré leur inefficacité : ampoules fluocompactes, toilettes à faible débit, pommeaux de douche basse pression et pailles en papier. Il affirme que ces solutions ont été imposées sans résoudre de véritable problème, et que Rust suit le même schéma. Il cite : « Rust solves a problem that nobody had. Just like paper straws. It was an invented problem. »
La sécurité mémoire : un problème inventé ?
L’orateur remet en cause l’argument central de Rust, la sécurité mémoire. Il soutient que les réécritures en Rust, comme les clones des utilitaires GNU coreutils (ls, cp), n’apportent aucun bénéfice concret par rapport aux versions C existantes. Selon lui, il n’y a pas de vulnérabilité mémoire connue dans ces outils C qui ne puisse être corrigée en C. Il déclare : « What specific vulnerabilities and bugs are being addressed in the Rust clones that could not and did not get addressed in the C-based versions? The answer is absolutely nothing at all. »
Des bugs et des failles de sécurité introduits par Rust
L’intervenant affirme que les réécritures en Rust, expédiées trop rapidement sans tests suffisants, introduisent de nouveaux bugs et problèmes de sécurité. Il compare cela à une paille en papier qui « makes the drink taste like a paper straw » : l’expérience utilisateur se dégrade sans bénéfice mesurable. Il précise que ces logiciels ne sont pas « fully tested before being shipped », ce qui conduit à une qualité médiocre.
Une critique des motivations derrière l’adoption de Rust
L’orateur suggère que les promoteurs de Rust agissent par idéologie ou intérêt personnel, non par nécessité technique. Il évoque des parallèles avec des décisions politiques ou économiques (actions dans l’industrie des pailles, rancunes personnelles). Il ajoute une remarque polémique sur la communauté Rust, qu’il associe à des stéréotypes politiques et esthétiques, sans lien technique direct.
L’absence de bénéfice pour l’utilisateur final
Le message central est que Rust ne résout aucun problème réel pour l’utilisateur final. L’intervenant insiste sur le fait que l’on peut produire un logiciel de qualité dans presque n’importe quel langage (C, Fortran, Forth) à condition de prendre le temps de tester et de gérer les cas limites. Rust ne serait qu’une solution imposée, comme les pailles en papier, qui empire la situation sans apporter de valeur.
CONCEPTS CLÉS
- Sécurité mémoire : Propriété d’un langage garantissant l’absence d’accès mémoire invalide (dépassement de tampon, utilisation après libération). Rust l’assure via son système de possession et d’emprunt, mais l’intervenant conteste que ce soit un problème non résolu en C/C++.
- Réécriture (rewrite) : Processus de réimplémentation d’un logiciel existant dans un nouveau langage, souvent sans modification fonctionnelle. L’intervenant critique les réécritures en Rust des utilitaires GNU comme inutiles et risquées.
- GNU coreutils : Ensemble de programmes de base d’un système Unix/Linux (
ls,cp,mv,rm, etc.). Leurs clones en Rust (ex.uutils/coreutils) sont cités comme exemple de réécriture sans bénéfice concret.
CONCLUSION
L’intervenant rejette catégoriquement Rust comme une solution imposée à un problème qu’il juge inexistant. Il appelle à ne pas adopter un langage sous la pression idéologique ou politique, mais à évaluer les bénéfices réels pour l’utilisateur final. Son message principal est que la qualité logicielle dépend du soin apporté au développement, pas du langage choisi, et que forcer des réécritures précipitées nuit à l’écosystème.