Teaching Children Programming and Linux

Ian Petersen ispeters-Re5JQEeQqe8AvxtiuMwx3w at public.gmane.org
Wed Jul 16 17:10:00 UTC 2008


On Wed, Jul 16, 2008 at 12:41 PM, Lennart Sorensen
<lsorense-1wCw9BSqJbv44Nm34jS7GywD8/FfD2ys at public.gmane.org> wrote:
> On Wed, Jul 16, 2008 at 10:21:11AM -0400, Aaron Vegh wrote:
>> I guess the corollary question would be: what age could/should one get
>> a kid involved in programming? I like the idea of starting a kid on
>> Python or Javascript, but when?
>
> javascript is frustrating mess.  I wouldn't recommend it either.

Javascript is a pretty elegant language, really.  Using Javascript in
the browser is a pain in the ass because of the incompatibilities
between browsers, but that's an API problem, not a language problem.

If you're interested in teaching Javascript, I'd suggest installing
Rhino, the Java-based Javascript interpreter from the Mozilla
foundation.  It comes with a rudimentary Javascript shell that runs at
the command line and it exposes the entire Java API to the scripting
environment.  It's also pretty easy to embed so, if you wanted to, you
could provide a little background magic to suit whatever it is you'd
like to teach your niece.

My own personal anecdote is that I started programming in Logo and
GW-BASIC on an IBM PC Jr. when I was about 9 years old.  My next steps
were Visual Basic, C, C++, Java, Scheme.  Looking back, BASIC was a
terrible language but, as another poster said, it's a straightforward
language that gives you the sense of controlling the machine without
having to fart about with compilers, pointers, or static type safety.
Today I'd probably start with Python or Ruby.  If Ruby sounds
interesting, you could try _why's (Poignant) Guide to Ruby--it's a
book on Ruby provided free of charge on the internet and it's
illustrated with cartoon foxes.

Ian
--
The Toronto Linux Users Group.      Meetings: http://gtalug.org/
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://gtalug.org/wiki/Mailing_lists





More information about the Legacy mailing list