Field Notes
A working log of 180 days of systems programming, posted as it happened.
Five days of deep work learning TCP networking from scratch. What it takes to become more than a professional beginner.
Five more days of deep work. Classes started, my schedule exploded, and Day 9 almost broke me. Then Day 10 showed me what all the struggle was for.
Building a reliable UDP protocol. Discovering why architecture matters. Friday's disconnection.
Building a multi-client chat server. Proving the Week 3 lesson. Month 1 complete.
Making something beautiful out of simple fundamentals
Building a multiplayer treasure hunt game. Finding flow. Making hard decisions. 30 days complete.
Building a UDP proxy to stress test the treasure hunt game. Discovering that real networks break everything. Rethinking the architecture from the ground up.
Fixing the broken game. Client-side prediction, server reconciliation, a comprehensive reliability system, and the transformation from networking prototype to something production-ready.
Month 3 begins in Los Angeles at 6:30am. Building a task queue system from scratch: linked lists C can't template, fire-and-forget clients, persistent workers, and learning to spawn a thousand of them with one command.
Extending the task queue into file transfer and image processing — and realizing that networking is a tool, not a destination. Some weeks teach you through what you build. This one taught me through what I felt.
Finishing the task queue, finals week, and a trip to Italy.