Home Bookclub Episodes Systems Programm...

Systems Programming with Zig

Garrison Hinson-Hasty • Trevor Berrange Sanchez | Gotopia Bookclub Episode • October 2026

You need to be signed in to add a collection

Systems Programming with Zig teaches you to write working, real-world code in Zig. It builds on your existing coding skills to introduce systems programming using the Zig language.

Share on:
linkedin facebook
Copied!

Transcript

Garrison Hinson-Hasty, author of “Systems Programming with Zig” and a contributor to the Zig compiler, joins Trevor Berrange Sanchez to explain why he wrote a book on a pre-1.0 language that breaks frequently (he's currently updating the last seven chapters for Zig 0.16). His answer: the language's slow march toward 1.0 is a feature, and learning it now teaches you why its decisions stick. The conversation's core thesis is that Zig is countercultural: instead of stacking new abstractions on old ones, it reuses well-tested ideas and "never adds too much”. "Simple", in the Zig community's sense, means simple relative to what the machine is doing, with integer and pointer types that map closely to how you'd think about data in assembly. Chapter 6's CHIP-8 interpreter shows this: a few integers, some buffers, and elegant results. The same philosophy explains Zig's missing string type. Strings are just byte sequences with a length, and the language leaves encoding choices to you. Garrison notes that Rust, by contrast, now has to maintain its many string types forever.

Two practical takeaways for working engineers. First, allocators: because Zig encourages flat, data-oriented design, the book barely needs dynamic allocation, and when it does, allocators let you reason about memory for a whole phase of a program (say, a compiler's parser) as one unit rather than tracking the lifetime of every AST node. Second, C interop: you can use a C header directly, keep defer for cleanup instead of goto, and write small Zig wrappers around awkward C error-return conventions. The chapter on graphics and OpenGL, meanwhile, is really about a transferable systems skill: working out what an unfamiliar, committee-designed API wants from you when no tutorial exists.

About the speakers

Garrison Hinson-Hasty

Garrison Hinson-Hasty ( author )

Author of "Systems Programming with Zig" & Contributor to the Zig Compiler

Trevor Berrange Sanchez

Trevor Berrange Sanchez ( expert )

Systems Software Engineer & Particularly Fond of Zig