Jorge Martinez

Aerospace Engineer and Senior Software Developer


Learning modern C

Introduction

Jorge Martinez

February 1, 2025

c


For many years, I have tried to be as fluent as possible with the C programming language. Despite being able to code simple routines, as soon as I face a complex task, I fall back to Python.

However, this time, I am taking learning C seriously. In fact, it is not about learning C but also the latest good practices in the language.

Why learning C?

I know, I know…. Why learning C instead of a modern language like Zig, Go or Rust? From my point of view, these are the benefits of learning C:

Let’s be honest. How many times have you coded in a C-like way in other programming languages? Yeah, right? C has everything you need.

Well, at least, everything you need to build other things you need.

Why learning C is hard?

Again, because of its simplicity. In fact, the language is so simple that:

This can be frustrating for developers more experienced in other programming languages.

Resources for learning modern C

My journey starts with Modern C, by Jens Gustedt. The goal is to read and solve the challenges proposed in the book.

For the moment, that’s it. I do not want to estress with lots of materials.