I have been teaching myself C++ with the help of this site, text books, youtube, and MIT free online material. I also am about to finish my physics degree. I wanted to ask if there was a general certification I can get in C++ or any other respectable and recognized way to show that C++ is in my arsenal.
Also, I was wondering if anyone had any tips on improvement on c++ skills. I have been working on building classes with a math/physics basis; however, that just seems to be writing the same functions over and over (and I have to admit, that shit is boring). Anyone have an idea on ways to practice / hone my skills with c++ while also working on math / physics aspects of it.
One last question and I apologize if these questions are easily found in a FAQ. One of my biggest problems with c++ has been simple GUI. From what I've found, just making a window in windows is a lengthy, seemingly unnecessary amount of code. Am I missing something on the GUI or is it just the nature of C++.
There is currently no industry recognized C++ certification available. From what you've stated (math/physics/gui) it sounds like your best bet would be to work on some games or simulation projects to improve your skills. Some of the APIs available include:
I'm also finishing a Physics and Math degree. I think at this point we're half expected to know some programming language decently. If you're doing Physics, see if you can do any research in computer simulations using C++. That's what grad schools and people who would hire you would want to see anyway.
Doing graphics/a GUI seemed like a really awful process to me, but I use SFML now and it's really pretty easy.
If you wanted to try to make a game with little experience your best bet would be to download Microsoft XNA game studio and make a simple 2d game. Not only does it do a lot of the work for you (including making a window which is indeed a pain in the arse normally) but there are tutorials all over the internet on how to make your first game in XNA. It's free, give it a try. Btw you would be coding in C# in XNA, not C++, but they're very very similar I found the switchover quite easy and hopefully you would too.
XNA is only valuable in indie game development. I don't see this meeting the OPs requirements. If you are looking to build your C++ skill set just stick with simulations. As a physics major you don't necessarily need to make games, just start an interesting project and keep at it. If it's interesting enough you can add it to your portfolio. Many of the leading military tech companies (lockheed, Raytheon, etc...) are constantly hiring simulation programmers with excellent mathematics, physics, C++, and OpenGL skills. That is the route I recommend you take.