HyperCard, What Could Have Been
bobwrit sends us to Wired for a look back by the author of HyperCard, Bill Atkinson. Quoting: "HyperCard is a programming environment that can create applications as diverse as utilities and games by linking 'cards' arranged into 'stacks.' Commands are executed through a natural-language scripting language called HyperTalk... The software has been phenomenally successful and highly influential. But Atkinson feels that if only he'd realized separate cards and stacks could be linked on different people's machines through the Net — instead of cards and stacks on a particular machine — he would have created the first Internet browser."
Cudda shudda wudda.
Only three things are certain; death, taxes, and apocryphal quotations - Ben Franklin.
"I grew up in a box-centric culture at Apple". Say no more...
Okay, so calling HyperStudio "programming" is a stretch, but it was definitely a gateway drug for it.
Playing Doom on my uncle's computer may have got me interested in computers, but using HyperStudio in elementary school was my first experience with programming and is probably what started me down that path.
.... he missed the mark.
This is not even a hindsight article as the hindsight is still based on speculation.
Of course as things at Apple have evolved in this vain, We have Automator and its phenomenally (cough) successful.....
Of course Hypercard and Automator are platform specific (mac only) but as a comparison to platform agnostic and network-able relatively easy scripting, there is REBOL and specifically REBOL VIEW (if you want to discuss web browsers). But how successful has REBOL become?
What Automator generates under the hood in teh way of files, when a person creates an automation, is incredibly massive. Especially in comparison to the incredibility small scripts of REBOL.
I'm not promoting either here, just presenting a comparison that is relevant to the speculated hindsight of the WIRED article.
No such thing existed at that time. In 1985, the networks were fragmented into dozens of incompatible protocols, the environment which could have made Hypercard into the first web browser simply didn't exist and therefore there was no opportunity to make it into such.
Deleted
if I'd only used those 5 cards to make a net-based hypercard browser instead of going for the royal flush.
That is nothing compared to what happenned with Mac Basic. This is an early case of Bill Gates bullying another company with gross tactics.
In 1989, Arthur van Hoff developed a HyperCard-inspired system called GoodNeWS, written in PostScript, for James Gosling's NeWS window system. Arthur later went on to work at Sun on Java, wrote the Java compiler in Java, the AWT gui toolkit, and the HotJava web browser.
GoodNeWS was later renamed HyperNeWS, then later HyperLook. I went to Glasgow to work with Arthur at the Turing Institute, to develop HyperLook into a product, and I used it to develop the first Unix version of SimCity.
HyperLook was really wonderful, because it combined the strengths of HyperCard with the superior graphics and programmability of PostScript, and the network communication model currently known as AJAX.
I've written down some Ideas for Sugar development environment from HyperLook SimCity, with lots of links and illustrations, relating it with many different programming languages, user interface systems and applications that have inspired me.
Here is just the stuff about HyperLook -- the article goes on further to discuss and compare other technologies I think are interesting and applicable to the OLPC's constructionist education project.
Ideas for Sugar development environment from HyperLook SimCity
I love the ideas behind Smalltalk, EToys and HyperCard, and would like to combine them with ideas from visual programming languages like Robot Odyssey, KidSim, Klik-and-Play, SimAntics, Body Electric/Bounce, Max/MSP/Jitter, etc.
Here are some ideas about HyperLook and other systems, that could be applied to Sugar:
HyperLook was a PostScript-based user interface development environment for the NeWS window system, which Arthur van Hoff created at the Turing Institute in Glasgow. http://www.donhopkins.com/home/catalog/hyperlook/
I helped develop HyperLook into a commercial product, with a editable user interface development environment, as well as a redistributable non-editable runtime, and I used it to port SimCity to Unix, and develop other components and applications . http://www.donhopkins.com/home/catalog/hyperlook/ http://www.donhopkins.com/home/catalog/hyperlook/HyperLook-SimCity.gif
HyperLook was inspired by HyperCard, but it additionally provided a client/server programming model, and more powerful graphics and scripting based on NeWS's object oriented dialect of PostScript. http://www.donhopkins.com/home/catalog/hyperlook/TalkInterfacing.gif
The NeWS window system was like AJAX, but with:
1) PostScript code instead of JavaScript code
2) PostScript graphics instead of DHTML graphics, and
3) PostScript data instead of XML data.
It had a unified programming/graphics/data/networking model based on NeWS's extended multi-threaded object-oriented dialect of PostScript, instead of a hodge-podge of accidental technologies. (Although I will be the first to admit the X11/NeWS merge was quite a hodge-podge and huge-kludge!) NeWS had an object system based on the simple dynamic ideas of Smalltalk, implemented with the PostScript dictionary stack, supporting multiple inheritance and runtime modification of objects and classes. http://www.donhopkins.com/home/catalog/hyperlook/HyperLookInfo10.g
Take a look and feel free: http://www.PieMenu.com
HyperCard was always one of those languages people talked about that sounded made-up to me.
What's an "Internet browser"?
He could have invented a "web browser" easily enough without an "internet" - just having a few computers would have worked just fine.
Max.
hypercard did connect to networks by way of developer written "xcmds". There were usenet, gopher, rpc, ftp, telnet, wais xcmds. There was a project called "spider" from ATG that did link hypercard across a network. However, the ecosystem of network computers was so small in the mid 80's it did not flourish.
It was so easy to use and the program language was incredibly flexible and you could write almost english like statements with it.
I did some amazing stuff with Hypercard when I was in high school. I created several games, though I didn't have the net then and was unable to release them. One of the games was a full blown RPG game (icon like, think early Ultima games) where you moved using arrow keys. I even implemented fake windows using fields so you could select spells and the like. Monsters could cast back at you as well and there were flying fireballs/iceballs that were animated using hypercard script. Another neat innovation was making the card bigger than the screen size (I was a on a Mac Plus at the time). When you neared the edge of the screen it would scroll the viewport with you. There were other neat things like you could walk behind treasure chests and columns if your guy's middle point was above their middle point, or in front if he was below their middle point on the screen. It could also save games out to disk separate from the card and load them in to continue. I wasn't able to finish it, but it was working extraordinarily well. Unfortunatly, my old Conner 80MB drive got corrupted and I lost everything. Months of work blown away thanks to the fragility of System 7.
So that project ruined, I went into making a multiuser home stack since I found the home stack with it kinda of useless and boring. I implemented the ability to have hypercard users and each would have to log in and then would be set permissions to use stacks (scripting, authoring, etc). It also had email that would tell you when someone read your message and later I was able to exent that to network email and even instant messaging when I got a copy of an XCMD that let me send data over the Appletalk network. This was before things like email and instant messaging were available to anyone but college people and researches who had access to this thing called the "Internet". The main screen after logging in had your email, make important notes (Quick notes I called it) and also a "Quick Connect" section that let you launch favorite applications and stacks from the control panel. Lastly, there was an administration application that would let you manage users rights as well as reset passwords and lock or unlock accounts. You could even run reports on their log ins and activity. I still have an earlier copy of the system, before I had networked email and I think I still have the IM test stack I made as well.
The rest of my stuff, including an attempt to recreate the old RPG was lost when I entrusted them, including my copy of the Hypercard application to a Zip drive. Click of death brought back the pain of the original losses and now I have no more copy of Hypercard and I cannot find a replacement or my original disks. Then college came and I was pulled into C programming and what not. But I never forgot Hypercard and many times while working in C, I would lament about how easy the task was to do in Hypercard, and what a grind C made it into.
What I do have, I am tempted to email my stuff to Atkinson, if he still has a public email, to show him what a 14 year old kid was able to do with this thing. Mainly the early version of my multiuser stack, the admin too, and if I still have it, the IM app. I did make one more thing, but it's probably better I never give it to anyone... I made a hypercard virus stack. Not a C virus, it's written in hyperscript and basically it tries to find your other stacks and infect them with itself rendering them useless. I never released it and it was made just to see if it was possible. So yes, Hypercard was extremely powerful and really, I wish it had become the web because it is so freaking easy to use, even compared to web tech we have today.
--Won't that be grand? Computers and the programs will start thinking and the people will stop. - Dr. Walter Gibbs
Strangely enough, HyperCard didn't crush the corporations like Kevin Kelly promised it would:
"HyperCard is uniquely suited for activist causes. It goes without saying that its great ease of use and flexibility favors the underdog. Activist groups have often relied on people power and maneuverability to counteract the brute economic and political force of various Powers-That-Be; HyperCard can enhance both of these advantages."
This quotation is from page 164 of "Signal: Communication Tools for the Information Age," Kevin Kelly, editor. Foreward by Stewart Brand. A Whole Earth Catalog. Point Foundation, 1988.
Anybody old and perverted enough to remember the infamous "HyperCard Smut Stack"?
I still associate nipples with the "ping" sound.
Years ago I was recounting how cool HyperCard was to a group of people at some dot-com trade show, and when I mentioned the HyperCard Smut Stack, one guy (Chuck Farnham) said "oh, I wrote that". My jaw dropped and my eyes bugged out, not only because I happened to run into the author after all those years, but also because he would actually admit to it!
But as it turns out, Chuck has no shame. He used to do bizarre live stunts on Live 105, a San Francisco Bay Area radio station, on the shock jock Alex Bennett Show. He's infamous for some of his other exploits (this is just the tip of the iceberg, most of the other stuff is really not safe for work, let alone live radio):
-Don
Take a look and feel free: http://www.PieMenu.com
Free with every machine. Easy to get into, you could pretty much write pseudocode and tweak the proper bits and you had an actual program.
Yes, it was runtime, no, it wasn't pascal, and no it wasn't app-able.
And as a bone to throw hereabouts, it was open-source-ish. You could set the userlevel to prevent damage and reset it to inspect the source. And you could password all that too, but it was share-able by default.
But you were certainly programming a computer to do something you needed done and wasn't on the shelf.
IMHO (AIDTIAOTO) it was immensely useful and way ahead of its time.
Just ask Robyn and Rand Miller.
"Win treats sysadmins better than users. Mac treats users better than sysadmins. Linux treats everyone like sysadmins."
The Hypercard format was closed and Apple proprietary. I believe Bill Atkinson had intended it to be open, but Apple chose otherwise.
A single platform closed standard was never going to compete with the open, cross-platform network-enabled gopher and then HTTP protocols already spreading across the internet.
If it were otherwise, then Lotus Notes would also have taken over the world...
There's still no one tool that replaces everything that HyperCard did. The genius of HyperCard was that it brought application development to the masses.
I was back in college in the early 90's, and taking a couple of language courses (not computer language). I would download stacks that would quiz me on my vocabulary. When I needed something more specific, in one evening I sat down and put together my own drill stack and, as a bonus, inserted the MacinTalk speech synthesizer to correctly pronounce the words.
HyperCard filled in the software gap for what you couldn't purchase off-the-shelf. When my PC friends used to point out how many thousands more titles were available for the PC, I used to point out that HyperCard filled the gap; if you couldn't find the HyperCard stack you were looking for on a Mac-friendly BBS (and there were tons of stacks out there), then it was a simple matter to author a stack.
Apple never understood HyperCard. At first they gave it away, and then they tried to sell it, which was a mistake. The beauty of it was that everyone had it on their Mac, and everyone eventually opened it up and said, "What the hell is this?" and started poking around with it. Once Apple/Claris shrinkwrapped it, you had to already be sold on the concept of what it was in order to purchase it.
HyperCard encapsulated a lot of pieces that are separate today. It could have been the first web browser because of the hypertext links that allowed you to move between pages within the stack. It was a great animation program, as a precursor to Flash. It was a database. It was the first introduction to scripting that most Mac users had, and professional developers could write extension modules for their stacks to push them further.
It's interesting that SuperCard, the competitor to HyperCard which gained popularity when HyperCard development languished, is still available for the Mac and still being developed. However, at $179, it's not exactly "for the masses".
It gave rise to millions of useless Hypercard stacks, similar to the millions of useless video clips that fill youtube.
Most remembered Hypercard items were the Serial Port tool kit and the Lisp extensions.
There was an unknown error in the submission.
Except for the english-like language, most of HyperCard's features can be simulated on the web using Flash. You just need to adapt the paradigm a bit... e.g. a card in a stack is instead a frame on a (stopped) animation.
:-(
I've remade some of my early crappy games in Flash and released them online. With a bit of a framework (i.e. button components, dialog boxes) you can recapture the same feel and fun while creating stuff. I've chosen to use B&W graphics, but you don't need to be constrained by that...you've got mp3 sound, video, truecolor, etc.
The ultimate step would be for somebody to do an Hypertalk interpreter, so you could use it in a very similar manner as the original. But I suppose Apple's trademarks will prevent that from happening...
The ENIAC Demo Competition
He wrote an application to measure the volume of a Megapodes nest using it.
I found the source on the web a few years back, it's probably around for those of you who want to have a play.
A learning experience is one of those things that say, 'You know that thing you just did? Don't do that.' - D. Adams
My tech skills have never (and I mean never) been inclined towards programming. It was always by far my weakest point. Anything more than a simple shell script has always been beyond me (despite that, I've managed to have a decent career in IT because there are a lot of things other than programming I can do well, fortunately).
Then HyperCard came out. It is still the only programming environment that I understood immediately. Within a few months, I'd produced several applications of varying usefulness (a guitar tuner, a lotto application that automatically tailored to each state's game, and a train layout app) that I happily posted around for downloading and even got a few dollars for. I re-wrote my resume as a stack, and sent it around on a floppy when I was jobhunting (This was before the Mac ghetto era of the early '90s). I could do things with HyperCard that I never was able to master with conventional languages.
Basically, in my eyes, HyperCard was the best chance ever at a programming environment for average people. It had plenty of flaws, and never even properly made the transition to PPC (let alone today's era), but it was an amazing tool - especially for the era. I do still miss it now.
-- Josh Turiel
"2. Do not eat iPod Shuffle."
Hypercard was something of a rip-off of ZoomRacks, a good idea that suffered from coming out on Atari hardware in the 1980s.
Hypercard itself was kind of a neat idea, but its programming language, Hypertalk, was all too much like COBOL. It also had a terrible approach to data access, with forms like FIELD 6 OF CARD 372. If the thing had a relational database model underneath, it could have been very more broadly useful, rather than merely cute.
Hypercard was slower than cold, frozen, Arctic molasses. We could demonstrate a peppy-seeming way to accomplish some serious text collecting, but by the time our client had entered so much data that re-entering it would be prohibitive under deadline constraints, the Fatal Flaw in this stupid equation had emerged: Getting data back OUT in a useful format, even merely the useful task of editing it, was hair-pullingly, exasperatingly, blue air and cusswords SLOW. Hypercard was, in short, a hot app, especially for our unfortunate sales team. The next year we completely rewrote our "prototype" Hypercard stack from scratch as a plain, ordinary Macintosh C program, discovering event loops and everything, and recovered some good will from Sales, but many of those first-year clients had been burned so badly they never came back, and since the community of users tended to talk to each other, we had about two years to get our new programming right before it had to to matter again; to this day, I still regard Caroline Rose and Inside Macintosh as my personal saviors.
``Tension, apprehension & dissension have begun!'' - Duffy Wyg&, in Alfred Bester's _The Demolished Man_
I remember back when I was 10 or so in the early/mid 90s I helped my dad set up an appletalk localtalk network throughout my whole house. It was just crappy speaker wire on a bus typology style network and it was slow as anything, but it allowed us to move files around and do all that other "network" stuff (which back in the day wasn't all that much). I thought this article was interesting because at one point I actually did write a series of hypercard stacks that I called the "internet". I would run one on our "server" which was actually just an old mac classic and a different stack on each of the other computers in our house. The stacks would link to the cards in the stack on the "server" and it allowed me to set up a very simple internal email system. I think I even rigged something up to use hypercard as an instant messenger at one point. The idea came after my cat fell out of the second story window because me and my sister used to send messages to eachother's rooms using a pice of yarn and a sticky note. (The cat slept in the window and we didn't secure the screen afterwards) Looking back, the whole implementation was pretty silly but I definitely know first hand that hypercard could have taken off in a different direction. As a 10 year old, I stretched the networking capabilities of hypercard but if someone had caught on to those earlier hypercard may have been synonymous with webpages and hypercard with javascript.
If I recall, Hypercard stacks could do pretty much anything they wanted to on your computer. We could have had the ActiveX security nightmare years earlier.
"But Atkinson feels that if only he'd realized separate cards and stacks could be linked on different people's machines through the Net... he would have created the first Internet browser."
Yes. And if Atkinson's aunt had balls she would be his uncle.
Looking back, the crucial steps from HyperCard to World Wide Web seem minor, but, back then, those critical steps would have been huge mental leaps.
Atkinson didn't even come close. Hypertext developers working in the 1960's were just as close to creating the WWW as Atkinson was two decades later: http://en.wikipedia.org/wiki/Hypertext#The_invention_of_hypertext All they had to do was make the same "connection" between Hypertext and computer networking that existed in the 1960s.
This article is just another Apple adoration piece that is full of misguided and dubious notions.
the On-Line System did hyperlinked text over a network.
Does this guy have a different definition of "web browser?" Granted, HyperCard would have worked over modern networks, but it also would have worked on a proprietary technology running on a single OS, making it more like the first AOL than the first web browser.
That virus sounds interesting; I remember there were a couple of viruses out there for HyperCard; I remember dissecting one of the disinfectant programs and realizing that it worked by trapping the "set" command which (as I recall) was used to infect other stacks or change the info in them. For someone who knew little about computers it was amazing to be able to figure out what an application was doing and how, and even make your own. I made an application to help with writing papers that could store little bits of information (mostly quotations) along with bibliographic citations to use by copying and pasting into a word processor. (I probably should have been just writing the papers at the time but writing the program was way cooler).
One of the coolest apps I remember reading about was from an article in High Times about a guy who was growing weed remotely; he had his garden monitored by X-10 cameras all connected to a Mac plus. He'd dial into his mac from anywhere and connect to a HyperCard stack; from the stack he could see whichever camera angle he wanted and control when the water and/or lights would turn on. He could tell if a light had burned out or whatever, and there was some kind of motion detector that would tell the stack to call his cell if someone entered the facility. All in all, it was pretty clever app illustrating some of HyperCard's possibilities; I can only imagine what could have been done with HyperCard and the Web.
Well, just about the only thing that the Web did differently from previous hypertext systems was that it was open and networked.
So, if only hypercard hadn't been closed and proprietary, and if only Apple networking hadn't sucked badly back then, then it might have succeeded.
Of course, let's not forget that there was very little that was actually new in Hypercard to begin with.
I was taking a Hypercard class at university back in... Probably 93. I believe the class was part of the Journalism dept (for either insightful or random reasons). One day about 1/2 way through the class the prof comes in breathless and excited. He shows us Mosaic, starts explaining how it works. Before the end of the day he's scrapped the curriculum and we've started leaning HTML. (Which at that time took about an afternoon). Hypercard 101 had effectively become a web design class.
I have some nostalgia for Hypercard, but I don't think I touched a stack after that day.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
I started working at a mail order company in 1997. They had no computers, and ran everything manually with paper invoices/etc.
I had learned HyperCard in middle school, and applied my knowledge to a system that would do invoicing, customer database, and shipping. I convinced the owner by purchase some used Mac IIsi computers, and up we went (localtalk phonewire network and all). After a year, I figured out a way to "share" the database between multiple machines: I had updates to customer's cardfiles written as update text files on the server, and other copies of the database would update their records based on these files. We still use this exact system today (11 years later). We have 60,000+ customer records being held in HyperCard stacks.
In 2000, I decided to take our products to the web. We purchased a fibre-optic internet connection, a PowerMac G4, and LiveCard. Using WebSTAR server, and LiveCard with HyperCard, we were able to build an online store for ordering products. We used this system until June 2007, when our online customer database CRASHED. I had already been programming in Runtime Revolution when our webstore crashed, so I ported (in about 2 months) our online HyperCard store to Runtime Revolution's CGI engine and HTML.
If you miss HyperCard, the best replacement I've found is Runtime Revolution's CGI function, Apache, and Linux/Mac OS X. You have to "double code" (ie: write your programming, and write the HTML to interact with it), but this is far faster, more powerful, and better looking that HyperCard ever was. And, you can use the same language as HyperCard.
And of course there's always Xanadu....
Back in the late 1980s, when I was at Bell Labs (not Research), I was on a standards committee for Computer-Aided Logistics Support, trying to standardize computerized documentation formats. The primary directions the committee was working on were SGML for text and some vector graphics standard that I've forgotten for pictures.
SGML was a predecessor to XML, and was an abstract language describing document types that were typically like HTML with whatever markings and objects you needed to define, so we were essentially trying to define a DTD for our documentation.
There were people on the committee who got the "mark up the information content, let the reader's client format it" concept, where objects are things like "a 2nd-level paragraph", and people who didn't get it, and wanted to objects to be things like "a paragraph in 14-point bold-face" or "a page break" because they wanted to electronically represent the typical paper manuals and version control where you needed to replace pages to update the document, even though the manual might be an airplane-engine repair doc that some mechanic is trying to read on a wrist-mounted 24x80 screen while poking around in the engine. You may find this familiar, given the number of people over the past decade who've been trying to make web pages look exactly the way they want even when the user's browser or screen size may not be identical to theirs.
At one point my boss (who was a PhD type, not a Dilbert boss) asked if we needed to be concerned that our presence on the committee might tell competitors the kinds of things we were working on.
My reply was that "Well SGML is an obvious thing to write Hypertext in, so this is the kind of Research they'd expect us to be doing." Sigh - my mental model of hypertext was pretty much Hypercard and similar document packages, and I didn't get the linking-together-multiple-authors bit either
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
The Hupercard was a great idea and had enormous market potential. Too bad they chose the wrong platform. If a PC version had been available, it would have . . . oh well, it's only money.
I like the concept of Stackware such as HyperCard. I personally have programmed and maintain an Application built in RunRev that has a custom designed pixel-true layout of the UI. Aside from the strange language associated with RunRev ('Transscript') which is something like "Lingo done right" (Yeah, I know how bizar that sounds) it is a neat concept and lets you roll procedural, extremely visual oriented apps with zero fuss. Building my App in something like Java would have been a Nightmare.
However, working with Stackware only takes you so far and only if you plan your application well. Stackware is the anti-thesis of object-orientation (visual objects aside) and the virutal machines used for existing solutions are performance hogs as soon as it goes beyond trivial applications.
As soon as serious componentisation and scalability is required, Stackware solutions hit a brick wall - especially if they use a programming language that tries to ape the english language. Which in the end is impossible to do.
Stackware still enjoys it's ecological niche in the programming world - and for good reasons too. The community hasn't changed or evolved that much since HyperCard, but it still is alive and kicking. Which goes to show that it still has it's place. However, as soon as an application leaves the desktop and becomes distributed, or based on working, documented, standardised technology, the air gets very thin for this sort of solution. No matter how step the learning curve and how difficult the preperation for an application in a classic programming technology may seem at first sight. It allways has been that way and allways will be.
Bottom line: Stackware is neat and fine and dandy, and there's no thing like it when it comes to definite frozen-speced custom specialised GUI Apps for vertical markets. Anything beyond that is much better served with regular PLs or even the most obscure OSS scritping enviroment, be it Java/Swing or Perl/TK or whatever.
We suffer more in our imagination than in reality. - Seneca
The lack of HyperCard (both creation and execution) is why I didn't buy a Newton. I had (and have) no use for most (if not all) of the apps bundled into PDAs, but the ability to create my own would have sold me one in a NY minute.
BTW, how easy is it to dump apps from (?whatever)ROM on current PDAs and add things of more interest to me in the freed space?
This worthless comment has 32 thread-hijacking replies because the moderators aren't doing their job.
When someone tries to sneak in a quick one-liner as the first post (as is the case with most stories) it's not "Funny", it's LAME. Please moderate it as such.
I spent over 10 years creating about 100 business applications in HyperCard. Nabisco's Buena Park Bakery essentially ran on HyperCard, with everything from Time Clocks, Attendance Tracking (Voice Response), Case Counters, Oven Controls, Real Time Line Efficiency, thru a VERY SOPHISTICATED Statistical Process Control System that was language independent and used by factories in 5 countries.
All of the systems were networked and the HyperCard Stacks communicated through AppleEvents. If you look at SOA today, I had a significant implementation over a decade ago with HyperCard. But instead of XML-RPC, it was CSV-AppleEvent based.
The downside was people needed Macs to participate, and Nabisco's IT Dept was very anti-Apple. When the web came, I created a CGI to link HTTP Requests to AppleEvents, and BINGO, Accountants with PCs could suddenly see all the Mac data in their browsers. I didn't even have to change any of the HyperCard code.
HyperCard more than lived up to its dream. One person could create a masterpiece with it, and many did. But the business model of "Open and Free" eventually worked against it. Commercial Software Developers didn't take to it because it was easy to see the code and create derivative works (really easy). Corporate IT Departments were all in bed with IBM and later Microsoft, and weren't about to allow the spread of Macs in general business. And People from Apple came to see the Bakery and were very, very impressed, except HyperCard wasn't pushing any of their current marketing initiatives.
Bill Atkinson did not miss anything in HyperCard's design. The original screen size limitations were overcome in later versions (I would frequently fill a 2-page display with a real time monitoring stack, displaying charts and graphs with detailed drill downs. Exactly like today's Business Intelligence apps). The interpreted code seemed slow on a MacPlus, but turned out to be its core strength. Any Mac sold in the 90s ran HyperCard very fast, and a library of XCMDs allowed you do just about anything you'd do in a Mac Application. And because of how the interpreted code was handled (scripts were objects), I was able to make significant use of a "Self Modifying Code" architecture.
About the only thing missing from HyperCard was critical transition to OS X.
Only three things are certain; death, taxes, and apocryphal quotations - Ben Franklin.
The layout of the page doesn't make it clear that Kelly was talking about "revolution". The "revolution" quote seems to be an excerpt from one of the two listed newsletters (Windoid/AHUG [Apple Computer, M/S 27AQ, 20525 Mariani Boulevard, Cupertino, CA 95014] or Open Stack [Walking Shadow Press, P.O. Box 2092, Saratoga, CA 95071]).
The full quote is:
Kelly's review of HyperCard follows:
"The fight for freedom has only just begun." - Geert Wilders
Color WAS considered, but to do animations and the other things HyperCard did in B&W requires several offscreen bitmaps. They're not too intensive at 1 bit per pixel (640x480x1, or 38K), but downright prohibitive on the hardware of the time when done in color (640x480x24, or 0.9MB). Keep in mind that a color-capable Mac II (vintage 1987, same as HC) only had 1 megabyte of RAM standard, so one full-color bitmap for one stack would have needed ALL of the memory in the computer.
People forget just how far computers have come, when today's computers have 512MB just on the graphics card...
Michael Long, Nine To Five Software, Reports for HyperCard.
Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
Should have tried Reports for HyperCard. Super fast searching, sorting, report layouts, labels, mail merge, row/column views, you name it, it did it. It understood the HC file format, and effectively bulk-loaded entire sections of the stack into ram for searching.
Claris was once interested in acquiring it, but didn't when they decided it would have too much of an impact on FileMaker. Ran rings around the silly thing.
Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
It's not even a 1.0 release yet (0.8.2), but I think it's an interesting development, combining the stacks of Hypercard with the popular language Python.
I'm out of software engineering now, so I don't have much use for it besides as a toy... has anybody tried it out?
From interview with John Sculley at http://news.com.com/2008-7351-5085423.html
Q: Any missed opportunities that you wish you could do over?
A: As I look back on things that I wished we would have done differently when I was at Apple, I think one of the biggest missed opportunities, and it was on my watch, so I feel responsible and disappointed that we didn't do more with it, was Hypercard. It was created back in 1987 by Bill Atkinson, Apple's first software programmer. We could never figure out exactly what it was. We thought it was a prototyping tool. We thought it was a database tool. It was actually used by people as a front-end communications device for TCP/IP to connect the Internet to large Cray computers. We weren't insightful enough to recognize that what we had inside of Hypercard, essentially, was everything that later was developed so successfully by Tim Berners-Lee with HTTP (Hypertext Transfer Protocol) and HTML (Hypertext Markup Language). We didn't call it that. But essentially, we had all that hypertext, radio buttons and linking capability architected in the original Hypercard. In hindsight, I wish Apple had recognized that we had a huge opportunity to go take our user interface culture, and our know-how, and applied it to the Internet. I think we would have had a very different story for Apple during the 1990s. But that, of course, is hindsight.
The real problem with HC was the Cupertino lockin mentality. They have always had this tension between a software group, which would, if left to its own devices and tasked with maximizing the business, sell on all platforms - third party hardware in the case of the OS, or Windows and Unix as well as Mac OS in the case of Hypercard. They've even had the same tension with hardware - if they cut the hardware group loose, they would probably sell millions of designer computers with Windows rather than OSX preinstalled.
You can see the potential realized in the case of Filemaker. When released to Windows, it turned into a real business and did not hurt the Mac at all. You can also see it in the case of iTunes. But with Hypercard, the mania for Mac-only solutions to promote the sale of Macs resulted in the destruction of what could have been a great standalone business unit. In effect, Apple forced the creation of Visual Basic, and then forced people to take it up, by denying them the product they would have bought if they Apple had just made it available. E-World was the same blinkered and doomed thinking. And in the early days of Classic, in effect they forced people who wanted computers to Windows, when they would probably rather have, many of them, had Macs. Apple could not meet the demand, and would not meet the price. But the customers had to have computers, so they bought from people who would sell to them. Who can blame them?
In a typical show of pique, they then killed HC rather than, for instance, open source it. The attitude seems to have been that if we could not make it work, and make it work on our platforms only, then no-one should have it. In case they made something of it?
Apple has done well in recent years. But nothing like as well as it could have done if it had bent its efforts to allowing the really creative groups in Apple to form business units and take their products to market and follow the trail of demand. And if it had stopped spending so much energy on stopping people buying Apple products because their requirements did not exactly fit in all respects with the Cupertino model of what they should be.
If we look at the recent results in absolute terms, it seems a great story. If we look at what could have been, its the record of a company consistently failing to realize the potential of its own creativity. Crippling it, in fact.
The essential conceptual failure is the failure to appreciate that the fact that something is impossible to run on non-Apple systems is not a benefit to the Apple user. It applies to OSX as much as to e-world as to Filemaker. Its a focus on delivering what you think is your prime quality, integration, while failing to see that your real strength is as an innovator and business segment creator.
Yeah. It never pays to be an early adopter.
``Tension, apprehension & dissension have begun!'' - Duffy Wyg&, in Alfred Bester's _The Demolished Man_
One of HyperCard's successors is Runtime Revolution; I call it "HyperCard on steroids". RR has all the functionality of HyperCard and then some! It runs on Mac, Windows, Linux, and can compile standalone apps for Mac (X and classic), Windows, Linux.
I use Runtime Revolution to teach middle school kids how to program, much as I used HyperCard a decade ago. The kids don't think it's a "real" programming environment because it isn't painfully hard to use; the syntax is too easy. Compare, for example, the programming needed to increment a variable called score in various languages: := score + 1;
> score++;
> score+=1;
> score = score + 1;
> score
> score = score + 1
> (add score 1)
and in Revolution:
> add 1 to score
My students are up and running, creating event-driven, multi-threaded apps with beautiful user interfaces in very little time. And they don't think this is a "real" programming language? Maybe that's why HyperCard never caught on: it was too easy.
Lots of folks discovered programming through HyperCard for two reasons: it was easy, and it was free. Runtime Revolution has a fairly gentle learning curve, but it's not free. That could be why it's not more popular. Apple may not be interesting in bundling it with new computers because they don't stand to make any money off it. The folks at RunRev may not be interested in creating a (limited) free version to bundle with Macs because they won't make money off of it. But, gee, I wish they would!
In the late 1980's I didn't think much of Macs until I noticed HyperCard. I soon realised that it was a unique tool that allowed even a non-programmer like me to create attractive and efficient solutions for tasks that weren't addressed by existing applications. I saw it, spotted it's potential and then tried using it on a Mac that I had occasional access to.
HyperCard was the main reason why I then bought my first Mac in 1989 and I used it extensively until Apple left it out to die through neglect.
Even to this day, there still isn't a proper equivalent to HyperCard and I think that abandoning it was one of Apple's biggest mistakes. These days Apple defines creativity for ordinary users by means of the iApps, it could have been offering a 21st century solution for writing custom applications too if it hadn't thrown it away.
I can not talk for REXX on OS/2 (and other IBM systems) but for ARexx, which, indeed, was incredibly successfull on the AmigaOS. To be nearly as scriptable as Emacs is was not a killer feature for an editor on AmigaOS but the rule (still can't defeat Emacs in programmability). Same for a file-manager. Or an email/news-client. Or a web-browser. As for the web-browser, you could control the webdocument by Javascript (as we all know), but you could control the browser by ARexx.
And there is the Windows Script Host with ActiveScripting and ActiveX. I like to use it on WinXP.
I wonder if "TileStack" is going to be Mac Exclusive? I'm assuming that it is. If it can run on Windows I might take a look at it.
Please, refrain from making a flippant reply dissing Windows and endorsing Linux. I know how great Linux is already.
Conserve Oil, Recycle, Boycott Walmart
It was fun! I don't quite recall the year but around 5th or 6th grade (an american school) We were given many fun jobs to do in HyperCard. I had already been having a bunch of fun at home on an IBM PS/2 Model 50z, with things like GEOWORKS, and dialing in to AOL 1.4 with my 9600 baud XOOM modem. HyperCard was a fun new challenge! I quickly learned to 'hack' in HyperCard, doing things like learning from the Animation code in the examples and applying it to my own projects, which impressed the instructor. I was suddenly teaching the instructor and referred to by the instructor when other students asked how to 'make things move like that skateboard'.
Ah yes! those were the days....