Le codeur fou

Le codeur
fou

Tristan dévore du code jour et nuit depuis 1984. 42 ans plus tard, la boucle tourne toujours.

Ne pas nourrir après minuit. Sauf avec du café.

1while (alive()) {2    eat();3    sleep();4    code();5    repeat();6}

    alive() = trueitération n° —

    TC-1984 Marche Veille Disque

    La fonction sacrée

    Écrite à la main en 1984, jamais modifiée depuis. Elle tourne en production 24 h sur 24. Voici la revue de code qu'on lui a fait subir.

    while (alive()) {    eat();    sleep();    code();    repeat();}

    Version originale, recopiée telle quelle : While Alive() {eat(); sleep(); code(); repeat();}

    • Ligne 1. alive() renvoie toujours true. Le relecteur a vérifié : c'est voulu.
    • Ligne 3. sleep() est appelée, mais n'a jamais été exécutée. Le voyant « Veille » du moniteur le confirme.
    • Ligne 5. repeat() est inutile dans une boucle while. Réponse de l'auteur : « On ne sait jamais. »
    • Global. Aucune fonction social_life() trouvée dans le projet. Ticket ouvert en 1991, toujours en attente.

    Les compteurs ne mentent pas

    Relevés en direct depuis le premier boot en 1984. Les chiffres augmentent pendant que vous lisez. Lui aussi, il code pendant que vous lisez.

    —Temps de fonctionnement sans redémarrage
    —Touches frappées
    —Cafés bus
    —Canettes de Coca vidées (voir la scène de crime)
    —Bugs créés
    —Bugs corrigés
    ErrHeures de sommeil
    2.3MTéléchargements de ses addons. Ça, c'est le seul chiffre vrai de ce tableau.

    Méthode de calcul : très scientifique. Un café toutes les cinq heures, une canette toutes les sept heures et demie, douze bugs par jour, et toujours un bug de plus que de corrections.

    Tristan, cheveux en bataille et sourire inquiétant, devant ses écrans
    Spécimen photographié à 3 h du matin. Il a pris le flash pour une mise à jour système et a demandé à redémarrer.
    Fiche technique Réf. TC-198454 ans de service
    Modèle
    Codeur fou TC-1984
    Fabrication
    1972, Valais (Suisse)
    Premier boot
    1984, sur son tout premier ordinateur
    Alimentation
    Café, Coca, pizza froide, chips (dans cet ordre)
    Autonomie
    Illimitée tant qu'il y a du Wi-Fi
    Mode veille
    Non supporté
    Refroidissement
    Soupirs devant le code des autres
    Langages
    PHP, Python, C#, Swift, Lua, Windev, SQL, et le dialecte des imprimantes
    Systèmes
    Windows, Linux et macOS, souvent en même temps
    Périphériques
    Deux écrans minimum, trois le week-end
    Garantie
    Expirée en 1999 (a survécu au bug de l'an 2000)

    Conforme à aucune norme connue. Ne pas mettre à jour pendant un build. Ne pas jeter : encore réparable avec du café.

    24 heures dans la vie du codeur fou

    Extrait du journal système, imprimé sur listing continu. Aucune ligne n'a été inventée. Enfin, presque aucune.

    1. Lance « un petit fix rapide avant d'aller dormir ».
    2. Le petit fix rapide touche maintenant 47 fichiers.
    3. Trouve enfin le bug. C'était un point-virgule. Il était là depuis 2009.
    4. Commit « fix ». Puis « fix du fix ». Puis « vraiment le dernier fix ».
    5. Les oiseaux chantent. Il les soupçonne d'être des notifications.
    6. Le soleil se lève. Menace détectée : stores fermés.
    7. Café n° 1. Officiellement.
    8. Canette n° 1. Officieusement la n° 6.
    9. Réunion. Caméra éteinte, IDE allumé.
    10. eat() : pizza d'hier, mangée d'une main au-dessus du clavier.
    11. sleep() appelée. Exception levée. Retour au code.
    12. « Ça marche sur ma machine. »
    13. Rentre à la maison. Pour coder.
    14. Dîner. Pense à une requête SQL entre deux bouchées.
    15. « Juste un dernier commit. »
    16. git push --force, avec une petite prière en Lua.
    17. goto 00:00

    Le git log de sa vie

    Historique complet, récupéré sur le dépôt principal. Aucun commit n'a été réécrit. Il a juste fait un ou deux push --force.

    $ git log --oneline --graph --all

    1. 3d3bc5a(HEAD -> main)wip
    2. 67bb305feat: un site entier pour se moquer de moi (codé à 3 h, évidemment)
    3. 97362d6refactor: remplace café par double café
    4. 7e339eefeat: télétravail. Plus besoin de rentrer à la maison pour coder
    5. 223a466merge: branche « vacances » dans « code » (conflit résolu en faveur du code)
    6. 4c93ab3revert: « tentative de dormir 8 heures »
    7. 1cae9aefeat: ajoute une ligne sans point-virgule (personne ne remarquera)
    8. 949bf7c(v2000)fix: bug de l'an 2000. Le monde ne m'a jamais remercié
    9. 5e7e43cchore: garantie constructeur expirée
    10. 92ec8e7chore: ouvre le ticket n° 1 « social_life() introuvable »
    11. d183b49feat: découverte du café. BREAKING CHANGE
    12. 92c4641feat: mémorise le code Konami (compétence la plus utile de sa vie)
    13. 6014ef5(v1.0)feat: premier ordinateur. sleep() désactivée
    14. 5e72e96Initial commit

    $ git status

    Sur la branche main. 54 ans d'avance sur origin/sommeil.
    Modifications non indexées : absolument tout.

    Scène de crime : le bureau

    La police scientifique est intervenue à 4 h 12, après un signalement des voisins pour « bruit de clavier continu depuis 1984 ». Cliquez sur les marqueurs jaunes pour lire le procès-verbal.

    Le bureau du codeur fou, envahi de canettes de Coca et de cartons de pizza, lui souriant au milieu
    Procès-verbal n° 1984-42 Police scientifique, brigade des nuits blanches
    1. 1
      Le suspect

      Sourit à l'objectif. Affirme être « presque en train d'aller dormir ». Personne ne le croit.

    2. 2
      La coiffure

      Ébouriffée par 42 ans de « juste un dernier commit ». Aucun peigne n'a été retrouvé sur les lieux.

    3. 3
      Les canettes

      Quantité estimée : 1 337. Le suspect parle de son « système de refroidissement liquide ».

    4. 4
      Les cartons de pizza

      Empilés par ordre chronologique. Les plus anciens datent de la version 1.0 de son premier addon.

    5. 5
      Les quatre écrans

      Tous allumés. L'un d'eux affiche du code écrit en 2009. Personne n'ose y toucher.

    6. 6
      Le post-it

      Il y est écrit « TODO : dormir ». Statut : en attente depuis 1991.

    7. 7
      Le cahier

      Un schéma d'API dessiné à la main. Les taches de pizza servent de points d'ancrage.

    8. 8
      Le fauteuil

      A pris la forme exacte du suspect. Demande de classement aux monuments historiques en cours.

    9. 9
      La tasse

      Contient un café de 2019. Il aurait développé sa propre conscience. Et un fork sur GitHub.

    Conclusion. Aucune victime à déplorer, à part le sommeil. Affaire classée sans suite : le suspect n'a pas pu se présenter à l'audition, il « finissait juste un truc ».

    Ctrl + Alt + Suppr sur son cerveau

    Nous avons ouvert le gestionnaire des tâches de son cerveau. Sélectionnez un processus, puis cliquez sur « Fin de tâche ». Bonne chance.

    Gestionnaire des tâches · CERVEAU.SYS
    Processeur : — · Mémoire : saturée · Sommeil : 0 %

    Le bilan nutritionnel depuis 1984

    Le corps humain est composé à 60 % d'eau. Le sien : 60 % de café, 30 % de Coca et 10 % de pizza froide. Voici les chiffres, calculés en direct depuis 1984, avec une rigueur scientifique tout à fait discutable.

    — Cafés bus
    • ≈ — litres de café
    • soit — baignoires pleines à ras bord
    • dont — kg de caféine pure
    Objectif : remplir une piscine olympique — % · piscine pleine prévue en l'an —

    Son sang a été reclassé « ristretto » par la Croix-Rouge. Don refusé : trop serré.

    — Pizzas englouties
    • ≈ — m² de pâte, tomate et fromage
    • de quoi recouvrir — courts de tennis
    • et zéro salade en accompagnement
    Cartons empilés contre le barrage de la Grande Dixence — m de cartons · — × la Grande Dixence (285 m)

    Le livreur a sa propre clé, une tasse à son nom et une place à table à Noël.

    — Canettes de Coca
    • ≈ — litres de Coca
    • soit — kg de sucre
    • et — kg d'aluminium à recycler (un jour)
    Canettes empilées contre le Cervin — m de canettes · — × le Cervin (4 478 m)

    Il appelle ça son « système de refroidissement liquide ». Son dentiste appelle ça sa retraite anticipée.

    Kiosque de la Boucle Infinie

    Rue du Dernier-Commit 404 · Valais
    Ticket n° 1984-∞ · ouvert 24 h/24 depuis 1984

    ArticleCHF
    Café, tasse 2 dl
    — × 3.80—
    Pizza Ø 33 cm
    — × 19.50—
    Coca, canette 33 cl
    — × 1.90—
    Sommeil × 00.00
    Légumes × 0introuvables
    Eau plate × 1dans le café
    Rabais fidélité depuis 1984-0.05
    TOTAL CHF—

    TVA 8,1 % incluse. Calories non incluses.
    Payé en : lignes de code

    Merci de votre fidélité. À tout à l'heure. Littéralement.

    Soit à peu près le prix d'un chalet à Verbier. Enfin, d'un garage à Verbier.

    Remarques du nutritionniste

    • Café. Le cardiologue a demandé à consulter le code source de son cœur. Accès refusé : propriétaire.
    • Pizza. On lui a montré la pyramide alimentaire. Il a cru que c'était une part de pizza.
    • Coca. Son dentiste s'est acheté un bateau. Puis un deuxième, baptisé « Canette n° 1 337 ».
    • Légumes. Seul légume recensé : la sauce tomate de la pizza. Il la compte double.

    Méthode de calcul : une tasse = 2 dl et 80 mg de caféine ; une canette = 33 cl, 11,5 cm de haut, 35 g de sucre et 13 g d'aluminium ; un carton de pizza = 4 cm ; une pizza = 33 cm de diamètre. Les chiffres sont faux, mais les ordres de grandeur sont effrayants.

    Lignes de code écrites et déboguées depuis 1984

    Relevé officiel de son disque dur, obtenu avec la commande wc -l. Le disque a demandé une pause pendant le calcul. Lui, non.

    $ wc -l ~/code/depuis-1984/**/*

    —lignes écrites
    —lignes déboguées (oui, plus que de lignes écrites : personne ne sait comment)
    —lignes supprimées le lendemain matin, en soupirant
    —lignes « temporaires », toujours en production
    —commentaires « // TODO : à corriger »
    —lignes que plus personne ne comprend, lui compris
    1point-virgule manquant (depuis 2009)
    —total : beaucoup trop, et pas assez pour finir TreasureQuest

    Imprimé sur listing continu, le papier déroulé arriverait…

    — km de papier depuis Martigny. Arrivée à Brigue prévue en —, si l'imprimante tient.

    Son clavier a demandé une retraite anticipée. Refusée : il manquait encore quelques lignes.

    Logique informatique : les 6 étapes du débogage

    Un algorithme éprouvé depuis 1984, enseigné nulle part et appliqué partout. Complexité : O(∞). Condition de sortie : introuvable.

    Tour n° 1

    1. 1
      Ça ne marche pas. Pourquoi ?Il ouvre 14 onglets et un café.
    2. 2
      Ça ne devrait pas marcher, mais ça marche. Pourquoi ?Le moment le plus inquiétant de la journée.
    3. 3
      Je change un truc au hasard.Méthode scientifique dite « de la pichenette ».
    4. 4
      Ça ne marche plus du tout.Au moins, maintenant, c'est cohérent.
    5. 5
      Je remets comme c'était.Ctrl+Z, quarante-sept fois.
    6. 6
      Ça ne marche toujours pas, et je ne sais plus pourquoi ça marchait au début.Retour au point 1.

    goto 1

    Durée moyenne d'un cycle : entre cinq minutes et trois semaines (voir « Cinq minutes » dans le dictionnaire).

    Le musée des victimes de son clavier

    Tous ces projets existent vraiment. Ils ont été codés la nuit, livrés le jour, et certains sont utilisés par des centaines de milliers de personnes. Cliquez sur une disquette pour voir la victime.

    Avis de recherche

    Affiche placardée dans tout le Valais, de Martigny à Brigue. Aucun témoin ne s'est manifesté à ce jour. La police pense que le disparu a fui vers des gens qui se couchent à 22 h.

    Avis de recherche

    Disparu depuis 1984

    Nom
    Le Sommeil (dit « sleep() »)
    Disparu le
    1er janvier 1984, vers minuit
    Signalement
    Environ 8 heures. Calme, silencieux, sent l'oreiller frais.
    Dernière apparition
    Sur le canapé, un dimanche de 1983, pendant un film
    Signe particulier
    Disparaît dès qu'on allume un écran
    Récompense
    1 café (froid) et une part de pizza (d'hier)

    Si vous le voyez, ne l'approchez pas brusquement : il est timide. Appelez le codeur fou. Il ne répondra pas, mais ça fait plaisir.

    Êtes-vous un codeur fou ?

    Cochez honnêtement. Personne ne regarde, à part votre webcam.

    0 / 10

    Humain standard. Vous dormez la nuit. Étrange, mais respectable.

    L'horoscope des langages

    Prévisions calculées chaque jour par un astrologue certifié Stack Overflow. Choisissez votre signe. Les prédictions changent tous les jours à minuit, l'heure où il commence à coder.

    Horoscope du —

    —

    —

    —

    Bugs
    —
    Café
    —
    Sommeil
    ☆☆☆☆☆

    Chiffre porte-bonheur : —

    L'imprimante à excuses

    Un bug en production ? Un client mécontent ? L'imprimante matricielle du codeur fou vous fournit une excuse certifiée, imprimée en 1984 et jamais utilisée deux fois. En théorie.

    En attente d'un bug…

    Le dictionnaire du codeur fou

    Édition 1984, revue et corrigée à 3 h du matin. Indispensable pour comprendre ce qu'il veut vraiment dire.

    Cinq minutes loc.
    Unité de temps comprise entre deux et six heures.« J'arrive dans cinq minutes, je finis juste un truc. »
    Dormir v., archaïque
    Ancienne pratique humaine qui consistait à fermer les yeux sans rien compiler.Plus en usage depuis 1984.
    Facile adj.
    Qui prendra trois semaines.« C'est facile, je te fais ça ce soir. »
    Presque fini loc.
    Fini à 90 %. Il reste l'autre 90 %.
    Temporaire adj.
    Définitif.// solution temporaire (2009)
    Documentation n. f.
    Créature mythologique. Voir aussi : licorne, Yéti, sommeil.
    Petit-déjeuner n. m.
    Repas pris vers 16 h, généralement composé de pizza.
    Week-end n. m.
    Deux jours de code sans réunion.
    Vacances n. f. pl.
    Coder ailleurs, avec une vue.« Le Wi-Fi de l'hôtel est nul. » (seule plainte enregistrée)
    Soleil n. m.
    Grosse lampe dans le ciel qui crée des reflets sur l'écran.
    Sauvegarde n. f.
    Chose qu'on aurait dû faire hier.
    Café n. m.
    Carburant. Groupe sanguin. Raison de vivre (voir eat()).

    Phrases cultes du développeur

    Les classiques. Testés, approuvés et répétés à chaque pause café depuis 1984. Cliquez sur une carte pour découvrir la chute.

    Le répondeur

    Vous avez essayé de l'appeler ? Normal, il n'a pas décroché. Son répondeur de 1984 prend le relais. Tapez une touche, il y a un message pour chaque situation.

    ● RECMessages : 9 999+

    Bonjour, vous êtes bien chez le codeur fou. Il ne peut pas vous répondre : il code. Tapez une touche.

    Ce que pensent ses objets

    Nous avons interrogé les témoins directs. Ils ont accepté de parler, sous couvert d'anonymat.