Skip to content

Instantly share code, notes, and snippets.

@LewisGaul
Last active March 28, 2024 06:53
Show Gist options
  • Star 39 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save LewisGaul/d5b303da9c03bf95f778c64e12ef1c5e to your computer and use it in GitHub Desktop.
Save LewisGaul/d5b303da9c03bf95f778c64e12ef1c5e to your computer and use it in GitHub Desktop.
Collection of blog posts about the Zig programming language

Zig blog posts

This is intended as a place to list blog posts about Zig, for anyone who's interested in reading what people have to say! Also check out links at https://ziglang.org/learn/ and https://ziglang.org/news/.

Posts were found by searching on lobste.rs, at https://dev.to/t/zig and https://medium.com/tag/zig.

Please let me know in a comment if there are any posts missing that you'd like me to add here!

2021

Oct-Dec

Implementing a file pager in Zig (ayende)

Apr-Jun

Forking is Cool, or: A Unix Shell in Zig (ratfactor)
How I Use SDL2 in Zig - a Brief Overview (TommiSinivuo)
Writing A Brain**** Compiler (g-w1)
Zig Makes Rust Cross-compilation Just Work ()
Learning About ELF With Zig (g-w1)
Learn Zig by building a Ray Tracer, Chapter 1: Tuples (KilianVounckx)
First steps with Zig (msfjarvis)
The problem with pointers (ehaas)
Zig Metaprogramming (ikrima)
Basic Syntax (ikrima)
Testing memory allocation failures with Zig (ehaas)
Bio: All your parentheses are belong to us (cryptocode)
Some notes on using Zig with Valgrind (cryptocode)
Preventing integer overflow in Zig (ehaas)
Zig NestedText Library (LewisGaul)
An intro to Zig's integer casting for C programmers (ehaas)
Zig + STM32F4Discovery = Blink (rbino)

Jan-Mar

Zig Tutorial #5 — Type Conversion (rguiscard)
How safe is zig? (jamii)
Zig Tutorial #4 — sort (rguiscard)
A “Better C” Benchmark (zserge)
Why you should learn Zig (xpyxel)
Setup Zig for Gamedev (fabioarnold)
Zig, Parser Combinators - and Why They're Awesome (hexops)
Zig Tutorial #3 (rguiscard)
Zig Tutorial #2 (rguiscard)
Zig Tutorial #1 (rguiscard)
Memory-mapped IO registers in zig (jamii)
Why I rewrote my Rust keyboard firmware in Zig: consistency, mastery, and fun (lynaghk)
First Contribution To Zig (LewisGaul)
Rust, Zig, and the Futility of "Replacing" C (Gavin Howard)
Have you ever tried Zig ? (pmalhaire)
Weaning Zig off of git submodules 1: Intro (mattnite)
A surprisingly capable RPN calculator in about 100 lines of Zig code (cryptocode)
The First Zig Website Redesign (kristoff)
Async CPU bound workers in Zig (cryptocode)
Zig wrinkles (cryptocode)
Running Zig binaries on a KaiOS device (cryptocode)
Zig Makes Go Cross Compilation Just Work (kristoff)
Trying out Zig - Zigominoes (LewisGaul)

2020

Oct-Dec

ZzForth (nsmryan)
Software Reliability C++ vs Zig (ordovician)
Gotchas when Doing Zig Programming (v0.7) (ordovician)
C++ vs Zig Template Based Programming (ordovician)
Is Zig the Long Awaited C Replacement? (ordovician)
Understanding the Zig Programming Language (ordovician)
Assorted thoughts on zig (and rust) (jamii)
Zig heading toward a self-hosting compiler (Jake Edge)
Zig Type Checked State Transitions (nsmryan)
Cloc Supports Zig Now (nsmryan)
A Copy Trait in Zig (nsmryan)
MsgPack in Zig (nsmryan)

Jul-Sep

Zig's New Relationship with LLVM (kristoff & andrewrk)
Zig Ray Tracing In A Weekend (gweej)
Automatic Language Bindings (floooh)
Validating strings at compile time in Zig (euantorano)
Zig CCSDS Primary Header (nsmryan)
Zigtastic Async (gweej)
Debugging Zig with VS Code (watzon)

Apr-Jun

What is Zig's “Colorblind” Async/Await? (kristoff)
A Brief Exploration of Zig (gsquire)
How to get code coverage using zig and kcov (codelv)
Open multiple dispatch in zig (jamii)

Jan-Mar

Trying Zig with C web servers (dermetfan)
Learning Zig - first hour... (MrOneTwo)
Cool, new language for 2020 (MrOneTwo)
zig cc: a Powerful Drop-In Replacement for GCC/Clang (andrewrk)

2019

Automated Testing for Zig projects with Circle CI (euantorano)
call Zig from Python (tonetheman)
What is Zig's Comptime? (kristoff)
Writing a small ray tracer in Rust and Zig (Nelarius)
A Reply to The Road to Zig 1.0 (gingerBill)
How to Write a Redis Module in Zig (kristoff)

2018

Using Zig to Provide Stack Traces on Kernel Panic for a Bare Bones Operating System (andrewrk)
String Matching based on Compile Time Perfect Hashing in Zig (andrewrk)
I Quit My Cushy Job at OkCupid to Live on Donations to Zig (andrewrk)
Zig: January 2018 in Review (andrewrk)
Unsafe Zig is Safer Than Unsafe Rust (andrewrk)
Zig: December 2017 in Review (andrewrk)
Big Integers in Zig (tiehuis)

2017

A Better Way to Implement Bit Fields (andrewrk)
Zig: Already More Knowable Than C (andrewrk)
Zig Programming Language Blurs the Line Between Compile-Time and Run-Time (andrewrk)
Troubleshooting a Zig Regression with apitrace (andrewrk)

2016

Introduction to the Zig Programming Language (andrewrk)

Other Resources

A half-hour to learn Zig (ityonemo)
Zig SHOWTIME Youtube channel

@LewisGaul
Copy link
Author

I'm happy for this list to be moved, I haven't been updating it recently (as I'm sure is obvious). I guess the advantage of a repo is just that anyone can open PRs? Would it make more sense to just have it as a page on the Zig wiki under https://github.com/ziglang/zig/wiki/Community (where this gist is currently linked) so that anyone can edit directly?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment