HyperCard was the driving force behind the creation of a number of high-level programming environments that allow the non-technical who have a need to write an application for themselves, but don’t want, or don’t have the time, to get intimate with C, C++ or Java.
HyperCard, introduced in 1987, uses the metaphor of a stack of index cards. Cards can contain not only text and pictures, but also sound, animations, and video, and are programmed to respond to user input. This description more or less applies to the others that followed. SuperCard came along in 1989, offering multiple windows, better stack organization, and colour capabilities.
MetaCard offered application development for Unix, Windows and the Mac but was never a favourite with Mac users – though the idea of having a source script written on one platform and deployed on different platforms caught on. SuperCard promised this for the Mac and Windows, but never delivered. REALBasic, first introduced in 1998, can be compiled and run on both the Mac and Windows.
And now the Revolution that first started in June 2001 as Revolution 1.0 has learned from the experiences of the scripting tools that have gone before it, and evolved into Revolution 2.0. Revolution lets you distribute your source code as a stand-alone application on the Mac OS and Windows, as well as on a large number of different Unix platforms.
Revolution follows what has become traditional in the scripting world, in that your project or stack consists of a collection of cards, backgrounds, and stacks. However, it differs from the others with their concepts of groups. A group is a set of objects that has been made into a single object. Groups can also appear on more than one card, rather like having a background to a number of cards. This makes it possible to have more than one background attached to a number of cards. The problem that this may cause is neatly sidestepped with Revolution’s ability to nest groups.
The making of menus is another area in which Revolution goes its own way. The easy way to create menu bars that will work across all the supported platforms is to employ the Menu Builder from the tools menu. One complication is the way that different platforms display their menu bars. The Mac OS uses a menu bar attached to the top of the screen. Windows and Unix platforms display their menu bars at the top of the window of an application.
A long time ago, HyperCard toyed with database access with some simple scripts that were available to connect to FileMaker. Revolution again employs a Database Builder to help you connect to your chosen database.
Revolution also incorporates animation routines that can be easily put together using the Animation Builder. While these routines aren’t as polished as Macromedia Director’s, they certainly aren’t shabby. It’s easy to set-up an animation. Messages can be sent to objects when they arrive at or leave key frames as well, and objects can be made to accelerate when starting, or decelerate as they arrive at their destination. These little touches help to give your stacks a more-professional look.
There’s full support for QuickTime VR movies, whose properties can be accessed and actions manipulated through scripting. I haven’t tried it within the Revolution environment yet, but QuickTime streaming media is also said to be supported. Revolution 2.0 now offers better sound recording, as well as the ability to create and play MIDI files.
It has support for Internet-related tasks using sockets, making it possible to create Internet utilities and applications of any kind, using any protocol. The HTML text property is used to display text from a Web page in a field. There are also a number of features that make it easy to display HTML style links in text. This includes the ability to set the default colour and store hidden text in fields.
Once you’ve finished building your stack, making it into an application is an automated process. Just select Build Distribution from the file menu, and choose which platform on which you wish to run it – there’s a choice of 14 different ones.
Once happy with your settings, click the ‘Build Distribution’ and presto – you’re a software developer! There are no licence fees for distributing applications you make with Revolution.
Its new Aqua user-interface, XML library, spreadsheet text fields, reporting engine, and the ability to deploy onto 14 different platforms means that Revolution has climbed back to the top of the scripting environments for writing multimedia software.