My 10 year old wants to learn to program.

alkemyst

No Lifer
Feb 13, 2001
83,769
19
81
I just recently 'acquired' an instant family.

The 10 year old loves his laptop and exploring the internet, something he never was able to do.

Now he wants to invent games and 'cool things' computers can do.

What is the proper method today?

In my day I went to BASIC or BASICA, LOGOS(sp?) was to basic.

Then ramped up to C++. ASP, etc.

I would prefer him to be a network engineer.
 

drum

Diamond Member
Feb 1, 2003
6,810
4
81
I think Powershell is a quick and dirty way to get started. It incorporates many languages an shells while having so many modules and CMDLETs available to get really familiar with your own local computer as well as domain PCs.
 

DaveSimmons

Elite Member
Aug 12, 2001
40,730
670
126
Another idea is to work on a mod or two for a game that he likes (Skyrim, FO New Vegas, Torchlight, a shooter, whatever) to have fun with the game part and learn a bit about scripting, levels and logic in the process.

Learning a language and framework from nothing is a lot harder and offers less instant gratification than making a side quest then being able to play it.

Once he gets his feet wet with design, then maybe the Unity 3D engine? It's free and used in many "real" games.
 

sm625

Diamond Member
May 6, 2011
8,172
137
106
Start with autohotkey. Have him write a script that will play a simple flash game. That captivates a 10 year old's attention, doign something that produces a real tangible result that he can actually use. Start with a simple script. You know, move the mouse to various locations, click, etc. Then move onto more complex tasks. He can learn how to search for functions, such as "movemouse" and "getpixelcolor" etc. I dont even know what the functions are actually called, because I jsut google them when I need to garner the syntax. The important thing to learn is to be able to translate what you want to do in your program into actual code. I wouldnt even focus on syntax at all. Use the wealth of script examples out there to aid in syntax.
 

BrightCandle

Diamond Member
Mar 15, 2007
4,762
0
76
There isn't a proper method and largely all you need to do is potentially buy some books. Kids consume these books very rapidly and you'll find the child will just work a lot of it out.

Personally I would point a child today at JavaScript. Its simple, fully capable of games and web stuff and its become completely general purpose. Being a weakly typed and dynamic language makes it quick to get going with. You can write full 3d games and little websites and almost everything in between.

But honestly the language probably doesn't matter much as long as its got access to the things that the little one is interested in.
 

alkemyst

No Lifer
Feb 13, 2001
83,769
19
81
Back in the 80's things like BASIC and LOGO made it easy to understand the methodology.

PASCAL as well.

Jumping into the C languages doesn't seem reasonable for a 10 year old.
 

teb468

Senior member
Jul 18, 2005
470
0
0
You can always try Alice to let him play around with the 3D aspect of things. I know one of my professors is on the team, but I never really used it myself. Just a suggestion for the 'instant' crowd.

http://www.alice.org/index.php
 

cytg111

Lifer
Mar 17, 2008
26,346
15,748
136
Another idea is to work on a mod or two for a game that he likes (Skyrim, FO New Vegas, Torchlight, a shooter, whatever) to have fun with the game part and learn a bit about scripting, levels and logic in the process...

- Of course depending on the mind, but on a general approach I think this sounds very reasonable.. the effort-reward cycle is sustainable and might just take off.
 

Sheep221

Golden Member
Oct 28, 2012
1,843
27
81
If he likes internet just get him some clipart based website editor so he can create his own websites. I programmed pascal abit when I was 10, but along side that I was creating various stuff in microsoft frontpage, as the 10 year old kids don't have a capacity to program anything constructive, it's better for him to just create the site in graphic system and than learn and abit modify the generated code, if he wants to learn solely on his own, this is the best way to go.
If he plays some games that include some map or 3D world generating program that's also a fun for young creator to just create his own gaming maps and than play inside them.
 

alkemyst

No Lifer
Feb 13, 2001
83,769
19
81
He is all over MineCraft. He is doing really well at it. He wants to make a game like that.
 

smackababy

Lifer
Oct 30, 2008
27,024
79
86
He is all over MineCraft. He is doing really well at it. He wants to make a game like that.

I'd explain to him that is similar to wanting to win an NBA championship before you know how to play basketball. It takes a lot of hard work and learning boring fundamentals before you can get to the level of being competent enough to make something of that scale, especially by yourself.
 

Subyman

Moderator <br> VC&G Forum
Mar 18, 2005
7,876
32
86
Back in the 80's things like BASIC and LOGO made it easy to understand the methodology.

PASCAL as well.

Jumping into the C languages doesn't seem reasonable for a 10 year old.

You'd be very surprised. If a kid is interested, then most of the hard work is done. Facilitate his eagerness to learn. My advice is never say no to a book or video series that he wants to learn with. Your job is exposure, but never say something is too hard to learn right now. Those artificial barriers can be damaging to the learning process and his self esteem in the long run.

If you are even mildly interested, work through some books with him. Sounds like a fun mentor activity. Enjoy this opportunity!
 

Savatar

Senior member
Apr 21, 2009
230
1
76
I learned C++ first ... just bought a book and was fortunate enough to have access to a compiler. :) C++ is pretty typical for a first programming course in college. The downside is most of the stuff starting out is limited to console applications so you won't see much right away.

A lot of grade schools and high schools now teach some HTML/JavaScript stuff in school. So maybe have him design a webpage, that way it's easier to have something you can look at and be proud of.

PowerShell or Bash programming is fine for using Windows or Linux and performing administrative tasks, but I wouldn't recommend PowerShell as a first programming language - might as well just use C# in that case, but even then, most early programming classes in schools will still require C++.
 

CU

Platinum Member
Aug 14, 2000
2,417
51
91
He is all over MineCraft. He is doing really well at it. He wants to make a game like that.

Your kid sounds like my 7 year old. I explained to him that it took the guy years to do that working on it full time and that me working with him a few hours a night wouldn't create minecraft in a reasonable time. We did find Scratch though and created a quick little demo where you could control a stingray and swim around the screen. I was pretty impressed by it.