System Design

When Imperfect Systems are Good, Actually: Bluesky’s Lossy Timelines

Bluesky implemented a 'Lossy Timelines' system to improve performance by intentionally dropping some timeline updates for users who follow many accounts. This solution reduced fanout latency by 96% and eliminated hot shard issues in their database clusters. The approach demonstrates how embracing imperfection in system design can lead to better scalability and performance.

Siren Call of SQLite on the Server

An analysis of using SQLite in server-side production environments reveals that while technically capable, it introduces unnecessary complexity compared to traditional client-server databases. Despite SQLite's reliability and performance, implementing features like high availability and backups requires additional infrastructure, potentially negating its main benefits.

Best Simple System for Now

A balanced approach to software development, called 'Best Simple System for Now' (BSSN), advocates building the simplest possible solution that meets current needs while maintaining high code quality. The philosophy emphasizes writing code that is neither over-engineered nor under-developed, focusing on immediate requirements rather than speculative future needs. BSSN promotes evolutionary design through disciplined habits, courage, and humility, enabling faster delivery while maintaining code quality.