8 ms·
Hypercard – Way Too Early
- jacobolus 13y agoI think this blog post is overly caught up on the word “card” – HyperCard “cards” weren’t particularly like the cards inside android or twitter or facebook. Indeed, if HyperCard cards were like anything, it’s web pages, except designed for the limitations of the hardware of the time and targeting only one hardware platform (standard display, etc.) and running on a single non-networked computer. Also, why “way too early”? Too early for what? The most important feature of HyperCard, in my opinion, was that it gave end-users powerful general-purpose tools for programming and solving their own problems, in a way that was easy to get started with. Instead of being locked into someone’s existing program designed with an idealized customer’s needs, any HyperCard user could create or customize a HyperCard stack to suit their own preferences. Unfortunately, tools requiring customer learning and mastery are very difficult to design and implement, and even more difficult to demo and sell. And so our software is designed in a very narrow and limiting fashion. The “cards” in android and facebook and twitter &c. are doing nothing to combat this, and to compare them favorably to HyperCard is in my opinion to completely (and tragically) miss the point of HyperCard. I don’t see any particular signs of this trend toward closed systems reversing; indeed, as more people come online, and giant corporations spend billions of dollars hiring all the smartest people to work on developing software that gives them (the corporations) as much control as possible over uses of computer hardware/software, the popular machines and software systems are only getting more closed and locked down. The web itself is an open and flexible platform, but increasingly people are spending their time in a few centralized and controlled parts of it.
- devindotcom 13y agoYeah, I didn't get that either. To me Hypercard was really basic web with super-simple HTML holding the stacks together. I don't code much these days but I remember fondly all the little games and tools I could make with a little ingenuity and experimentation in Hypercard.
- deleted 13y ago[deleted]
- mbell 13y agoAs an example of how far from the 'card' metaphor you could go using Hypercard: Myst was built in it.
- swdunlop 13y agoI thought the same when I read the article -- they missed the point of the programmability, and some of the downfall of hypercard (it was an unholy mess to sort out a badly written stack.) Sometimes I wonder if the spiritual successor of hypercard was in fact Visual Basic.
- joezydeco 13y agoI believe it was indeed VB. Remember that HyperCard was introduced in 1987 or so, the GUI/WIMP era was just getting started. The learning curve of writing a Macintosh application was incredibly steep - nearly impossible IMO - but here was a way to make a simple point-and-click app that actually did something (write to a file, do some calculations, show information, even talk out the serial port, etc) with a minimal amount of lifting. My first paid piece of software was a point-of-sale application written in HyperCard. And it worked just fine. VB was pretty much the equivalent for Windows, once it came along.
- dahjelle 13y agoHas their been a successor to VB? The web is close in some respects (HTML is easy) and not in others (servers and single-page apps are not). I suppose, in another respect, Excel is a successor for many, though it isn't a good solution for making apps of any sort. Surprisingly, the closest I've seen has been Microsoft's Project Siena[1]. I've not used it extensively, but my 5 or 10 minute made it look like it had the dirt-simple-to-get-started appeal of HyperCard and VB. Anyone know of other "spiritual successors" out there? [1] http://apps.microsoft.com/windows/en-us/app/microsoft-project-siena/5ae47651-e8f3-4e41-aab7-e19ab1b80180 http://apps.microsoft.com/windows/en-us/app/microsoft-projec...
- freehunter 13y agoAs a non-programmer, I've been looking for a VB successor for a long time.
- dahjelle 13y ago
- kabdib 13y agoIf HyperCard had had a good network API, things would have been a lot different. The thing that steamrollered HyperCard was Visual BASIC, which could talk to all kinds of system services, and once it had COM support, could talk to just about anything on the planet. Also, everyone understood BASIC, and HyperTalk, though interesting and easy to use, was very closed and pretty much a toy. Apple's networking APIs weren't very well designed. In fact, you couldn't even get to AppleShare volumes; there wasn't an official API to mount 'em. So I wrote one, and I was still getting occasional email about the Mount XCMD a decade later. Apple just didn't have much vision or follow-through back in the late 80s and early 90s.
- gilgoomesh 13y agoI think it's difficult to point at any one, two or three things about Hypercard that caused it to slowly die. It very much died a death of a thousand cuts. a) It was written quickly by one programmer (Bill Atkinson) who left Apple shortly after and (if rumors are believed) no one else really understood his code. b) It never really adapted to colour displays c) It never adapted to variable size displays d) It had no networking so it couldn't compete with the web e) It didn't run on Windows or Unix so it couldn't compete with the web f) It was closed source and proprietary so it couldn't compete with the web g) The free version of Hypercard was made read-only and lost the ability to write and edit stacks (taking away the entire point of Hypercard) h) XCMDs were a pain to write but required for almost anything (Hypercard's API were never really extended to include new features as the Mac added them) i) Apple themselves stopped using it for all help and tutorials on the Mac so people stopped experiencing its metaphors when they first used their Macs j) Apple moved it to Claris (who killed everything they touched)
- flomo 13y ago> The thing that steamrollered HyperCard was Visual BASIC True from a market standpoint, I recall one of the Mac magazines had an article about jerry-rigging a database front-end in HyperCard, and it was clear it was no VB. However, more similar in spirit to HyperCard was Lotus Notes, with its networked hypertext document databases where data storage was largely abstracted away. That was a proprietary web before there was the web. (However with an awful UI and ugly templates.)
- deleted 13y ago[deleted]
- deleted 13y ago[deleted]
- aytekin 13y agoI had really hard time understanding AVC's point so I searched for hypercard screenshots and found this screen tour: http://www.loper-os.org/?p=568 http://www.loper-os.org/?p=568 It is an IDE to build small visual Mac apps. A card is basically an app.
- shaggyfrog 13y agoA card is more like a screen, not necessarily an app unto itself. Each card can be linked to other cards; buttons can be used to perform transitions between them.
- AlphaGeekZulu 13y agoThe card in HyperCard was not an app, but rather served multiple purposes: First, it was a container for widgets, or, in other words, a canvas for the user interface. If the user interface would not fit in the fixed size screen of the card (it was 640x480px in the beginning and became resizable later on), it could be organized into multiple cards, each containing parts of the ui and with some navigation ui elements to browse between the cards. Second, the card could serve as a database record. In that case the card would contain editable widgets to make a form (for example for addresses), then the card was declared to be a template (in HyperCard notation a "background") and then as many cards were created from that background as database records were required. In that case field-widgets served as database columns, cards as records and backgrounds as tables. Third, the card (and its template-variant, the background) could contain code. Events (like a mousedown etc) were sent by the engine first to the respective widget on the card, then, when not handled, to the card itself, then to its template, then to the stack. The HyperCard stack was the app, and a stack was a collection of cards and cards served as user interface canvas, and, very much depending on the application logic, additionally as code or data containers.
- grkvlt 13y ago> it was 640x480px in the beginning Less than that. Must have been 512x342; as I remember using it on 9" Mac Plus and Classic BW screens?
- abalone 13y agoThere is nothing new about the card metaphor in mobile. The very earliest mobile web app standard, HDML (later WML), used a deck-of-cards metaphor. This was around the mid-90s. "The fundamental building block of HDML content is the card. The user agent displays and allows the user to interact with cards of information. Logically, a user navigates through a series of HDML cards, reviews the contents of each, enters requested information, makes choices, and moves on to another or returns to a previously visited card." - HDML spec [1] I'm not sure what Fred Wilson is getting at with "cards" today (he seems to be lamenting restricted APIs more than anything with the UI paradigm?). But in the HDML era they served a specific purpose: decks could be downloaded over high-latency networks in one shot and navigated offline, instead of waiting for each "page" to load. [1] http://en.wikipedia.org/wiki/Handheld_Device_Markup_Language http://en.wikipedia.org/wiki/Handheld_Device_Markup_Language
- x0n 13y agoYep, I wrote a few apps in WML. Here's someone back in 2000, (fourteen years ago now... wow) making the connection between WML and HyperCard: http://www.wirelessdevnet.com/columns/mar2000/mobdev05.html http://www.wirelessdevnet.com/columns/mar2000/mobdev05.html
- pirateking 13y agoSeems like the author never actually used HyperCard, and is just another trend watcher.
- e12e 13y agoFrom tfa: "I built a few Hypercard based applications in the late 80s and early 90s as I was winding up my programming “career”." That doesn't mean the author built something like Myst, though.
- jaysonelliot 13y agoWatching this demo of what Hypercard could do in 1987, it seems like there are a lot of things that would be great if they were translated into a modern context right now. http://www.youtube.com/watch?v=EMFscTOazS0 http://www.youtube.com/watch?v=EMFscTOazS0
- cadr 13y agoWhich things? Does http://runrev.com/ http://runrev.com/ do them? (I believe it is suppose to be a modern Hypercard.)
- kimjotki2 13y agoHypercard was never too early. I remember some 'dot com' guys building a 'business management suite' in hypercard, maid fortune which evaporated after two years. Hypercard was a mere joke, like applescript.
- AlphaGeekZulu 13y agoHyperCard lives on in LiveCode - with card metaphor, HyperTalk and all. Plus color, images (with alpha channels), regex, (limited) sockets, resolution independence, XML-parsing, IDE for Mac/Win/Nix, compiles to OSX, Win, Nix, iOS, Android. And it is OpenSource, thanks to Kickstarter (Store deployment requires commercial closed source license though). http://livecode.com/ http://livecode.com/
- scj 13y agoIt isn't open source if it discriminates based on endeavour. http://opensource.org/osd-annotated http://opensource.org/osd-annotated
- AlphaGeekZulu 13y agoIt is a dual license model. They offer a commercial license for those developers, who want to distribute their products as closed source (as it seems, exactly this is required by the Apple store).
- thinkcomp 13y agoI've thought a lot about HyperCard. In 1994, when I was in fifth grade, I used HyperCard to make a demo of a program that would allow you to fax a grocery order to a store using a modem after you checked off the items you wanted to buy. Then the store would deliver your order to you. I didn't actually know how to make use of hardware devices like modems, but it was possible to make the user interface work reasonably well on a Macintosh LC II. I was of course bummed that there was no color. (HyperCard was black and white only unless you used proprietary extensions, which could sometimes make things run very slowly.) The author of this post seems to think that HyperCard was "before its time," but it wasn't. It defined its time, and ours. It was a huge part of what made the Mac so appealing to so many people--the ability to sculpt new technology in a custom manner. There was no comparably easy-to-use tool on the PC--Visual Basic didn't come close--and there never would be. The result was that all kinds of Mac owners developed their own stacks that solved exactly whatever problem they thought needed solving; PC owners had to hope that a software company would make something for them. What's sad is that now our computers are so much faster than the LC II I used in fifth grade, but even if they're a hundred times faster, they're certainly not a hundred times easier to develop for. Most fifth graders, even smart ones, probably couldn't write an app in Objective-C that does today the same things a HyperCard stack did in 1994. HTML5 is the next best option, but it's still not as easy. I worked on a prototype of a modern-era web-based HyperCard with a friend, but we stopped working on it because there was no VC interest and it wasn't clear if there would be a good business model. It's a shame, because HyperCard is one of the things that most excited me about computers when I was a kid. I still miss it.
- dahjelle 13y agoDo you think the world has changed such that a modern HyperCard is just not something people would use? Or has the massive influx of "there's an app for that" papered-over the hole in the market?
- thinkcomp 13y agoI think it might be used, but I wonder if anyone would pay. If Apple were run with a different mindset, they might turn XCode into HyperCard again. If Google were run with a different mindset and Android were something other than Java, you might see them build their own HyperCard-style development environment instead of relying on the abomination that is Eclipse.
- jarpineh 13y agoI think what HyperCard got right was easy structured form based editing. You could insert fields into cards and use those as a template. When inputting a field you actually edited a property of an object directly. I can't remember if fields allowed rich text editing nor programmatic access to it, so replacing Word was probably not possible. Creating complex forms and interfaces for data was certainly easier than with web browser. You could start your own solution by simply copying a suitable card. One knowledgeable user could create a powerful app tailored to company's needs and others could build on that. In the browser the presentation, runtime and persistence layers (otherwise known as DOM, JavaScript and the web/LocalStorage) are completely separate. So, you need loads of code to bootstrap your particular version of editable web that HyperCard gave you for free, without any save buttons, serialization protocols or web server and database installs. This seems so basic thing, yet it's so hard to get there in the modern browser. Forms have in their own, peculiar data structure completely unusable for all but simple cases without a clever encoding system and JS data binding. Rich text editing is so unreliable across implementations that you need to get a library like CodeMirror to turn textarea into transformation pipeline simulating the process of input. Saddest part is that the priorities of developers are elsewhere, in building the browser into best consuming platform and a fastest tool to send little snippets of text to social network silos. One of these days I might turn LigthTable into the past version of HyperCard, with the future build in. Since it comes with a browser, server and the JVM there should be more than enough code to replicate functionality of few megabytes of 68000 assembler ;)
- julianpye 13y agoThe whole history is explained nicely by Jakob Nielsen: http://www.nngroup.com/articles/hypertext-history/ http://www.nngroup.com/articles/hypertext-history/ Meanwhile, before Hypercard, there is a notable product: Guide by OWL in Scotland, who were approached by Tim Berners-Lee as his desired candidate for the world wide web. Matsushita had then in an 80s Japanese shopping frenzy bought up OWL (lawyers on the same trip to Scotland went on to buy a couple of distilleries and golf courses in the same week). Japanese management of OWL then turned down Berners-Lee.
- ballard 13y agoSpeaking of Android, there's a neat hacker dude at GOOG that has an unreleased Android-based visual environment based on Squeak complete with animated 3D and 2D examples. It's pretty neat that basically anything in it can be changed, and other bits of code can be imported from the web. Would be a fun environment to build a game in.
- thomasfl 13y agoI spend a lot of time creating hypercard (and supercard) applications 20 years ago, before moving on to web development. HyperCard could not adapt to different screen sizes, and html+css+js is just way more advanced. But the idea of having a development platform that everybody can learn in a few minutes is very good, and could be used inside web sites today.
- blueskin_ 13y agoNowhere does it even define a 'card'. A design style? Individual screens rather than a scrolling document?
- mildtrepidation 13y agoHypercard was my first real programming exposure. Going back and looking at my stacks (which I found many years after forgetting about them) was a humbling lesson in "holy crap, I can't believe I was that terrible at programming." But it definitely did get me interested, and it was really freaking powerful for something we treated like a toy.
- djyaz1200 13y agoLoved it, Hypercard was my first programming experience :)
- wavefunction 13y agoUgh... I worked with a guy who kept complaining that the web of today is "just Hypercard." I did a lot of stuff with Hypercard back in the day and it's such a ridiculous statement that I ended up writing the guy off completely. He was real big on generated code and full of BS in general.
- blt 13y agoLike several other commenters, Hypercard was my first programming-like experience. I don't think I made anything more complex than a series of pages linked together with buttons. It was a great learning tool, easier than HTML where you still have to worry about embedded images and it's difficult to vertically center something.
- protomyth 13y agoI think the important difference between Hypercard and the web is the all-in-one approach to Hypercard. You ship a stack and it works. Single environment and not a huge number of different technologies. I don't think VB killed Hypercard. Apple never got color, networking, etc. working and put no effort into it. Hypercard would have died with or without VB.
- doctorwho 13y agoThis is becoming a common (but idiotic) meme... "Anything that had die hard fans, that didn't succeed - Way Too Early" Maybe it was just bad technology or a bad implementation. If it was really that good (it wasn't) then it would have survived. The fact that nothing of any consequence works this way today is telling. You could only go so far with HyperCard before running into limitations and that's deadly. It was easy for beginners but offered no advantage to experts. Once you graduated beyond HyperCard you could never go back. Market death.