From: June Gardner Date: Tue, 18 Nov 2025 19:54:52 +0000 (-0800) Subject: Added Bootstraps. X-Git-Url: https://where.june.codes/?a=commitdiff_plain;h=d03c315d27f398764fb9339436999af250655f05;p=june.codes Added Bootstraps. --- diff --git a/docs/log/2025/11/18/index.md b/docs/log/2025/11/18/index.md new file mode 100644 index 0000000..3867d45 --- /dev/null +++ b/docs/log/2025/11/18/index.md @@ -0,0 +1,25 @@ +--- +title: "Bootstraps" +authors: + - June Gardner +--- + +I don't believe in bootstrappable systems, at least as they are commonly defined. + +"This technology can be brought up from nothing via some series of steps that may or may not include precompiled artifacts." + +That's the common (in my eyes) definition: bringing up a system from some prerequisites. You'll either have some binary blob (with or without source), or you're left to flip some bits yourself via front panel I/O. + +In my mind, a bootstrappable system is something that can be *understood from nothing* (or at least, some common base). That someone could walk in, fresh, knowing some set of concepts, and be *assured* that they can understand the system. + +That's pretty common, right? There's a common "dependency tree" of concepts that everyone kind of takes for granted when they work on a project or in a field. But I don't think many of us have an eye on what that dependency tree (in many cases, it's really a cyclic dependency graph) is. + +How much do I have to understand to work on Firefox? What about LibreOffice? How about Mastodon? Ruby? LLVM? tinyc? Someone's Forth project? A BASIC game written for the BBC Micro? + +When the abstractions were thin, and the hardware was "weak" (giant airquotes here), the dependency tree of concepts was quite small. Even if you wanted to mess with writing assembly, or even machine code. This is why retrocomputing and small platforms have the appeal that they do. + +I have not seen these dependency trees shrink without sacrifice. I have not seen the cognitive load lessen, only become more obscure. I am tired of looking around and seeing invisible skyscrapers. + +I want a bootstrappable system so I can use it when I am exhausted, when I forget, when life calls me away, I can rebuild my understanding without thinking too hard. I want to be able to understand it all at my weakest, and yet feel I still have control. + +Anything less, I won't be satisfied.