Hacker News new | past | comments | ask | show | jobs | submit login
The Canon Cat, the forgotten 1987 alternate-reality Mac (2019) (fastcompany.com)
139 points by jdblair 4 months ago | hide | past | favorite | 32 comments



I saw Jef Raskin demo the Canon Cat in the 1980s when I was working at Stanford.

One of the more interesting concepts behind the interface was, everything was stored in one "circular" file, with marks for document beginnings and ends. By "circular" I mean that if you leapt forward from file to file, you'd eventually return to your starting point. The idea was, it's hard to remember the names of documents, let alone where in the filesystem you might have saved them. But you can usually remember something about the document -- some piece of text, etc. Using the leap keys you could quickly find the document you were looking for. Modern OSes allow for such searching, but at the time the idea of not worrying about file locations or names seemed very forward thinking.

Jef had research to show that "leaping" was superior (or at least, your productivity was faster) when comapred to other computer interfaces -- provided the user was used to using leap keys. Later I saw Andy Hertzfeld give a talk on Multifinder, and I thought the contrast between the two engineers was stark. The Canon Cat gave you one way to interface with the system (which was "the best way"), while Andy's interface gave you multiple ways to do the same task. Andy said something like "different people interact with the system differently" and he wanted to support all they ways they might want to do their work.


Reads like a Finder Cover Flow prototype.


Cover Flow was basically just document thumbnails as OpenGL textures. You’d still have to open the application for the document.

Raskin’s “leap” concept worked within the documents themselves. There was no separation between a document editor and a file browser or shell. A leap would take you directly to the content, and leaping enough times would bring you back where you started. But you never switched from “application mode” to “Finder mode”, so to speak.


> The Cat even allowed you to include computer code in the middle of a document that could be executed with a button press.

I miss the 1980's. If I recall correctly, Raskin conceived the Macintosh as a computer that was easy to use for ordinary people yet also incorporated the means for ordinary people to program the machine. The solution was to make it easier to program. (Something that was added as an afterthought to Jobs' re-envisioned Macintosh with Bill Atkinson's Hypercard.) The general view was that those who used computers should be creators, not just consumers.

Contrast that to modern computers. While most can be programmed by the end user, the entry points are rarely obvious. The vast majority of languages that are easy to learn are regarded as learner or toy languages. Many of the professional languages are several orders of magnitude more difficult to use than their equivalents in the 1980's (often for good reasons, but it doesn't help the cause).


> Raskin conceived the Macintosh as a computer that was easy to use for ordinary people yet also incorporated the means for ordinary people to program the machine. Something that was added as an afterthought to Jobs' re-envisioned Macintosh with Bill Atkinson's Hypercard.

Apple created an in-house Macintosh version of Basic that was intended to ship with the Mac, but Microsoft threatened to yank Apple's license for Microsoft Basic on the Apple II if Apple released MacBasic for the Mac.

Andy Hertzfeld shared the story of how this all played out:

> We decided we should write [Basic] ourselves, instead of relying on a third party, because it was important for the Basic programs to be able to take advantage of the Macintosh UI, and we didn't trust a third party to "get it" enough to do it right...

Apple's original deal with Microsoft for licensing Applesoft Basic had a term of eight years, and it was due to expire in September 1985. Apple still depended on the Apple II for the lion's share of its revenues, and it would be difficult to replace Microsoft Basic without fragmenting the software base. Bill Gates had Apple in a tight squeeze, and, in an early display of his ruthless business acumen, he exploited it to the hilt.

https://folklore.org/MacBasic.html

After Microsoft forced Apple to kill MacBasic, they shipped Microsoft Basic for Mac, and it was indeed absolutely terrible when it came to creating programs that took advantage of the Mac UI.

It wasn't until HyperCard shipped a couple of years later that truly user friendly GUI based programming landed on the Mac.


MS must've made practically nothing on Microsoft Basic for Mac. Did they expect to? Or was it pure platform sabotage?


It wasn’t intentional sabotage.

(a) MS expected to make money on the Mac, and did for many years with Word and Excel (well before they were bundled into Office), among others. The best versions of Excel and Word were on the Mac for a long time.

(b) Microsoft eventually released a QuickBasic for the Mac that was capable of producing apps with a real Mac UI. IIRC, the IDE wasn’t very good, but it was capable enough at the time.


Killing the ability for users to easily create GUI based programs certainly counts as platform sabotage in my book.

There was no Windows yet on PC, and Microsoft Basic for Mac gave you almost no ability to create programs that took advantage of the Mac UI. You were limited to creating text based programs on a system that was all about having acess to a graphical user interface.

It's pretty easy to see why Microsoft didn't want Basic programmers on the Mac to be able to do more advanced things than Basic programmers could do on DOS based computers.


What they did makes sense if Microsoft thought BASIC was important for the Mac, and that their BASIC could satisfy that important need.

If they didn’t think BASIC was important, or if they knew their implementation was rubbish, makes far less sense.


Even going back to Windows 95, there's a lot more visible effort made to let basic users become power users than I notice today. For example there's a shortcut to Task Scheduler right in the taskbar, which takes you to a very simple task scheduling interface.


By the time Windows 95 shipped, Mac OS had a system wide user friendly scripting language that integrated functionality exposed by third party applications alongside the functionality of the OS.

https://www.wikipedia.org/wiki/AppleScript

To give users an easy onramp, AppleScript would allow you to hit a record button in the script editor and watch you carry out a series of actions in the OS as well as third party applications and convert those actions into editable AppleScript code on the fly.


Sounds like Apple would've had something like Visual Basic but 5 years before Microsoft if it had a drag and drop interface for creating GUIs. But Jobs went on to do that on the NeXT.


Interface Builder was a marvel.


I'd argue that the "toy language" concept was well in place on '80s computers. You could get into BASIC easily and do stuff, but if you wanted to do complex games or fast graphics or anything non-trivial, you had to learn assembly - BASIC was the "toy language."


When I saw Word 6 (dos) templating macro instructions I was quite shocked. It's not far from "web dev" work, yet you'd have people in all kinds of offices automating simple parts of their documents.


"We're trying to get away from programming. We've got to get away from programming because people don't want to program computers. People want to use computers."

— Steve Jobs, 1983


There is a MAME core for the Cat, runnable in a browser no less: https://archive.org/details/canoncat


I tried this the other day, I wasn't able to "use front" (mapped to CTRL key, which works for some things, but not others). I downloaded MAME for my computer and the Cat ROMS so I could use it without triggering a new browser window (among other problems).

When I went to use it in MAME proper, it popped up a big red warning that the port was incomplete and to expect problems. Unfortunately, they weren't kidding. I could type maybe a paragraph before the emulation hung (sometimes with the speaker activated, which was... nice). The "leap" keys worked enough to show that they could be a powerful way to get around a file.

So, yes, you can start it up and see the credit screen, but (for me at least) it's not a proper emulation. It would be interesting if some of the "distraction free" writing "appliances" like the upcoming BYOK or Alpha-Smart replacements would do something like this -- they all seem to consider features that can make review/revision pleasant to be outside their "distraction-free" mission.


The "leap" description makes me think of emacs' avy https://github.com/abo-abo/avy

The interface should not be too hard to reimplement as an emacs mode.

One more project on the "someday" list...


I interpreted it more as the default reverse string search (C-r "substring")


Sure, but i think the innovation was the dedicated leap keys. You hold the key, type to incrementally search, and let go to leap. One key for forward and one for back.

Also, leaping was through eveything in the whole os, not just the application.


Since almost everyone uses USB keyboards, I am surprised that a small addon board with just 2 keycaps that can be placed near the spacebar, hasn't already been made. Could do it with a Teensy or anything else that exposes HID, I think.


Lots of 2-key keyboards exist, and are even for sale inexpensively. https://duckduckgo.com/?q=2+button+keyboard&t=ftsa&iar=image...

Not very convenient for having both buttons near your thumbs, though.

I've been trying out the related SwyftCard for Apple //e on the izapple2 emulator.

https://github.com/ivanizag/izapple2

  ./a2sdl -model swyft
It actually works really well; it uses the left and right alt keys as the open and solid Apple keys, which the SwyftCard uses as forward and backward leaping. It's quite easy and comfortable to use!


> Since almost everyone uses USB keyboards, I am surprised that a small addon board with just 2 keycaps that can be placed near the spacebar, hasn't already been made. Could do it with a Teensy or anything else that exposes HID, I think.

I've seen something (on HN in the past, maybe?) similar - someone developed pedals (maybe for Vim?)




One of my takeaways from reading that long ago was that there should be a commandment: treat the user's data as sacred, and do not delete it without permission. (Just ordered a copy of it so I can read it again.)


That was a surprising amount of new information to me about the origins of Apple. Good article.

Jef seems like the successor to Woz.


Related. Others?

Refurb Weekend: Canon Cat - https://news.ycombinator.com/item?id=40497171 - May 2024 (35 comments)

The Canon Cat: the little computer that could have changed the world - https://news.ycombinator.com/item?id=34133701 - Dec 2022 (28 comments)

Bitters: A text editor inspired by the Canon Cat - https://news.ycombinator.com/item?id=33930276 - Dec 2022 (1 comment)

Design Considerations for an Anthropophilic Computer (1979) - https://news.ycombinator.com/item?id=33287858 - Oct 2022 (3 comments)

The Canon Cat - https://news.ycombinator.com/item?id=33285665 - Oct 2022 (160 comments)

Leap Technology (1987) [video] - https://news.ycombinator.com/item?id=33137433 - Oct 2022 (40 comments)

The Canon Cat: The Writing Information Appliance (2004) - https://news.ycombinator.com/item?id=30836958 - March 2022 (42 comments)

Demo of the Canon Cat computer released in 1987 with 'leap' feature [video] - https://news.ycombinator.com/item?id=29423545 - Dec 2021 (1 comment)

Canon Cat - https://news.ycombinator.com/item?id=26213934 - Feb 2021 (31 comments)

Leap Technology (keyboard vs. mouse on a Canon Cat machine, ca 1987) - https://news.ycombinator.com/item?id=22042900 - Jan 2020 (1 comment)

Canon Cat Emulation - https://news.ycombinator.com/item?id=18032916 - Sept 2018 (2 comments)

Canon Cat Resources – Jef Raskin's Forth-Powered Word Processing Appliance - https://news.ycombinator.com/item?id=14650365 - June 2017 (23 comments)

The Canon Cat - https://news.ycombinator.com/item?id=6978587 - Dec 2013 (30 comments)

Canon Cat Documents Archive - https://news.ycombinator.com/item?id=3394546 - Dec 2011 (8 comments)

Canon Cat - https://news.ycombinator.com/item?id=595744 - May 2009 (15 comments)


I'm sorry, my mind though of the cue cat:

https://en.wikipedia.org/wiki/CueCat

(and the outrage when they were reverse engineered)


I had exactly the same mind-leap when I first heard of the Cat a year or two ago.


the linguistic user interface Esno launcher mentioned in there looks like it could be an interesting way to get LLMs to control the desktop.

https://gchristensen.github.io/enso-portable/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: