I’m writing some production code in C today.
I don’t need to reach for C very often. The last time was when I needed to write a service that manipulated video DVD’s and the best way to do that was to use libdvdnav which has a C api.
Today I’m writing a caching server that has some very specific behaviors which unfortunately don’t work correctly with any off-the-shelf HTTP cache I’ve found. I started writing it in node.js, but ran into some limitations that I couldn’t overcome in node that prevented it from working the way I wanted it to. I knew I could do what I needed in C, but I’d never written networking software in C before, so I had a bit of a learning curve to overcome.
I wish I could use C more often. It takes me awhile to get warmed up, but once I get back in the groove, it’s just so powerful, and so non-mysterious. C does what you ask it to, for better or for worse, but I can’t think of a single time that a C program didn’t work and I found the reason outside of the code I wrote.