I used to teach students in Years 9 and 10 about HyperCard and HyperTalk - the lack of proper colour tools was a pain, but HyperCard was nevertheless a joy to work with and a fantastic programming environment for students.
I also used Think Pascal with Year 11/12 students. I learnt Pascal at Uni (after suffering a bad case of FORTRAN) and it gave me a great appreciation for clarity and readability of code.
But as they say, that was then, this is now. The world now hums to itself through the Internet, and HyperCard and Think Pascal are relics from a previous life, no longer relevant to computing in the 21st century.
And that is sad, because under OS X, there's no obvious replacement for HyperCard, and no Pascal IDE I would use with students. You can still do Pascal programming on a Mac (using Xcode and FPC or GPC), but it's not something for beginners to tackle. If someone develops a nice IDE suitable to use with high school students (and I'm hoping that LWP by Ingemar Ragnemalm will eventually fill the bill), then Pascal is back on the table, but not before then.
Which leaves me in a quandary about what to do with my senior classes.
Here in New South Wales, senior computing courses have always mandated particular programming languages for students to learn. Once, the choices were BASIC, Pascal or Logo. Now, the Software Design & Development course specifications say:
"The syllabus does not prescribe a single coding language for implementation of programs but advocates a range of high level languages."Sure, except that further into the document we see some pretty interesting specifics. Under "General Language Requirements" we find:
Appropriate Languages:Hmm, Logo's vanished, but I'm not surprised - it was too widely regarded as a child's programming environment (even though it wasn't). But why not C? Or Python?
• Pascal, a structured version of BASIC.
And under "Event Driven Languages" we have:
Appropriate Languages:Hypercard? Someone needs to check their calendar. And where's Javascript? Surely it would have to be the most obvious choice for an event driven language. And all you need is a recent browser and a text editor.
• Visual Basic, Hypercard, Delphi (limited functions only), REALBasic.
Finally, the pièce de resistance, under "Prototyping and Rapid Applications Development":
Appropriate languages:I don't know whether to laugh or cry.
• Visual Basic, Hypercard, Delphi (limited functions only), Access, Filemaker-Pro, REALBasic.