4 ms·
All very true - I also wrote XCMD/XFCN plug-ins back in the day, and my first published technical articles, in MacTutor and Washington Apple Pi magazine, were a
by paulrpotts 7y ago
All very true - I also wrote XCMD/XFCN plug-ins back in the day, and my first published technical articles, in MacTutor and Washington Apple Pi magazine, were about how to do that.
HyperCard had more innovations that I miss. One of them was the ability to paint on the card background and foreground layers separately. This meant that you could cover black pixels in the background with white pixels in the foreground.
The HyperTalk language was kind of an oddball, quirky mess; it was designed to closely resemble English, but this actually tended to make it harder to come up with just the right syntax to do what you wanted. But that object-oriented model was carried over into AppleScript, and the whole scripting model for writing scriptable applications. It was not exactly easy to write code that would follow the OSA scripting model, but applications that supported it could be "puppeted" to do some amazing stuff. For example, I wrote a C++ program in PowerPlant which would "puppet" Quark XPress to generate customized newsletters.
Atkinson deserves a lot of credit for making a 68000 do things people could barely believe could be done without custom graphics hardware, and his whole region model (described in a patent) is amazing. And you can now browse the source code for MacPaint and QuickDraw: https://computerhistory.org/blog/macpaint-and-quickdraw-source-code/ https://computerhistory.org/blog/macpaint-and-quickdraw-sour...
It's not really legible if you don't have some expertise in 68000 assembly language, but even if you don't, it's still a model of clarity and an inspiration.
- jandrese 7y agoHypertalk (the language of HyperCard) had a lot of syntactic sugar, but was pretty easy to get started with even with almost no programming background. For example, a very simple button might have a script that looks like: on mouseUp ask "What is your name?" put it into card field "Name" end mouseUp You could get pretty far by reading scripts and trying things out in Hypercard. I also tend to think that the idea of network aware Hypercard sounds super cool, but would have been a security nightmare. Hypercard wasn't written in an era of adversarial coding, it would have been knocked over 10 different ways every day by hackers. Code and content were heavily mixed together and there was no permission model beyond preventing people from editing your stacks by accident. Every stack or even card you loaded would be downloading and executing code.
- DonHopkins 7y agoHyperCard inspired Arthur van Hoff to develop a network aware version of HyperCard in PostScript for James Gosling's networked-PostScript-based NeWS Window System. It was originally called "GoodNeWS", then called "HyperNeWS", then finally released as a product called "HyperLook", which I worked on with Arthur and used to port SimCity to X11/NeWS on SunOS/Solaris. https://en.wikipedia.org/wiki/Arthur_van_Hoff https://en.wikipedia.org/wiki/Arthur_van_Hoff Arthur later went on to Sun, wrote the Java compiler in Java, developed the AWT user interface toolkit, then formed Marimba with Kim Polesi and Jonathan Payne and others from the original Java team, where they developed Castanet and Bongo. https://www.wired.com/1996/11/es-marimba/ https://www.wired.com/1996/11/es-marimba/ >1996-11-01: Tuning in to Marimba. Kim Polese wants you to upgrade your HTML-based browser to a more interactive, more TV-like, Java-based "tuner" by the name of Castanet. >Marimba's first product, scheduled to be announced in early October, is the punnily named Castanet, which aims to push Java toward its full potential. Java was created to deliver interactive content over distributed networks, and its much-hyped arrival last year promised to completely change the way information and entertainment are delivered electronically. The first popular Java programs have been based on HTML - for example, the Java applets that lend some animation to boring Web pages. But Java doesn't need the Web to fly. It was designed to communicate over any kind of decentralized system. [...] Marimba developed Bongo, a Java-based gui toolkit / user interface editor / graphical environment, inspired by HyperCard (and HyperLook), which they used to develop and distribute interactive user interfaces over Castanet. https://people.apache.org/~jim/NewArchitect/webtech/1997/10/note/index.html https://people.apache.org/~jim/NewArchitect/webtech/1997/10/... >Feel the Beat with Marimba's Bongo, By Chris Baron >In 1996, four programmers from the original Java-development team left Sun to form Marimba and produce industrial-strength Java-development tools for user interface and application administration. Bongo, one of Marimba's two shipping products, allows developers to create either a Java-application interface or a standalone Java-based application called a "presentation." A Bongo presentation resembles a HyperCard stack -- it allows developers to quickly create an application with a sophisticated user interface, but without the tedious programming of directly coding in Java or C/C++. Bongo's nonprogramming, visual approach makes it ideal for producing simple applications that don't involve a lot of processing, such as product demonstrations, user-interface prototypes, and training applications. Bongo is fully integrated with Castanet, Marimba's other product, a technology for remotely installing and updating Java applications. Bongo was unique at the time in that it actually let you edit and dynamically compile scripts for event handlers and "live code" at run-time (in contrast with other tools that required you to recompile and re-run the application to make changes to the user interface), which was made possible by calling back to the Java compiler (which Arthur had written before at Sun, so he knew how to integrate the compiler at runtime like a modern IDE would do). Without the ability to dynamically edit scripts at runtime (easy with an interpreted language like HyperTalk or PostScript or JavaScript, but trickier for a compiled language like Java), you can't hold a candle to HyperCard, because interactive scripting is an essential feature. Danny Goodman, who wrote the book on HyperCard, also wrote a book about Bongo. Arthur later founded Flipboard and JauntVR, and now works at Apple. https://www.amazon.com/Official-Marimba-Guide-Bongo-Goodman/dp/1575212544 https://www.amazon.com/Official-Marimba-Guide-Bongo-Goodman/... I've written lots more about HyperLook, NeWS and SimCity: https://medium.com/@donhopkins/hyperlook-nee-hypernews-nee-goodnews-99f411e58ce4 https://medium.com/@donhopkins/hyperlook-nee-hypernews-nee-g... https://news.ycombinator.com/item?id=19837817 https://news.ycombinator.com/item?id=19837817 https://news.ycombinator.com/item?id=18314265 https://news.ycombinator.com/item?id=18314265 https://news.ycombinator.com/item?id=20182294 https://news.ycombinator.com/item?id=20182294 https://news.ycombinator.com/item?id=19007885 https://news.ycombinator.com/item?id=19007885
- DonHopkins 7y agoOMG WAP! I was a member of Washington Apple Pi from the Apple ][ days. I just loved the meetings and journals (a bunch of which are online). Are you the Paul who worked at Computerland? https://www.wap.org/journal/showcase/ https://www.wap.org/journal/showcase/ To give you an idea of just how exciting and groundbreaking and disruptive HyperCard was, and how many people were going totally and justifiably ape-shit about it when it was released, here are the first mentions of it I could find in just the October 1987 WAP journal, talking about how it was the hit of several Mac trade shows: There was a WAP HyperCARD SIG, and Bill Atkinson even gave a demo of HyperCard at a special WAP meetings! https://www.wap.org/journal/showcase/washingtonapplepijournal198710.pdf https://www.wap.org/journal/showcase/washingtonapplepijourna... Washington Apple Pi Journal, October 1987 HyperCard SIG, Robert C. Platt, page 76: President's Corner by Tom Warrick [...] HyperCard (about which more later) requires a minimum of about 700K of RAM in which to run. If you actually want to run two powerful applications at the same time, you will need the next step up-2.5 megabytes of RAM. [...] [...] Bernie reported that Bill Baldridge has done some interesting work on a HyperCard application which would describe WAP. Tom's picture is already on the HyperCard stack. Bernie hopes to see a complete package at dealers when we have it completed. [...] [...] We ended on a happier note with a demonstration of Bill Atkinson's amazing HyperCard, the hit of the Boston Expo and a program which will no doubt be fully discussed elsewhere in the Journal. [...] With Mac fever, all kinds of people clamored around the Expo floor with Mac tote bags, filling them up with complimentary copies of MacWeek, MacUser, MacWorld, MACazine, The Macintosh Business Letter (premiere edition) and hundreds of flyers being handed out by hawkers dressed in medieval costumes or business suits or T-shirts. Terms like Connectivity, MultiFinder, HyperCard and "stackware developer" were tossed about even more freely. As everyone knows now, HyperCard was the main feature at the Expo; a new programming environment had been introduced. It was programming for "real people", as Jean-Louis Gassée explained it. Super star Bill Atkinson had created a combination operating system shell, database manager and programming environment with this "real person" user interface. No one could seem to clearly describe all that HyperCard could do; but everyone in the know alluded to its potential. John Sculley called it a "personal information tool kit" in Apple's press release. It is an organizer of words, numbers, sounds and pictures into programs coined "stackware". You will see "stackware" everywhere soon (already there are "stackware" downloads on WAP's BBS). You won't fully appreciate HyperCard until you have tried it. Let me warn you, HyperCard screams for memory, so it is a great lead-in for adding 1 meg chips or better yet, CD-ROM. Now, we need some import utilities so we can easily load existing databases into stacks regardless of the delimiters. Jean-Louis Gassée was the Wednesday afternoon speaker. Sporting a three piece suit and diamond earring, he told his audience, "PCs are the wings of the mind" and that they would eventually enrich the quality of human life. He added, that HyperCard would also change the world and the way computers deal with information-in a more human like way. It really did sound like "hype card" might have been a more descriptive name for the software. I think I was supposed to leave that session on a kind of religious high, a Macintosh religious high. However, I was more intent on finding a rest room with less than 25 people in line. The second-strongest impression I came away with was the number of companies that will not be around in two years' time, or that will be back in 10-foot by 10-foot booths instead of large, open displays on the show floor. In databases; for example, 4th Dimension was there solidifying its toehold on the high-end database market. With HyperCard--being distributed free with Macintoshes bought beginning August 11--capturing much of the low-end database market, it is easy to see those two products (along with, perhaps, dBase Mac, which may gain a niche in those businesses where dBase III is king) dividing the Mac database world amongst themselves. I would not want to be a stockholder in Blyth Software (Omnis) or Odesta (Helix). [...] A few other MacWorld impressions: HyperCard was, to most, the hit of the show. It is hard to describe but easy to understand when you see it, which I urge everyone to do. It combines some aspects of a regular low-end database application, FileVision (a graphics database), and hypertext (such as Owl's Guide program). Bill Atkinson and others have put an enormous amount of work into making it very fast. But one of the most impressive capabilities is its "authoring" capability, that will let non-programmers set up programmable database applications without too much difficulty. For those a little more adventurous, HyperTalk is a relatively simple programming language that allows HyperCard to do some pretty sophisticated things. In many respects these "authoring" and programming capabilities represent something of the case of use and power that Applesoft BASIC represented for the Apple II: the return of the weekend programmer. Apple is, as noted above, bundling it free with Macs sold on or after August II, and the list price for us pioneers is $49.95. Special Meeting Saturday November 7, USUHS 9:00 AM until ? Bill Atkinson and friends on HyperCard Definite Maybe! The "Smell" of Mac Expo, by Martin Milrod The Boston MacExpo, August 11-13, '87, had four major themes: big screens, color, accelerator cards and HyperCard. Those have been commented upon elsewhere, and I'll not repeat the technical descriptions in depth. My purpose is to give you the "smell" or personality of the Expo. [...] The last major announced product is HyperCard developed by Bill Atkinson of MacPaint fame. He has been working on HyperCard for three years and it has been described by Bill as the greatest microcomputer announcement since the Macintosh. If you spent three years of your life working on one project. I guess you would like it to be called the greatest product since sliced bread. Acceptance of HyperCard may be hindered by a lack of true understanding of just what it is. It is an innovative product that will eventually integrate graphics, text, music, voice and animation into a programmable interactive environment. It is supposed to allow users to organize data the way humans think and not the way computers impose on the user. It is also described as the first of a new kind of software applications called "stackware." Rolodex style index cards are used to store data and a group of cards is called a "stack." It is based on the idea of a card file, with each card equal to a screen full of information that can be searched and linked together. Searching stacks of millions of cards is reported to be very fast. Since I'm getting confused myself, I will quote from Apple's literature on this product. "You make notes, type, or draw on them just as you might on paper index cards. You can sort cards, browse among them, or quickly find specific information by pointing and clicking on "buttons." "Buttons do specific tasks, such as linking or connecting one card to another. Buttons can also do many other things, such as dialing a phone, printing a report, and even launching other applications." HyperCard also comes with "HyperTalk" which is a powerful English scripting language which permits users to write script directions to buttons. Professional developers can use HyperTalk to control external devices such as videodisc players, on-line information services and CD-ROM drives. HyperCard requires a Macintosh Plus, SE or II with at least 1 meg of RAM, and 2 megs is required if you want to use HyperCard with other applications under MultiFinder. If your still confused you have lots of company. Only time will tell just how useful or great HyperCard really is. Apple will begin bundling it free with all new Macintoshes but it will be available with documentation for $49 to current Macintosh users. Book Reviews, by Robert C. Platt. "The Complete HyperCard Handbook" by Danny Goodman (1987 Bantam Computer Books, 720 pp., $29.95) This book is such a hot seller that copies at each of the B. Dalton's sold out within three days of the book hitting the shelves! HyperCard is a hypertext manager for the Macintosh which Apple will now bundle with each new Macintosh as system software. "Hypertext" in turn is a data base-like concept pioneered by Ted Nelson in a book Literary Machines, which I reviewed in the August 1983 WAP Journal. Hypertext links individual frames of information into a complex web of cross-references, unlike a normal book which is linear from the first page to the last HyperCard implements this concept through a me card metaphor. Each frame is a card that is the shape of an original Mac screen. The user can navigate between frames according to cross-references developed by the author. Cross-references can be symbolized by icons (called buttons.) In addition, cards can be retrieved using a "find" command in the message window in a manner similar to that of a classic data base. Goodman was brought into Apple's HyperCard project at an early stage, and it is no accident that his book is out simultaneously with the product's release. In fact, his book is available before the beta version of a promised Inside HyperCard reference book for programmers. The downside is that Goodman is a bit of a gushing HyperCard evangelist. Along this line, the book includes a gushing forward by John Sculley and a 12 page interview with HyperCard's creator Bill Atkinson. The book devotes most of its pages to the introductory levels of HyperCard--the browsing and authoring levels. In my opinion, Goodman's treatment of HyperTalk, the HyperCard programming language could have used more complete examples. Certainly Goodman does a much better job of presenting authoring than does the Apple manual that is bundled with the HyperCard product. In fairness, I note that Apple promises to distribute a HyperCard Technical Reference through APDA. However, Goodman should have expanded Part 4, "Applying HyperCard and HyperTalk." That section gives the complete listing for a Corporate Directory (a locator map system with "hard links"); a Telephone Logbook (a rolodex which also records individual calls); an Attorney Time Sheet; a "To do" list; a metric/English measurement converter; and a project planner. Although these examples are impressive, I fear that a number of programming subtleties are not covered. On the whole, I recommend the book, despite its hefty price. But be aware that the serious HyperTalk programmer will need more documentation than just this book. (Ed. Note: Rich Wasserstrom has arranged a group purchase on this book and it is available at the office for $17.95 plus tax, while the supply lasts.) Data Bases Bill Amon on 09/03 At 4:30 pm today (Thursday, Sept. 3), Ashton-Tate issued a news release indicating that dBASE Mac is now shipping. The last beta version was 1.0x1l4. I understand that they already have an order backlog of 10,000 copies! I asked about what the final version's performance situation was--according to product development, there are substantial improvements. I'll be getting my copy within a week or two and I'll let you all know! For David Gursky--yes--NOW we can start our testing. I have already received HyperCard and 4th Dimension--I really think they should be included. Most data base applications I firmly believe could be done easily in HyperCard--I love it! Well, let's get on with it. Bill Baldridge on 08/28 Received the Course Builder demo disk today--pretty fast! The interesting thing is it was written by William C. Appleton, of World Builder fame, if memory serves... Anyway, I haven't really played around with it yet (too busy with HyperCard right now), but so far my main criticism is they use Macintalk to voice text and dialogs; [...] HyperCard Bill Baldridge on 08/30 Describing HyperCard in one sentence is as easy as writing the Gettysburg Address on a 22 cent stamp with a dull pencil. A simple description would be an application with which a user may build a stack of cards--each card storing information in any computer retrievable format (i.e., graphic, alphanumeric, digital, etc.). Any part of any card may be tied to any part of any other card by a relation--the relation to be defined by the creator or user (at lower levels) using "scripts." Scripts allow specific tasks to be performed by a button, field, card, or stack (here presented in inverted hierarchy). Lastly, any STACK may be tied to any other stack by these relations... The mind boggles. Jeffrey Barnes on 08/30 I have pretty well finished reading the HyperCard manual and have "fooled around" with the application a bit. I bought it because I didn't know any way to find out what it was other than to get the thing. It is my opinion that HyperCard can be referred to, among other things, as: 1 - A high level language specifically designed for the Mac. I have programmed the Mac in BASIC and C and I would liken such programming as similar to programming graphic workstations hooked to mainframes--TEDIOUS! It's sort of like playing the banjo--something I would like to know how to do and then not do it. 2 - A very rich job control language for the Mac. I would liken it to DCL on a VAX in the sense that the lexical functions in VAX DCL are equivalent to the graphics "hooks" in hypercard. 3 - A sort of "graphics database language". The capability to "link" cards to other stacks/cards really opens up many possibilities. 4 - Has the promise of being a really useful and efficient macro generator for the Mac. I have TEMPO and TOUCH-NGO and consider them very crude. I am hoping for better things with Hypercard. In short, I think that all of the packages for the Mac that I am familiar with, such as MS WORD, are merely a standard computer application written for the Mac. Admittedly, such packages follow the Macintosh interface and that is a great leap forward but any standard interface puts the burden on development programmers. The real test will be--how complex an application will Hypercard allow a programmer to construct. Rick Stickle on 08/30 Bill, I don't believe this--I got HyperCard at Clinton yesterday and signed on tonight to suggest that a Hypercard section be set up! I now see there are just some people that you can't get the jump on. [... and much more discussion about HyperCard from the WAP BBS ...] HyperCard SIG by Robert C Platt WAP is organizing a HyperCard SIG for persons interested in exploring Apple's new hypertext driver. The group will focus upon available stackware and the HyperTalk programming language. In order to identify potential members and what they want in a SIG, two organizational meetings will be held at the end of the regular WAP meetings on Saturday, September 26 and October 24. A permanent meeting location and time will be selected at the October session. See the review of Danny Goodman's HyperCard Handbook elsewhere in this issue for more information on HyperCard.