I have always had a great deal of respect for C, and I would like to start writing in it. However, while I am skilled in other languages, I basically don’t know any C off the top of my head.
I find that I learn better and faster by attempting projects, rather than working through a book ir taking a class. For example, to learn Perl, I am working on a basic disk image writer that’s coming along nicely.
So, what do you think might be a good idea for my first C project?
EDIT: Zig is also something I’m interested in learning. Same question, different language.


There’s still plenty of jobs using C. C has certified compilers and libraries that let you use it in projects with security regulations like automotive. Those project are not moving to Rust or Zig anytime soon. They are also safe from AI (no one will dare doing anything “agentic” in safety critical projects) and with latest investments in the defense sector in Europe I would expect them to grow in the coming years. If I could change career paths today I would definitely consider C. Rust is great but it’s really hard to find a job as a rust programmer.
I don’t know about Europe. But the US (or at least the portion of the US federal government I deal with) has been trying to ban us from using memory unsafe languages for as long as I can remember. For us, Rust isn’t replacing C; it is replacing Ada. The only difference is that they have stopped granting exceptions for new code bases in memory unsafe languages.
Yes, they are trying but C still dominates in many parts of industry. After learning C I would definitely start learning Rust but right now you will have way bigger chances of finding a job with C than with Rust.
The other side of this coin is C developers are still plentiful whereas folks who know rust are less available.
If someone knows C and Rust experience I’m hiring them over the others.