By all the lolcats on the internet, do
not start learning how to program in C++.
@ZeRaW and @Zoro, you guys probably know a lot about programming games, and I adore C++ for all the power and control it gives me, but it is absolutely not a good language for learning how to program.
Yes, managing memory and talking to the operating system is great, but it doesn't help you learn how to program at all. It just gives you power, and it takes a good programmer to be able to
use this power.
How can someone become a good programmer?
Simple! Programming is about two things:
algorithms and
data structures.
You take a problem and you figure out how to represent the problem as data, then you write algorithms that do things to that data in order to solve the problem. That's all there is to it. It's easy, and you've been doing it all your life. The only difference is that with a computer you have to write it all down.
Programming is problem solving. Start learning a language that lets you focus on solving problems with a computer. Once you know how to solve problems, you can do all these awesome things like flinging birds into sheep.
Here's
Introduction to Computer Science and Programming from MIT OpenCourseWare. This is the course they teach students in their first year of computer science. Download the lectures, get the text, and do the assignments, it's a lot of fun.
The course uses Python because it's a language that lets you solve problems without worrying about little details. The text they use is
How to Think Like a Computer Scientist.
Now go, young Jedi, and may the source be with you.