10

My 12 year old brother has recently expressed an interest in learning to program. I of course think this is a great idea, why not start him early? I'm wondering what you guys think with regards a book? I was thinking I should start him off on Java but I'm unsure what book would be best? Any suggestions with regards a book or even another language would be much appreciated.

UPDATE: I've went with Python and I'm starting him off with "Snake wrangling for kids".

1
  • I would recommend this book: Python for Kids: A Playful Introduction to Programming. It's the #1 seller in Kids Programming on Amazon. I'm teaching my 12 year old son using this book. He's having fun learning, and it is simple, and so is the Python language environment. He keeps telling me about all the programs he wants to create now!
    – live-love
    Commented Aug 21, 2014 at 13:44

7 Answers 7

12

Lego Mindstorms? http://mindstorms.lego.com Not a book but might be a more fun introduction to programming for a 12 year old.

1
  • 3
    +1: Yes yes yes, this is how I learned (although with the old yellow RCX). With NXT you can also program it in Java, python and other programming languages. Commented Aug 12, 2010 at 22:56
8

Head First Java is a great book for any new Java programmer. It has lots of pictures, fun quips and puzzles to solve. Definitely worth the buy.

1
  • +1 for the Head First recommendation :)
    – Jose Diaz
    Commented Aug 12, 2010 at 22:53
5

I found Python to be really easy to learn at first. This is a great, fun book for it. Just make sure he has fun!

3
  • 1
    Yeah, the idea I want to get across is that programming is fun. It may be tedious or even boring at first but once you realise the things you can do it becomes amazing.
    – Aidanc
    Commented Aug 12, 2010 at 22:56
  • 1
    I'd encourage him to use Python to solve Project Euler problems. I thoroughly enjoy crafting clever scripts for that. :)
    – Mike
    Commented Aug 12, 2010 at 22:57
  • 1
    +1 Python. Don't let a compiler ruin the fun :)
    – tarn
    Commented Aug 13, 2010 at 0:26
3

I'm way past 12 and didn't write my first Fortran program until I was 17, so I may not be an authority.

But I suspect Python is a better start than Java, and this book looks appropriate.

2

If your brother plays any PC games, you might check to see if any of them are moddable. Many games these days come with scripted campaign editors or have python scripts underlying them that you can modify. They are a great way to get involved with the basic concepts behind programming, as your brother can get pretty immediate feedback in an environment that's already very interesting to him.

It may not be 'programming' per se, but it's an exercise in instructing the computer to do what you want, which requires a clear intention and some work and investigation to actually achieve what you've intended. If he develops that mindset, then more general programming in a more complex environment follows naturally.

1

I would go (as you did) with Python. Java seems to be overengineered (as Steve Yegge described) -- especially for 12 year old kid.

Hello World: Computer Programmer for Kids and Other Beginners seems to be good choice -- it was even written by some kid about 12 year old and his father.

On Hello World: Computer Programmer for Kids and Other Beginners is even written that this is perfect book for 12 year old :).

Both authors where interviewed by Scott Hanselman -- worth to listen.

0

I too can recommend the Head First series.

You could try "Head First Programming". It uses some python though.

Not the answer you're looking for? Browse other questions tagged or ask your own question.