Bootstrapping from Hex to Bison to GCC
Published in 2021, this chronicle by @z29LiTp5qUC30n details the mechanics of building a profitable, self-funded business without venture backing.
Core Principles for Independent Builders:
Charging customers from day one acts as the ultimate filter for building software that solves genuine, high-urgency problems.
Keeping fixed overhead low and leveraging lean infrastructure allows founders to stay alive until market tailwinds kick in.
Small, repetitive improvements in customer retention and conversion rates yield massive returns over multi-year horizons.
Community Debate Themes:
The community focused on B2B customer acquisition channels, cold email vs SEO distribution, and balancing full-time employment with side-project development.
CATEGORY Bootstrapping & MRR →
HISTORICAL ERA Pandemic Bubble (2020–2022)
COMMUNITY SCORE ★ 103 points
TOTAL DISCUSSIONS 19 comments
See this doc for how the full process works: https://github.com/fosslinux/live-bootstrap/blob/master/parts.rst
In particular, this the very first step: https://github.com/oriansj/stage0-posix/blob/master/x86/hex0_x86.hex0 (or its hand-edited binary version ?)
Edit: this how it's "assembled":
``` sed 's/[;#].*$//g' $input_file | xxd -r -p > $output_file
``` See: https://github.com/oriansj/bootstrap-seeds/blob/master/README.md
I wonder if Brainfuck could be used for https://github.com/oriansj/stage0-posix ? It would not surprise me if there is no other language for which there are so many interpreters written in so many different programming languages. It is even possible to write a Brainfuck interpreter in Brainfuck, which can be verified. And there is also a Brainfuck interpreter written in x86-64: https://github.com/316k/brainfuck-x86-64 . It is a little larger than hex0_x86.hex0 , but not too much to make it hard to verify.
This is cool as heck. Outside of architectural attacks, this seems like a practical response to Reflections on Trusting Trust (http://users.ece.cmu.edu/~ganger/712.fall02/papers/p761-thompson.pdf).
While we can definitely discuss whether it's practical for anyone to actually audit all that source code (no it is not), proving a 356 bytes codestream isn't malicious seems like a good foundation to argue about.
Nice work Fossy and co.
I believe this is this is the dependency chain your live-bootstrap works through: https://github.com/oriansj/talk-notes/raw/master/live-bootstrap.pdf
See also blynn-compiler[0], made by the same contributors, that bootstrap a Haskell compiler from C (which in term is bootstrapped from hex).
[0] https://github.com/oriansj/blynn-compiler