How relevant is C/C++ in this new age of game development?
At my last game development meetup, the topic of discussion was social games, the room was filled with about five people. As the discussion progressed deeper into Farmville, and “why is Zynga making so much money” talk, a lot of us began to throw around a lot of different technologies that could be used to make social games and just games in general. I must say there were a lot of options discussed, UDK, Flash/Action Script 3.0, Objective-C, C#, and Unity.
Even though the topic of the night was about social games the conversations kept leading into “why exactly learn C and C++”, this was also brought up because one of the people at the meetup was saying he wanted to go back to school and do computer science, but we all managed to convince him other wise simply because there were so many technologies out there that could do what he wanted without having to learn all the nitty gritty. We also told him that if the theory is what he was after, the magical powers of the internets could help him.
Soon everyone in the room had come to the conclusion that really it all depends on where you want to be in the game industry. If you want to do the “indie” thing then you don’t necessarily have to learn C/C++ hardcore, getting into all that crazy Open GL/Direct X madness. There are so many other ways you can make games (and faster) without even touching that stuff. But if you want to get into the mainstream game development world meaning working with Epic, EA, Nintendo, etc, then yes, you do indeed need to learn C/C++ like the back of your hand.
I have noticed that just about every new person who comes to my meet ups, wanting to get into the game industry as a programmer always assume that they have to learn C/C++ this is so far from truth these days, the world of game development has become very diverse giving lots of options to up and coming developers. Sure there are very good reasons why C++ was (and still is) used for really hardcore game development, but these days a game doesn’t have to be a graphical powerhouse to succeed.

One of the first things any new game developer should stop and ask themselves is “where do I actually want to be in the game industry”? Very often these days new developers will come from the world of just playing those super high quality games thinking that is all that is out there. Possibly looking down upon any other type of gaming; browser, mobile, etc. These areas are booming, and to some extent making more then the “mainstream”. These type of, dare I say “casual” games also allow for more innovation and provide more creative freedom the developer.
This entire industry is a huge gamble, developers come and go, people get laid off all the time! It’s better to have a focus, know what your good at… Trying to be a jack of all trades can be good, but it’s not easy and I would say specializing in an area of game development would be more helpful in the long run. “Find yourself” before you journey into the big bad world and get involved in the community. I honestly can’t stress that enough, getting involved in the game development community and networking will open a ton of opportunities for you.

I suppose the point that I was attempting to make is that these are crazy times for the game industry right now, tons of radical changes are happening and things are moving extremely fast. I am not saying to go with the next hot thing, but for up and coming game developers to not always assume that you have to spend four to six years learning hardcore computer science, thinking that you have to start building your own game engine and learning every single possible detail of C/C++, you have options now, use them.
I am really curious to hear what others think about this topic, so by all means tell me how wrong I am! Ha.

