Real Programmers Use X

I suppose I shouldn't really be surprised by the statement "Real Programmers Use [insert language here]". It comes up all the time in many different programming communities. The inspiration for me writing this post comes from a blog entry on game development programming languages. The author of the article describes an encounter with someone who asserted "BlitzMax is not a real coding language, only C++ is fast enough". The idea behind that statement being "real game developers use C++". I can't count how many times an argument like this occurs. I've noticed it is generally stated by amateur programmers who somehow convinced themselves that there is one true language, and it's their language of choice.

The idea that only C++ is fast enough for game development is misleading at best. Ignoring the fact that BlitzMax is actually used to make games, C++ may or may not be the best language for the job. It's entirely dependent on the scope of the project and the developer's level of expertise.

There's a big difference in amateur and professional game developers. An amateur can spend his entire life doing C++ and never get a professional offer from a game studio. Just being able to do C++ is not good enough. When you start expanding your horizons and doing projects that require many different languages and technologies, you'll start realizing there are better tools and solutions to your problems. When you have a broader set of skills to draw from, that's when you start becoming a valuable developer. Sticking to this notion of only real programmers use X will get you no where.

Take Zynga for example. This company produces hit after hit and none of their games are written in C++. By using tools and languages that allowed them to scale faster, Zynga all but took over the social games industry. Zynga is a $4B company with 9-figure revenues. How big would Zynga be if they started off doing games in C++? They'd still be working on their first game.