Joho the Blog » interleaf

August 10, 2012

HyperCard@25

On August 11, 1987, Apple genius Bill Atkinson — and this was before every kid in a clean shirt was a candidate for Apple Genius — held a press conference at MacWorld to unveil HyperCard. I was there.

example of a hypercard stack

I watched Atkinson’s presentation as a PR/marketing guy at a software company, and as an early user of the initial Mac (although my personal machines were CP/M, MS-DOS, and then Windows). As a PR guy, I was awestruck by the skill of the presentation. I remember Atkinson dynamically resizing a bit-mapped graphic and casually mentioning that figuring out on the fly which bits to keep and which to throw out was no small feat. And at the other end of the scale, the range of apps — each beautifully designed, of course — was fantastic.

HyperCard was pitched as a way to hyperlink together a series of graphic cards or screens. The cards had the sort of detail that bitmapped graphics afforded, and that Apple knew how to deliver. Because the cards were bitmapped, they tended to highlight their uniqueness, like the pages of a highly designed magazine, or etchings in a gallery.

Atkinson also pitched HyperCard as a development environment that made some hard things easy. That part of the pitch left me unconvinced. Atkinson emphasized the object-orientation of HyperTalk — I remember him talking about message-passing and inheritance — but it seemed to me as a listener that building a HyperStack (as HyperCard apps were called) was going to be beyond typical end users. (I created a Stack for my company a few months later, with some basic interactivity. Fun.)

Apple killed off HyperCard in 2004, but it remains more than a fond memory to many of us. In fact, some — including Bill Atkinson — have noted how close it was to being a browser before there was a Web. A couple of months ago, Matthew Lasar at Ars Technica wrote:

In an angst-filled 2002 interview, Bill Atkinson confessed to his Big Mistake. If only he had figured out that stacks could be linked through cyberspace, and not just installed on a particular desktop, things would have been different.

“I missed the mark with HyperCard,” Atkinson lamented. “I grew up in a box-centric culture at Apple. If I’d grown up in a network-centric culture, like Sun, HyperCard might have been the first Web browser. My blind spot at Apple prevented me from making HyperCard the first Web browser.”

First of all, we should all give Bill A a big group hug. HyperCard was an awesome act of imagination. Thank you!

But I don’t quite see HyperCard as the precursor to the Web. I think instead it anticipated something later.

HyperCard + network = Awesome, but HyperCard + network != Web browser. The genius of Tim Berners-Lee was not that he built a browser that made the Internet far more usable. TBL’s real genius was that he wrote protocols and standards by which hyperlinked information could be displayed and shared. The HTML standard itself was at best serviceable; it was a specification using an already-existing standard, SGML, that let you specify the elements and structure of particular document types.. TBL went against the trend by making an SGML specification that was so simple that it was derided by the SGML cowboys. That was very smart. Wise, even. But we have the Web today because TBL didn’t start by inventing a browser. He instead said that if you want to have some text be hyperlinked, surround it with a particular mark-up (“<a href= ‘http://pathname.com/page.html’></a>”). And, if you want to write a browser, make sure that it knows how to interpret that markup (and support the protocols). The Web took off because it wasn’t an application, but a specification for how applications could share hyperlinked information. Anyone who wanted to could write applications for displaying hyperlinked documents. And people did

There’s another way HyperCard was not Web minus Network. The Web works off of a word-processing metaphor. HyperCard works off of a page-layout/graphics metaphor. HTML as first written gave authors precious little control over the presentation of the contents: the browser decided where the line endings were, how to wrap text around graphics, and what a first level heading would look like compared to a second level heading. Over time, HTML (especially with CSS) has afforded authors a much higher degree of control over presentation, but the architecture of the Web still reflects the profound split between content and layout. This is how word-processors work, and it’s how SGML worked. HyperCard, on the other hand, comes out of a bitmapped graphics mentality in which the creator gets pinpoint control over the placement of every dot. You can get stunningly beautiful cards this way, but the Web has gained some tremendous advantages because it went the other way.

Let me be clearer. In the old days, WordPerfect was unstructured and Microsoft Word was structured. With WordPerfect, to make a line of text into a subhead you’d insert a marker telling WordPerfect to begin putting the text into boldface, and another marker telling it to stop. You might put in other markers telling it to put the same run of text into a larger font and to underline it. With Word, you’d make a line into a subhead by putting your text caret into it and selecting “subhead” from a pick list. If you wanted to turn all the subheads red, you’d edit the properties of “subhead” and Word would apply the change to everything marked as a subhead. HTML is like Word, not WordPerfect. From this basic decision, HTML has gained tremendous advantages:

  • The structure of pages is important semantic information. A Web with structured pages is smarter than one with bitmaps.

  • Separating content from layout enables the dynamic re-laying out that has become increasingly important as we view pages on more types of devices. If you disagree, tell me how much fun it is to read a full-page pdf on your mobile phone.

  • Structured documents enable many of the benefits of object orientation: Define it once and have all instances update; attach methods to these structures, enable inheritance, etc.

(It’s disappointing to me that Google Docs document programming environment doesn’t take advantage of this. The last time I looked, you can’t attach methods to objects. It’s WordPerfect all over again.)

I should mention that the software company I worked at, Interleaf, created electronic documents that separated content from presentation (with SGML as its model), that treated document elements as objects, and that enabled them to be extended with event-aware methods. These documents worked together over local area networks. So, I think there’s a case to be made that Interleaf’s “active documents” were actually closer to presaging the Web than HyperCard was, although Interleaf made the same mistake of writing an app — and an expensive, proprietary one to boot — rather than a specification. It was great technology, but the act of genius that gave us the Web was about the power of specifications and an architecture independent of the technology that implements it.

HyperCard was a groundbreaking, beautiful, and even thrilling app. Ahead of its time for sure. But the time it was ahead of seems to me to be not so much the Age of the Web as the Age of the App. I don’t know why there isn’t now an app development environment that gives us what HyperCard did. Apparently HyperCard is still ahead of its time.

 


[A few minutes later] Someone’s pointed me to Infinite Canvas as a sort of HyperCard for iPhone…

[An hour later:] A friend suggests using the hashtag #HyperCard25th.

9 Comments »

June 21, 2011

The Argument against Word, Reason #513

Here’s what’s happening with Microsoft Word 2008 on Mac. Note that I am not looking for help. I am merely venting.

1. Redefined heading2 so that it begins with an auto number.

2. Now when I select Normal paragraphs and apply the “number me” button to them, they all turn into heading2’s.

3. Create a new element called Normal-List, defined as beginning with an auto-number.

4. After the fourth instance of heading2, begin my fourth set of Normal-List items.

5. That fourth set continues the numbering from the third set. Select the first item and choose “Restart numbering.” It is a no-op.

6. Try every thing you can think of. Nothing works.

7. Re-open it in LibreOffice (nee Open Office) and fix the goddamn autonumbers.

Q: How many years will it take for Microsoft to get auto-numbering right?
A: How many years are there?

This is especially frustrating since the software company I worked at from 1986-1994, Interleaf, got this right about twenty years ago. AAAaaarrrrrgggggghhhhh.

2 Comments »

July 30, 2009

Annals of No One Cares But Me: Big pixel drivers

During the late 1980s and early 1990s, I had a peculiar interest in two topics just about no one should or does care about: Drivers for unexpected output devices, and bigpixels. These interests were piqued by my place of employment. I worked at Interleaf, an early innovator in electronic publishing. Back in the day, we had to write our own drivers for the rare and expensive high-resolution printers able to show off the high-res, proportionally printed, typeset-quality, text ‘n’ graphic output our software was able to create. So, I naturally used to care about odd output devices — e.g., eventually our software was used to print low-res codes on soda cans — and output composed of huge pixels.

Therefore, I was delighted to read in the Boston Globe about Artaic, a company that uses a computer to translate images into robotically-created mosaics. It’s got it all: An unusual output device that uses macro-scale pixels.

Yay.

[Tags: ]

3 Comments »