The Road Ahead: Why I'm Going All-In on Zig
I’m writing this to make a public commitment. A means to quiet the lizard brain—that primal, anxious voice that urges us to quit when things get hard. For the next 12 months, I’m committing to a new path, and I’m not going it alone. I’m inviting you to follow along.
I feel a familiar mix of excitement and anxiety. I’ve decided to dive deep into a set of challenging goals, and I’ll be sharing my progress, struggles, and insights right here on my blog, in my newsletter, and on my YouTube channel. The centrepiece of this journey is learning to build software with the Zig programming language. So, to my regular readers, brace yourselves for something new.
This shift might surprise those who know me for my work in web development and DevOps. But if you’ve been following closely, you may have noticed my content slowly drifting towards a new obsession: performance. This led me to start a YouTube podcast where I could learn from experts in the field, and it has set me on a trajectory I can no longer ignore.
The Search for a New Path
I want to be part of an ecosystem that builds software with a clear set of values: simplicity, high performance, reliability, and durability—software designed to stand the test of time.
I’ve chased these ideals throughout my career, but it’s easy to get swept up in a current of vendor lock-in, fleeting web frameworks, and tools that promise a quick fix but deliver a mountain of complexity. I see it at conferences and meetups. It’s a stark contrast to the conversations I have when I attend Elixir events; even though I don’t use the language professionally, I leave feeling inspired by the community’s focus on craftsmanship and long-term thinking.
Maybe I’m bored. Or inspired. The familiar patterns of web development no longer hold the same challenge. I feel a pull to explore the foundations, to understand what it truly takes to build software that uses system resources efficiently, and to get closer to the metal.
It’s a strange feeling to consciously move away from the mainstream. Phil Eaton’s post, “From web developer to database developer in 10 years,” struck a chord with me. His account of moving from the familiar world of web development to the ‘black boxes’ of databases—was the final push I needed. It solidified my resolve: this isn’t just a whim; it’s a deliberate choice to build a different kind of expertise.
That’s why I’m going all-in on Zig for the next 12 months (at least!). It will be my vehicle for learning not just a new language, but the timeless principles of data structures, algorithms, concurrency, and computer architecture.
Why Zig? Why Now?
I can already hear the questions. “Why Zig when there’s Rust and C++? There are no Zig jobs! The language isn’t even 1.0 yet!”
These are fair points, whether they come from a place of genuine concern or from a language zealot/bigot. But every language has its trade-offs, and choosing a tool is sometimes more than just market demand. It could be about the joy and satisfaction from using it. As for my career, I’ll continue my freelance work in the web ecosystem, so you’ll still see content from me in that space.
I believe that with enough time and the right conditions, the Zig ecosystem will flourish. You can either get in early and help build the future you want to see, or you can wait for it to arrive. Today, remarkable products like the TigerBeetle database and the Ghostty terminal are already proving Zig’s power in production. Joran Dirk Greef’s talk on TigerBeetle is a masterclass in this philosophy.
What truly captured my interest wasn’t just the syntax, but the mindset. I was drawn to Zig’s simplicity, and I’m staying for the profound wisdom I gain listening to its creator, Andrew Kelley, and other community members talk about software engineering. Their philosophy resonates deeply with me. The TigerStyle guide, for example, is more than a style guide; it’s a manifesto for building correct, simple, and performant software.
The recent financial commitments from pillars of the community like Mitchell Hashimoto, Synadia, and TigerBeetle have only strengthened my resolve. This isn’t a hobbyist language; it’s a serious project with a bright future.
The Road Ahead: Learning in Public
While this post centres on Zig, the language is the means, not the end. My real goal is to master the fundamentals.
I plan to build projects that force me to confront these topics head-on, and I’ll share every step of the process. I have a few ideas brewing, but I’m open to suggestions. If you have an interesting problem you think would be a great challenge, please reach out on X (formerly Twitter) or LinkedIn.
My hope is to eventually contribute to the Zig ecosystem itself. I don’t know what form that will take yet, but I’m excited to find out.
I won’t pretend this will be easy. I’m worried I’ll pick a project that’s too ambitious and fall flat. Concepts like manual memory management and pointers are still new territory for me. But that’s the point of learning in public. You see the messy parts, the failures, and the breakthroughs.
I’m stepping out of my comfort zone, and I’m asking you to come along for the ride. Let’s see how this goes.
Thank you for reading, and I look forward to the interactions we’ll have along the way.