7 ms·
This is super cool but what's interesting is that this same kind of bootstrapping problem exists for hardware as well. What makes computers? Previously built co
by prologist11 2y ago
This is super cool but what's interesting is that this same kind of bootstrapping problem exists for hardware as well. What makes computers? Previously built computers and software running on them. The whole thing is really interesting to think about.
- durumu 2y agoWhich came first, the computers or the code?
- hughesjj 2y agoCode, unless you count the abacus etc
- sim7c00 2y agoi heard the first assembler was written in machine code, then that was used to create compiler. machine code u can just chuck into the cpu. its a little less trivial than assembly because its harder to remember but if u know assembly u can learn it easy enough :>. i dont feel this is an unrealistic path sk i chose to beleive it without any evidence :D
- nine_k 2y ago(The code, of course; the code drove music boxes and looms centuries before computers. Same for chicken and egg: eggs are maybe a billion years older.)
- 867-5309 2y agoso..the code drove computers
- codetrotter 2y agoCorrect. And the chicken was written in COBOL.
- ed_elliott_asc 2y agoSo that is how it crossed the road
- AnimalMuppet 2y agoNo. It was running on a mainframe. It was JCL that let it cross the road.
- saghm 2y agoProbably off-topic, but the chicken and the egg "paradox" always seemed silly to me in the context of evolution. We know that there were birds long before chickens, so at some point, the first bird that we would consider to be in the species "chicken" had to hatch from an egg from a bird that was _not_ a chicken, so the egg came first. (This assumes that the question is specifically about chicken eggs; it's even simpler if you count non-chicken eggs from the ancestors of the first chicken, but the logic still works even if you don't).
- 867-5309 2y agothe chicken is just an example of an egg-laying and -borne animal. substitute it with the first
- OJFord 2y agoI think that changes the answer by GP's logic though, since then the first egg-layer obviously came before its egg.
- OJFord 2y agoOr to take it another direction - how do they gestate? At what point can we call it a chicken and when does the shell (assuming that's what would make us call it an egg) develop?
- wongarsu 2y agoAda Lovelace is often credited as the first computer programmer. She died in the late 1800s. Programmable electronic computers didn't come along until the mid 1900s. Though it obviously depends a bit on what you are willing to count as computer, or as code.
- hackermailman 2y agoWe all know why the Lovelace myth still persists http://projects.exeter.ac.uk/babbage/ada.html http://projects.exeter.ac.uk/babbage/ada.html "It is often suggested that Ada was the world's first programmer. This is nonsense: Babbage was, if programmer is the right term. After Babbage came a mathematical assistant of his, Babbage's eldest son, Herschel, and possibly Babbage's two younger sons. Ada was probably the fourth, fifth or six person to write the programmes. Moreover all she did was rework some calculations Babbage had carried out years earlier. Ada's calculations were student exercises. Ada Lovelace figures in the history of the Calculating Engines as Babbage's interpretress"
- consteval 2y agoCan't we let women have this one thing? Like... just this one thing? It's fine. Who knows, a lot of time has passed and I'm sure there's many people who "programmed" and never told anyone. It's fine, let Ada have this. It's dead anyway and we clearly don't have nearly enough women in Computer Science so we can let this one go. We already have 99% of all stuff, we shouldn't get greedy.
- stevefan1999 2y agoIt has to be the code, since those are the information/ideas that you've written on any kind of medium such as on a whiteboard or on a paper, or better known as "algorithms". Also keep in mind with the use of "computer" -- in the past real humans, and in paricular a huge batch, are hired to compute log and sine lookup tables on hand. Earliest case of human SIMD by the way, and some would even take to break encryption by breaking and reversing code boxes, hence they are called "computers", and I reckon many of them being females.
- akira2501 2y agoThen you look at the assembly for the old Cray-1 computers (octal opcodes) and the IBM System/360 computers (word opcodes), and you realize, they made it so amazingly simple you can mostly just write the opcode bytes and assemble by hand if you like. Then x86 came along, without the giant budgets or the big purchasers, and so they made that assembly as efficient and densely packed as is possible; unfortunately, you lose what you might otherwise conveniently have on other machines.
- bluGill 2y agox86 is the same if you stick to the origional 4bit subset. However it has been extended so many times that you can't find the nice parts.
- ScottBurson 2y agoI've read somewhere that Seymour Cray used to write his entire operating system in absolute octal. ("Absolute" means no relocation; all memory accesses and jumps must be hand-targeted to the correct address, as they would have to be with no assembler involved.)
- sekuntul 2y ago[dead]
- ekimekim 2y agoThis is one of the coolest things about these kinds of bootstrapping projects + reproducible builds IMO. One could imagine creating an incredibly simple computer directly out of discrete components. It would be big, inefficient and slow as molasses, but it could in theory conform to instruction set architecture, and you could use it to build these bootstrap programs, and you could then assert that you get the same result on your fully-understood bad computer as you get on not-fully-trusted modern hardware.
- sour-taste 2y agoI used to work at a company that built data centers. They were trying to get their software to appoint that you could turn up an entire data center from a laptop. Why? So that you could work with European companies and prove to regulators that there were no backdoors. It was a fascinating problem but very difficult. My team was only tangentially involved but we did some work to forward our data to a proxy that ensured that all our data was auditable and not sending stuff it shouldn't. I left before it finished but I heard it was scrapped as too difficult.
- technofiend 2y agoAnecdotally I've used software that was capable of it if your hardware could be netbooted, preferably with pxe/ipxe. I used rackn and there's other vendors like maas with purportedly the same abilities. RackN is good enough it'll let you build virtualization on top of bare metal and then keep going up the stack: building VMs, kubernetes, whatever. You just set up rules for pools, turn on dhcp and let auto discovered equipment take on roles based on the rules you set. Easy to do although I wouldn't envy anyone building a competitor from scratch.
- justahuman74 2y agoThere's a few prerequisites that make this all very realistic if the time is put in * An LTE remote access box connected to a few switches management ports so you can configure the switches yourself * Ensuring that the vendors pre-cable the racks and provide port-mapping data * Ensuring that the vendors set the machines to PXE boot * Ensuring the vendors double-check the list of MAC addresses of the HW provided for both in-band and oob
- qu1j0t3 2y agoThis is something like what Oxide Computer is trying to do, but of course you have to use their hardware to benefit. https://oxide.computer/blog/the-cloud-computer https://oxide.computer/blog/the-cloud-computer
- massysett 2y agoInteresting to think about even at a human civilization level. What if humans somehow went back to the Stone Age, but in present day. Could we build back to what we have now? Kind of a bootstrapping problem. For example, current oil reserves are harder to get than they were a century ago. Could we bootstrap our way into getting them?
- adrianN 2y agoWould we want to build the same stuff again? Why bootstrap to oil if you can directly go for renewable alternatives?
- massysett 2y agoBut we used simpler forms like oil to bootstrap renewables. For instance, making solar panels takes lots of energy. Would it be possible to go straight to renewables?
- bluGill 2y agoWind power existed for hundreds of years before we started drilling for oil. I doubt you can make useful solar cells, but you can make useful windmills, rechargeable batteries, light bulbs (incandescent), and motors. However just the above list needs a large list of industry to pull off. Can you make a wire? What about a ball bearing - they are made by the millions of insane levels of precision and are cheap. All those little details are why you can't pull it off. Sure if given all the parts you can pull off the next step, but there are so many steps you can't do it.
- zamubafoo 2y agoI've thought a lot about these problems and you eventually hit the need for stronger than natural magnets. Without electricity it's a hard challenge, but without magnets creating electricity in a simple bench scale is a lot harder. I ended up thinking that you'd need to do a chemical battery to bootstrap electricity and then with electricity generate the electromagnet to create stronger magnets and then iterate from there. Your next stumbling block from there would be optics as everything else can be made with horrible tolerances. Even lathes and similar machinery can be made with pretty good tolerances without optics. But when you start needing time keeping or miniaturizing components for improved efficiencies, it becomes a blocking issue. You also need to discover photo-reactive elements to do lithography, but that's a lot easier since it's just silver nitrate and you'd already have the components when you are working towards the initiate bootstrap battery.
- grishka 2y agoLithography masks for early integrated circuits were drawn by hand iirc.
- jasomill 2y agoNot just ICs, microprocessors: https://en.wikipedia.org/wiki/Rubylith https://en.wikipedia.org/wiki/Rubylith
- grishka 2y ago> Certain digital image editing programs that have masking features may use a red overlay to designate masked areas, mimicking the use of actual Rubylith film. Oh so that's why masking mode in Photoshop is a red overlay?! TIL.
- quuxplusone 2y agoThe same bootstrapping problem exists for everything. What makes roads? Construction equipment. How do you get that construction equipment to the job site, without a road already being there? I actually met a person a few months ago who worked for a startup doing delivery/fulfillment of materials for construction projects. They pointed out that this requires special expertise beyond, say, Amazon, not only because these materials tend to have unusual and/or dangerous physical properties, but also because the delivery addresses tend to be... well, they tend not to have addresses yet! This is all solvable (apparently), but only with expertise beyond the usual for delivery companies in the modern age.
- fragmede 2y agofascinating! I suppose our normal modern systems aren't equipped to handle descriptive addresses - "take a right after the foo store and then go to the end of the road and give the equipment to the people at the end of the road so they can make more road"
- underbooter 2y agoAnd who makes people?
- dailykoder 2y agoStorks
- itishappy 2y agoCrass joke time! Little Timmy came into his parents room one afternoon and said "mommy, daddy, where do babies come from?" His parents were surprised, he's a little young for that, so that sat him down and explain gently "when two people love each other very much, sometimes, a stork flies in carrying a baby wrapped in blankets in it's bill, and it leaves the baby on the new parents doorstep!" Little Timmy scrunches up his face, confused, then asks "well then who fucks the stork?"