O'Reilly From the Editors List
BooksSafari BookshelfConferencesO'Reilly NetworkO'Reilly GearLearning Lab
 



Which Programming Language?

Edited by chromatic
March 2004

When you know a few programming languages, it's easier to analyze and pick up new ones. If you don't know anything about programming, where do you start? A recent thread on the editors list discusses what young people should look for, and how, when learning to program.

Jonathan Gennick:

If your 12-year-old cousin suddenly decided he wanted to learn to write programs, and came to you asking advice on which programming language to learn, what would you suggest and why?

And, uh, related to this question, if he's dead-set on playing with C++, are there any good, introductory C++ books that you would recommend?

Bruce Epstein:

When in doubt, ask the kid what he wants to do. From there, you can pick a language. If he wants to do animation and games, Flash and Director both have relatively easy-to-use scripting languages and lots of support to do cool stuff. (Free trials are available.)

OTOH, if he wants to learn the syntax of a language, he may grok that fully only to be frustrated by having to learn a large library to accomplish something interesting.

I'd recommend starting with a task. Creating tic-tac-toe is pretty hard. Maybe start with hangman. Or maybe he wants to create am IM client or use the Google API.

I'm increasingly convinced that the best way to learn is organically, the way we learn to speak (and to a lesser extent, to read and write).

I'm currently learning Hebrew and can say the following:

  1. It is extremely difficult to read and write a language you don't speak. All the words are unfamiliar.
  2. It is extremely difficult to read words letter-by-letter. You really need to learn to recognize words and phrases to get good.
  3. It is very difficult to learn the way things are taught in school. Look for the way things are taught on the ball fields and at the mall (kids just absorbing stuff from exposure with their peers) and you'll have your best hint at the most effective learning style.

So:

  1. Start with a goal in mind.
  2. Learn in small chunks until the larger chunks make sense, but don't ignore the larger chunks to focus on the miniscule chunks.
  3. Keep a peer or mentor nearby to teach iteratively. You need not learn everything at once.

Mary Hubben:

Dear ol' Frank had something to say about it:

Frankly Speaking: Web Design Languages

Daniel Steinberg:

Mike Clark did a nice piece for java.net on using StarLogo. I'm a fan of using Squeak and their eToys as well. I think that what traditional Logo was (a starter language and environment for Procedural Programming) Squeak is for OO.

Dan Woods:

I note that the kid who wrote in to Frank a few years back was seeking to prepare himself for a career. But what about the kid who just wants to learn, explore, build something cool, hack?

I sometimes think it would be a cool experiment to find a teen editor to help shape a series aimed at the 10 - 16 year olds with an appetite for cool hacks (defined by a teen's take on "cool"). Through my daughters, I see a lot of kids who aren't yet interested in mapping out a career in tech or otherwise abandoning music, sports, boys, whatever. . . . They're not junior computer scientists or geek wannabees; they're just kids who have been attracted to computers because of music, Napster, games, IM, and VOIP, and they like to learn and share cool things that they figure they won't learn from their dad. Just as some of our Hacks titles have ignited the imaginations of a lot of adults who otherwise wouldn't pick up a "geek" book, I wonder if there might not be an opportunity for a teen hacks concept that would maybe build a bridge between the computer clubbers and mainstream teens. If the "hacks" are cool enough, who knows, they just might learn some PHP or PERL. God help us.

Nat Torkington:

I've started my son on a Commodore 64 emulator. We're starting with

10 PRINT "WILLIAM"
20 GOTO 10

and going from there. It worked for me :-) I hear Rael's doing Lego Mindstorms with his boy.

Rael Dornfest:

While he can't read yet (that's a hindrance), he's getting the whole drag-and-drop-code-block-into-place thing down.

Return to: From the Editors List



O'Reilly Home | Privacy Policy

© 2007 O'Reilly Media, Inc.
Website: | Customer Service: | Book issues:

All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners.