Newsletters

What is Entropy?

April 20, 2025

In this issue, we explore entropy's multifaceted nature, advocate for shipping minimal software first, decode caching strategies, and demystify OTP systems. Plus, learn about IMAP basics and the quirky history of a symbol in IBM's Code Page 437.

Microsoft's original source code

April 13, 2025

In this issue, explore the origins of Microsoft’s original code by Bill Gates, discover the traits of top programmers, learn about Makefiles, and understand the impact of commitment in engineering discussions.

How to work in tech when your job isn't safe

April 06, 2025

In this issue, we explore strategies for tech resilience amid layoffs, dive into Apple Pay's secure transaction model, and uncover the impact of generative AI on software practices. Plus, don’t miss insights on software engineering laws and optimization techniques.

Vibe Coding vs Reality

March 30, 2025

In this issue, we explore the pitfalls of "Vibe Coding," the importance of effectively communicating your work, and innovative payment systems. Plus, check out a visual guide to key algorithms and a USB interface for Engelbart's keyset.

Distributed Locking: A Practical Guide

March 23, 2025

This issue features insights on distributed locking strategies, PostgreSQL best practices, advanced git commands, function length considerations, and a critique of a flawed commit message. Enhance your coding efficiency and practices.

What Makes Code Hard To Read

March 16, 2025

This issue dives into code readability, essential software architecture patterns for distributed systems, the importance of fixing flaky tests, and an exploration of Linux kernel fundamentals. Don't miss insights on IO device latency and more.

Bloom Filter: A Deep Dive

March 09, 2025

This issue explores powerful technical concepts, from Bloom filters and succinct data structures to Amazon S3's durability and the value of simple architectures. Plus, learn strategic frameworks for software engineering decisions.

How Core Git Developers Configure Git

March 02, 2025

This issue features insights on Git configurations from core developers, a deep dive into currying, the implications of network protocols, and a unique analysis of kebab quality near train stations. Enjoy the read.

A calculator app?

February 23, 2025

This issue explores the intricacies of software development with deep dives into the Android calculator app, LLM workflows, XOR operations, hash functions, and effective code review strategies. Join us for insightful reads.

The Quest to Understand Metric Movements

February 16, 2025

In this issue, explore root-cause analysis for metric changes, dive into Meta's hyperscale infrastructure, learn voice coding techniques, and discover essential habits for junior engineers. Plus, uncover modular monolithic architecture insights.

How are images stored?

February 09, 2025

In this issue, we delve into image storage, the impact of learning Assembly on coding skills, the efficiency of greedy algorithms, leap seconds in data centers, and developer philosophies for juniors. Explore these insights.

Serving a billion web requests with boring code

February 02, 2025

In this issue, explore the art of building reliable systems with "boring" tech, delve into idempotency strategies, discover a groundbreaking sorting algorithm, and learn about service reliability metrics. Don't miss it.

Mistakes You Have to Make Yourself

January 26, 2025

In this issue, explore the humorous yet enlightening mistakes every programmer must make, reclaim your role as a software engineer in the age of AI, and uncover software testing anti-patterns. Plus, dive into compression algorithms and the intricacies of concurrency.

Everything I Know About Shipping Code Faster

January 18, 2025

In this issue, explore strategies to boost coding efficiency, rethink A/B testing with the multi-armed bandit algorithm, and learn about the importance of effective software documentation. Plus, dive into fascinating software folklore and the nuances of cosine similarity.

Mistakes engineers make in large established codebases

January 12, 2025

In this issue, we delve into best practices for navigating large codebases, explore a major outage at Canva, and discuss the future of AI with intelligent agents. Plus, insights on coding with LLMs and defensive programming strategies.

Systems Ideas that Sound Good But Almost Never Work

January 05, 2025

Welcome back. This issue features five standout articles on systems design, Turing machines, debuggers, static search trees, and long-term software development practices. Dive in for insights that can elevate your coding game.

How concurrecy works: A visual guide

December 22, 2024

Hello. 🎉 In this final issue of 2024, explore concurrency visualization, Ada Lovelace's groundbreaking program, strategies for migrating complex systems, terminal program rules, and a look at IBM's executive war room. Enjoy your break.

Writing down and searching through every UUID

December 15, 2024

This issue explores the evolving role of AI in tech, the challenges of rendering UUIDs, the distinction between true abstractions and layers of indirection, insights on AI-assisted coding, and a retrospective on a software engineer's growth.

Storing times for human events

December 08, 2024

This issue dives into practical insights on software challenges, from storing event times effectively to modernizing legacy APIs. Plus, explore the importance of collaboration in tech and the value of continuous learning. Enjoy.

Legacy Shmegacy

December 01, 2024

In this issue, dive into David Reis's thoughts on legacy code, explore a framework for modern CSS support, and discover Hexagonal Architecture. Plus, learn about WeTransfer's growth and a frosted glass effect tutorial.