Home

software

img of Crafting Interpreters
1 min read
Book recommendations

Despite using them every day, most software engineers know little about how programming languages are designed and implemented. This book teaches you everything you need to know to implement a full-featured, efficient scripting language. You'll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection. Your brain will light up with new ideas, and your hands will get dirty and calloused

img of Understanding Distributed Systems - Roberto Vitillo
1 min read
Book recommendations

Learning to build distributed systems is hard, especially if they are large scale. It's not that there is a lack of information out there. You can find academic papers, engineering blogs, and even books on the subject. The problem is that the available information is spread out all over the place, and if you were to put it on a spectrum from theory to practice, you would find a lot of material at the two ends, but not much in the middle.