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.
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.
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.
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.
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.
> 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.
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.
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]
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.
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.
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.
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.
> 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.
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.
> 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?
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.
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.
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.
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.
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.
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?
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.
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.
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.
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.
There is no need to wish me harm because I compared two people who had the same similar tech level and approach as art, rather than pursuing productivity as a first goal.
It was to show that "tech skills" != "tech lead skills" + "tech skills" != "productivity".
In fact, sometimes great devs can be counter-productive, as they tend to write code that they are the only one who can maintain (bus factor), or optimizations that turns out to be net negative when working as a team.
About the comparison, it may sound strange to you, but in practice it is difficult to find other examples of people who wrote their own compiler, put a huge amount of energy, just for the sake of writing a compiler.
Thinking about of the most well-known projects: Bellard's "Obfuscated Tiny C Compiler" (which then became TCC), it's not that crazy to compare it to the "HolyC compiler".
Now outside, in their private life, they are very different, and nobody doubts that.
Side-note: I actually like very much what Fabrice does.
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.
> 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.
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.
> 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.
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).
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.
>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
> 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.
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.
This doesn't make Fabrice a lesser man, but truth is truth.
If you leave out the JIT part, binary translation dates back to at least 1966 (Honeywell).
Still one of the GOATs, agree.
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.
> 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/
I'm aware :(
(I maintain one, one written by my Swedish friends, whom too were obsessed.)
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/
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.
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
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.
Real programming is 0.1% typing. Typing speed is not a limiting factor for any serious development.
Or it can review for any subtle bugs too. :)
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?
Absolutely. It's a very intriguing thought invoking the opposite of the point you're trying to make.
AI is the same, for example creating slop or virtual girlfriends.
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 magnétophone (tape recorder).
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)
https://www.amarisoft.com/
https://www.amarisoft.com/company/about-us
https://bellard.org/lte/
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.
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.
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.
I wish for you to one day have to face the same problems he did.
There is no need to wish me harm because I compared two people who had the same similar tech level and approach as art, rather than pursuing productivity as a first goal.
It was to show that "tech skills" != "tech lead skills" + "tech skills" != "productivity".
In fact, sometimes great devs can be counter-productive, as they tend to write code that they are the only one who can maintain (bus factor), or optimizations that turns out to be net negative when working as a team.
About the comparison, it may sound strange to you, but in practice it is difficult to find other examples of people who wrote their own compiler, put a huge amount of energy, just for the sake of writing a compiler.
Thinking about of the most well-known projects: Bellard's "Obfuscated Tiny C Compiler" (which then became TCC), it's not that crazy to compare it to the "HolyC compiler".
Now outside, in their private life, they are very different, and nobody doubts that.
Side-note: I actually like very much what Fabrice does.
“‘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.
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.
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.
Why would he want to do that, though?
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).
>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
https://news.ycombinator.com/newsguidelines.html