Read other letters about this article
I too learned BASIC, on a TRS-80.
Then taught myself Z-80 assembly.
In university, we were told BASIC
bamaged our drains and we got to
learn Scheme on VT100s.
My son is only 7 and not ready for
programming; but I have thought about
this and have prototyped a Java
environment which enables BASIC-like
simple programming, with easy
LOGO like eye-candy (for feedback).
The student works in Netbeans
on a 'template' Java file which provides the environment.
The student edits the file. The file
provides BASIC-like commands and the
boilerplate main() function; the student
adds to the main() function, though
to the student who is unaware of that
it looks like they are doing "line programming".
(Only by scrolling through the file would they
discover how their sugar-coated functions are
implemented as regular Java methods.)
The template program which provides the
environment can also provide GUI elements
(ie a windowed vs. command-line application)
for graphics, getting button-press events,
mouse X,Y, etc. I've seen some interest from
my kid that I can make GUIs, which is how he
currently relates to the computer (though he's
seen me 'ping' from a command line and asked
me about it).
The student does NOT learn Java concepts here,
and has to deal with the slightly-ugly C-like
syntax of Java (eg semicolons). But the environment
can be extended (eg, add audio primitives like BEEP)
by a parent, is free, supported, has
a clean well-defined language, with nice
support for e.g., strings. Also the parent does not
have to learn eg Logo --a big deal for working
programmers. The intent is supervised
learning; if the kid is mature enough to learn
by themselves, certainly let them learn any
language they want.
David Honig
Irvine CA