HN user

erling

41 karma
Posts0
Comments12
View on HN
No posts found.

Totally down with the potential conflict of interest or implications of GitHub, but it’s not GitHub specifically that’s zealous about DMCA. Any server and any host of that server is going to be subject to it. The only appeal of a smaller or private server is less visibility, but legally it’s the same. DMCA isn’t going anywhere.

IMO Apple has really lost its way in terms of genuinely good UX. The UI might be “pretty” but in terms of actual usability it’s gotten just frustrating at this point. The amount of complexity they require from their users now, memorizing swipe gestures, complex keyboard shortcuts, and strange incarnations is just sad. Good design is simple!

I understand the natural frustrations articulated here, especially given OP’s experience working with files, but it seems to dismiss what is actually a core strength of current operating systems: they work. Given a program supporting 16 bit address spaces from the 1970s, you can load it into a modern x86 OS today and it works. This is an incredible feat and one that deserves a lot more recognition than offered here! Throughout an exponential explosion of complexity in computing systems since the 70s, every rational effort has been made to preserve compatibility.

The system outlined here seems to purposefully avoid it! Some sort of ACID compliant database analogy to a filesystem sounds nice until 20 years down the line when ACIDXYZABC2.4 is released and you have to bend over backwards to remain compatible. Or until Windows has a bug in their OS-native YAML parser (as suggested here) so now your program doesn’t work on Windows until they patch it. But when they do, oh no you can’t just tell your users to download a new binary. Now they have to upgrade their whole OS! Absolute chaos. And if you’re betting on the longevity of YAML/JSON over binary data, well just look at XML.

Have you looked into Erlang/the BEAM VM? It provides many of these same benefits.

This is cheaper than any other hosting solution in the cloud if you want the same level of stability and isolation.

Erlang provides total process isolation and can theoretically also run on only a single machine.

It's even cheaper when you need something like a Redis cache. If my cache goes down and the container needs to be spun up again then it's not a big issue, so for cheap projects I can even save more cost by running some infra like a Redis instance as a container too. Nothing beats that.

In Erlang, each process keeps its own state without a single point of failure (ie a single Redis instance) and can be restarted on failure by the VM.

Kubernetes takes care of itself. A container crashes? Kubes will bring it up.

Erlang VM takes care of itself. A process crashes? The VM will bring it up.

Do I want to roll out a new version? Kubes will do a rolling update on its own.

Ditto for Erlang VM, with zero-time deployments with hot code reloading.

I just click ok and everything happens automatically with zero downtime.

Erlang is famous for its fault tolerance and nine nines of downtime! And it’s been doing so for quite a bit longer than K8s.