3 ms·
No, just realising the ones we have based on assumptions from the 70s don't match what we really want. My phone has an operating system that mostly pretends th
by lotyrin 11y ago
No, just realising the ones we have based on assumptions from the 70s don't match what we really want.
My phone has an operating system that mostly pretends that it's a mainframe. With just a little hardware, I could hook some circa 1978 VT100s up to it and a team of average *nix web backend developers could even be productive.
My "workstation" pretends to be several tens of machines doing all sorts of different things. These boundaries exist for no reason other than to map to organizational concerns -- my CPU does all kinds of computational gymnastics so I can "keep things tidy".
The model is just wrong. Things are immutable that shouldn't be. Things are mutable that shouldn't be. Things aren't distributed that should be. Things aren't durable that should be. Things are shared that shouldn't be. Things are isolated that shouldn't be. Config management, containers, orchestration, stuff like adding BPF to the kernel, Docker, Hadoop, Mesos -- all very cool, but all very much bandaids.
We're working on it but because we're human we can't go straight for the goalpost, we have to play politics, cheat by modeling the future using what we already have today and lead by example.
- macavity23 11y agoInteresting comment, but you're missing a critical reason we can't go straight for the goalpost - we don't know where it is! Yes, our computation architecture is sub-optimal for the situation we find ourselves in, but we only know that now because we're here, and these things take a long long time to make it from idea to usable hardware. Sooner or later computation will have been around for long enough that everything will settle on a common boring architecture (how much steam engine innovation has there been recently?) but until then we'll always be using the systems designed to solve the problems of 10-15 years ago. To paraphrase Rumsfeld, you don't build on the platform you want, you build on the platform you have.