Ken thompson : le maître de l’efficacité, un code à l’économie
Ken Thompson, l'architecte discret derrière Unix, B et Go, a récemment affirmé que son jour le plus productif avait été consacré à la suppression de 1000 lignes de code. Une déclaration qui, loin d’être un simple aparté, révèle une philosophie de programmation radicale : la supériorité réside dans la concision, l’élimination du superflu et la simplification extrême.
L’héritage d’un minimalisme obsessionnel
Thompson, figure emblématique du monde de l’informatique depuis les années 60, a co-développé Unix avec Dennis Ritchie aux laboratoires Bell. Ce n’était pas qu’un simple système d’exploitation, mais une véritable rupture conceptuelle, une approche modulaire et fonctionnelle qui a influencé des générations de développeurs. Son obsession pour la simplicité, héritée du langage BCPL, a conduit à la création de B, puis de C – le langage qui, pendant des décennies, a dominé le développement de systèmes.
Décennie plus tard, déjà chez Google, Thompson a joué un rôle clé dans la conception de Go, un langage conçu pour les systèmes de production à grande échelle. Go reprend le même principe fondamental : privilégier la clarté et la simplicité par rapport à la complexité et aux fonctionnalités superflues. Thompson ne se contentait pas de coder, il disait « faire moins ».
La suppression de code n’est pas une dégradation, mais une purification. Chaque ligne ajoutée représente un risque accru : un bug potentiel, un point de friction pour la maintenance, une complexité supplémentaire qui complique les futures modifications. L’accumulation de dette technique, invisible au début, peut rapidement paralyser un système.

L’ia, un catalyseur de remise en question
L’essor de l’intelligenceartificielle soulève des interrogations quant à l’avenir du travail. Un récent graphique, viral sur les réseaux sociaux, cartographie les professions les plus vulnérables à l’automatisation. Cette tendance, loin d’être une prédiction sombre, exacerbe la nécessité d’une approche de développement plus rigoureuse, inspirée par la philosophie de Thompson.
Bjarne Stroustrup, créateur de C++, avait déjà souligné avec ironie : « Il n’y a que deux types de langages de programmation : ceux que les gens détestent et ceux que personne n’utilise. » Go, avec sa syntaxe épurée et ses mécanismes de concurrence intuitifs, incarne cette même obsession pour la simplicité, une réaction contre la complexité excessive de langages comme C++ ou Java.
L’erreur fatale réside dans la quantification de la productivité par le nombre de lignes de code. Ces métriques ignoraient le coût de la complexité, le temps nécessaire à d’autres équipes pour comprendre un code labyrinthique, et la fragilité qu’il engendre. Thompson, avec sa conviction qu’il est plus efficace d’enlever que d’ajouter, nous rappelle que la véritable ingénierie logicielle consiste à maîtriser l’art de la simplification.