Community Reputation

About TangoKilo3

I'll throw in my two cents, I use Windows with Visual Studio 2008 at work and Linux with command line g++ at home. They are both nice to write code with.
The programming I do at work is very Windows specific (MFC library anyone?) and I would certainly not try and deal with doing WinAPI calls and setup without the wizards and code completion that VS provides.
However at home, where I program my games, I prefer a very *clean* programming environment (nothing but .cpp .hpp and a make file). I don't like the clutter of IDE specific project files, settings files, etc. And while I could have the same environment in Windows, I happen to like the command line of Linux without having to install CygWin.
But this is all personal preference, and in the end, that's what it will be to you. It is entirely possible to cross compile from either OS, you can have IDE's with all the nifty features on both, you can download portable libraries on both, you can Google compiler errors on both, etc. I would suggest trying both and see which you prefer.

I started with C as well, and while I am glad that I understand how to do my own memory management and the importance of knowing how things are stored in memory, I have to agree with rip-off that it's probably best that a person learning to program not start there. Unfortunately, I did not have much guidance in the realm of what to choose and so learning the language of operating systems seemed like a good place to start. I wish I could do it over again, I think it would have been beneficial to learn high level programming concepts first then learn how each works. Like learning how to drive, you wouldn't bother yourself with how the engine is mounted, how the fuel injection works, what sequence your distributor cap fires in; you would first learn the rules of the road, how to accelerate, braking distance etc. However, I would certainly suggest anyone who has been programming for a little while (2-3 years) at least try C out. If for no other reason then to learn pointers and malloc(). Truly understanding why malloc always returns a void * is lifechanging (at least for an 8th grader with no formal computer education.)

I love the article, working my way through step 4 with ventures back to 2 and 3 A LOT. In the pursuit of my B.S. I took a formal languages class, maybe I'll bust the book back out and see what I can do about step 5...

So I was debugging one of my programs currently segmentation faulting, and I think my computer is talking to me:
rowPointers[22] points to DEADBEEF
This was suddenly followed by the urge to eat a beef taco.
Anyone else have anything weird ever shown up in your debugging/running a program?

You're making an incorrect assertion here; C++ isn't naturally 'faster'. And it doesn't provide anything for free. Top tier programmers might be able to leverage some benefits, but they're nothing but landmines for everyone else.
[/quote]
You're right, I over generalised. People can write extremely inefficient C++ code if they do not know what they are doing. However this doesn't change the fact that C++ is currently the industry standard, and it is exactly because those top tier programmers go through the enormous headache of leveraging the benefits. I apologise if my post made it sound as though C++ has speed with no trade-offs, this statement was meant to convey that C++ is not all roses:
But, it may have not been enough to truly convey "C++ is a pain in the butt to write, debug, and do both efficiently". For what it's worth I've been programming in C/C++ for over 10 years and I'm still learning things about C++.

C++ is not a completely useless formula 1 car. C++ is a hammer in the world running out of nails.
Programming languages are tools, and they are all different with pluses and minuses. The old saying "When you have a hammer everything is a nail" works well in the world of programming. Most indie games are not going to need the speed C++ provides you. Large game studios pushing the limits of hardware need speed, and they are willing to sacrifice the ease of use of languages like C# and Java. If you are planning to apply and get a job at a large studio working on next gen (I know this term is thrown around a lot) titles, then learn C++, if for nothing other than your resume. But if you have no desire to work for a studio, then it's probably not worth it.