The Learning Loop and LLMs
An engineer argues that software development is a learning process, not an assembly line, and explains how to use LLMs as brainstorming partners.
An engineer argues that software development is a learning process, not an assembly line, and explains how to use LLMs as brainstorming partners.
An introduction to NATS, an open-source technology for connecting applications and microservices over a network.
An analysis of different ID types in distributed systems, comparing transparent vs. opaque identifiers and their tradeoffs.
Demystifying eventual consistency in DynamoDB, explaining its trade-offs and how to handle it effectively in applications.
A guide to understanding the CAP theorem in distributed systems, explaining when it applies and its implications for consistency and availability.
Explores the three different meanings of 'consistency' in databases: from the CAP Theorem, ACID properties, and database consistency models.
An analysis of Twitter's most severe cache-related incidents from 2012-2022, exploring patterns and knowledge loss.
A discussion of common pitfalls in measuring tail latency metrics in distributed systems, using examples from Twitter's infrastructure.
The author argues that measurement and data analysis are undervalued but high-ROI activities, using the impact of Jepsen tests as a key example.
A developer explains why they stopped using microservices for their solo side-projects, citing the complexity for a single person.
Argues that the PIE theorem (Pattern Flexibility, Efficiency, Infinite Scale) is more practical for database selection than the popular CAP theorem.
An analysis of concurrency bugs, their prevalence, and the disproportionate debugging time they consume, citing academic studies.
A curated list of insightful programming blogs covering topics like JVM internals, performance, ML, engineering culture, and computer architecture.
Explains why desktop apps corrupt files and the technical challenges of ensuring crash consistency when saving data.
Analysis of how 'limping' or slow hardware nodes can severely degrade distributed system performance, based on academic research.
An analysis of common patterns in technical postmortems, focusing on error handling and configuration as primary causes of system failures.
A 2010 debate on whether a single closed platform like Facebook would inevitably dominate social networks, or if a distributed model was possible.