This will NOT be a programming course. When I was the same age than Ares, I had my first computer (a Sinclair QL, welcome to the friki’s old memories luggage) without any game, but with a book about how to program games (in fact, it had just the code of those games, but as it was poorly revised, we had to learn how to fix it).
From there, I started to become interested in a wide variety of programming languages (Basic, Pascal, TurboC…) until today, when there is no programming language I could be minimally fluent in no time.
But I’m not a programmer. I’m a developer.
The difference seems just a word, but there’s a full world between both terms: a programmer is someone who receives a very specific task list, and follows it carefully to deliver a program that fullfills all the list tasks. No more, no less; a developer is someone who, more or less, has an understanding and works in the whole creation process of a tool (usually a program) that satisfies a set of concrete needs. He has a wider sight of the project, and can collaborate in anyone of the creation phases adding some value to them.
I learned how to program, and almost twenty years working in IT projects, I just start to see that one of the common mistakes during my early years was to teach programming, and not development.