Verdict:
It feels just one step short of sheer magic
The personal computer is one of the most empowering things ever created, but if your software doesn't do what you want, what can you do about it? Make your own, of course. Revolution 2.6.1 is the latest release of a tool that aims to make professional software creation accessible to anyone, not just programmers. So how does it measure up to this goal?
Revolution is a seriously impressive tool with a feature set a mile long. It uses the time-tested concept of cards and stacks, with objects (buttons, text fields, graphics and more) sitting on cards for users to work with. A stack is brought to life with your scripts - instructions you write and are triggered by a host of different 'events' such as pointing and clicking on something (mouseEnter, mouseWithin, mouseDown, mouseStillDown, mouseDoubleDown, mouseUp and so on), typing text into a field, opening a window, dragging an object around, and so on. This scripting language, called Transcript, is the secret to Revolution. Those new to this kind of creation will be relieved to learn that the language is essentially plain English, with instructions put together like regular sentences in the classic HyperCard and SuperCard fashion.
The range of events that can start a script is extremely wide and, generally, quite clear. Transcript is also relatively clear, being based on plain-English sentence structures. It's an interpreted language, which means it's worked out as it's run rather than being compiled beforehand. This makes the creation process much more fluid than that of more traditional programming tools, and the efficiency of Revolution's interpreter means speed simply isn't an issue.
Learning how to think through the process of designing stacks and writing scripts is an exercise in logical thinking, but it can take a bit of work getting started. In an impressive example of the developer putting its money where its mouth is, the runtime authoring environment you use to create your Revolution productions is built with and run using Revolution itself.
We were very impressed with this release of Revolution, but we also found it wasn't all perfect: we kept stumbling across small quirks. The Dictionary
ADVERTISEMENT
tool proved to be surprisingly sluggish at times and would sometimes lose track of what we were looking up. The script formatting sometimes felt haphazard, although it could always be prompted to sort itself out. Subtle issues with how it works can catch you out on occasion - for example, dealing with soft returns when processing data for use in QuarkXPress and InDesign required some unexpectedly convoluted workarounds. On the other hand, with so much flexibility, there are numerous solutions to any challenge.
What Revolution does behind the scenes is pretty complex, and it seems it simply trips up on occasion. It should be said here that this seems almost entirely restricted to the development environment rather than the standalone products you might make, although we did have an incidence of unexpected behaviour with a stack used in a standalone application on a network.
Revolution's only real competitors in the Mac market are REALbasic, a rather less accessible authoring tool, and SuperCard, a Mac-only development tool with arguably more cleanly designed Mac-specific features. Where Revolution beats both is in its breadth of features and, in particular, its cross-platform abilities. One of its unique selling points is its ability to create standalone applications from your stacks for use on many different operating systems. You can create true self-contained, licence-free applications for Macs, Windows, Linux and more than half a dozen varieties of Unix by simply clicking a few checkboxes and picking some options.
During creation and production, Revolution helps manage some of the inevitable differences between the various platforms. For example, the software automatically constructs menus within the stack windows for non-Mac distributions and as menubar items for the Mac application, and it also adjusts window dimensions as necessary. The stacks are built into the standalone application framework along with the engine necessary for the relevant platform, and you can make applications that create and edit other stacks, bitmap images and text files, create and play QuickTime movies and sounds, talk to network databases, upload and retrieve data from online sources, talk to serial devices, and just about anything else you can think of.
Revolution 2.6.1 is an extraordinarily powerful and flexible tool, but it's let down on occasion by rough spots. Nothing show-stopping, but enough to notice once you start working properly with your own projects. Still, what it lets you do far outweighs these issues. It feels just one step short of sheer magic: with some practice and logical thinking, you can turn software ideas into reality using nothing more daunting than some visual layout controls and English-like instructions.