Newsletters

What happens when you press send to ChatGPT

October 26, 2025

In this issue, explore the inner workings of ChatGPT, humorous programming challenges, and vital lessons from managing databases. Plus, avoid common SQL pitfalls to enhance your queries. Don't miss out.

Vibing a non-trivial ghostty feature

October 19, 2025

This issue features a practical case study on creating a macOS update notification, insights on avoiding job interview scams, and the importance of multi-core programming. Plus, discover why examples are crucial in documentation.

A complete guide to HTTP caching

October 12, 2025

In this issue, explore essential insights on HTTP caching, modern query optimization with open table formats, GPU performance in matrix multiplication, and tips for building probabilistic software. Plus, learn about the history of the QNX operating system.

Development gets better with age

October 05, 2025

In this issue, we explore the wisdom of experience in tech, a new Go diff library, impactful software essays, the nuances of technical taste, and Netflix's resilient data platform. Dive in for insights that matter.

Taking a look at compression algorithms

September 28, 2025

This issue dives into data efficiency and security, exploring compression algorithms, AWS S3's innovative storage, address matching with tries, and AI's impact on programming. Plus, learn how Obsidian fortifies against supply chain threats.

How software engineers make productive decisions

September 21, 2025

In this issue, explore decision-making for software engineers, innovative web hosting with disposable vapes, the evolution of coding with AI, and challenges in event-driven systems. Plus, a deep dive into building an OS kernel from scratch.

Keeping secrets out of logs

September 14, 2025

This issue explores innovative solutions in tech, from Allan Reyes' strategies for keeping secrets out of logs to Jeremy Edberg's durable queues for data integrity. Plus, a deep dive into AWS's S3 Vectors and its impact on vector databases.

A history of Chrome

September 07, 2025

This issue dives into Chrome's rich history, explores digital color fundamentals, and reveals insights on prompt structuring for language models. Plus, tips on reducing cognitive load in coding. Don't miss it.

Everything I know about good API design

August 31, 2025

This issue explores essential topics for software engineers: mastering API design, understanding Big O notation, the intricacies of emoji length in JavaScript, and the mechanics of OAuth. Plus, a thought-provoking piece on deliberate professional development.

Secure boot, TPM and anti-cheat engines

August 24, 2025

This issue explores the intersection of security and gaming with insights on secure boot and TPM for anti-cheat measures, plus a look at code review improvements, graceful degradation, and common programming pitfalls.

HTTP is not simple

August 17, 2025

In this issue, explore the complexities of HTTP with insights from curl's creator, dive into Netflix's recommendation algorithms, and uncover critical MCP vulnerabilities. Plus, learn about a new search engine built on neural embeddings and the evolving role of developers in the AI era.

How to review code

August 10, 2025

In this issue, discover effective code review techniques from Matthias Endler, explore the unsustainability of Moore's Law with Charles Rosenbauer, and learn about data structures and algorithm performance. Plus, tips for parsing PDFs.

Programming vehicles in games

August 03, 2025

In this issue, explore vehicle physics in games, dive into LLM embeddings, investigate GPU memory bandwidth, learn to slow down Postgres dramatically, and master the art of writing effective design documents.

More than you wanted to know about Game Boy cartridges

July 27, 2025

In this issue, dive into the inner workings of Game Boy cartridges, discover efficient database schema changes, and explore the complexities of LLM architectures. Plus, rethink the value of TODO comments in code.

How does a screen work?

July 20, 2025

In this issue, dive into the evolution of screens with Dan Hollick, explore artisanal git repositories, discover organic simulations with Etienne Jacob, and learn proof techniques for effective programming with Matthew Prast.

How I build software quickly

July 13, 2025

In this issue, explore rapid software development principles, uncover a mysterious bug with Cadence, and delve into the importance of shareholder value for engineers. Plus, learn about control discoverability in design.

Augmented Coding

July 06, 2025

This issue dives into augmented coding with AI, cache efficiency at Netflix, the evolution of coding agents, and the essence of software engineering. Explore how these insights are reshaping the tech landscape.

Everything I know about good system design

June 29, 2025

In this issue, explore the nuances of system design, the art of creating undo/redo systems, and the joy of toy software. Plus, a guide to choosing the right data architecture and a deep dive into TPUs.

Now might be the best time to learn software development

June 22, 2025

In this issue, we explore why now is the ideal time to learn software development, analyze vowel detection methods, and discover engaging SQL games. Plus, gain insights from years of tracking tricky software bugs.

Field notes from shipping real code with Claude

June 15, 2025

This issue features a deep dive into AI-assisted software development, a significant migration from Source Depot to Git, insights on SQL query optimization, misconceptions in aviation data, and a guide to web development with WebAssembly.