[HN Gopher] Fabrice Bellard: Biography (2009) [pdf]
       ___________________________________________________________________
        
       Fabrice Bellard: Biography (2009) [pdf]
        
       Author : lioeters
       Score  : 343 points
       Date   : 2025-12-24 18:17 UTC (1 days ago)
        
 (HTM) web link (www.ipaidia.gr)
 (TXT) w3m dump (www.ipaidia.gr)
        
       | rurban wrote:
       | (2009)
        
         | dang wrote:
         | I've put that in the title above, although the URL says 2020 -
         | could the text have been updated?
        
           | lioeters wrote:
           | By the way (I'm who submitted the link) - I found a prior
           | discussion on the same document but different URL now
           | expired. There's even a comment by one of the authors,
           | sharing some context.
           | 
           | https://news.ycombinator.com/item?id=2555654 (2011)
           | 
           | My favorite line from the biography:
           | 
           | > [As a child] Bellard was drawn to electronic devices. His
           | first word was _magnetophone_ (tape recorder).
        
             | dang wrote:
             | Nice find! Macroexpanded:
             | 
             |  _Fabrice Bellard [pdf]_ -
             | https://news.ycombinator.com/item?id=2555654 - May 2011 (29
             | comments)
             | 
             | I guess we can throw these in too although it was
             | presumably a different article:
             | 
             |  _Fabrice Bellard: Portrait of a Super-Productive
             | Programmer (2011)_ -
             | https://news.ycombinator.com/item?id=32795067 - Sept 2022
             | (26 comments)
             | 
             |  _Fabrice Bellard: Portrait of a Super-Productive
             | Programmer (2011)_ -
             | https://news.ycombinator.com/item?id=6941135 - Dec 2013 (24
             | comments)
             | 
             |  _Fabrice Bellard: Portrait of a super-productive
             | programmer (2011)_ -
             | https://news.ycombinator.com/item?id=5187585 - Feb 2013
             | (155 comments)
             | 
             |  _Fabrice Bellard: Portrait of a superproductive
             | programmer_ - https://news.ycombinator.com/item?id=2555867
             | - May 2011 (8 comments)
        
           | rurban wrote:
           | In the text isn't anything after 2009. And a lot of cool
           | projects happened after 2009.
        
             | dang wrote:
             | Ok, 2009 it is!
        
       | lioeters wrote:
       | This biography includes more information than I've seen elsewhere
       | about the legendary programmer, who's been discussed time and
       | again on this forum.
        
       | chubot wrote:
       | Without being glib, I honestly wonder if Fabrice Bellard has
       | started using any LLM coding tools. If he could be even more
       | productive, that would be scary!
       | 
       | I doubt he is ideologically opposed to them, given his work on
       | LLM compression [1]
       | 
       | He codes mostly in C, which I'm sure is mostly "memorized". i.e.
       | if you have been programming in C for a few decades, you almost
       | certainly have a deep bench of your own code that you routinely
       | go back to / copy and modify
       | 
       | In most cases, I don't see an LLM helping there. It could be "out
       | of distribution", similar to what Karpathy said about writing his
       | end-to-end pedagogical LLM chatbot
       | 
       | ---
       | 
       | Now that I think of it, Bellard would probably train his own LLM
       | on his own code! The rest of the world's code might not help that
       | much :-)
       | 
       | He has all the knowledge to do that ... I could see that becoming
       | a paid closed-source project, like some of his other ones [2]
       | 
       | [1] e.g. https://bellard.org/ts_zip/
       | 
       | [2] https://bellard.org/lte/
        
         | MrDrMcCoy wrote:
         | He has in fact written one: https://bellard.org/ts_server/
        
           | chubot wrote:
           | Yeah I've seen that, but it looks like the inference-side
           | only?
           | 
           | Maybe that is a hint that he does use off-the-shelf models as
           | a coding aid?
           | 
           | There may be no need to train your own, on your own code, but
           | it's fun to think about
        
             | zelphirkalt wrote:
             | Are you saying a LFM could be a good idea? A Large Fabrice
             | Model?
        
         | latenightcoding wrote:
         | What I wonder is: are current LLMs even good for the type of
         | work he does: novel, low-level, extremely performant
        
           | koakuma-chan wrote:
           | No
        
           | wolttam wrote:
           | If Fabrice explained what he wanted, I expect the LLM would
           | respond in kind.
        
             | vasco wrote:
             | If Fabrice explained what he wanted the LLM would say it's
             | not possible.
             | 
             | When the coding assistant LLMs load for a while it's
             | because they are sending Fabrice an email and he corrects
             | it and replies synchronously.
        
           | slekker wrote:
           | I doubt it, although LLMs seem to do well on low-level (ASM
           | level instructions).
        
           | vitaminCPP wrote:
           | As a professional C programmer, the answer seems to be no;
           | they are not good enough.
        
             | checker659 wrote:
             | They are absolutely good at reviewing C code. To catch
             | stupid bugs and such. Great for pair programming type use.
        
           | rjzzleep wrote:
           | From my experience, it's just good enough to give you a code
           | overview of a codebase you don't know and give you enough
           | implementation suggests to work from there.
        
           | mhh__ wrote:
           | This is a funny one because on the one hand the answer is
           | obviously no, it's very fiddly stuff that requires a lot of
           | umming and ahhing, but then weirdly they can be absurdly good
           | in these kinds of highly technical domains precisely because
           | they are often simple enough to pose to the LLM that any help
           | it can give is actually applicable immediately whereas in a
           | comparatively boring/trivial enterprise application there is
           | a vast amount of external context to grapple with.
        
           | vbezhenar wrote:
           | I'm writing C for microcontrollers and ChatGPT is very good
           | at it. I don't let it write any code (because that's the fun
           | part, why would I), but I discuss with it a lot, asking
           | questions, asking to review my code and he does good. I also
           | love to use it to explain assembly.
        
             | bionsystem wrote:
             | It's also the best way to use llms in my opinion, for idea
             | generation and snippets, and then do the thing "manually".
             | Much better mastery of the code, no endless loop of "this
             | creates that bug, fix it", and it comes up with plenty of
             | feedback and gotchas when used this way.
        
               | zelphirkalt wrote:
               | This is how I used LLMs to learn and at the same time
               | build an application using Tkinter.
        
         | gyomu wrote:
         | > I honestly wonder if Fabrice Bellard has started using any
         | LLM coding tools. If he could be even more productive, that
         | would be scary!
         | 
         | That's kind of a weird speculation to make about creative
         | people and their processes.
         | 
         | If Caravaggio had had a computer with Photoshop, if Eintein had
         | had a computer with Matlab, would they have been more
         | productive? Is it a question that even makes sense?
        
           | lomase wrote:
           | Matlab has been proven to be a indispensable tool in many
           | fields.
           | 
           | AI is the same, for example creating slop or virtual
           | girlfriends.
        
           | Kiro wrote:
           | > Is it a question that even makes sense?
           | 
           | Absolutely. It's a very intriguing thought invoking the
           | opposite of the point you're trying to make.
        
           | nextaccountic wrote:
           | Maybe today Bellard uses LLMs though
        
         | rdtsc wrote:
         | > Without being glib, I honestly wonder if Fabrice Bellard has
         | started using any LLM coding tools
         | 
         | I doubt it. I follow him and look at the code he writes and
         | it's well thought out and organized. It's the exact opposite of
         | AI slop I see everywhere.
         | 
         | > He codes mostly in C, which I'm sure is mostly "memorized".
         | i.e. if you have been programming in C for a few decades,
         | 
         | C I think he memorized a long time ago. It's more like he keeps
         | the whole structure and setup of the program (the context) in
         | his head and is able to "see it" all and operate on it. He is
         | so good that people are insinuating he is actually "multiple
         | people" or he uses an LLM and so on. I imagine he is quite
         | amused reading those comments.
        
           | MangoToupe wrote:
           | Still, humans can only type so quickly. It's not hard to
           | imagine how even a flawless coder could benefit from an llm.
        
             | dmitrygr wrote:
             | > humans can only type so quickly
             | 
             | Real programming is 0.1% typing. Typing speed is not a
             | limiting factor for any serious development.
        
               | MangoToupe wrote:
               | You're conflating typing with programming. Typing is in
               | fact the limiting factor to serious development.
        
               | bdangubic wrote:
               | typing would not make top-100 list of "limiting factors"
               | for serious development.
        
               | lomase wrote:
               | It is if for AI users who can't type code.
        
               | bdangubic wrote:
               | I am a _heavy_ AI user and have been typing code for 3
               | decades :)
        
               | lomase wrote:
               | Do you feel called out?
        
               | bdangubic wrote:
               | not at all, can't feel called out by people who don't
               | have a clue what they are talking about :)
        
               | lomase wrote:
               | Why you waste your time with people who don't have a clue
               | what they talk about and rush to reply them?
               | 
               | You replied 2 min after my comment... I am sorry you are
               | that lonely on christmas day
        
               | bdangubic wrote:
               | thanks, bored at the airport :)
        
               | MangoToupe wrote:
               | Ok, if you have such insight into development, why not
               | leverage agents to type for you? What sort of problems
               | have you faced that you are able to code against faster
               | than you can articulate to an agent?
               | 
               | I have of course found some problems like this myself.
               | But it's such a tiny portion of coding I really question
               | why you can't leverage LLMs to make yourself more
               | productive
        
               | MangoToupe wrote:
               | Most coding is better done with agents than with your
               | hands. Coding is the main financial impediment to
               | development. Yes, actually articulating what you want is
               | the hard problem. Yes, there are technical problems that
               | demand real analytical insight and real motivation. But
               | refusing to use agents because you think you can type
               | faster is mistaking typing for your actual skill:
               | reasoning and interpretation.
        
         | lomase wrote:
         | Why every single post in HN has to come down to talk about AI
         | sloop...
        
         | raverbashing wrote:
         | I think it's the opposite: llms ask Fabrice Bellard instead
        
           | echelon wrote:
           | They're trained on his code for sure. Every time I ask about
           | ffmpeg internals, I know it's Fabrice's training data.
        
           | jacquesm wrote:
           | Congrats, the Chuck Norris meme has finally made its way onto
           | HN.
        
             | throwup238 wrote:
             | Fabrice Bellard is far more deserving of the honor that ol'
             | Chucky.
        
               | jacquesm wrote:
               | Tough choice: Knuth, Bellard, Norvig...
        
         | agumonkey wrote:
         | Some talented people (mitsuhiko, Evan you) seem to leverage LLM
         | their own way. Probably as legwork mostly.
        
         | globalnode wrote:
         | Is Fabrice like the Chuck Norris of programming?
        
           | Renaud wrote:
           | Hopefully without the politics...
        
             | actionfromafar wrote:
             | In Soviet Russia, politics find _you_.
        
         | furbdiba wrote:
         | Keep in mind even if someone writes their own code LLM is great
         | to accelerate: tests, makefiles, docs, etc.
         | 
         | Or it can review for any subtle bugs too. :)
        
         | throwaway2037 wrote:
         | In 2025, there is no shame in using an LLM. For example, he
         | might use it to get help debugging, or ask if a block of code
         | can be written more clearly or efficiently.
        
       | speedgoose wrote:
       | He did a few things since, notably 5G base stations using PC
       | hardware, and some LLM stuff.
        
         | cryptonector wrote:
         | And he wrote a proprietary ASN.1 compiler and stack.
        
           | rvnx wrote:
           | It's far from being impossible, the main thing you need is
           | free time and obsession (and money for your free time btw).
           | 
           | C or asm are not obscure languages or anything, they are
           | brutal languages where you have to trace runtime from A to Z,
           | and manage the memory.
           | 
           | In 1990, it was absolutely normal to code in C. Yes you had
           | to decode images yourself, yes you had to decode audio, yes
           | you had to raytrace, etc.
           | 
           | "Wait, you had to calculate all of these by hand ?
           | 
           | Yes my friend everybody had to do that in my time, what else
           | could we do ?
           | 
           | So we took books, and did one by one.
           | 
           | This was the norm, just that it became some sort of
           | archeology."
           | 
           | Every year, thousands of 19-year-olds complete these tasks in
           | low-level schools like Epita/Epita/42 or in demoscene
           | contests. They aren't geniuses; they are just students who
           | were forced to read the manual and understand how the
           | computer actually works.
           | 
           | Free time won't guarantee you success, but free time +
           | obsession will (like Terry Davis).
           | 
           | Really, this is not alien tech.
           | 
           | Before FFmpeg, people had to encode the videos. Before
           | emulators someone had to create the state machine, etc. All
           | these people it would be insane to ignore them.
           | 
           | Most of the difficult problems have shifted somewhere else
           | from low-level.
           | 
           | How to simulate millions of pharmaceutical molecules in short
           | amount of time ?
           | 
           | How to simulate the world in GTA VI ?
           | 
           | Saving 2 bytes of memory by writing asm (that... won't be
           | portable) is not the thing going to save you. The problems
           | are now elsewhere.
           | 
           | The problem now is not about "wow you read ancient manuals
           | and mixed sand with water and got a solid foundational brick"
           | but it is about "ok, using these bricks, how to build a
           | skyscraper that is 1km tall".
           | 
           | No doubt that these modern programmers are as good as the
           | archeologists who like to explore handcrafted code.
        
             | __patchbit__ wrote:
             | Victor Taelin posts an intuition `HVM is missing a
             | fundamental building block' having done 10 years thinking
             | https://x.com/VictorTaelin/status/2003839852006232478?s=20
        
               | rvnx wrote:
               | I won't pretend to know the answer, I am not even sure I
               | understand the question :|
        
             | cryptonector wrote:
             | > It's far from being impossible, the main thing you need
             | is free time and obsession (and money for your free time
             | btw).
             | 
             | I'm aware :(
             | 
             | (I maintain one, one written by my Swedish friends, whom
             | too were obsessed.)
        
             | attractivechaos wrote:
             | This doesn't explain why so few people of Fabrice's
             | generation have reached his level. Think about violin
             | playing. Many players can become professionals if they have
             | the obsession, but 99% of them won't reach the
             | Heifetz/Hadelich/Ehnes level no matter how hard they try.
             | Talent matters. Programming is not much different from
             | performing art.
        
               | yallpendantools wrote:
               | I think this is well covered by his first line:
               | 
               | > the main thing you need is free time and obsession (and
               | money for your free time btw).
               | 
               | Free time (and money for your free time) is a privilege
               | not everyone may have had. Also, access to computers
               | which, don't forget, has only become ubiquitous this
               | century, and sadly not always in the form that might
               | encourage experimentation. Without getting too much into
               | the Nature-Nurture debate, talent and obsession sadly
               | won't go anywhere without the proper environment to
               | cultivate it. You don't become Bellard/Knuth/Dijkstra
               | with just a bunch of rocks[1] and a whole host of other
               | concerns on top.
               | 
               | [1] https://xkcd.com/505/
        
               | sirfz wrote:
               | That doesn't cover OP's point, some people's brains just
               | work differently and they can achieve something in 1000x
               | less time than others. You can have all the time in the
               | world and you'll never reach their level. That's
               | essentially what talent is.
        
               | attractivechaos wrote:
               | I have been thinking what talent means in programming and
               | thought of a case in the past. The task was to parse a
               | text file format. One programmer used ~1000 lines of code
               | (LOC) with complex logic. The other used <200 LOC with a
               | straightforward solution that ran times faster and would
               | probably be more extensible and easier to maintain in
               | future. This is a small task. The difference will be
               | exponentially amplified for complex projects that Fabrice
               | is famous for. The first programmer in my story may be
               | able to write a javascript runtime if he has time +
               | obsession, but it will take him much longer and the
               | quality will be much lower in comparison to quickjs or
               | mqjs.
        
           | huhtenberg wrote:
           | To be fair, that's not terribly difficult.
        
       | dakiol wrote:
       | While the guy is brilliant, I doubt he could fit the role of
       | senior/staff/principal engineer in any one-level-below faang kind
       | of company. Typically, these roles require good communication
       | skills and working together with other engineers (which is really
       | hard). So, while he's very good at the tech level, I think he
       | primarily works alone? In that regard, it would be a very bad
       | fit. I may be wrong, tho.
        
         | haunter wrote:
         | He is the co-founder and CTO of Amarisoft built on thechnology
         | he developed
         | 
         | https://www.amarisoft.com/
         | 
         | https://www.amarisoft.com/company/about-us
         | 
         | https://bellard.org/lte/
        
         | adamors wrote:
         | Who cares about being a staff at FAANG lmao when he gets to do
         | what he does currently?
        
           | encom wrote:
           | Employing Bellard at FAANG would be a tragic waste!
        
             | zelphirkalt wrote:
             | I have a hunch he wouldn't accept such an ethically
             | questionable role.
        
         | questionableans wrote:
         | In technically deep domains like Bellard works in, Staff+ roles
         | bias more towards technical expertise, and managers also tend
         | to be more technical and able to more completely address
         | technical coordination tasks. Sometimes we like to assume that
         | if someone is good at one thing, they'll be bad at something
         | more mundane (to make ourselves feel better), but I sincerely
         | doubt he would have any trouble in such a role.
        
         | anonymous908213 wrote:
         | Is it insecurity about yourself that leads you to baselessly
         | speculate that an accomplished figure is unemployable?
        
           | dang wrote:
           | Please don't cross into personal attack, regardless of how
           | wrong another comment is or you feel it is. It only makes
           | things worse.
           | 
           | https://news.ycombinator.com/newsguidelines.html
        
           | bpt3 wrote:
           | What do you mean? You don't think that every software
           | developer on earth secretly aspires to spend their days
           | making tiny improvements to an advertising machine?
        
         | dllu wrote:
         | The fact that so many people use FFmpeg and QEMU suggest that
         | he is quite good at documenting, collaborating, and at least
         | making his code remarkably clean and easy to follow. This
         | already puts him way ahead of the average silicon valley senior
         | software engineer that I've worked with. However, he does value
         | independence so I don't think he would have been happy working
         | at a faang-type company for long.
        
           | averne_ wrote:
           | Not really. https://codecs.multimedia.cx/2022/12/ffhistory-
           | fabrice-bella...
           | 
           | >Fabrice won International Obfuscated C Code Contest three
           | times and you need a certain mindset to create code like that
           | --which creeps into your other work. So despite his
           | implementation of FFmpeg was fast-working, it was not very
           | nice to debug or refactor, especially if you're not Fabrice
        
         | kaffekaka wrote:
         | Yeah and can he do it on a cold rainy night in stoke?
        
         | FpUser wrote:
         | >"In that regard, it would be a very bad fit. "
         | 
         | He might as well be but why would he give a flying fuck about
         | it? He gets to do what he wants and is financially independent
         | for doing just that. Most can only dream about it.
         | 
         | Myself - I do not come within a million miles to his
         | professional level, but I still have managed to do just that -
         | I develop what I want, how I want and get paid for it. I am 64
         | and still design and develop actively for my own company and
         | for clients. Gives me happiness, motivation to stay alert and
         | more than enough time to still do my hobbies (mostly various
         | outdoor activities).
        
         | rdtsc wrote:
         | > While the guy is brilliant, I doubt he could fit the role of
         | senior/staff/principal engineer in any one-level-below faang
         | kind of company.
         | 
         | Maybe but what's the point? Hell, I might guess he is terrible
         | at jiggling and basket weaving, too. Complete failure as
         | wrestler, even. But that is kind of neither here or there. Or
         | is it you think staff title at faangs is some kind of pinnacle
         | position every engineer should strive for? It actually always
         | strikes me as a funny title. In college when they didn't have a
         | specific professor to teach or just going to use a grad student
         | they put "staff" in the name box so in my mind it's associated
         | with a random lower rung student who couldn't get away doing
         | just research.
        
           | eichin wrote:
           | Yeah, staff engineer _is_ a pinnacle  "still doing
           | engineering and maybe leadership but not _management_ "
           | position in engineering firms. The academic "staff" is just a
           | "not _really_ one of us " gatekeeping-the-servants title.
        
         | inopinatus wrote:
         | At M.Bellard's level one would could hardly even call such an
         | outcome a character flaw, but my occasional privilege of
         | managing - one should rather say, enabling - high performance
         | teams, taught that the Venn intersection of "competent with
         | imagination" and "collegiate manner" is far from empty, even in
         | the tech sector.
         | 
         |  _"'We 're delighted to have you here,' he said, 'but a word of
         | advice. Don't try to be clever. We're all clever here. Only try
         | to be kind, a little kind.' Like most university stories, this
         | one is variously attributed and it probably never even happened
         | but, as the Italians say, se non e vero, e ben trovato - even
         | if it isn't true, it's well founded."_ [?] Stephen Fry.
        
         | kergonath wrote:
         | > I doubt he could fit the role of senior/staff/principal
         | engineer in any one-level-below faang kind of company.
         | 
         | Why would he want to do that, though?
        
         | petermcd wrote:
         | Staff SWE at a FAANG here.
         | 
         | Fabrice Bellard is not a 10x engineer, he is a 100x engineer.
         | You could attach him to a good people manager and either build
         | a team around him or allow him to work independently on a
         | project that he finds exciting that also aligns with company
         | goals.
        
           | rvnx wrote:
           | I think you are mixing up art, technical skills and
           | productivity.
           | 
           | Put Terry Davis (again him) as senior manager at Apple, and
           | see the result.
           | 
           | From my point of view, Terry has the same level and
           | approaches as Fabrice.
           | 
           | It does not guarantee at all that he is going to be more
           | productive than 100 engineers as you directly claim.
           | 
           | It makes them good in what they like to do (writing
           | obfuscated or low-level code, or implementing from scratch
           | from specifications) as art or creativity.
        
             | petermcd wrote:
             | Thank you for introducing me to Terry Davis. I'm going to
             | read more about him.
             | 
             | I am definitely not talking about art.
             | 
             | When I refer to 100x engineer, I'm referring to the
             | _impact_ that QEMU and FFmpeg have had on the world. I
             | would be surprised if anyone who is familiar with these two
             | projects would disagree that they have been highly
             | impactful.
        
               | rvnx wrote:
               | Absolutely agreeing with you. I rather meant that scaling
               | teams and being a great dev are not always going together
               | (the same way that startup folks are often not the same
               | type of people as managers in large companies), but in
               | terms of technical impact I totally agree.
               | 
               | EDIT: Fair enough, I think he would be very productive
               | due to useful contributions, at the end I agree with you.
        
           | zerr wrote:
           | I don't think he would pass FANG interviews or enjoy their
           | day-to-day grind. The whole point of such prolific
           | programmers is to code whenever you feel like, not by some
           | arbitrary deadlines. Not to mention the tolerance of office
           | politics in those orgs.
        
             | dustbunny wrote:
             | "wouldn't pass fang interviews"
             | 
             | Bellard wouldn't apply and be interviewed like some
             | Stanford grad. He would be head hunted and told he can do
             | whatever he wants and receive a massive amount of
             | compensation.
             | 
             | I'm not sure why you woulf assert he wouldn't pass the
             | interview that seems totally outrageous.
        
               | retinaros wrote:
               | yeah lol. the interview is braindump on leetcode and
               | sysdesign. two ways to pass it. do a lot of exercise/
               | learn the patterns or be an excellent programmer. there
               | is 0 doubt he would have a full HIRE loop
        
               | zerr wrote:
               | The thing is, being an excellent programmer has nothing
               | to do with leetcode and sysdesign (which is actually a
               | back-end CRUD systems) questionnaire.
        
         | tommy92 wrote:
         | Lots of negative stereotypical assumption there. If you have
         | some source backing all this, share your claims otherwise
         | personal attacks without any serious base isn't a good
         | reflection.
        
           | checker659 wrote:
           | The amusing part is the implication that communication skills
           | can't be learned, even by someone who's worked alone their
           | whole career, if it came to that (*especially* by someone of
           | Fabrice Bellard's calibre). Gatekeeping much?
        
         | rramadass wrote:
         | > I doubt he could fit the role of senior/staff/principal
         | engineer in any one-level-below faang kind of company.
         | 
         | Why would you even think that these sort of exceptional people
         | would even be interested in _mere jobs_?
         | 
         | These are people who are _solo auteurs_ ; something in them
         | feels a need to _express themselves_ in full creativity without
         | restraint in any domain they choose to focus on. That is what
         | makes them unique because they are the few who can change
         | Science into Art and make it seem effortless. The common man
         | calls them  "Geniuses" but it is actually a way of living,
         | thinking and training.
         | 
         | Much of Society's institutions, companies, jobs etc. is
         | designed to get the most out of the _average person_ which does
         | not work for _creative individuals_. To measure the latter
         | using the yardstick for average is foolish in the extreme. This
         | is why true Scientists /Researchers/Artists etc. need to be
         | treated very differently from the "common" man.
         | 
         | For all the hoopla about Corporations/Companies/Groups/Teams
         | etc. in the modern world, all our civilizational breakthroughs
         | have emerged from a single individual or a small group of
         | individuals.
        
         | zero0529 wrote:
         | A Fox one day spied a beautiful bunch of ripe grapes hanging
         | from a vine trained along the branches of a tree. The grapes
         | seemed ready to burst with juice, and the Fox's mouth watered
         | as he gazed longingly at them.
         | 
         | The bunch hung from a high branch, and the Fox had to jump for
         | it. The first time he jumped he missed it by a long way. So he
         | walked off a short distance and took a running leap at it, only
         | to fall short once more. Again and again he tried, but in vain.
         | 
         | Now he sat down and looked at the grapes in disgust. "What a
         | fool I am," he said. "Here I am wearing myself out to get a
         | bunch of sour grapes that are not worth gaping for." And off he
         | walked very, very scornfully.
         | 
         | - https://read.gov/aesop/005.html
        
       | poidos wrote:
       | Publishing ffmpeg and QEMU in a five year span that also included
       | winning IOCCC (twice!) is absolutely bonkers.
        
       | brcmthrowaway wrote:
       | Do we think Bellard got rich, like antirez?
        
       | shevy-java wrote:
       | With his recent release of MicroQuickJS, and also prior work, he
       | kind of has to do epic things. People expect that of him.
        
       | justapassenger wrote:
       | He's one of the GOATs, but this article is written by someone who
       | has no idea about software engineering and full of exaggerations
       | as a result. For example:
       | 
       | > Many times there are certain chunks which will occur many times
       | in the code of a program. Instead of taking the time to translate
       | them all separately, QEMU stores the chunks and their native
       | translation, next time simply executing the native translation
       | instead of doing translation a second time. Thus, Bellard
       | invented the first processor emulator that could achieve near
       | native performance in certain instances.
       | 
       | JIT is about as old as Fabrice, or even older depending on what
       | you consider a modern JIT.
        
         | bayindirh wrote:
         | Moreover, Transmeta did this for their actual processor back in
         | the day. Transmeta's version even did it in multipass, fusing
         | more and more instructions as they appear more, getting faster
         | as the system is used more, up to a certain point of course.
         | 
         | This doesn't make Fabrice a lesser man, but truth is truth.
        
         | isopede wrote:
         | Yeah, afaik arhitecture dynamic binary translation dates back
         | to at least 1998 (VMware).
         | 
         | If you leave out the JIT part, binary translation dates back to
         | at least 1966 (Honeywell).
         | 
         | Still one of the GOATs, agree.
        
           | ZX8301 wrote:
           | Claims of 'firsts' undermine the authority of this document,
           | though not the achievements of the subject.
           | 
           | For instance Marco Ternelli's dynamic binary translator ZM/HT
           | dates back to 1993, when it was published by Ergon
           | Development. It translates Z80 to 68000 machine code on the
           | fly and was a successful commercial product. I'd be
           | interested to hear of earlier JIT binary to binary
           | implementations, especially others which coped with self-
           | modifying code, without which ZM/HT wouldn't have been very
           | useful.
           | 
           | Self-unpacking executables are at least a decade older, and
           | Fabrice quite likely had Microsoft's 1985 EXEPACK, written by
           | Reuben Borman, on his computer when he came up with LZEXE.
           | That was bundled with MASM and Microsoft C 3.0, their first
           | in-house version. Both were preceded by Realia's Spacemaker
           | product, which Wikipedia says was written by Robert B. K.
           | Dewar in 1982.
        
           | seg_lol wrote:
           | Thanks for the reference to
           | https://en.wikipedia.org/wiki/Honeywell_200 apparently its
           | claim to fame was it could run IBM 1401 programs faster than
           | a 1401 for less money.
           | 
           | > Compatibility with the IBM/1400 Series has, of course, been
           | a key factor in the success of the Series 200. The principal
           | software components in Honeywell's "Liberator" approach are
           | the Easytran translators, which convert Autocoder source
           | programs written for the IBM machines into Easycoder source
           | programs which can be assembled and run on Series 200/2000
           | systems, usually with little or no need for manual
           | alterations. The Easytran routines have effectively overcome
           | the minor differences between the instruction sets and
           | assembly languages of the two systems in literally hundreds
           | of installations.
           | 
           | from https://bitsavers.org/pdf/honeywell/datapro/70C-480-01_7
           | 404_...
           | 
           | https://cdnibm1401.azureedge.net/1401-Competition.html
           | 
           | It appears that Honeywell Liberator was a program to convert
           | 1401 assembly to Easycoder, the Honeywell 200 assembly
           | format.
        
         | bonzini wrote:
         | The actual innovation in QEMU was that the architecture-
         | dependent part was much smaller than a full JIT compiler,
         | because it used the C compiler to build small blocks and parsed
         | ELF relocations to be able to move them into the translated
         | code.
         | 
         | This technique has since been dropped by QEMU, but something
         | similar is now used by the Python JIT. These days QEMU uses
         | Tiny Code Generator, originally forked out of TCC though by now
         | the source is probably unrecognizable except in the function
         | names.
        
         | evntdrvn wrote:
         | Umm one of the authors, Andy Gocke, is the lead for the .NET
         | runtime... https://github.com/agocke
        
       | mdavid626 wrote:
       | Is Fabrice Bellard on HN?
        
       | wazoox wrote:
       | Back in 2004 I started using qemu to replace Bochs in my
       | development, it was a huge help. My colleague sent an email to
       | Fabrice to thank him and he replied very amicably. The guy is not
       | only supremely competent, but absolutely unpretentious, nice and
       | friendly.
        
       | kryptonomist wrote:
       | So, LZEXE was written on an Amstrad PC1512 (of course in 8086
       | assembly).
        
       | PaulDavisThe1st wrote:
       | (reposting from the MicroQuickJS thread if only because it seems
       | more relevant here)
       | 
       | Always interesting when people as talented as Bellard manage to
       | (apparently) never write a "full-on" GUI-fronted application, or
       | more specifically, a program that sits between a user with
       | constantly shifting goals and workflows and a "core" that can get
       | the job done.
       | 
       | I would not want to dismiss or diminish by any amount the
       | incredible work he has done. It's just interesting to me that the
       | problems he appears to pick generally take the form of "user sets
       | up the parameters, the program runs to completion".
        
         | never_inline wrote:
         | That way leaving employment for lesser ones among us
        
         | lioeters wrote:
         | Apparently GUI frontend is not a subject or problem that
         | interests him. He lives and thinks close to the metal, at a
         | lower layer of abstraction. The software he writes for himself
         | and others in that ecological milieu, people who would take his
         | codebase as an embedded library, command-line tool, or wrap it
         | with an abstraction and user interface for their particular
         | purpose, like browsers did with FFmpeg.
         | 
         | He has his favorite niche intellectual and technical subjects,
         | where all his big and small projects are explorations of that
         | space from various angles. It's a lesser concern whether the
         | result has business value, or wider public appeal. He's more of
         | a researcher and scientist.
        
           | PaulDavisThe1st wrote:
           | > Apparently GUI frontend is not a subject or problem that
           | interests him. He lives and thinks close to the metal, at a
           | lower layer of abstraction.
           | 
           | It's not that cut and dried. The application I work on has
           | some notable chunks of assembly code, lots of tricky
           | multithreaded realtime lock free code involving threads,
           | atomics, RCU and more ... and ... a GUI that lets the user
           | continuously interact with it.
           | 
           | Oh, and we use ffmpeg for video decoding/encoding :)
        
         | heresie-dabord wrote:
         | > when people as talented as Bellard manage to (apparently)
         | never write a "full-on" GUI-fronted application
         | 
         | The "full-on GUI-fronted application" is two different
         | problems.
         | 
         | PROBLEM_A = create a minimal interface (arguments to
         | application) and focus on making robust logic that is fit for
         | use and purpose.
         | 
         | PROBLEM_B = make users who resist/object to a minimal interface
         | happy by satisfying an unbounded set of requirements involving
         | a changing stack of tools and OS dependencies.
         | 
         | The latter effort can expand to consume the time and energy of
         | entire teams of people.
        
           | PaulDavisThe1st wrote:
           | Actually, this is missing my point quite a bit. The
           | difference is not the minimal/non-minimal interface.
           | 
           | One can easily imagine (and I think they even exist) GUI
           | front ends for ffmpeg that let a user set up a conversion
           | "more easily" than they might find it using the command line.
           | Bellard has chosen not to do this (lots of entirely fine
           | reasons), _but even if you use such a GUI front end_ the use
           | of ffmpeg still consists of  "set the parameters and let the
           | program run". At some point after clicking "Run" (or whatever
           | the button says), then just like after press "Return", the
           | ffmpeg process will have completed its work, and that
           | particular user interaction is over.
           | 
           | By contrast, a video and/or audio _editor_ is really an
           | entirely different beast, in which the user is continually
           | adjusting any and all parameters and states of the project,
           | expecting undo /redo histories, and so on and so forth. There
           | is essentially no "completion state" for the application to
           | reach.
           | 
           | I'm just curious that Bellard seems never to have tackled
           | this kind of application (as is absolutely his right to do,
           | or not do). I'm curious because it creates an entirely
           | different class of programming problems from the "set-and-
           | run" type of application (though they also obviously overlap
           | in many important areas).
        
             | heresie-dabord wrote:
             | > a video and/or audio editor is really an entirely
             | different beast, in which the user is continually adjusting
             | any and all parameters and states of the project, expecting
             | undo/redo histories, and so on and so forth.
             | 
             | If you accept that there is some similarity to game
             | development or a real piloting system for an aircraft,
             | these complex adjustments would be split among components
             | to be developed and tested separately and then
             | _integrated_.
        
             | senderista wrote:
             | Could you just call these "interactive programs"?
        
       | jlundberg wrote:
       | Bellard is such an inspiring programmer! A few of my favorites
       | out of his works are:
       | 
       | - qemu user mode
       | 
       | - tcc
       | 
       | - ts_zip
        
       ___________________________________________________________________
       (page generated 2025-12-25 23:01 UTC)