Init 1
Articles & posts
Some reading links I found enlightening or interesting in some ways, spanning from generic computer science topics to more specific tutorials/consideration thoughts. Hardly ever updated.
General computer science
- Crafting Interpreters
- One Billion Rows Challenge in Golang
- No, dynamic type systems are not inherently more open
- Parse, don’t validate
- Climbing the infinite ladder of abstraction
- Questions I’m asking in interviews
- Choosing a programming language
- The organized chaos of programming language design
- Transactional Memory and Tech Hype Waves
- Defining a Distinguished Engineer
- Understanding an outage: concurrency control & vacuuming in PostgreSQL
Go best practices
- The Go type system for newcomers
- Go style packages
- How goroutines work
- Go - Graceful shutdown of worker goroutines
System programming
- Home-grown bytecode interpreters
- A Database Without Dynamic Memory Allocation
- Writing system software: code comments
- Adventures in message queues
- The method to epoll’s madness
- Epoll is fundamentally broken - part 1
- Epoll is fundamentally broken - part 2
- Beej’s Guide to Network Programming
- Concurrent programming, with examples
- Concurrent Servers series
Distributed systems
- Building a Distributed Log From Scratch
- My favorite algorithm (and data structure): HyperLogLog
- Building petabyte-scale analytics with BigQuery and HLL
- From Data-Swamp to Data-Lake on AWS (Part 1)
- From Data-Swamp to Data-Lake on AWS (Part 2)
- In Search of an Understandable Consensus Algorithm
- The Log: What every software engineer should know about real-time data’s unifying abstraction
- What do you mean by “Event-Driven”?
- From $erverless to Elixir