HyperCard Forgotten, but Not Gone
wired.com
wired.com
Put the first word of the third line of field "hello" into field "goodbye"
(which is actually goodbye = hello.lines[3].words[1]) is ridiculous. The HyperCard phenomenon though is something that should be researched by psychologists, because I myself, too, saw it many times how a complete non-techie gets something working in an hour or two. They get it quickly and "amazing" is just not the word. No other programming tool is as good at that as HyperCard.And like the rest of the old good Apple stuff HyperCard can be traced back to Xerox PARC: that's NoteCards, a Lisp-based hyper-text system, according to Wikipedia.
This style makes it harder to write but easier for novices to read. It's not the tradeoff you would want for serious programming - the training wheels get old fast, but it makes sense if you need or expect lots of novices to read it.
Oh, and there is this cute little story too: http://www.math.psu.edu/clemens/IF/Turing/source.html
HyperCard suffered from a few obvious problems for larger-scale programming. First, it lacked any support for meaningful code structure and re-use. You didn't so much have functions or procedures so much as you had GOTO statements pointing between cards. For simple logic, that may be fine, but for more complicated workflow, the 1:1 mapping between cards and code blocks, and lack of shared state between them, means that non-trivial apps quickly became a mess of HyperTalk and hackish extensions written in C.
Also, it was tightly tied to a number of MacOS platform technologies; at a minimum, building a full clone of HyperCard would have required re-implementing some analogue to QuickDraw, including (IIRC) some undocumented hooks that the engineers at Apple used into the underlying system.
In the end, though, what probably killed HyperCard more than anything else was the rise of the web browser. Many of the basic operations of a HyperCard stack -- linking between discrete pages of data, providing simple interactive widgets and multimedia, and supporting complex layout of text and images -- are extremely well-supported by graphical web browsers, and the fact that resources are stored on the network mean that you don't have to pass around stacks on disk like you did in the HyperCard days.
That being said, there have been periodic efforts to fill the same niche, without continuing to enforce the more baroque limitations that HyperCard had. PythonCard was a very interesting project, but seems to be pretty much dead at this point.
The [Shoes](http://code.whytheluckystiff.net/shoes/) project seems to be a good bit more active at this point. It's still at a pretty early stage in terms of API stability, but _why is one of the more tenacious programmers out there, and the community that has already sprung up around it is impressive.
Unfortunately it doesn't appear to be updated recently.
I think 2 reasons:
1) There are generally fewer open source projects with truly user friendly interfaces (cause its a lot of grinding work). 2) Hypercard made pseudo-programming easier for non programmers. Something that the type of people who tend to work on open source don't always agree with. Heck, if you don't workin in language XYZ, you are vile scum worthy of death, for XYZ <= blub.
Basically, the folks who could write HyperCard aren't the folks who use HyperCard, and when there's no money involved, people will write software that they themselves want to use.
I loved HyperCard (still have some of the reference books on my shelf in case it does come back) but a statement like this is way off base. Tens of thousands of non-professional students and enthusiasts were writing and sharing BASIC programs long before HyperCard and Turbo Pascal was a huge sensation at the time.