I want to point out to anyone who comes here--quickly, while it is still early enough to do some good--that there is a worthy project on Kickstarter that needs a little financial support. A Scottish company called Runtime Revolution, or RunRev for short, wants to clean up the source code for its main product and release it to the world under an Open Source license. The product is a programming environment called LiveCode. All told, it will cost about a half-million dollars to get the thing done. (More exactly, they're asking for £350,000). Go here to pledge.
Of course, you want to know why you should pledge before you start reaching for your wallet. The Kickstarter page has some videos to give an idea of what LiveCode is like. However, to give some idea of the potential of LiveCode made free, I have to tell you a true story.
Back in 1987, Apple Computer released a program called HyperCard. This was the brainchild of Bill Atkinson and Dan Winkler. Atkinson had written the very first Mac application, a paint program called MacPaint. He wanted to enhance it so that people could click on parts of a picture to see details or text descriptions. Dan Winkler created an English-like programming language called Hypertalk so that objects placed on the picture (such as buttons or text fields or backgrounds) could each contain a program. Click the button, and its program would execute. Click the text field, and start typing in it. Have the button's program alter the text in the text field. There were possibilities here.
The pair got the bit between their teeth and added more ideas. Why have only one picture in a file when you could have any number of them, and flip between them like cards in a rolodex? What if each of these cards had two layers, a foreground layer specific to one card and a background layer that can be shared between cards? What if both layers, and the stack of cards itself, were objects that could hold bits of programming?
Finally, what if the HyperCard program were free? What would people do with it?
Well, the pair, somehow, were able to demand that HyperCard be released for free, and the odd program found its audience. At the lowest level, people approached it as a paint program, a slightly advanced MacPaint. Later, they might add text fields to label or describe the painting, or add in an essay or poem or short story. Sound effects and music might come into it. This could involve placing buttons with very simple scripts such as
play "cat's miaow"
Alternatively, the button might have an arrow icon and, when clicked, take the user to the next card in the stack. This script would do the trick:
go to next card
The user would naturally, with increasing confidence, try more and more complicated scripts, or study the scripts of other users, copy and paste buttons from one stack to another, and gradually become expert.
Kids loved to make games with it. Teachers made self-grading tests (I did that), chat programs for the local network, presentation programs (where did the idea for PowerPoint come from, do you think?), and study units. Businesses made information kiosk programs. I did a company handbook, an e-book maker, a multi-file search-and-replace program, a recipe book, and many other programs. In short, I used to say that HyperCard was the only program I needed. These days, with the internet being a big part of everyone's computing life, I'd say that HyperCard and a Web Browser were the only programs I need.
That is, I'd say that if I could still get and run HyperCard. I don't think that Steve Jobs ever really "got" HyperCard, and he axed it in March 2004, when he returned to Apple. I never really forgave him for that. Quite a few others went through the grieving process. Some tried, with mixed success, to recreate the old mixture of paint tools, text tools, stack of cards, and programming language. The most successful of these attempts eventually became LiveCode.
LiveCode's programming language is basically HyperTalk, but with a much larger vocabulary. Many old HyperCard stacks can be imported into LiveCode and simply work; others can be tinkered with until they work again. The paint tools are there, but are in full colour instead of black and white. The programs can be made to work in Windows, Mac, Linux, or on a cell phone or iPad. In other words, LiveCode is, to a great degree, a modern version of HyperCard.
What it lacks, that HyperCard had, is free access to an audience of curious and uncommitted users: children, businessmen, parents, teachers, and other amateurs of every stripe. If LiveCode becomes Open Source, it may get that aspect of HyperCard going, too.