DEV Community

Cover image for Why I need Zig
Hasan Ali
Hasan Ali

Posted on

Why I need Zig

I've been thinking about why I feel more productive in some programming languages over others and this article by Chris Krycho of the New Rustacean Podcast made it click for me: https://v5.chriskrycho.com/journal/some-thoughts-on-zig/

I've been a programming language enthusiast since I started coding. A few years ago I decided to stop language hopping so much and work on building real things with a few of them. This helped me get through my masters with C++ and Python, and helped me start my career with Java. Now I spend a vast majority of my time writing TypeScript for work and personal projects, and this has been the most productive I've ever felt. Some of it comes down to experience for sure, but I think a big part of it is the size of the language.

I struggled to move as quickly as I can in TypeScript when working in Java or C++, and I think that made each "learning rep" longer so I couldn't do as many reps. This made the learning feedback loop feel not as rewarding. With the experience I've accumulated now, I feel more confident that I'll have better luck with those languages for the same domain. Which brings me to Zig.

I did a very narrow subset of Systems Programming in C++ and when I tried to get into it with Rust, I kept hitting a wall. I underestimated how steep the "steep learning curve" was. I've been playing with Zig for a couple days now and it's giving me the same productivity wins as TypeScript did in the beginning. I hope this will better build my confidence in the systems domain, so I can appreciate Rust more.

With all that said, this isn't a "Language A is better than B"; I'm a technology pluralist. And as much as I love Rust, I think I need a bit of time with Zig first to help me grow.

If you think of anything I have missed or just wanted to get in touch, you can reach me through a comment, via Twitter, via Mastodon or through LinkedIn.

Photo by John Cobb on Unsplash

Top comments (0)