Open Source Applications Foundation

[Design] Chandler Agent Framework

Andy Hertzfeld Fri, 06 Dec 2002 13:41:38 -0800


Hi Petite,

> Well... "new and different" may be pushing it as this sounds very much 
> like a scaled down version of Telescript... ;-) And as with Telescript 
> you will have a hard time explaining what the heck is it useful for 
> :-) At least you didn't try to "recycle" their flower shopping agent 
> example ;-)

        I don't want to talk too much about Telescript and Magic Cap on 
this list, but it might be helpful to clarify things a little. 
 Telescript was an interpreted, object-oriented programming language, 
designed in 1991-3, intended for programming "mobile agents", little 
programs that travel around the network, interacting with different 
servers on behalf of the user, kind of like the way Java works today. 
The unique thing about Telescript was the "go" instruction, which 
allowed programs to travel between servers in mid-execution.  The 
benefit is that it's much cheaper to interact locally than across the 
network.  

        Magic Cap was a highly graphical, object-oriented device 
platform for "personal communicators", designed in 1990-3, that used a 
physical navigation metaphor of a desk, hallway and street.  Sony and 
Motorola came out with products based on it in 1994-5.  Magic Cap only 
used Telescript in a limited way and we never got around to bringing 
agents to the surface of the UI, except in a mock-up or two, although we 
probably would have if it lived longer.

        The marketing for AT&T's Telescript-based PersonalLink service 
confused things, creating the impression that Telescript had 
anthropomorphic "intelligent agents" (their phrase), which it never did. 
Also, General Magic went on to specialize in voice user interfaces, 
where you would have a voice conversation with a service, which adds to 
the confusion.

        In other words, my proposal for Chandler agents has little to do 
with Telescript or Magic Cap, except perhaps for the base concept of an 
agent as a program doing something on your behalf.  But that doesn't 
mean it's new:  I first heard about agents as a user interface concept 
in a talk that Alan Kay gave in 1982;  Apple's "Knowledge Navigator" 
video in 1987 featured a detailed visualization of user interface 
agents, and there have been many efforts like that since then.  And of 
course Microsoft Bob and Clippy make people groan when you mention them 
because they're so condescending to the user.

>
> The only "useful" pseudo agent type thing in MagicCap was the 
> "invitation email"... But as firedrop (aka zaplet) showed, you don't 
> need any "agent" to do that. And in any case, there is already a full 
> blown RFC for scheduling things (RFC 2447: iCalendar Message-Based 
> Interoperability Protocol). No point in wrapping it in any agent beast ;-)

    A lot of agent work has been pie-in-the-sky AI stuff, but I'm trying 
to solve real, pragmatic problems here with reasonably simple mechanisms:

        * Where in the user interface do you express actions that should 
occur automatically when certain situations arise?  How do you notify 
the user when something of interest happens out on the network?

        * How does Chandler handle orchestrating multi-step processes in 
the background, feeding back incremental progress and giving the user a 
way to cancel or modify the ongoing task?

        *  How do we organize and share the vast collection of utility 
scripts that people write to massage data in specialized ways, and how 
do they "hook in" to the user's everyday work flow?

        My proposal is trying to solve these problems, and I'm very 
interested in alternative approaches that would do a better job.

>
> Talking about MagicCap, if you guys could at least provide the level 
> of integration and coherence found in it, that would be a major 
> breakthrough in software engineering for a long while. Oh, and don't 
> forget the "fun" factor! Perhaps you should get Susan Kare on board as 
> the current Vista prototype looks very much like a sorry reincarnation 
> of something out of VMS's Common Desktop Environment or worst (SunOS's 
> OpenWindows)... :-(

         Well, Magic Cap itself is going to become free software now 
that the company is dead; contact me privately if you want to know more 
about that.   Susan actually did help a little bit with Vista, but we 
kept changing stuff so much that we gave up on trying to make it look 
polished.  Vista's location bar uses icons that Susan did for Nautilus 
that I shamelessly appropriated.  It uses Tkinter as the toolkit, so 
maybe that's why it reminds you of dreadful Unix GUIs.

-- Andy