The Zig Programming Language
My Zig timeline so far (reverse chronology):
-
2023 (Sept): Ziglings moves to Codeberg! And check out the new url: ziglings.org!
-
2023 (May): I’m convinced: Zig is hard…but worth it
-
2023 (Apr): Ziglings Maintainer 2023 Shirt! (see below)
-
2023 (Mar): Improved my zignew and zigswitch scripts and published them here.
-
2023 (Jan): Invited collaborator for Ziglings (github.com) and it has been one of the best things I ever did!
-
2022: No progress, I was doing Assembly Nights instead.
-
2021 (July): A new browseable Zig standard library project.
-
2021 (June-): Ongoing work on a ray tracer in Zig (source)
-
2021 (June): Wrote a TGA file from Zig (source)
-
2021 (June): Wrote a toy Unix shell and wrote an article about it
-
2021 (May): Created a Zig standard library "map" generator. (result, source)
-
2021 (February): Shared Ziglings with the world, then it ended up on Hacker News
-
2020 (December): Taking the plunge, started creating Ziglings (see below)
-
2016: Read Andrew Kelley’s Introduction to the Zig Programming Language
And so it begins…
After giving Rust a respectful goodbye for now, I’m still on the quest to learn a proper systems-level programming language.
I’m tired of limits. I want to be able to do what C programmers can do…without having to write C.
After quite a bit of reading (more than is useful or healthy, really) on my options, I’ve now aimed my sights on Zig (ziglang.org).
Ziglings
When I was learning Rust, I really loved rustlings, a repo and script that give you "Small exercises to get you used to reading and writing Rust code!"
So to supplement my use of ziglearn.org and the language documentation, I’m making Ziglings.
So far, this has been a wonderful way to teach myself and build the resource I wish I could be using to learn the language. Hopefully it will be useful to others as well.
Attempting to "teach as I learn" is slowed me way down vs. just reading the available material and writing some toy scripts, but it’s also making the details stick much better and I’m finding that I can write the parts of Zig I’ve learned so far by memory, which usually takes much longer for me to aquire. So that’s nice.
Keeping up with this has been challenging, though, so I enlisted help!