Explore, not converse, is the best verb for describing an ideal mode of human-computer interaction. It is a simple change in perspective that makes an enormous difference in the way everything looks.
Rheingold, Howard. “Cyberspace and Serious Business,” Virtual Reality. New York: Simon & Schuster–Summit, 1991. p.183.
Last week, I was chatting with a lunch-mate about backups. Current backup solutions are too complicated, in my opinion. I want to bring up a Finder window, point and click a little, and voila, have backups. If I want to restore, I should be able to easily and quickly find the copy I need and restore it. None of this fighting with thousands of dollars of software that will do everything except what I need. Don’t even think about one of our customers doing their own restores. Backup software companies haven’t even begun to think that our 60,000 customers might want to restore a file, based on the software I’ve seen.
With the announcement of Leopard, I think commercial backup software is on the way out. If a backup solution isn’t as easy for me to use as Time Machine is, then I don’t want to talk to the salesperson. They don’t deserve me wasting my time on them.
Time Machine is made possible by CoreAnimation, Apple’s new addition to the Core set of libraries. CoreAnimation allows animation of anything (for a reasonable value of anything) on the desktop. Apparently, this includes anything from textures to Aqua application windows. This is continued exploitation of the OpenGL foundation of Aqua.
Apple is also introducing remote desktop access via iChat whereby two users can control and share a single desktop, allowing both to control the same desktop so they can collaborate. I don’t think it allows more than two to share a single desktop, but it’s a start.
Leopard now has several different virtual spaces: the multiple desktops, Dashboard (with its two spaces: widgets and widget editing), and Time Machine. All of these are a simple mouse click or key press away. OS X users are becoming accustomed to keeping several different spaces in mind with each having a different context.
Beginning with Dashboard, Apple moved away from the traditional menu approach to activating functions. Instead, they have started going with an interface that reminds me more of game interfaces. This Time Machine pushes this further. With CoreAnimation, I think we’ll see more applications following this example.
All of these (plus a few more) can be combined to give us Croquet.
With Time Machine, Apple is definitely doing some innovation in GUI design. It has been a long time since we’ve had true innovation in GUIs outside academe. Even the open source desktops (GNOME and KDE) stuck with traditional principles when they had an opportunity to do something different eight years ago.
At this point, I think Apple could bring almost all of Croquet into their GUI. They have the OpenGL underpinnings, the CoreAnimation and beginning GUI design principles that show that applications can be built in such an environment, and network based collaboration. The only thing left is figuring out how to create objects in such an environment without requiring a lot of typing. Apple has that licked as well.
Before GUIs, we had text interfaces that were based on narratives. Programming today still follows this. Writing a program and writing a novel really aren’t that different. I’m doing both.
But writing is conversing, in the sense of the quote above. We need to do some exploring. If we’re going to have GUIs, then we need to take advantage of them. We need GUI-based programming that is as powerful as typed programming.
Automator is a start. It’s a way to write functional scripts (in the sense of functional programming). Apple has shown that the mind set of Haskell and Lisp isn’t so foreign.
One art form that does narrate without relying solely on text is the graphic novel, comic, or manga. Since novel and short story writing have parallels with textual programming, I’m trying to think of aspects of the comic that might be helpful in designing GUI programming. I’m reading Understanding Comics: The Invisible Art by Scott McCloud.
How far in the future would a GUI- or manga-based programming language be? Playing croquet with an apple? No clue. The foundations are there in Leopard for both. It’s just a matter of time. Because Apple has made a lot of hard decisions, it’s years ahead of its competitors. It has the best chance at bringing us a truly innovative, post-(2D)GUI interface.