As programming language, C/C++
I did regret when I did listen to some ignorants who keep saying c++ is a complicated language. I wasted few years because I would like to stick with one language or two instead of learning many languages and at the end you learn nothing. I wasn't lucky until I realized No pain No gain and because c++ suits my needs that's Ok I'll pay whatever the price.
As IDE, visual studio gives a programmer all what he needs. In my humble opinion, it is not good idea to stick with one IDE ( get another as a backup).
Also, it seems to me that starting of learning C++ by using IDE is not good idea. You should use command line to compile and generate the required files. Moreover, learning Makefile is essential.
For my IDE, use Kdevelop on Linux, or QtCreator for GUI apps. So far I have gcc 4.7.1 for a compiler, but I might try clang because it has awesome messages.
KDevelop is interesting as the editor can be configured for all kinds of languages, databases, scripts etc. There are over 50 different source code formats, which covers almost any language that I can think of.
So if I want to write Lua, Haskell, C#, D, E, Eiffel, Java, Fortran, Pascal, Ruby, Scala, Awk, Bash, MySQL, PostgreSQL, 8 different assemblers, XML, make, troff, perl, python, MatLab & many more, I can go for it.
KDevelop has all the usual sugar of background compilation to show errors as you type, intelligent auto completion etc.
I did try Eclipse & Ant once, but lasted about 30 minutes with each.
All of this plus about 20,000 other apps is 100% free, so is a huge reason for using Linux.