13 points par GN⁺ 19 시간 전 | 1 commentaires | Partager sur WhatsApp
  • John Carmack, créateur de Doom/Quake, dit qu’il admire Fabrice Bellard

    « Il est presque certain qu’il est bien meilleur que moi en programmation de manière générale »

  • Il a laissé ce commentaire en citant un texte posté par quelqu’un qui partageait la page wiki de Fabrice Bellard

Un ingénieur français vivant discrètement à Paris écrit depuis 30 ans, presque dans l’anonymat, les logiciels dont dépend aujourd’hui tout l’Internet

  • Une grande partie du code essentiel qui soutient le streaming vidéo mondial et la virtualisation cloud repose sur des logiciels open source créés en solo, hors de la Silicon Valley, par un ingénieur parisien
  • FFmpeg, qui traite les formats vidéo et audio, joue le rôle de moteur invisible de l’Internet pour YouTube, Netflix, VLC et bien d’autres
  • L’émulateur de machines QEMU constitue la base de la virtualisation moderne ; l’hyperviseur Linux KVM fonctionne au-dessus, et l’infrastructure VM des grands clouds est construite sur cet ensemble
  • Il a aussi développé seul de nombreux autres projets comme TCC, JSLinux, QuickJS, NNCP, et a calculé à l’époque le plus grand nombre de décimales de pi jamais obtenu grâce à une formule qu’il avait lui-même dérivée
  • Sans marketing ni réseaux sociaux, il occupe le poste de CTO de l’entreprise télécom Amarisoft tout en continuant à publier des projets personnels

Présentation

  • Il s’appelle Fabrice Bellard, né en 1972 à Grenoble, en France
  • Il a étudié à l’École Polytechnique, l’une des plus grandes écoles d’ingénieurs françaises
    • Il n’a jamais déménagé dans la Silicon Valley ni bâti un empire de startup ; il s’est concentré sur l’écriture de code
  • Il n’a ni Twitter ni Instagram et accorde très rarement des interviews
    • Son site personnel se présente comme une simple liste de titres de projets et de liens, sans style, sans police particulière, sans slogan marketing

FFmpeg — le moteur invisible de l’Internet

  • Un framework multimédia open source d’encodage, de décodage et de streaming lancé en 2000, à l’âge de 28 ans
    • Il a implémenté seul l’idée de traiter pratiquement tous les formats vidéo et audio existants, dans une seule bibliothèque, sur tous les systèmes d’exploitation
    • Il a dirigé lui-même le projet pendant des années
  • Aujourd’hui, YouTube, Netflix et VLC l’utilisent, et Chrome comme Firefox en utilisent aussi certaines parties
    • FFmpeg fonctionne à l’intérieur de tous les téléphones Android, des iPhone, des smart TV et des outils de montage vidéo
    • Si vous avez regardé une vidéo sur un écran au cours des 20 dernières années, il y a de fortes chances que ce code l’ait traitée

QEMU — le socle de la virtualisation moderne

  • Un émulateur de machines et outil de virtualisation lancé en 2003, écrit seul jusqu’à la version 0.7.1 en 2005
    • Il permet d’exécuter n’importe quel système d’exploitation au-dessus d’un autre
  • L’hyperviseur du noyau Linux KVM fonctionne sur QEMU
    • AWS, Google Cloud, Microsoft Azure, IBM Cloud et tous les grands fournisseurs cloud exécutent des VM sur des infrastructures construites sur cette base
    • Il est considéré comme l’un des codes d’infrastructure cloud les plus largement réutilisés au monde

Autres grands projets développés en solo

  • Son petit compilateur C, lauréat en 2001 de l’International Obfuscated C Code Contest, a évolué pour devenir TCC (Tiny C Compiler)
    • TCC permet de compiler et démarrer le noyau Linux depuis les sources en moins de 15 secondes
  • En 2004, il a calculé un nombre record de décimales de pi pour l’époque avec un ordinateur de bureau personnel et l’algorithme de la Bellard's formula, qu’il avait lui-même dérivée
  • En 2011, il a publié JSLinux, un émulateur de PC écrit en JavaScript pur permettant de faire tourner Linux dans le navigateur
  • En 2019, il a publié QuickJS, un moteur JavaScript petit mais complet, adapté aux environnements où V8 ne peut pas être embarqué
  • En 2021, il a publié NNCP, un compresseur de données sans perte basé sur des réseaux neuronaux, qui a immédiatement pris la tête du Large Text Compression Benchmark

Projets liés aux LLM

  • Il a construit TextSynth Server, un serveur web REST API permettant d’exécuter des LLM en local
  • Il a publié ts_zip et ts_sms, qui utilisent des modèles de langage pour compresser du texte et des messages courts à des taux que les algorithmes existants n’atteignaient pas
  • Il a publié TSAC, un système de compression audio à très bas débit
  • En décembre 2025, il a publié Micro QuickJS, un moteur JavaScript pour microcontrôleurs créé séparément de QuickJS et destiné aux environnements avec très peu de mémoire

Amarisoft et sa manière de travailler

  • En 2012, il a cofondé l’entreprise télécom Amarisoft, où il occupe le poste de CTO
    • Amarisoft développe des logiciels de stations de base 4G et 5G utilisés par des opérateurs et laboratoires du monde entier
  • Tout en dirigeant l’entreprise depuis plus de 10 ans, il continue de publier ses projets personnels via sa page personnelle (bellard.org)
    • Sans s’installer dans la Silicon Valley, il continue aujourd’hui encore à publier discrètement du code qui fait tourner l’Internet

1 commentaires

 
Commentaires Hacker News
  • Quand on regarde la liste des contributions de Bellard, sa capacité brute est impressionnante, bien sûr, mais ce qui ressort encore plus, c’est son sens du choix
    Il a continuellement choisi de travailler sur des choses qui allaient devenir utiles à un très grand nombre de personnes, et cela paraît presque plus remarquable encore que sa maîtrise technique
    La question la plus importante dans la vie est peut-être de décider quoi faire

    • Son critère est probablement quelque chose comme : je veux faire quelque chose de simple, alors pourquoi est-ce si difficile ?
      L’informatique moderne regorge de marécages en matière d’expérience développeur, tout le monde en fait l’expérience, mais presque personne ne passe réellement à l’action pour corriger ça
      En résumé, la philosophie, c’est : « des choses qui devraient être bien ne le sont pas vraiment, et je peux apprendre à les améliorer », ou plus largement : « on peut simplement le faire »
    • Lorsqu’on rend quelque chose qui était traditionnellement difficile beaucoup plus simple, rapide et meilleur, on débloque des usages qui restaient coincés en dessous
      Le choix comme l’exécution comptent tous les deux, bien sûr, mais beaucoup d’industries se sont ouvertes parce que quelqu’un a réussi à simplifier ce qui était auparavant difficile
    • On retrouve souvent le même dilemme dans la recherche
      Surtout si l’on veut avoir un impact, il est important de choisir à quoi l’on va consacrer sa vie, et choisir le bon problème est souvent plus difficile que d’imaginer une solution appropriée
    • C’est ce genre de personne qu’on appelle un développeur x10
      Dans le cas de Bellard, c’est peut-être même x100 ou plus
      Il ne s’agit pas de travailler 19 heures par jour, ni d’augmenter le nombre de lignes de code ou de PR, mais de proposer des solutions élégantes à grande portée auxquelles personne d’autre n’avait pensé
    • À l’inverse, si l’on a les capacités, il suffit de choisir les problèmes les plus difficiles de son domaine, de les résoudre, puis de recommencer
      Les problèmes difficiles de chaque domaine ne sont pas secrets ; au final, la vraie question est de savoir si l’on a la capacité, l’audace et la volonté d’y consacrer plusieurs années
  • Il est intéressant de noter que la plupart des travaux de Bellard ressemblent à la transposition de spécifications en C
    Parmi les projets importants, on trouve ffmpeg (spécifications de codecs), qEmu (spécifications de jeux d’instructions), QuickJS (spécification EcmaScript), tinyC (spécification du C), les télécommunications (spécifications LTE), et les travaux sur le calcul de pi ou les réseaux neuronaux sont presque des exceptions
    Cela ne les rend pas moins impressionnants ; implémenter des codecs et des émulateurs haute performance n’a rien de facile, mais il est intéressant de voir à quel point beaucoup de travail se concentre dans un domaine relativement étroit

    • Il faut voir que, dans les spécifications de télécommunication où une paire encodeur/décodeur communique via un canal, la spécification ne définit en général que l’encodeur
      Les standards laissent volontairement le décodeur ouvert afin de permettre les progrès techniques et la concurrence entre implémentations, et le décodeur est généralement plus complexe, puisqu’il doit gérer le bruit et les effets du canal
      C’est pourquoi l’implémentation d’un décodeur compétitif et conforme à un standard ne consiste pas à suivre une route tracée d’avance, mais relève plutôt de la R&D, et Bellard apparaît moins comme un pur programmeur que comme un ingénieur qui programme
    • L’idée selon laquelle quelqu’un écrirait une spécification de codec et Fabrice Bellard la convertirait simplement en C est complètement fausse
      Les codecs sont souvent implémentés par rétro-ingénierie, et il arrive qu’il n’existe même pas de spécification ; même lorsqu’un codec est documenté, cela n’indique pas pour autant comment l’encoder ou le décoder efficacement
      C’est justement ce type d’algorithmes efficaces que des gens comme Bellard développent
    • À l’origine, j’ai été formé dans un cadre où spécification, implémentation et tests étaient séparés, et parfois pris en charge par des personnes différentes
      Aujourd’hui, on a plutôt tendance à mélanger les trois, et je trouve que le résultat est correct
      Cela dit, beaucoup de gens semblent aujourd’hui ne faire que l’implémentation
    • Avant, on passait énormément de temps à définir des spécifications pour pouvoir sous-traiter le code
      Maintenant, on sous-traite les spécifications pour pouvoir passer énormément de temps sur le code
    • Quand on travaille réellement avec ffmpeg, son architecture est assez impressionnante par son caractère plug-in
      Les codecs ont beaucoup d’écarts et de bizarreries dès les concepts de base, la notion même de « frame » diffère entre l’audio, les sous-titres et la vidéo, et la façon de passer les frames entre encodeurs logiciels et matériels est elle aussi totalement différente
      Le fait de pouvoir mélanger presque librement le traitement de ces mondes différents est une vraie réussite, et libav me paraît assez bien conçu pour rendre cela possible
  • Bellard n’est plus impliqué dans FFmpeg depuis plus de 20 ans, en réalité plutôt près de 23 ans
    À l’époque, FFmpeg n’avait pas de framework de partage de code entre composants et codecs, son code n’était donc pas bon, sentait le spaghetti code, et aujourd’hui il n’en reste pratiquement plus rien
    Si FFmpeg est ce qu’il est aujourd’hui, c’est grâce à d’autres développeurs, et pourtant on continue de le présenter comme s’il était l’unique BDFL à vie et que les autres développeurs n’avaient fait qu’empiler des choses sur son cadre plein de sagesse
    Aujourd’hui, tout ce qu’il fait, c’est détenir la marque et décider quels projets ou responsables ont le droit d’utiliser le nom FFmpeg ; il a même déjà exclu une fois les développeurs de libav pour soutenir un autre dictateur

    • Il ne faut pas oublier le contexte
      FFmpeg et Videolan ont commencé dans des chambres d’étudiants, utilisés par des étudiants pour diffuser la télévision en streaming et partager des films depuis leur résidence universitaire
      Les campus de Polytechnique et de l’École Centrale ne sont séparés que de quelques kilomètres, et les deux projets ont commencé vers 1997~1998
      À l’époque étudiante, j’aurais probablement été plus occupé à boire des bières qu’à écrire du code propre
    • Il ne s’agit pas de « copyright », mais bien de marque déposée
      Le copyright appartient aux auteurs du code, à leur employeur, etc., puisqu’aucune cession de copyright n’est exigée
      C’est comparable au fait que Linus Torvalds détienne la marque « Linux » dans certaines juridictions alors que l’essentiel du copyright appartient à d’autres contributeurs
    • J’ai retrouvé un commentaire sur le drama ffmpeg/libav d’il y a 15 ans : https://www.reddit.com/r/linux/comments/vvdxn/comment/c57zdk...
      Je ne connais pas très bien ffmpeg, mais cela rejoint ce que j’ai vu dans d’autres projets open source
    • ffmpeg est désormais un projet open source bien trop réussi pour n’attribuer le mérite qu’à une seule personne
      Je me souviens même d’une époque où AviDemux avait une implémentation d’encodeur H.264 bien plus rapide et meilleure que ffmpeg
      Fidèle à l’esprit open source, ffmpeg a absorbé le code d’AviDemux, et finalement AviDemux a fait le choix pragmatique d’utiliser ffmpeg comme backend plutôt que de rivaliser
      J’y vois un bon exemple d’adhésion à l’esprit open source
    • Personne de sensé ne penserait que ffmpeg est encore maintenu et développé par une seule personne, et encore moins par Fabrice seul
      Que ce soit du spaghetti code ou non importait assez peu au début
      À une époque où l’on ne connaissait pas encore vraiment l’ampleur ni l’avenir du projet, il était peut-être plus pertinent de commencer dans un état un peu spaghetti plutôt que de se laisser freiner par des problèmes futurs hypothétiques, puis de refactoriser une fois les besoins mieux compris
      Le fait que la communauté l’ait fait est remarquable
  • Le site web de Fabrice est visible ici : https://bellard.org/
    On y trouve la liste complète de ses projets

    • Les excellents programmeurs ont souvent aussi un très bon design de site personnel
      Tout est très clair et il n’y a absolument aucune redondance inutile
  • Bellard a un projet très intéressant appelé ts_zip, un algorithme de compression basé sur un LLM
    Ce n’est qu’une « expérimentation » et il ne faut pas l’utiliser en production, mais c’est très malin
    La description sur le site est aussi amusante : “The ts_zip utility can compress (and hopefully decompress) text files using a Large Language Model”
    https://bellard.org/ts_zip/

    • Si la décompression est facultative, moi aussi je peux imaginer un algorithme de compression vraiment impressionnant
    • En réalité, c’est exactement ce qu’est un LLM
      Le modèle mental, et la métaphore que j’utilise pour l’expliquer à des enfants, c’est : « on a compressé tout l’internet dans une archive type zip, et il existe un moyen très intelligent et efficace d’y retrouver les données »
      J’ai vécu assez longtemps pour me souvenir de l’époque où l’on commandait Wikipedia sur CD, et je ne ressens pas une si grande différence entre ça et le téléchargement d’un LLM
    • Il existe un domaine des algorithmes de compression compétitifs où le temps et la quantité de calcul ne comptent pas
      Certains ont construit des compresseurs qui mettaient des heures, voire des jours, à compresser un corpus de test
      L’ancienne borne supérieure semi-humoristique de ce domaine, c’était que la compression était « AI-complete » : au lieu de compresser le texte des œuvres complètes de Shakespeare, on encoderait simplement “The Complete Works of Shakespeare”, puis un décompresseur IA régénérerait la sortie à partir de ce prompt
      Avec l’arrivée des LLM, Bellard a en quelque sorte transformé cette blague en réalité
  • “Fabrice Bellard” par Andy Gocke et Nick Pizzolato
    https://www.ipaidia.gr/wp-content/uploads/2020/12/117-2020-f...

    • Je me demande si ce Nick Pizzolato est le même que celui qui a écrit True Detective
    • Le document date un peu, puisqu’il a fait encore beaucoup de choses depuis
    • Si ça n’a jamais été soumis sur HN, ça vaudrait le coup de le faire
  • Je me suis demandé si, en demandant à quelqu’un « qui est la personne vivante la plus intelligente ? », puis en reposant la question à la personne qu’il désigne, et ainsi de suite, on finirait par converger vers le même petit groupe de génies
    Si on le faisait pour le meilleur codeur vivant, on pourrait probablement commencer par Carmack, puis il faudrait aller vers Bellard
    J’espère juste que la réponse de Bellard ne serait pas à nouveau Carmack

    • Il existe une histoire similaire où, en suivant les scientifiques et physiciens ayant participé au Manhattan Project, on finit par aboutir à John von Neumann
    • Quand je travaillais chez Apple, une dizaine de collègues me viennent immédiatement à l’esprit
  • J’ai vu sa photo pour la première fois, et j’ai un peu eu l’impression que l’identité de Satoshi Nakamoto avait été révélée, quelqu’un qui protège sa vie privée et évite l’attention
    Il donne l’impression d’avoir toujours eu mieux à faire : réfléchir intensément et résoudre des problèmes difficiles, plutôt que d’interagir sur le grand internet
    Son travail est admirable, mais son éthique de travail l’est encore plus
    Quand on a une vision forte, il faut parfois un développement en tour d’ivoire plutôt que de passer ses journées à débattre avec des inconnus sur internet et à défendre ses choix

    • Il n’a jamais caché son identité
      On pouvait trouver sa photo en cherchant
      Il ne faut pas le comparer à Satoshi
      Je n’ai ni bitcoin ni intérêt pour le sujet, mais ce nom est une présence quasi légendaire imprimée dans le document d’origine
      Fabrice Bellard est une personne réelle qui publie du code, pas une identité anonyme d’internet
    • Bellard est Mozart, et la plupart d’entre nous peinent déjà à être Salieri
    • Carmack et Bellard sont tous deux devenus des figures mythifiées
      Ils sont tous deux remarquables, mais dès que leurs noms apparaissent, on commence à parler d’attentes étranges du type « qu’est-ce qu’ils penseraient de ceci ? » plutôt que de ce qu’ils ont réellement fait
      Cette mythification finit même par rapetisser leurs accomplissements
    • C’est dommage qu’il n’ait pas accordé le même respect à Rebecca Ann Heineman, dite « Burguer »
    • Je l’imaginais rude, avec des cheveux longs, peut-être des tatouages, grand et massif
      La photo a brisé cette image, et maintenant j’aimerais récupérer mon imagination
  • Je vois bien ce que signifie la formule « aujourd’hui, FFmpeg est le moteur invisible de l’internet », mais je déteste tellement l’exagération
    Même si FFmpeg disparaissait soudainement, l’internet irait très bien
    Les entreprises qui en dépendent au cœur de leur produit pourraient souffrir, mais l’internet lui-même et la majorité des sites web et services internet continueraient à très bien fonctionner

    • C’est le genre de chose qu’écrit un LLM
      Ce tweet / billet a été écrit par un LLM, et il écrit comme ça
    • Sans YouTube et le porno, est-ce vraiment encore internet ?
    • Si on parle du moteur invisible de ce qui constitue la majeure partie de l’internet actuel, alors ce n’est peut-être pas exagéré
      L’internet de demain sera peut-être différent
  • Petite digression, au risque des downvotes : la récente vague des X-articles m’agace au plus haut point
    Sur mobile, il faut passer par 3 ou 4 étapes avant d’arriver au texte, et les articles ont toujours l’air d’être sur-optimisés pour capter l’engagement de lecteurs à l’attention très courte, à la manière de publications LinkedIn
    En plus, le contraste saisissant entre ce post sur X et le site personnel de Bellard lui-même est ironique

    • C’est un peu triste de voir des gens déjà grands VIP de la tech ressentir le besoin de passer du temps à écrire ce genre de tweets, ou pire encore, d’embaucher une agence de communication pour les écrire à leur place
      C’est courant chez des célébrités d’autres secteurs avec le même patrimoine, mais chez eux, ça me paraît étrangement déplacé