Good Language choice for a wannabe pro game developer

Started by
50 comments, last by SimonForsman 15 years, 4 months ago
This basically relates to the whole C++ is obsolete issue... The reason I've started a new topic is that I don't think most of them really tackle the core of the issue. That is weather or not it's viable for a beginner to completely abandon C++ in favor of a high-level language like C#. Outside of Xbox 360, there's no other console in the World that supports code written in C#, and I've never even heard of a professional pc game made by a professional studio which uses anything but c++ and directx. You know, trying to convince people to use python/java/c# is fine and all, but what guarantee do they have that they can at least -hope- to get their foot in the door of a professional game studio? Take a look at the job list on this site, I haven't been here long but I've checked it every day and every day it's the same thing. Nothing there but requests for artists, C++ programmers and DS programmers, which I assume is still in C++. Maybe with Microsoft's history of getting what they want in the end, the Xbox will rule the World, C# will become just as fast as C++ (Without unsafe calls or calls to C++ dlls) and the industry will get a complete overhaul. But really, what are the chances of that happening?
Advertisement
If you don't know how to program, the chances of you getting even a whiff of a programming position is 0%.

Y'know... that's pretty much the long and the short of it. If you don't know how to program, you've no chance. Using C++ as the medium to learn how to program sucks.

So, what part do you think other threads didn't cover? What part of that assertion don't you the OP agree with?
C++ is not obsolete. It is robust, expressive, and downright powerful. The problem is that it simple isn't beginner friendly and just isn't as efficient as C# or Python for rapid development.

I whole heartedly recommend a beginner start with a language such as C# or Python because it allows them to learn software engineering concepts without having to worry about pitfalls such as complicated memory management, and be productive while they're at it.

Yes, pretty well every modern console has you developing with C++ because that is what the companies (Microsoft, Nintendo, and Sony) provide you tools for. Learning C++ from the start, however, has absolutely nothing to do with your potential for "getting your foot in the door".

Any competent programmer, in the end, is going to wind up being familiar with multiple languages. At work, because we develop for the Nintendo Wii and DS (and other nondisclosable platforms), our programmers work with C++. ALL of our tools, however, are developed with C#. Why? Because it is simply faster to work with.
laziness is the foundation of efficiency | www.AdrianWalker.info | Adventures in Game Production | @zer0wolf - Twitter
Quote:Original post by WazzatMan
This basically relates to the whole C++ is obsolete issue...

C++ isn't obsolete, where did you get that idea? It just isn't suited as a first language for beginners. Once you know how to program, learning another language is easy. The hard part for a beginner is to learn two things at once: programming and a language.

Programming isn't about a certain language, plattform or API. It's a state of mind ;-)
Quote:Original post by DevFred
Programming isn't about a certain language, plattform or API. It's a state of mind ;-)

There is no spoon.
laziness is the foundation of efficiency | www.AdrianWalker.info | Adventures in Game Production | @zer0wolf - Twitter
Quote:If you don't know how to program, the chances of you getting even a whiff of a programming position is 0%.

Y'know... that's pretty much the long and the short of it. If you don't know how to program, you've no chance. Using C++ as the medium to learn how to program sucks.


I know how to program.

And actually I think C++ would be a great medium to learn how to program. Why? because there are no safety harnesses. It's the same reason why I don't think Visual Studio is a good tool to teach programming with and why I agree with handwritten code for exams. It teaches discipline.

But really that's beside the issue.

The issue is, does any other language besides C++ have a future in professional game development?

[Edited by - WazzatMan on November 24, 2008 4:04:48 PM]
Quote:Original post by WazzatMan
i.e. I know how to program.

Okay? So do a lot of people.

Quote:But really that's beside the issue.

Then why bring it up?

Quote:The issue is, does any other language besides C++ have a future in professional game development?

Yes.
laziness is the foundation of efficiency | www.AdrianWalker.info | Adventures in Game Production | @zer0wolf - Twitter
Quote:Then why bring it up?


I didn't.

Quote:Yes


Elaborate.
Quote:Original post by WazzatMan
Elaborate.

I did in my first post.

A LOT of money has been spent on developing the current tool chains for modern consoles. Using other languages is very viable, but it requires more legwork from the developers. C# and Python are used a lot in the production pipeline and scripting languages are integrated into a lot of game engines. Most developers want to spend their time and resources on making game and not rewriting compilers, so they still with C++ for the engine. There is a whole lot more to game programming than just engine programming.
laziness is the foundation of efficiency | www.AdrianWalker.info | Adventures in Game Production | @zer0wolf - Twitter
Yeah, but you mentioned tools being created in C#. And Civilization IV has a lot of it's features written in Python. I know that, but the core is still written in C++.

P.S. I didn't mean to sound like a douche in my second post. -cleans it up-

This topic is closed to new replies.

Advertisement