Why C?

These days I was pretty involved in some recruitement process with codeweaver (the guys working on Wine). And even though it didn’t turn out very well for me. I rediscovered what really reasonates with me as far as computer science is concerned, and it’s C programming. I mean, I genuinely enjoyed writing their recruitment tests (that I can’t share for obvious reasons). And it meant one thing for me: I needed to go back to the basics (and no, it’s not the camping syndrom).

Coding in C is like camping. It’s fun for a while, but eventually you really miss things like flushing toilets and grocery stores. I like using C, but I get frustrated every time I hit a wall trying to build features from other languages. C is a very WET language.

That’s why I decided to have a look at what the smart crowd thinks about the subject and I ended up at first with these three recommendations:

Then I found this thread, then this comment that links to this wiki. Needless, to say, you don’t need anything else quite frankly, just:

  1. Take a good book
  2. Read it
  3. Do exercises along the way

Effective C wasn’t listed but got two very good reviews) which were enough for me. I also spotted a shitton of great resources, (C Programming: A modern Approach, C Interfaces and Implementations: Techniques for Creating Reusable Software, …) unfortunately, most of them didn’t have e-book versions, I might come back to them later. Hacker News also has some interesting discussions about it. Meanwhile I saw this post that fairly well reasonated with me Rust things I miss in C but How do I manage the real life expectations (of finding a job) with my passion for computer stuff (and low-level stuff in particular)? The solution: Learn good C (Effective C, Expert C Programming is probably something I will have a peek at) practise as much as I can, find a job leveraging that, and learn Rust along the way. Sounds good enough, so I’ll go for it.

So my dear beloved (fictionnal) readers, I’m very sorry about that, but I am switching gears, all the “interesting posts” will stay in the backlog for a while, I will use this to learn in public and get accountable, with that and all the whole looking for a (remote) job thing, I don’t think I will have very much time to do something else. Thanks and take care.

To have more insights about learning in public, you might want to have a look at Mentorship vs. Sponsorship + Storytelling by Scott Hanselman. who explains it better than I can.

Written on March 25, 2021