It's hard to overstate
the impact of BASIC on the first generation of
people who grew up with computers in the home instead of
encountering
them only later in a time-sharing environment with
professional
operators and administrators.
FWIW: A number of us learned BASIC in
the late 1960s/early 1970s (i.e. before the
microprocessor versions ever appeared as they did not
yet exist). Gates & Allen used it in HS on a PDP-10
with an ASR-33, and I'm their same age. I did the same
thing in JHS and HS on a GE-635 [Mark-II DTSS] and then
later HP2000 [Community Computer Services] - 10 cps
baby, upper case only.
What
I don't know is if the PDP-8 BASIC came before the
PDP-10 version. But the point is that most of the
mini's (no matter
the manufacturer) had an implementation of BASIC in the
late 60s and early 1970s, long before the micro's came
on the scene. I
would later get to know/work with a number of the
people in DEC languages groups and I do know that the syntax
and semantics of the BASIC for RSTS implementation
originally was based on the PDP-10 BASIC (although they
did have some differences).
In fact,
DEC's RSTS/11 and the HP/2100 running BASIC were the two
systems that ended up being used by a lot of small
timesharing shops and eventually on-site at the high
schools that could afford the HW. The
reason being that BASIC became popular on the small
system was it required fewer resources and because it
was primarily interpreted matched. An urban legend is
that when Gates opened in Microsoft in AZ, he bartered
time from the local high school running their RSTS
system for them in return for being able to use it as
their development system [I definitely know that he used
their system, I'm just now sure how he renumerated them
for the computer time].
This is not because BASIC was a high quality language,
especially as
stripped down by Microsoft and other implementors.
It made perfect sense when Gates decided
to implement it for the Altair. And he modeled his
version on the DEC syntax and semantics - because that
was what he knew was used to from the PDP-10, and what
he and Paul had learned first.
Everybody knew there were
bigger, better, or faster languages out there,
but they were priced commercially and marketed at
professionals.
And more importantly, requires many
more resources. Consider UCSD-Pascal, you needed
a disk-based system to run it, be an LSI-11, Apple-IIe,
or CP/M box. The BASIC's often worked out of ROM.
Hey, I can think of implementations of other languages
such as FORTRAN's, C, Cobol, PL/M, PL/1, and eventually
many Pascals for the different micro's, but they all
took more HW to support the edit/compile/link cycle.
The point is that for a
>>hobbyist<<, running BASIC was 'good
enough.' The only HS in the late 1970s that I knew that
could afford a PDP 11/45 and actually ran UNIX on it,
was Lincoln-Sudbury - which is in a high-end suburban
Boston. They also had a lot of help from parents who
per professionals here in Boston working for places like
DEC, DG, Pr1me, Honeywell, and the like. At that time,
I was long gone, but I now my father at my own prep
school in suburban Philadelphia dreamed of an 11/40
class system to run RSTS, but they could not afford it.
So if they wanted off a timesharing service like the
HP/21000, they bought small microprocessor (CP/M or
Apple-II) gear and ran them as a hobbyist would.
At one time, it was
considered good sport to ridicule people whose first programming
language was BASIC;
I'm not so much sure it was that their
first language was BASIC, as much as they did not go
beyond it. I will say that once the HW started to be
able to support more complete languages (such as
Pascal), there was some of that. I used to say the
problem was that they probably learned it in HS and
their teachers did know more.
My own father (who taught me BASIC on
the GE-635 when I was in JHS), knew only BASIC and
FORTRAN because that was what he had learned working
part-time as a 'computer' at Rocketdyne in the late
1950s/early 1960s. By the late 60s, he was the first
'computer teacher' at the prep school when I went (in
Philadelphia, but not that dissimilar to Bill Gates's
experiences in Seattle at a local prep school there).
He taught us what he knew and what he had access to.
Eventually, I outpaced him a bit, and I started to learn
a little assembler for the HP because I was curious.
But I came to a point where I knew way more than he did
before I left HS [BTW: Gates and Allen tell a similar
story - of learning PDP-10 assembler at some point --
advancing ahead of their teachers]. The truth is I
think my Dad was a bit ahead of his time, but he did
not know what he did not know and did know to try
to teach others anything other than BASIC and FORTRAN.
FWIW: I went to CMU and had to be
re-taught - being introduced to Algol, real FORTRAN, IBM
Assembler, APL (and eventually many of other wonders).
BTW: By the mid/late '70s, I had taught my Dad Pascal so
he could use it with USCD-Pascal with his 'advanced
students' now that he had a few Apple-IIe's that could
run it.
after a while I figured
out that this was
a form of hazing, similar to the snotty attitudes adopted by
a
subset of student employees
Point taken... and I there probably was
a lot of those, particularly later once the HW ability
and cost available made it possible to have a choice.
But the problem was that most of the young people had
come from places where the educators that taught them
BASIC did not know better even if they had had enough HW
to do it.
Unfortunately, because the hobbyist and
much of the press for entry-level of the same, touted
BASIC, many did not know better. The fact is I'm still
now sure the HS and JHS are a lot better than they were.
I'll let Steinhart reply, but he wrote
an excellent book recently targeted to just those same
students that what to know more, but frankly their HS
teachers really are not in a position to teach them
properly.
Clem