Quite simply: Game Maker. This is how I got into programming at age 12.
What Game Maker does is
1) It makes programming fun and gratifying. You see your results instantly. With a few commands you can see exactly what you caused your game to do, and because of the nature of some of the functions (for instance, functions that calculate trigonometry and other more complicated math formulas) you don't need a huge understanding of math.
In addition, it takes out the "Yay, I spent three days on this, now I can draw images on the screen!" For instance, in three days I had coded movement, some netcode, and made maps for an MMORPG I was making. In another language you would simply not be nearly this far. So basically, you don't get bored by "stupid stuff." If you have a game idea, you can get that into a program in a few hours, instead of worrying about really low-level things.
2) Perfect for beginners. It's even being taught in schools. You can start with a simple drag-and-drop interface and slowly work into code. It's all object-oriented, and it's very scalable. You can make a simple maze game or have an MMORPG that reads binary files and has super advanced graphic scripts.
3) Like I said earlier, he'll learn OOP and not even know it, since the entire GUI is based around objects. You can't put anything into your game without it being an object.
4) It's free. And it's a small program. It has a huge community (I am a huge tutorial contributor and mentor) with tons of tutorials, and plenty of people to get help from.
5) Its syntactically average and lenient. Code you write in it looks like code you write in Java, for instance. It's lenient: You don't have to declare variable types.
6) Debugging an error is not as frustrating as other languages. The debugger tells you exactly where the error is. Still can't figure it out? Run the game in debug mode and monitor every variable, object, etc.
7) Reward. Think up and code a really good game and you can be admired by tons of GM community members! Wouldn't you want to work for that?
"like trying to beat Amundsen to the South Pole, using best-known weather data."
I've always wanted to play a game where after twelve hours of doing the exact same thing in a region that looks exactly the same no matter where you are, you still haven't gotten very far!
The left arrow key will make you step with your left foot, and the right arrow key will make you step with your right. Careful not to hit one twice in a row - you will trip! Don't trip too much, or you might lose! Also, don't forget to rest and eat. Repeat this a few dozen times!
Quite simply: Game Maker. This is how I got into programming at age 12.
What Game Maker does is
1) It makes programming fun and gratifying. You see your results instantly. With a few commands you can see exactly what you caused your game to do, and because of the nature of some of the functions (for instance, functions that calculate trigonometry and other more complicated math formulas) you don't need a huge understanding of math.
In addition, it takes out the "Yay, I spent three days on this, now I can draw images on the screen!" For instance, in three days I had coded movement, some netcode, and made maps for an MMORPG I was making. In another language you would simply not be nearly this far. So basically, you don't get bored by "stupid stuff." If you have a game idea, you can get that into a program in a few hours, instead of worrying about really low-level things.
2) Perfect for beginners. It's even being taught in schools. You can start with a simple drag-and-drop interface and slowly work into code. It's all object-oriented, and it's very scalable. You can make a simple maze game or have an MMORPG that reads binary files and has super advanced graphic scripts.
3) Like I said earlier, he'll learn OOP and not even know it, since the entire GUI is based around objects. You can't put anything into your game without it being an object.
4) It's free. And it's a small program. It has a huge community (I am a huge tutorial contributor and mentor) with tons of tutorials, and plenty of people to get help from.
5) Its syntactically average and lenient. Code you write in it looks like code you write in Java, for instance. It's lenient: You don't have to declare variable types.
6) Debugging an error is not as frustrating as other languages. The debugger tells you exactly where the error is. Still can't figure it out? Run the game in debug mode and monitor every variable, object, etc.
7) Reward. Think up and code a really good game and you can be admired by tons of GM community members! Wouldn't you want to work for that?
"like trying to beat Amundsen to the South Pole, using best-known weather data." I've always wanted to play a game where after twelve hours of doing the exact same thing in a region that looks exactly the same no matter where you are, you still haven't gotten very far! The left arrow key will make you step with your left foot, and the right arrow key will make you step with your right. Careful not to hit one twice in a row - you will trip! Don't trip too much, or you might lose! Also, don't forget to rest and eat. Repeat this a few dozen times!
Don't forget to throw in your h1 and marquee tags :D
Alas, it was a sarcastic statement ;)
Background :#FFFFFF
Text: #FFFF00
Who needs an expensive complex when my mom's basement works good enough? And if there's ever a problem, I can just swivel my chair around to fix it!