10 points par GN⁺ 2025-10-28 | 1 commentaires | Partager sur WhatsApp
  • À 82 ans, Ken Thompson revient sur les débuts de la naissance du système d’exploitation Unix et la culture d’expérimentation libre chez Bell Labs
  • Il explique comment, après l’échec du projet Multics, il a construit presque par hasard la structure centrale d’Unix en réutilisant les ordinateurs restants
  • L’équipe Unix a obtenu un PDP-11 et fait évoluer le système d’exploitation de manière officieuse, formant une « Unix Room » pleine d’humour et d’esprit de camaraderie
  • L’environnement ouvert de Bell Labs a servi de base à la croissance du langage C et d’Unix, puis à la culture de collaboration qui mènera plus tard au développement du langage Go
  • Thompson souligne qu’Unix était une expérience communautaire mettant en pratique une “ouverture d’avant l’open source”, et estime que cet esprit perdure dans la culture technologique moderne

La naissance d’Unix et la culture d’expérimentation chez Bell Labs

  • Ken Thompson raconte qu’il a participé au projet Multics chez Bell Labs au milieu des années 1960, mais se souvient du système comme d’un « projet énorme, lent, coûteux et voué à l’échec »
    • Après l’arrêt de Multics, il a poursuivi ses expériences avec les gros ordinateurs restants, en essayant d’améliorer le dispositif de stockage de données CRAM et la mémoire à tambour
    • En expérimentant pour accélérer la vitesse de lecture mémoire, il a fini, presque sans s’en rendre compte, par créer un système ayant la forme d’un système d’exploitation
  • Il explique qu’en dépit des consignes de Bell Labs demandant de « cesser la recherche sur les systèmes d’exploitation », il a officieusement achevé les bases d’Unix
    • C’est ainsi qu’est né un Unix initial doté des composants essentiels comme le système de fichiers, les pilotes de disque et les périphériques d’E/S

La première communauté Unix et l’arrivée du PDP-11

  • Les premiers utilisateurs d’Unix étaient Dennis Ritchie, Doug McIlroy, Robert Morris, Brian Kernighan et quelques autres, dans une communauté si réduite que les identifiants utilisateur ne comptaient qu’un seul chiffre
    • Thompson a conçu le système de fichiers avec Rudd Canaday sur un tableau noir, et s’est servi du système d’enregistrement téléphonique de Bell Labs pour la documentation
  • Joe Ossanna a contourné les procédures bureaucratiques de Bell Labs pour obtenir un ordinateur PDP-11, marquant un tournant pour le développement d’Unix
    • Officiellement acheté « pour le traitement de texte », le PDP-11 a en réalité servi d’équipement central pour le développement d’Unix
    • Des secrétaires du service brevets ont commencé à rédiger des documents sur le système Unix, formant une première base d’utilisateurs externes

La « Unix Room » et une communauté libre

  • Le PDP-11 a été installé dans un espace du 6e étage de Bell Labs, qui est rapidement devenu le centre des développeurs connu sous le nom de “Unix Room”
    • Après avoir vidé un vieux distributeur et un local de stockage, l’équipe y a ajouté un second PDP-11, et le lieu est devenu un centre des discussions sur le networking et la composition de documents
    • Avec même son propre système PBX relié à des lignes téléphoniques, l’endroit fonctionnait comme un hub de recherche officieux
  • Thompson se souvient de « l’époque où l’on crochetaient les serrures et faisaient des farces dans l’Unix Room »
    • Il décrit une ambiance expérimentale mêlant humour et esprit de rébellion, allant jusqu’à voler et cacher un sabot de roue posé pour stationnement interdit
    • Il raconte comment l’affaire s’est terminée par une négociation, le responsable de la sécurité proposant de « rendre les sabots et on laissera les secrétaires tranquilles »
  • Dennis Ritchie décrivait Unix comme « un système dans lequel une communauté pouvait se former », et les “Unix Lunch” réguliers sont devenus un lieu d’échange d’idées

L’ouverture de Bell Labs et la croissance d’Unix

  • Thompson estime que l’absence de pression et l’autonomie dans l’environnement de recherche ont conduit au succès d’Unix et du langage C
    • Chez Bell Labs, l’ambiance était telle qu’on pouvait « tout essayer », avec des personnes de formations très diverses travaillant ensemble
  • Le linguiste Lee McMahon a contribué au développement d’Unix en obtenant un dictionnaire lisible par machine et une version électronique des Federalist Papers
    • Quand ces textes n’entraient pas dans l’éditeur ed, Thompson a développé l’outil de recherche par motif grep
  • Unix s’est diffusé au sein de Bell Labs dans l’administration et les systèmes de commutation téléphonique, devenant une infrastructure clé à l’échelle de l’organisation

Une philosophie d’ouverture avant l’open source

  • Thompson mentionne que Richard Stallman a développé la philosophie open source, mais que cet esprit existait déjà dans Unix
    • À l’époque, Unix disposait bien de fonctions de protection des fichiers, mais dans les faits tout le code source restait modifiable par tout le monde
    • Selon une règle implicite du type « si tu y touches, c’est à toi », une culture de développement faite de création collective et d’expérimentation quotidienne s’est installée
  • L’exemple du brouillon de roman stocké dans le répertoire de son collègue P. J. Plauger, que tout le monde lisait et commentait, est présenté comme une anecdote emblématique de collaboration et d’ouverture
    • Cette culture a donné naissance à une manière communautaire de développer, comme écrire ensemble sur un tableau noir
  • Plus tard, certaines idées issues du projet Plan 9 de Bell Labs ont évolué vers le standard UTF-8, devenu l’un des fondements du Web moderne

Le parcours après Bell Labs et le langage Go

  • Thompson explique qu’après le démantèlement du système Bell en 2000, il a quitté Bell Labs en évoquant l’évolution de la culture interne
    • Il estime que l’ambiance était devenue celle où il fallait « justifier ce que l’on fait », et que la liberté de recherche avait disparu
  • Il a ensuite travaillé six ans chez Entrisphere, une entreprise d’équipements réseau, avant de rejoindre Google
    • Son supérieur chez Entrisphere étant parti chez Google, il l’a encouragé à venir, et Eric Schmidt était un ancien collègue de l’époque Bell Labs
  • Chez Google, après avoir participé à la revue de sécurité d’Android, il a formé l’équipe de développement du langage Go avec Rob Pike
    • C’est présenté comme un exemple où une relation de collaboration née chez Bell Labs a conduit, 30 ans plus tard, à la création d’un nouveau langage de programmation

Conclusion : un héritage technologique forgé par la curiosité et la communauté

  • Les souvenirs de Ken Thompson montrent qu’Unix n’était pas seulement une technologie, mais le produit d’une exploration libre et d’un esprit communautaire
  • L’environnement ouvert de Bell Labs a servi de matrice à la culture open source moderne
  • Son expérience rappelle que la créativité et la collaboration sont les moteurs essentiels de l’innovation technologique

1 commentaires

 
GN⁺ 2025-10-28
Commentaires sur Hacker News
  • L’esprit de collaboration créative et de forte confiance partagé par plusieurs projets logiciels à succès est frappant
    Cette culture va dans une direction totalement opposée à la mentalité façon MBA ou à l’environnement bureaucratique des grandes entreprises
    Cela fait penser à Unix, GNU, Linux, Python à ses débuts, et même aux débuts de Rockstar Games

    • Dans les sociétés, projets ou entreprises où la confiance est élevée, beaucoup de problèmes disparaissent naturellement
    • Après avoir longtemps travaillé dans de grandes entreprises puis être passé dans une petite structure, mon expérience est que sans environnement fondé sur la confiance, il devient vraiment difficile d’accomplir quoi que ce soit
      La bureaucratie finit par tout envahir, et les managers érigent des murs tout en minant la confiance par une culture du secret
      Les nouveaux ont du mal à comprendre le système, et les nouvelles idées meurent avant même d’avoir commencé
      Les grandes organisations peuvent toujours gagner de l’argent, mais si l’on veut provoquer du changement, la confiance est indispensable
    • Ma Bell, à l’époque du monopole de Bell Telephone, était elle aussi une immense entreprise, mais elle débordait alors tellement d’argent qu’elle pouvait financer des projets de recherche spéculatifs
      L’ambiance ressemblait un peu à celle d’aujourd’hui, quand les VC arrosent le marché d’argent
    • J’aimerais aussi ajouter DEC de Ken Olsen et Sun Microsystems à cette liste
    • Je suis surpris de voir Rockstar Games dans cette liste, et je me demande pourquoi
  • Il est intéressant de noter que les premiers utilisateurs d’Unix étaient des secrétaires brevets ou du personnel administratif
    Comme c’était un système que les gens avaient commencé à utiliser de leur plein gré, cela a créé des contraintes très concrètes, qui ont eu un effet sain
    Même en essayant des idées expérimentales, on ne pouvait pas casser un système utilisé chaque jour par de vrais utilisateurs
    Tout comme Linux a commencé comme « juste un hobby », les débuts d’Unix sont partis non pas d’une grande vision, mais d’une expérimentation visant à fabriquer un outil utile
    Bien sûr, l’environnement de Bell Labs lui a donné un avantage considérable

  • L’affaire des chaussures de sécurité volées était intéressante
    Il est frappant que cela ait été réglé non par une procédure officielle, mais par une négociation directe avec un agent de sécurité

  • L’anecdote selon laquelle Thompson a conçu le système de fichiers Unix au tableau avec Rudd Canaday, en utilisant le service téléphonique de dictée de Bell Labs, est excellente
    Aujourd’hui, même le grand public peut facilement utiliser des services de reconnaissance vocale, mais à l’époque c’était vraiment révolutionnaire
    Bien sûr, à ce moment-là, ce n’était pas de l’IA mais sans doute une secrétaire qui prenait la dictée, mais vu la puissance technologique de Bell Labs, cela ne semble pas totalement impossible non plus

    • Je suis du genre à mieux organiser mes idées à l’oral qu’à l’écrit
      Quand j’écris, j’ai sans cesse envie de réviser, et cela devient plutôt un obstacle
  • Il est intéressant que les premiers outils comme mesg et talk aient été conçus avec à l’esprit la formation d’une communauté
    Grâce à une structure à moitié ouverte, il était même possible d’entrer dans le répertoire personnel d’autres personnes et de regarder leurs fichiers

    • Mais cela relève non pas d’Unix, mais de la philosophie d’ITS (Information Timesharing System)
      ITS n’imposait pas de restrictions d’accès et encourageait la collaboration, alors que la plupart des serveurs Unix verrouillaient les répertoires personnels en 0700
    • La comparaison avec « entrer dans le bureau de quelqu’un et fouiller dans son bureau » est parfaite
  • Dans la légende de la photo où Ken et dmr se tiennent ensemble, on trouve la phrase : « nous voulions créer un système dans lequel une communauté puisse se former »
    Cela rappelle la citation du Seigneur des anneaux placée en tête du fichier source de Perl
    Le code correspondant peut être vu via ce lien GitHub

  • On peut voir l’ensemble des contributions de Ken au langage Go dans le dépôt Git
    Sans spoiler, il y a du code assez amusant

  • Je me demande d’où vient le titre « Radio UNIX USA », morceau de l’album de hardcore punk de 1981 This is Boston not LA
    Les paroles n’ont absolument rien à voir avec Unix, mais comme le groupe venait de Boston, il y a peut-être un lien avec le MIT

    • L’expression « no balls » revient plusieurs fois dans les paroles, donc il est très probable qu’Unix soit ici un jeu de mots avec eunuchs (hommes castrés)
      Le titre pourrait aussi parodier la règle des indicatifs radio américains à 4 lettres
  • Si cet article vous a intéressé, je recommande 《Hackers》 de Steven Levy
    Le livre retrace l’histoire de la culture hacker, du MIT AI Lab au Homebrew Computer Club, jusqu’aux premiers programmeurs de jeux
    Je l’ai lu jeune, cela m’a donné le virus de la programmation, et aujourd’hui encore je retrouve dans les startups le même plaisir de collaboration

    • 《The Innovators》 de Walter Isaacson mérite aussi vraiment le détour
      Lien Goodreads
    • J’ai moi aussi lu 《Hackers》 dans les années 80, ce qui m’a conduit à me réorienter vers une carrière de programmeur dans la Silicon Valley, puis plus tard à obtenir un doctorat et à enseigner la programmation à l’université
  • 《Unix: A History and a Memoir》 de Brian Kernighan est aussi une excellente lecture