In our previous article, we delved into the life and work of Jef Raskin, the visionary behind the Macintosh project. Raskin's ambition was to create a humane computer—a device that was not only efficient but also consistent, useful, and respectful of human limitations. From his foundational work on the Apple Macintosh to his innovative designs such as the Canon Cat, Raskin aimed to provide users with an interface that was intuitive and instantly accessible. Despite his groundbreaking designs, contemporary computers do not directly implement his concepts, although many are inspired by his principles. However, with modern emulation technology, you can explore Raskin's humane interface right from your home, experiencing what computing could have evolved into had we followed Raskin's path.
One of Raskin's most accessible systems to emulate is the Canon Cat. Marketed as a sophisticated word processor, the Canon Cat is, in fact, a fully functional Motorola 68000-based computer. It features an intentional backdoor that allows programming in its unique dialect of Forth. The Cat operates on a single workspace saved to floppy disks, which can be divided into multiple documents, easily navigable through keyboard shortcuts. Notably, the Canon Cat is designed for keyboard-only interaction, eliminating the need for a mouse or any pointing device.
The Canon Cat can be emulated using MAME (Multiple Arcade Machine Emulator), with ROMs available from the Internet Archive. It's important to note that the MAME driver for the Canon Cat is incomplete; it currently lacks support for the floppy drive and the machine's built-in serial port. However, it still captures the essence of the Cat's operation, and the Internet Archive provides extensive documentation. A known bug in MAME causes the Cat's beeper to freeze the emulator when it attempts to beep, requiring users to adjust settings to avoid this issue.
To disable the beep, users must navigate to the setup screen. On most systems, the Cat's USE FRONT key is mapped to Control, while the two LEAP keys are mapped to Alt or Option. To access the setup, hold down USE FRONT and press the left brace key (SETUP). After entering the setup menu, users can select the “Problem signal” option and set it to “Flash” to disable beeping. Users can also configure the keyboard type to ASCII, which enhances compatibility with MAME.
Once setup is complete, using the Canon Cat involves familiarizing oneself with its keyboard shortcuts. Text entry is straightforward—simply type without cursor keys. Navigation is achieved through the LEAP keys, allowing users to search for text by holding down either LEAP key while typing the search term. Special commands can be executed by holding USE FRONT and pressing designated function keys. One of the most useful commands is USE FRONT-HELP, which provides assistance for errors or explanations when the Cat “beeps.”
Before the Canon Cat, Raskin's supporters urged the release of certain technologies, resulting in the development of the SwyftCard for the Apple IIe. Similar to the Cat, the SwyftCard utilizes a single subdivided workspace as its core interface but offers more programmability, including support for Applesoft BASIC. The SwyftCard's keyboard-driven interface and easy reproduction have led to the creation of clone cards by enthusiasts.
For modern users, experimenting with the SwyftCard is best done through a software implementation developed by Eric Rangell during KansasFest 2021. This software effectively loads the original 16K EPROM into auxiliary RAM, allowing users to experience the SwyftCard's functionality. The software, along with disk images and media assets, can be downloaded from the Internet Archive, along with a user manual for guidance.
To run the SwyftCard software, users should ensure their Apple II emulator is set up for a IIe configuration with an 80-column card and a floppy controller. The emulated IIe should be started with the disk image named SwyftCardResurrected.do. From there, users select the SwyftCard ROM image and can begin exploring its features. The SwyftCard allows for easy text entry and includes the ability to evaluate expressions and execute Applesoft BASIC programs.
Saving work in the SwyftCard is straightforward; users can insert a blank disk and use the USE FRONT-DISK command to save their workspace. This saves the document with a unique identifier, ensuring that previous workspaces are not overwritten unintentionally. The SwyftCard also facilitates serial communications, enabling data transmission between devices.
In our previous discussion, we touched on Raskin's final software project before his passing in 2005, known as The Humane Environment. Developed in collaboration with his son Aza, this software aimed to embody Raskin's interface principles through a single-workspace editor initially called the Humane Editor. Early versions of this software were designed for classic Mac OS, and they remain compatible with Power Macs running Mac OS X.
Users interested in exploring The Humane Environment can access early builds that run under Classic Mac OS. These builds include runnable binaries and source code, allowing users to experience Raskin's vision firsthand. While the software is self-contained and does not require a separate Python interpreter, users may need to utilize specific emulators such as SheepShaver or QEMU for compatibility with later systems.
To use The Humane Environment, users need to download the project from SourceForge and set up their environment properly. Once installed, users can create documents with an interface that includes a familiar two-tone cursor and supports basic text formatting. Raskin's leaping mechanism is incorporated into the software, allowing users to navigate documents efficiently.
Text manipulation is intuitive, with deleted text stored in a “DELETION DOCUMENT” for easy recovery. The Quasimode command structure allows users to execute various commands, including programming in a Python-like syntax. Although early builds may have bugs, they offer a glimpse into Raskin's innovative approach to user interfaces.
While Raskin's ideas did not fully manifest in modern computing, his legacy continues to influence how we think about user interfaces. The emulations of the Canon Cat and SwyftCard, along with The Humane Environment, provide valuable insights into what computing could have been. As technology evolves, Raskin's vision for a more humane computing experience remains relevant, prompting us to consider how we can make current systems more user-friendly and adaptable.
In conclusion, exploring Raskin's work through these emulations not only honors his legacy but also invites us to reflect on how we can create more humane and efficient computing environments in the future. The journey down Raskin's UI road reveals the potential for a better interaction between humans and technology.