From:
[email protected]
Date: 2018-08-24
Subject: The Canon Cat: Boxy, But Good
Alternative visions of our future fascinate me, as do artifacts
that represent that alternative vision. One such artifact is the
Canon Cat. The popular computing environment with us today was de-
rived primarily from the graphical interface developed at Xerox
PARC and honed over decades by Microsoft and Apple. But this in-
terface represents just one possible metaphor among many for how we
might interact with a computer. In _The Design of Business_, Roger
Martin writes about looking at unexplored avenues even after a
business has found success. Martin argues that, after the winning
experiments have been identified and honed to mechanical precision,
there is value in taking a second look at the failures.
Jef Raskin is credited with providing the initial vision for the
Apple Macintosh. After Raskin left Apple in 1982, he set about de-
signing a machine that more closely represented his original con-
cept for the Macintosh. The result was introduced to the market in
1987 as the Canon Cat. The Cat had a text-only interface, a sur-
prising contrast with the pioneering graphical interface of the
Macintosh. The Cat did not include a mouse; users could navigate,
rapidly, using the keyboard. There was no file system. Instead of
navigating through trees of folders and files, all content was
available at all times in a document stream. The Cat did not in-
clude a set of distinct applications. Instead, there were a vari-
ety of tools that could be applied to document content using the
keyboard. There were tools for document formatting, search and re-
place, macro recording and playback, abbreviation expansion, spell-
check, sorting, inline expression-evaluation, even spreadsheets and
mail merge.
The Cat would be less interesting had it not contrasted so sharply
with its contemporaries. Raskin had aimed to create an "informa-
tion appliance" rather than a personal computer. Canon billed the
Cat as an "Advanced WORK Processor", comparing it to the dedicated
word processors in use at the time. The release of the Canon Cat
in 1987 followed the release of Research Unix version 9 and 4.3BSD,
and coincided with the release of UNIX System V Release 3.2. The
Macintosh II, Macintosh SE, and Windows 2.03 were also released
that year. At that time, the Unix tools-based approach was well
established. Consumer-oriented, GUI-based systems were on the
rise. The paradigm that came along with the GUI has the effect of
compressing the learning curve; the system is easier for beginners,
but it does not reward additional effort. Proficiency is tanta-
mount to expertise.
As a text-interface enthusiast, I want to see if there is anything
to be learned by studying the Cat. The Cat can be thought of as a
word processor; a device oriented toward the input, editing, for-
matting, and output of textual data. These four key functions cap-
ture how I use Vim most of the time, so the use-case, for me, is
almost identical.
Input is probably the least surprising aspect of the Cat. The key-
board included just 59 keys including a pair of modifier keys, la-
beled "USE FRONT", that refered to functions indicated with legends
printed on the front of the key caps (much like the graphic symbols
on the Commodore 64 keyboard). A pair of LEAP keys facilitated
rapid navigation through documents. To position the cursor, the
user held down a LEAP key and performed a search, not unlike using
the / and ? functions in Vim. Because the LEAP keys were dedicated
to this function and positioned below the spacebar, navigation was
very fast; faster, I think, than in vi and Vim.
Editing was accomplished by highlighting and manipulating selec-
tions. Selected text could be moved, erased, and changed. The us-
er could also perform global search and replace. The user manual
encouraged navigation using the LEAP keys and discouraged "creep-
ing", using the LEAP keys to move one character at a time. Mathe-
matical expressions could be evaluated in place, much like using dc
or bc as a filter or formatprg in Vim. There were no regular ex-
pressions, but this may have been seen as an unnecessary complica-
tion given the Cat's target market. That said, the Cat was able to
execute arbitrary Forth and Assembly code input by the user.
The Cat managed to provide a WYSIWYG environment given that it's
output target was a daisy wheel printer[1]. There were no fonts.
(The font would have been determined by the daisy wheel itself.)
Only the most basic formatting options were available: bold, under-
line, indentation, justification, and line spacing. These features
were the minimum expected by the word processor market. Personal-
ly, I prefer to use markup, presentational or semantic, rather than
futz with styles while composing or editing, but I have tools like
groff and pandoc at my disposal. I'd love to send groff output to
a daisy wheel printer, though.
It's never too late to learn from the past, not necessarily to find
out what works and what doesn't, but to explore ideas that have
been abandoned and ask what use they might have today. The Cat's
interface presents an alternative conception of applications: coop-
erative tools that act on the user's information rather than sealed
partitions from which user data never escapes. I'll admit it's not
fair to compare a word processor to a general-purpose computer, but
I want to call attention to the unobtrusiveness of the system, its
simplicity, and the lack of barriers between the user and their
work. Some of this is clearly a result of the Cat's limited scope,
but it's also the result of a design philosophy that is centered on
the user and places applications in a supporting role.
Resources
https://en.wikipedia.org/wiki/Canon_Cat
Lo and Behold, Reveries of the Connected World[2]
Hacker News: Ted Nelson: It All Went Wrong at Xerox PARC[3]
http://www.canoncat.org/canoncat/onlinehelp.html
http://www.digibarn.com/friends/jef-raskin/slides/canon-cat/index.html
https://archive.org/stream/byte-magazine-1987-10-rescan/1987_10_BYTE_12-11_Heuristic_Algorithms#page/n127/mode/1up
https://loriemerson.net/2015/09/04/the-canon-cat-processing-advanced-work/
https://archive.org/details/bitsavers_informatioatHowtoGuide1987_51033849
References
[1]:
http://www.vintagecomputing.com/index.php/archives/813/retro-scan-of-the-week-the-daisy-wheel
[2]:
https://en.wikipedia.org/wiki/Lo_and_Behold,_Reveries_of_the_Connected_World
[3]:
https://news.ycombinator.com/item?id=7126802