HyperCard
Apple Computer | |
Initial release | August 11, 1987[1][2] |
---|---|
Final release | 2.4.1
/ 1998 |
Written in | Macintosh, Apple IIGS |
Available in | English |
Type | Hypermedia, software development |
License | Proprietary |
HyperCard is a
HyperCard combines a flat-file database with a graphical, flexible, user-modifiable interface.[3] HyperCard includes a built-in programming language called HyperTalk for manipulating data and the user interface.
This combination of features – a database with simple form layout, flexible support for graphics, and ease of programming – suits HyperCard for many different projects such as rapid application development of applications and databases, interactive applications with no database requirements, command and control systems, and many examples in the demoscene.
HyperCard was originally released in 1987 for $49.95 and was included free with all new Macs sold afterwards.
Overview
Design
The beauty of HyperCard is that it lets people program without having to learn how to write code — what I call "programming for the rest of us". HyperCard has made it possible for people to do things they wouldn't have ever thought of doing in the past without a lot of heavy-duty programming. It's let a lot of non-programmers, like me, into that loop.
David Lingwood, APDA[5]
HyperCard is based on the concept of a "stack" of virtual "cards".[6] Cards hold data, just as they would in a Rolodex card-filing device. Each card contains a set of interactive objects, including text fields, check boxes, buttons, and similar common graphical user interface (GUI) elements. Users browse the stack by navigating from card to card, using built-in navigation features, a powerful search mechanism, or through user-created scripts.[7]
Users build or modify stacks by adding new cards. They place GUI objects on the cards using an interactive layout engine based on a simple drag-and-drop interface.[7] Also, HyperCard includes prototype or template cards called backgrounds; when new cards are created they can refer to one of these background cards, which causes all of the objects on the background to "show through" behind the new card. This way, a stack of cards with a common layout and functionality can be created. The layout engine is similar in concept to a form as used in most rapid application development (RAD) environments such as Borland Delphi, and Microsoft Visual Basic and Visual Studio.
The database features of the HyperCard system are based on the storage of the state of all of the objects on the cards in the physical file representing the stack. The database does not exist as a separate system within the HyperCard stack; no database engine or similar construct exists. Instead, the state of any object in the system is considered to be live and editable at any time. From the HyperCard runtime's perspective, there is no difference between moving a text field on the card and typing into it; both operations simply change the state of the target object within the stack. Such changes are immediately saved when complete, so typing into a field causes that text to be stored to the stack's physical file. The system operates in a largely stateless fashion, with no need to save during operation. This is in common with many database-oriented systems, although somewhat different from document-based applications.
The final key element in HyperCard is the script, a single code-carrying element of every object within the stack. The script is a text field whose contents are interpreted in the HyperTalk language.[7] Like any other property, the script of any object can be edited at any time and changes are saved as soon as they were complete. When the user invokes actions in the GUI, like clicking on a button or typing into a field, these actions are translated into events by the HyperCard runtime. The runtime then examines the script of the object that is the target of the event, like a button, to see if its script object contains the event's code, called a handler. If it does, the HyperTalk engine runs the handler; if it does not, the runtime examines other objects in the visual hierarchy.
External videos | |
---|---|
"HyperCard Mania!" Computer Chronicles, 1987 archive.org (Internet Archive) |
These concepts make up the majority of the HyperCard system; stacks, backgrounds and cards provide a form-like GUI system, the stack file provides
It is this combination of features that also makes HyperCard a powerful hypermedia system. Users can build backgrounds to suit the needs of some system, say a rolodex, and use simple HyperTalk commands to provide buttons to move from place to place within the stack, or provide the same navigation system within the data elements of the UI, like text fields. Using these features, it is easy to build linked systems similar to hypertext links on the Web.[6] Unlike the Web, programming, placement, and browsing are all the same tool. Similar systems have been created for HTML, but traditional Web services are considerably more heavyweight.
HyperTalk
HyperCard contains an
Externals
HyperCard can be extended significantly through the use of external command (XCMD) and external function (XFCN) modules. These are code libraries packaged in a resource fork that integrate into either the system generally or the HyperTalk language specifically; this is an early example of the plug-in concept. Unlike conventional plug-ins, these do not require separate installation before they are available for use; they can be included in a stack, where they are directly available to scripts in that stack.
During HyperCard's peak popularity in the late 1980s, a whole ecosystem of vendors offered thousands of these externals such as HyperTalk compilers, graphing systems, database access, Internet connectivity, and animation. Oracle offered an XCMD that allows HyperCard to directly query Oracle databases on any platform, superseded by
Externals allow access to the Macintosh Toolbox, which contains many lower-level commands and functions not native to HyperTalk, such as control of the serial and ADB ports.
History
Development
HyperCard was created by
Launch
HyperCard was successful almost instantly. The Apple Programmer's and Developer's Association (APDA) said, "HyperCard has been an informational feeding frenzy. From August [1987, when it was announced] to October our phones never stopped ringing. It was a zoo." Within a few months of release, there were multiple HyperCard books and a 50 disk set of public domain stacks.[5] Apple's project managers found HyperCard was being used by a huge number of people, internally and externally. Bug reports and upgrade suggestions continued to flow in, demonstrating its wide variety of users. Since it was also free, it was difficult to justify dedicating engineering resources to improvements in the software. Apple and its mainstream developers understood that HyperCard's user empowerment could reduce the sales of ordinary shrink-wrapped products.[13] Stewart Alsop II speculated that HyperCard might replace Finder as the shell of the Macintosh graphical user interface.[14]
HyperCard 2.0
In late 1989, Kevin Calhoun, then a HyperCard engineer at Apple, led an effort to upgrade the program. This resulted in HyperCard 2.0, released in 1990. The new version included an on-the-fly compiler that greatly increased performance of computationally intensive code, a new debugger and many improvements to the underlying HyperTalk language.
At the same time HyperCard 2.0 was being developed, a separate group within Apple developed and in 1991 released HyperCard IIGS, a version of HyperCard for the Apple IIGS system. Aimed mainly at the education market, HyperCard IIGS has roughly the same feature set as the 1.x versions of Macintosh HyperCard, while adding support for the color graphics abilities of the IIGS. Although stacks (HyperCard program documents) are not binary-compatible, a translator program (another HyperCard stack) allows them to be moved from one platform to the other.
Then, Apple decided that most of its application software packages, including HyperCard, would be the property of a wholly owned subsidiary called
Even after HyperCard was generating revenue, Claris did little to market it. Development continued with minor upgrades, and the first failed attempt to create a third generation of HyperCard. During this period, HyperCard began losing market share. Without several important, basic features, HyperCard authors began moving to systems such as
Apple eventually folded Claris back into the parent company, returning HyperCard to Apple's core engineering group. In 1992, Apple released the eagerly anticipated upgrade of HyperCard 2.2 and included licensed versions of Color Tools and Addmotion II, adding support for color pictures and animations. However, these tools are limited and often cumbersome to use because HyperCard 2.0 lacks true, internal color support.
HyperCard 3.0
Several attempts were made to restart HyperCard development once it returned to Apple. Because of the product's widespread use as a multimedia-authoring tool it was rolled into the
Its final release was in 1998, and it was totally discontinued in March 2004.[18]
HyperCard runs natively only in the
Applications
HyperCard has been used for a range of hypertext and artistic purposes. Before the advent of PowerPoint, HyperCard was often used as a general-purpose presentation program. Examples of HyperCard applications include simple databases, "choose your own adventure"-type games, and educational teaching aids.
Due to its rapid application design facilities, HyperCard was also often used for prototyping applications and sometimes even for version 1.0 implementations. Inside Apple, the QuickTime team was one of HyperCard's biggest customers.
HyperCard has lower hardware requirements than
The prototype and demo of the popular game You Don't Know Jack was written in HyperCard.[22][23] The French auto manufacturer Renault used it to control their inventory system.[6][24]
In Quebec, Canada, HyperCard was used to control a robot arm used to insert and retrieve video disks at the National Film Board CinéRobothèque.
In 1989, Hypercard was used to control the BBC Radiophonic Workshop Studio Network, using a single Macintosh.[25]
HyperCard was used to prototype a fully functional prototype of SIDOCI (one of the first experiments in the world to develop an integrated
Activision, which was until then mainly a game company, saw HyperCard as an entry point into the business market. Changing its name to Mediagenic, it published several major HyperCard-based applications, most notably Danny Goodman's Focal Point,[20] a personal information manager, and Reports For HyperCard, a program by Nine To Five Software that allows users to treat HyperCard as a full database system with robust information viewing and printing features.
The HyperCard-inspired SuperCard for a while included the Roadster plug-in that allowed stacks to be placed inside web pages and viewed by web browsers with an appropriate browser plug-in. There was even a Windows version of this plug-in allowing computers other than Macintoshes to use the plug-in.
Exploits
The first HyperCard virus was discovered in Belgium and the Netherlands in April 1991.[26]
Because HyperCard executed scripts in stacks immediately on opening, it was also one of the first applications susceptible to
Reception
Compute!'s Apple Applications in 1987 stated that HyperCard "may make Macintosh the personal computer of choice". While noting that its large memory requirement made it best suited for computers with 2 MB of memory and hard drives, the magazine predicted that "the smallest programming shop should be able to turn out stackware", especially for using CD-ROMs.[29] Compute! predicted in 1988 that most future Mac software would be developed using HyperCard, if only because using it was so addictive that developers "won't be able to tear themselves away from it long enough to create anything else".[30] Byte in 1989 listed it as among the "Excellence" winners of the Byte Awards. While stating that "like any first entry, it has some flaws", the magazine wrote that "HyperCard opened up a new category of software", and praised Apple for bundling it with every Mac.[31] In 2001 Steve Wozniak called HyperCard "the best program ever written".[32]
Legacy
HyperCard is one of the first products that made use of and popularized the hypertext concept to a large popular base of users.
Jakob Nielsen has pointed out that HyperCard was really only a hypermedia program since its links started from regions on a card, not text objects; actual HTML-style text hyperlinks were possible in later versions, but were awkward to implement and seldom used.[33][34] Deena Larsen programmed links into HyperCard for Marble Springs. Bill Atkinson later lamented that if he had only realized the power of network-oriented stacks, instead of focusing on local stacks on a single machine, HyperCard could have become the first Web browser.[35]
HyperCard saw a loss in popularity with the growth of the World Wide Web, since the Web could handle and deliver data in much the same way as HyperCard without being limited to files on a local
The pointing-finger cursor used for navigating stacks was later used in the first web browsers, as the hyperlink cursor.[39]
The
According to Ward Cunningham, the inventor of Wiki, the wiki concept can be traced back to a HyperCard stack he wrote in the late 1980s.[41][42][43]
In 2017 the Internet Archive established a project to preserve and emulate HyperCard stacks, allowing users to upload their own.[44]
The GUI of the prototype Apple Wizzy Active Lifestyle Telephone was based on HyperCard.[45]
World Wide Web
HyperCard influenced the development of the Web in late 1990 through its influence on Robert Cailliau, who assisted in developing Tim Berners-Lee's first Web browser.[46] Javascript was inspired by HyperTalk.[47]
Although HyperCard stacks do not operate over the Internet, by 1988, at least 300 stacks were publicly available for download from the commercial CompuServe network (which was not connected to the official Internet yet). The system can link phone numbers on a user's computer together and enable them to dial numbers without a modem, using a less expensive piece of hardware, the Hyperdialer.[48]
In this sense, like the Web, it does form an association-based experience of information browsing via links, though not operating remotely over the TCP/IP protocol then. Like the Web, it also allows for the connections of many different kinds of media.
Similar systems
Other companies have offered their own versions. As of 2010[update], four products are available which offer HyperCard-like abilities:
- HyperStudio, one of the first HyperCard clones, is as of 2009[update], developed and published by Software MacKiev.[49]
- LiveCode, published by LiveCode, Ltd., expands greatly on HyperCard's feature set[50] and offers color and a GUI toolkit which can be deployed on many popular platforms (Android, iOS, Classic Macintosh system software, Mac OS X, Windows 98 through 10, and Linux/Unix). LiveCode directly imports extant HyperCard stacks and provides a migration path for stacks still in use.
- SuperCard, the first HyperCard clone, is similar to HyperCard, but with many added features such as: full color support, pixel and vector graphics, a full GUI toolkit, and support for many modern Mac OS X features. It can create both standalone applications and projects that run on the freeware SuperCard Player. SuperCard can also convert extant HyperCard stacks into SuperCard projects. It runs only on Macs.
Past products include:
- SK8 was a "HyperCard killer" developed within Apple but never released. It extends HyperTalk to allow arbitrary objects which allowed it to build complete Mac-like applications (instead of stacks). The project was never released, although the source code was placed in the public domain.
- Hyper DA by Symmetry was a Desk Accessory for classic single-tasked Mac OS that allows viewing HyperCard 1.x stacks as added windows in any extant application, and is also embedded into many Claris products (like MacDraw II) to display their user documentation.
- HyperPad from Brightbill-Roberts is a clone of HyperCard, written for DOS. It makes use of ASCII linedrawing to create the graphics of cards and buttons.
- Plus, later renamed WinPlus, is similar to HyperCard, for Windows and Macintosh.
- 4GLfor database access.
- IBM LinkWay - a mouse-controlled HyperCard-like environment for DOS PCs. It has minimal system requirements, runs in graphics CGA and VGA. It even supported video disc control.[51]
- Asymetrix's Windows application ToolBook resembles HyperCard, and later included an external converter to read HyperCard stacks (the first was a third-party product from Heizer software).
In addition, many of the basic concepts of the original system were later re-used in other forms. Apple built its system-wide scripting engine
AppWare, originally named Serius Developer, is sometimes seen to be similar to HyperCard, as both are rapid application development (RAD) systems. AppWare was sold in the early 90s and worked on both Mac and Windows systems.
Zoomracks, a DOS application with a similar "stack" database metaphor, predates HyperCard by 4 years, which led to a contentious lawsuit against Apple.[citation needed]
See also
References
- ^ a b "Hypercard – How About New Mac Owners", Mac GUI
- ^ "Macworld Expo 1987 Boston", 32by32 Macintosh History from the 1980s, August 11, 1987
- ^ Needle, David (August 11, 1987), "HyperCard: Rumors or Reality", Computer Currents
- ^ USA, Jeff Keyzer from Austin, TX (January 7, 2011), Apple Macintosh SE/30, retrieved November 16, 2015
{{citation}}
: CS1 maint: multiple names: authors list (link) - ^ a b c Lingwood, David (May 23, 1988). "APDA Pinpoints Development Trends in Macintosh Products". InfoWorld (Interview). Vol. 10, no. 21. Interviewed by Stuart J. Johnston. p. S9. Retrieved March 30, 2019.
- ^ a b c Kahney, Leander (August 14, 2002), "HyperCard Forgotten, but Not Gone", Wired, archived from the original on February 6, 2010
- ^ a b c "A Hypercard Primer". InfoWorld. Vol. 11, no. 45. November 6, 1989. p. S3 (sidebar).
- ^ Winograd, Terry (1996), "HyperCard, Director, and Visual Basic", Bringing Design to Software, Addison-Wesley
- ^ Goodman 1988, p. 799.
- ^ DeVoto, Jeanne. "Jeanne's House o' HyperCard". www.jaedworks.com. Retrieved May 9, 2019.
Its string handling is the most flexible I've seen - the language contains primitives for directly addressing any character, word, logical line, or chunk delimited by any character you choose. The natural-language syntax - "wait until the mouse is down", "if it is not a number then beep", "get word 3 to 10 of line 8 of theAnswer", and "go to the last card of this stack" are all legal HyperTalk expressions - makes it a joy to read and easy to maintain.
- ^ a b Bill Atkinson interviewed on the TV show Triangulation on the TWiT.tv network (link)
- ^ Bobker, Steven (November 1988). "The Price of Freedom". MacUser. Vol. 4, no. 11. pp. 63–66.
- MacWorld. Pan MacMillan. Retrieved March 30, 2019.
- ^ Alsop, Stewart II (January 18, 1988). "Apple's Finder: Maturity in UI" (PDF). P.C. Letter. 4 (2): 4–5.
- ^ Foraker, Paul. "Apple's taken HyperCard back from Claris. Here's what they've done with it". MacTech. Vol. 10, no. 3.
Claris also tried an interim scheme of shipping a crippled, low user-level, Home stack, which users could override by typing 'magic' in the message box. There was some confusion between this version and the Player, that had people trying unsuccessfully to type 'magic' in the message box of the Player. The magic in HyperCard 2.2 is all plain and visible.
- ^ Colby, Clifford (September 1996). "HyperCard's new deal: QuickTime authoring". MacWeek.
- ^ Duncan, Geoff (November 2, 1998). "Alas, HyperCard!". TidBits.
- ^ Oren, Tim (March 26, 2004), "A Eulogy for HyperCard", Due diligence (blog), Type pad
- ^ Breen, Christopher (December 1993). "A Spectacle Not To Be Myst". Computer Gaming World. pp. 114, 116. Retrieved March 29, 2016.
- ^ a b HyperCard Mania!. Computer Chronicles, 1987. Stewart Cheifet Productions (archive.org)
- ^ A Brief History of The Whole Earth Catalog Archived March 7, 2021, at the Wayback Machine, Whole Earth
- ^ "You Don't Know Jack For Macintosh (1995)". MobyGames. Retrieved January 23, 2016.
- ^ "Apple HyperCard: Precursor to the First Web Browser". DailyMotion. FORA.TV. January 2, 2015. Retrieved January 23, 2016.
- ^ "Ahead of their time: Nine technologies that came early", IT World, October 26, 2009
- ^ Elen, Richard (February 1989). "MIDI Futures at the BBC (SOS Feb 1989)". Sound on Sound (Feb 1989): 48–54.
- ^ "Latest Mac viral infection hits the stacks: HyperCard affliction turns up in Europe (includes related article on forms virus attacks take)". MacWEEK. April 16, 1991.
- ^ Antivirus software for Macintosh (list), University of Michigan, retrieved March 18, 2010 includes
/mac/util/virus/merryxmaskiller.sit.hqx 8 4/27/93 BinHex4.0,StuffIt3.50 Eliminate a script-based virus called "merryxmas." Requires HyperCard 2.0.
- ^ "HyperCard", Pantechnicon (wiki), CA: UQAM, archived from the original on September 26, 2006
- ^ "Information On A Card". Compute!'s Apple Applications. December 1987. p. 6. Retrieved August 18, 2014.
- ^ Leemon, Sheldon (April 1988). "The Hazards of HyperCard". Compute!. p. 49. Retrieved August 18, 2014.
- ^ "The Byte Awards". Byte. Vol. 14, no. 1. January 1989. p. 327.
- ^ "Wozniak's fireside chat". Macworld. June 22, 2001. Retrieved February 16, 2015.
- ^ "Programming Paradigms, Dr. Dobbs Journal, Jun 1990". Archived from the original on November 30, 2018.
The biggest failing of HyperCard for anyone interested in hypertext is the lack of text links.
- ^ Swaine, Michael. "Programming Paradigms". Dr. Dobb's Journal. Vol. 15, no. June 1990. p. 130.
The biggest failing of HyperCard for anyone interested in hypertext is the lack of text links.
- ^ "HyperCard: What Could Have Been", Wired, August 2002
- ^ Cailliau, Robert, How It Really Happened, Computer, archived from the original on January 6, 2011 (on the WWW proposal).
- ^ Eich, Brendan (1998), JavaScript Bible (3rd ed.), Danny G, archived from the original on April 15, 2008
- ISBN 0-19-286207-3.].
I got a HyperCard manual and looked at it and just basically took the concepts and implemented them in X-windows [sic
- ^ Granneman, Scott, "1987", Computing history 1968–present
- ^ "Part 33: Myst", The Essential 50, 1UP, archived from the original on May 23, 2011
- ^ "Wiki History", C2 (wiki)
- ^ Bruning, Kim, Wikinewsie discusses Wikimania (Interview)
- ^
- Cunningham, Ward; Gage, John, "An Evening in Conversation with the Wiki Inventor", Video, archived from the original on May 7, 2007, retrieved February 9, 2007
- Computer History Museum (April 24, 2006). "Wiki Inventor Ward Cunningham with John Gage". youtube. Retrieved June 25, 2023.
- The Internet Archive.
After our addition of in-browser early Macintosh emulation earlier this year, the Internet Archive now has a lot of emulated Hypercard stacks available for perusal, and we encourage you to upload your own, easily and quickly.
- ^ Dickson, Sonny (April 8, 2019). "Video of Apple's W.A.L.T. in Action - The 1993-Edition iPhone". SonnyDickson. Retrieved April 11, 2019.
- ^ People involved in the WorldWideWeb project
- ^ Dr. Axel Rauschmayer, Speaking JavaScript: An In-Depth Guide for Programmers Archived December 26, 2018, at the Wayback Machine (O'Reilly, 2014)
- ^ Greene, Denise; Greene, Doug (April 11, 1988). "HyperCard:The First Eight Months". InfoWorld. Vol. 10, no. 15. p. 37.
- ^ "HyperStudio". Software MacKiev. Retrieved August 31, 2009.
- ^ "LiveCode is Next Generation of HyperCard". opensource.com. February 23, 2013.
- ^ "IBM LinkWay 2.0".
- ^ "HyperCard comes back from the dead to the web", Slashdot, June 7, 2008
- ^ "Farewell to Tilestack". Archived from the original on January 5, 2020. Retrieved May 14, 2013.
- ^ @tilestack (January 25, 2011). "Farewell. http://tilestack.com" (Tweet) – via Twitter.
- ISBN 978-0814747254. Retrieved January 23, 2016.
Bibliography
- ISBN 0-9665514-2-7
- ISBN 055334577X
External links
- Atkinson, William ‘Bill’; Winkler, Dan (1987), "Demonstrating HyperCard", Computer Chronicles (Interview)
- Collection of emulated HyperCard stacks via the Internet Archive
- A list of HyperCard links, America OnLine, archived from the original on April 30, 2007
- Teach Yourself HyperCard, Folk stream
- HyperCard (PDF) (manual), Apple
- HyperCard and AppleScript (in French), Scripteur, archived from the original on May 18, 2006
- Differsifier, Economy X talk, archived from the original on July 29, 2010; HyperCard conversion utility
- "Why HyperCard Had to Die (includes a section on "A HyperCard walkthrough: making a four-function calculator")". Loper OS. Archived from the original on June 5, 2015. Retrieved June 15, 2015.
- HyperCard online simulator