Weekly Tech Notes #9: Embrace chaos
This week I stumbled upon a video about a guy building a 32-bit CPU running inside the game Terraria. It’s a fun watch! 😄
On the reading side, we will mainly explore the world of Chaos Engineering, followed by a visual explanation of exponential backoff and a simple but effective introduction to Functional Programming.
- The five modes of chaos engineering experimentation – Chaos Engineering is a discipline that aims to improve the resilience of distributed systems by introducing controlled experiments that simulate real-world failures. Adrian Hornsby explains five different chaos modes, from a simple ad-hoc experiment to continuous experimentation.
- Best practices for a successful chaos engineering journey – Following up on the previous article, Adrian Hornsby shares some best practices you should take into account when starting a Chaos Engineering journey.
- Chaos Engineering — How to safely inject failure in your application? – And to answer the question in the title, canary deployment pattern seems the safest way to go.
- Exponential Backoff And Jitter – Exponential backoff and Jitter are well-known techniques to mitigate the impact of failures in distributed systems. This article gives a visual explanation of their benefits.
- What’s Functional Programming All About? – Before diving into more in-depth topics (e.g., referential transparency, monads and more), you should read Li Haoyi’s take on FP. The core idea of Functional Programming is thinking about data flow rather than control flow.
Have fun! 🚀