Ken thompson : l'art de simplifier, une leçon pour l'ia
Ken Thompson, figure emblématique de l’informatique, a redéfini les codes de la programmation avec une approche radicale : éliminer ce qui est superflu. À 82 ans, ce pionnier de Unix, B et Go continue de nous rappeler que la simplicité est la clé d’une efficacité durable.
nUne carrière consacrée à la purification du code
Depuis les années 60, Ken Thompson a façonné le paysage du logiciel. Son rôle central dans le développement de Unix, un système d'exploitation révolutionnaire basé sur une architecture modulaire, est incontestable. Il a ensuite donné naissance au langage B, ancêtre direct de C, et plus récemment, au langage Go, conçu pour les systèmes modernes en termes de performance et de fiabilité.
nMais ce qui distingue réellement Thompson, c’est sa philosophie : une obsession pour la concision et la suppression systématique du code excessif. Il a même, selon lui, vécu son jour le plus productif lorsqu’il a éliminé 1 000 lignes de code, une affirmation qui témoigne de sa conviction profonde.
n« Écrire le moins de code possible, éliminer tout ce qui est inutile et concevoir les systèmes de manière aussi simple que possible » – voilà la recette de Thompson, une approche qui résonne particulièrement en ces temps où l'intelligence artificielle menace de bouleverser les professions.
n
L'ia et la dette technique : un cercle vicieux ?
Un graphique viral sur les réseaux sociaux met en lumière les métiers les plus vulnérables face à l'automatisation. Go, le langage qu'il a contribué à créer, est justement conçu pour anticiper cette évolution, en promouvant une architecture minimaliste et facile à maintenir. Thompson observe avec une lucidité implacable : « Chaque ligne de code ajoutée est une ligne qui doit être lue, comprise et maintenue. C'est un point où un bug peut se cacher, un espace supplémentaire à sécuriser avec des tests et une pièce supplémentaire qui complique les modifications futures. »
nL'accumulation de « dette technique », un terme qui décrit les conséquences de choix de conception hâtifs ou mal justifiés, peut rapidement paralyser un système. La simplification, selon Thompson, n'est pas une concession, mais une stratégie défensive, une manière de réduire la surface d'attaque et d'accélérer les futures évolutions. Il s'inspire ici de la sagesse de Bjarne Stroustrup, créateur de C++ : « Il n’y a que deux types de langages de programmation : ceux que les gens détestent et ceux qu’on n’utilise pas. »
nLa philosophie de Go, axée sur la clarté et la simplicité, représente une réponse directe à cette tendance à la prolifération du code. Thompson et ses collaborateurs ont cherché à minimiser les éléments non essentiels, laissant au programmeur la tâche de gérer la complexité, plutôt que de l'intégrer dans le langage lui-même. Une approche qui, selon lui, est essentielle pour éviter les pièges de la productivité à court terme.
nLa leçon de Ken Thompson est simple : programmer est avant tout une question de discernement, d’analyse et de courage. Il ne s'agit pas de