Notes on how we potentially could build reliable, scalable and maintainable computer systems.
Makefile
322
66 commits
updated Sep 21, 2025
How do we build reliable, scalable and maintainable computer systems?
This repository contains notes on how, I think, we can improve on the state of development, documentation, testing, deployment, observability, debugging, and upgrading of distributed systems. Most of the ideas are stolen from others, many from Erlang and Joe Armstrong. Over time I hope to turn this into a more coherent text, for now think of it a crude blog or some basic scaffolding for me to hang my thoughts on.
If any of this interests you as well, please do get in touch -- one of the reasons I'm writing this down is to find people to collaborate with.
Erlang's not about lightweight processes and message passing...
Implementing gen_event using the LMAX disruptor
Persisted/mmapped lock-free concurrent data structures
Joe's idea of "the bigger picture" in particular the "research" part, not just the end result (code) but how you got to the result.
Usage model or operational profile
Performance testing
Load/soak testing
Hot-code swapping à la Erlang with Arrow-based state
machines
smarrow-lang an experimental
programming language where programs are state machines expressed in arrow
notation to allow easy hot-code swapping
Version everything
Makefile
100.0%
Notes on how we potentially could build reliable, scalable and maintainable computer systems.
Makefile
322
66 commits
updated Sep 21, 2025
How do we build reliable, scalable and maintainable computer systems?
This repository contains notes on how, I think, we can improve on the state of development, documentation, testing, deployment, observability, debugging, and upgrading of distributed systems. Most of the ideas are stolen from others, many from Erlang and Joe Armstrong. Over time I hope to turn this into a more coherent text, for now think of it a crude blog or some basic scaffolding for me to hang my thoughts on.
If any of this interests you as well, please do get in touch -- one of the reasons I'm writing this down is to find people to collaborate with.
Erlang's not about lightweight processes and message passing...
Implementing gen_event using the LMAX disruptor
Persisted/mmapped lock-free concurrent data structures
Joe's idea of "the bigger picture" in particular the "research" part, not just the end result (code) but how you got to the result.
Usage model or operational profile
Performance testing
Load/soak testing
Hot-code swapping à la Erlang with Arrow-based state
machines
smarrow-lang an experimental
programming language where programs are state machines expressed in arrow
notation to allow easy hot-code swapping
Version everything
Makefile
100.0%