How can we make it easier to build reliable, scalable and maintainable computer systems?
This website is a collection of notes on how, I think, we can improve on the state of development, documentation, testing, deployment, observability, debugging, and upgrading of distributed systems.
Many of the ideas I write about on these topics are inspired by the work of Joe Armstrong (how to structure code to make it testable and reliable), Jim Gray (implicit parallelism via pipelining) and Barbara Liskov (the importance of programming language design to the spread of new ideas). Over time I hope to turn these notes into a more coherent text, for now I like to think of it as scaffolding for me to hang my thoughts on.
If you got comments, feedback, questions or would like to work with me, then feel free to get in touch via email.