Ask YC: Best way to get my son started on programming?

9 points by pensiveye ↗ HN
Hi all. My son is eleven years old and I'm looking into a good way to get him passionate about computer science and programming. There are a lot of resources out there. Does anyone have a recommendation on the best?

17 comments

[ 3.3 ms ] story [ 54.9 ms ] thread
If your son is passionate about technology and computers, direct him to learning to code the hard way series. Or pick up a book that will teach programming by creating a series of simple games.

If he his not, stop trying to live vicariously through him.

You'd recommend to an 11 year old to read a book "learning to code the hard way"? Really?

I think you're making a lot of assumptions with a comment like "stop trying to live vicariously through him". Would you have had the same reaction if the question was about sports?

It's a series where you dictate written programs and then debug them. http://learncodethehardway.org/

If the question were about sports, then yes, it would be similar. (eg: football) If your child is passionate about football, begs to watch games etc; consider enrolling him in a football league where he will play football and buy him a book that explains real plays that wont talk down to him because he is a child. If you love football and want to see your child play football, but he has expressed no interest in it, it may not be A Really Good Idea(tm).

(EDIT: added link)

For an 11 year old, a more visual pseudo programming language (see Scratch or Alice) is more appropriate than jumping into something like PHP or C. Even Codea is a jump... but Lua is pretty friendly for someone seeing code for the first time.

My kids aren't passionate about sports but they play soccer. The question that I could have asked is 'what's the best league in my area to be in?'. I wouldn't expect that readers would jump to the conclusion that we were living vicariously through them.

At any rate, I thought it was a reasonable initial question. We don't push kids into programming, but we do make materials available when they show interest. That's why I'm familiar with what I posted. However a comment such as "stop trying to live vicariously through him" comes across as rather snide.

Disagree on Scratch or Alice being necessarily better. At 11, he can certainly jump into languages like PHP or Python perfectly fine. Many programmers (including many here) started a much younger age than 11 and at a time when Scratch or Alice may not have been available. There's nothing wrong with going straight to those.
Yes, I think that really depends on the kid. Mainly I wanted to point out that there are plenty of learning vehicles that teach the programming concepts without necessarily being 100% text-based coding. For some kids that will excite them more. (That's also why I like WeDo Robotics and Mindstorm.)

Nothing wrong with going directly to programming languages if that's what the kid's into.

lego mindstorms
that's a great suggestion. I don't agree with trying to get them to like coding for the sake of it. Lego Mindstorms is a nice way to learn some basic logic and if the child enjoys building things and similar things, coding might not be that far a step away.
This is where we started a couple of years ago. He has expressed a lot of interest in app design, and I'm taking the track of "walk before you fly." As an intensely analytic and intelligent guy, I think he's ready to get into the code.

Surprised no one mentioned HacketyHack. Anyone have any experience with that?

Find a nice open source game and start showing him how to modify/extend it.
Resources about programming won't make a child passionate about it.

If he's interested, spending time with him doing some Alice or Kodu might have an effect over the long term.

But passions and interests build over time and at age 11 are heavily influenced by the interests of peers.

If he likes computer games like i do try with Game Maker like i did. 2d game engine with drag and drop actions + scripting.