💾 Archived View for yujiri.xyz › software › ark.gmi captured on 2022-06-03 at 23:22:35. Gemini links have been rewritten to link to archived content
-=-=-=-=-=-=-
We need a Great Software Purge.
There are many good talks on this topic or on parts of it, but they're long:
The reckless, infinite scope of web browsers
The thirty million line problem
Preventing the collapse of civilization
In short, our software ecosystem is awful, and it's because we're building atop all existing layers of complexity, so we inherit all their weaknesses. Fixing software requires *removing* the layers of complexity atop which everything is built, starting from the lowest levels, because the problems begin at those levels.
This ultimately means abandoning most existing software and hardware. I'm assembling thoughts about what we're going to carry forward through this abandonment, and calling it the Ark.
I am no expert on hardware, but I understand a huge problem that the Ark has to solve is that almost all of our hardware and firmware is proprietary, including our processor architectures, x86 (used in most computers) and ARM (used in smartphones and recent Apple computers). **We need open hardware.**
I have my hopes set on RISC-V. I know it's not the only open processor architecture but I single it out because it seems to be gaining traction.
9front is the OS on which I stake my hope. It is not perfect, but it is the only one I've seen that truly casts off the chains of history in pursuit of a better base.
Redox also sounds good, but there are three main reasons why I feel more hopeful about 9front than Redox:
It isn't urgent, but C ultimately needs to be replaced. I think there are two candidates for this: Zig and Hare.
With great sadness I fear we must choose one, since their use cases seem identical. I am not near qualified to judge.
I like Rust a lot, but I am sadly doubtful about it:
Rust: "move fast and break things" as a moral imperative
I'm not a big fan of Go, but:
Python is a language I used to love, and still like more than other dynamic languages, however I feel it's "jumped the shark"; it is now being stuffed with inapproriate bloat, such as pattern matching (PEP 634), and has just always been a complex language.
A nice language to use, but:
https://git.sr.ht/~yujiri/didact
I don't see any other language as a potential participant in the Ark.