When you start thinking about building a career in computer science, don't put in a specific language in your mind. You should be strong in concepts. How an OS runs a process? How memory is used by a process (stack,heap), and some data strucures like linked lists, stack, queues, etc. Then I'd suggest you could start with C++ or C#. And it'd be time you would start understanding how a program is compiled,linked,executed. And before you try to make a 3D volume analysis algorithm,Or even a 2D game, I suggest you concentrate on the paraigms. Like OOAD. All the best know languages have adopted OOAD. So you need to be strong with the OO concepts. It doesnt make sense if you write a 2000 line C++ code without knowing OO. What students do is to write C code inside C++ and call it C++. After you become confortable with OOPS you may choose to work with C# or C++. In C# you can easily bring up colorful apps. In C++ little work around would be required. Then you'll have to learn the OS specific APIs to implement them in any language. Because if only you understand the APIs , you'll understand the frameworks around it. Like MFC on top of Win32. So the road map is clear. Round1.
HOW-STUFF-WORKS(BASIX)->OOAD(NOVICE)->C#,C++(HelloWorld)->WIN32APIs->MFC/Donet
Round2
HOW-STUFF-WORKS->OOAD->C#,C++(May be your 2D game)->WIN32APIs->MFC/Dotnet
Also when you learn to build programs using frameworks, you should also start learning Databases. You might notice there's no much difference between Round1 & 2. But it will be totally different when you again take up the books and read. It won't stop with that. Everytime you read it again, you will get better meaning & understanding. Finally, As you see, there's nothing called "VB" in the road map. Also an important notice. I'm no expert. I'm someone swiming so hard in between round 2 & 3. :sigh:
He never answers anyone who replies to him. I've taken to calling him a retard, which is not fair to retards everywhere.-Christian Graus