Why I Write Games in C (yes, C)
I am an unusual beast. All my solo project games I've been making recently have been written in 'vanilla' C. Nobody does this. So I think it might be interesting to explain why I do.
Dry programming language opinions incoming, you have been warned.
What I need from a language
There's some things which are non-negotiable. First of, it has to be reliable. I can't afford to spend my time dealing with bugs I didn't cause myself.
A lot of my games were written for flash, and now flash is dying. I do not want to spend my time porting old games to new platforms, I want to make new games. I need a platform that I am confident will be around for a while.
Similarly I want to avoid tying myself to a particular OS, and ideally I'd like to have the option of developing for consoles. So it's important that my programming language is portable, and that it has good portable library support.
What I want from a language
The strongest thing on my desired, but not required list is simplicity. I find looking up language features, and quirky 'clever' api's incredibly tiring. The ideal language would be one I can memorize, and then never have to look things up.
Dealing with bugs is huge creative drain. I want to produce less bugs, so I want strict typing, strong warning messages and static code analysis. I want bugs to be easier to find, so I want good debuggers and dynamic analysis.
... continue reading