In the past two Retro Apple articles, I’ve highlighted hardware from Apple that made an impact on the tech industry as a whole: the Apple QuickTake 100 Digital Camera, and the Apple Newton MessagePad 2100. Today, I’ll talk about an Apple software product that changed the world and sadly no longer exists: HyperCard.
The Roots of HyperCard
HyperCard was a powerful, yet extremely easy to use tool for creating “stacks” — essentially flat-file databases that used hyperlinks as a way of navigating a stack of “cards”. You have to understand that at the time HyperCard was first released in 1987, there was no World Wide Web, so the concept of hyperlinks was completely new. HyperCard not only got a lot of Mac fans started in programming, but it also inspired some of the tools that we take for granted today.
HyperCard development began when Bill Atkinson, one of the key designers of the graphic user interface of the Mac, envisioned the system of linked cards during an LSD trip. He referred to the first version as WildCard, but as fellow Apple employee Dan Winkler began work on the HyperTalk scripting language that would let users assign actions to objects, the name was changed to HyperCard.
While the Apple product no longer exists except on pre-macOS Macs and collector Apple IIGS machines, its legacy lives on.
HyperCard existed as an Apple product for Mac and Apple IIGS until 2004. You could purchase it for $49.95, but most Mac owners got it for free as it was included with every new Mac. By the time HyperCard was dropped as a product, the need for such a tool had largely been replaced by the World Wide Web. Instead of standalone stacks, the Web linked people using internet browsers like Netscape or the dreadful Internet Explorer to web pages hosted on servers.
Why was HyperCard so incredible? It made it possible for just about anyone to create their own Mac programs. These programs were basically limited only by the imagination of “authors” (Apple didn’t use the term “developer” for HyperCard programmers). The original HyperTalk language was interpreted, so complex stacks could be slow in operation, but in 1989, Apple released HyperCard 2.0, which included an on-the-fly HyperTalk compiler for faster operation as well as a built-in debugger.
Apple really wanted everybody to be able to create their own programs, so everything about HyperCard was as non-threatening as possible. Programs were “stacks”, developers were “authors”, and HyperTalk was a “scripting language”. HyperTalk is considered a “high-level object-oriented scripting language”. What amazes me to this date is that this entire development environment originally came on just four double-sided floppy disks.
I was running a Mac-based IT department for a gas pipeline company when HyperCard was first demonstrated at the local Apple office, and the potential of the tool immediately grabbed my attention. Soon after the demonstration, Apple held a one-day seminar with author Danny Goodman at the local office. Goodman had written a book titled “The Complete HyperCard Handbook”, and all attendees not only had a chance to try out HyperCard but got a copy of the book for free. This book is considered to be the best-selling book ever for the Mac platform and was allegedly the fastest-selling computer book in history. Over 650,000 copies were sold, and I know that my copy of the first edition quickly wore out!
Goodman showed us how easy it was to create a stack by taking a blank “card”, adding fields and buttons to it, then writing scripts that reacted to mouse actions or acted on the data entered into a card. What could you use HyperCard and HyperTalk for? Everything and anything.
One common example stack was an address book, but the app lent itself to doing much more. For example, let’s say you wanted to create an interactive textbook. You could create a stack that started with a title screen, then had a table of contents that — when clicked — sent you to a specific chapter or page. Each page could have graphics on it, or perhaps links that brought up a pop-up showing a definition of a word or term. This capability was called HyperMedia at the time, describing the use of links in a media presentation.
A lot of programmers immediately jumped on HyperCard as a tool for prototyping GUIs or creating working demos of full projects. It was so simple to bring up a blank card (screen), add buttons and fields, and then add actions that were either user-initiated (clicking on something) or that ran behind the scenes. For companies that needed self-running computer kiosks, HyperCard was perfect, as a HyperCard stack could be set to run automatically when a Mac booted up.
Don’t think that because HyperCard was easy to use that it wasn’t used by serious developers. The wildly popular 1990s game Myst was created using HyperCard.
Danny Goodman realized that the enormous success of his first book and HyperCard was begging for a follow-on, so he wrote the HyperCard Developer’s Guide. There’s still one copy available on Amazon if anyone is interested!
Inspired by Goodman, I started creating stacks both for my own use and for my company. To begin with, I created some training materials for new employees that used HyperCard’s capabilities to not only train the employees in safety regulations but test them as well.
HyperCard could be extended by the use of XCMDs (External Commands) and XFCNs (External Functions), which were created both by Apple and third-party developers. Our parent company at that time ran our company’s billing system on IBM mainframes, and I remember showing little interest in an XCMD I had heard about that provided mainframe connectivity.
That changed one day when I was working with our billing team and they were frustrated by the lack of progress from the mainframe programmers on a way to process some of the raw information that came in from gas metering sites around the state of Colorado into mailable bills. It occurred to me that I could use the mainframe connectivity XCMD to pull down a raw file from the mainframe, then use HyperScript’s powerful text handling features to parse the data into a .csv file format that could be imported into a Microsoft Excel spreadsheet. The spreadsheets could then be used for billing purposes.
The mainframe programmers balked at this, but when I had the system up and running within a week — when they were expecting it to take at least nine more months to get a mainframe solution working — they told me to go for it. While I won’t go into the details of HyperScript’s text handling, this Wikipedia article does a great job of explaining what was called “chunking” and the “chunk expressions” that made it possible. Oh, and by the way, it took the mainframe programmers more than three years to implement the same features I had running within a week. It’s not that they didn’t have the skill; they just didn’t prioritize our project.
The following video is from hypercard.org, and through a simple example, it shows the process of creating a stack, adding images, linking cards, and doing scripting. Many thanks to Uli Kusterer (@uliwitness) for letting me embed the video here.
HyperCard’s user interface was, for the most part, strictly monochrome. When HyperCard 2.2 appeared in 1992, it incorporated two commercial add-ons that allowed it to support color pictures and animations. Apple had no issues with competitors at that time, so other companies created HyperCard “clones” that boasted features that Apple didn’t add.
One of my favorite clones was SuperCard, which fully supported color and had a lot of power…but of course, it couldn’t really compete with the Web. Fortunately, it is still available from a company called Software Essentials and runs beautifully on macOS. The company provides a discount to anyone with old, original HyperCard materials (packaging, disks, and manuals), and SuperCard can translate old HyperCard stacks into its updated format. Perhaps it’s time for me to get back into SuperCard!
I’ve often thought that a modern-day HyperCard would be the perfect accompaniment to iPhones and iPads, allowing just about everyone to create their own apps without the need for Xcode and a Mac to do development work. Are you listening, Tim Cook?
At one point, there was a thriving cottage industry of commercial stack authors, and I was one of them. Heizer Software ran what was called the “Stack Exchange”, a place for stack authors to sell their wares. Like Apple with the current app stores, Heizer took a cut of each sale to run the store, but authors could make a pretty good living from the sale of popular stacks. The company sent out printed catalogs with descriptions and screenshots of each stack; you’d order through snail mail, then receive floppies (CDs at a later date) with the stack(s) on them.
Try HyperCard on your Current Mac
Perhaps this long look down memory lane has given you the urge to go find a vintage Mac, load it up with System 7 or 8, then fire up a copy of HyperCard. Well, you don’t need to do that – there’s a wonderful emulator on the Internet Archive that runs in a web browser.
- To get a taste of this emulator, point your favorite browser to https://archive.org/details/AppleMacintoshSystem753 then click the green button on the “image”. An emulated Mac running System 7.5.3 – including HyperCard – launches, and you can play with the existing stacks or create your own. You can even run the emulator on your iPhone or iPad!
- If you have a bit more time, there’s also an emulator set up that includes 250MB of various HyperCard stacks from the Berkeley Mac User Group (BMUG). This will take some time to download and start up, so be patient.
Like the Newton MessagePad, which inspired today’s powerful and portable smartphones and tablets, and the QuickTake 100 (the first popular consumer digital camera), HyperCard went on to have an impact on that is still being felt to this day. When you fire up the Mac’s Automator app or work with Shortcuts on iPad or iPhone, you’re seeing a reflection of HyperCard’s capabilities. I hope that this article will inspire readers to not only take a look at HyperCard through the emulator but to try their hand with the modern-day tools to create their own workflows. They may not be as fun as the old HyperCard stacks, but they’re certainly more powerful.