Hard to think of many languages that are a worse choice than C++ to learn as a first language. C++ is just terrible as a language. Glad its not nearly as popoular as in the 90's. Go C+, or even straight C, or something totally different like Java, Ruby, Python or PHP.
If you want to get into game programming (did I understand correctly?) it's probably better to take someone. Actually, more than one, if you want to do that seriously. I wouldn't really say game programming is easy.
I have several years of experience in MFC and C++. I have also done some internet development in Java, very little GUI but a lot of sevlet and database stuff. In the past year Java 1.6 has received a lot of good press on how performance was improved. I installed Java 1.6 and did notice an improvement in my Interactive Brokers TWS application. I purchased a copy of 'Killer Game Programming in Java' by Davison, I wanted to see just how fast I could get a Java app and possibly a well performing GUI up and running. One benefit of Java is that IB's API is in java so having a single language for IB is attractive. One of the demo apps in the Java book was used as a GUI shell. I get data from an MySQL database and throw it on the screen. The app shows frames per second and I can maintain 15 FPS filling the screen with dense data bars and calculating indicators. My CPU load remains below 10%. I have no interest in pushing the CPU to get more FPS but it could be done. (I cannot act on anything faster than 15 FPS!!!) This prototype demo app is drawing data from a SQL query which I thought would slow everything down. Another benefit is that everything also works very well running on Linux without any changes. It will take me some time to move everything from MFC/C++ to java but my new projects will be done in Java. Good trading.
and they say that for a few reasons: - Its bloody fast (if you want faster code it in C or assembly) - Cross platform (sort of unless you use M$ specifics - I know so is Java, etc) - Lots of legacy code in C/C++ on the Street (unfortunately) - Its a Quant-macho thing if you seek elegance, there are better languages - probably one of the most difficult languages to learn first up.
If you want employment in trading systems or gaming as a career you will need to invest in yourself. You will need to master the basic building blocks of the software industry which requires learning much more then a particular computer language. Formal education will add to your understanding the basic concepts in the business that will allow you to learn a new language or database every couple of years which is required to maintain your edge and make a living. The danger of identifying yourself with one particular language or system is that you will become a code-monkey and when the industry shifts away from your particular knowledge base you will be left with terrible employment options. Here in NYC, in the 80âs the majority of the college graduates from software and engineering programs were hired be the defense contractors on Long Island. The majority of those jobs shifted away to lower cost areas of the country in less then a decade and those people had to find new industries to work in. The people that were flexible enough to work in the Wall St. IT machine did very well but many were not able to make the transition lost many opportunities in the 90âs.