From chat bots to interactive agents to self service to MSN bots: conversation is cool
The project: spoofing a self service application
----
History
Before self service became such a hot topic, there were Microsoft
Agents and long before that, there were chat bots like Eliza.
Agents could be scripted to talk - to speak - which was a terrific
thing, and to listen for certain keywords. I experimented a
lot with agent characters that I could move around on the screen by
script (using MASH as editor I believe). Agents could do all sorts of
things like opening or closing programs on voice command - that great
Dilbert joke come true. You could script macro's in Powerpoint to have
a character interact with you while giving your presentation with a
headset on. So cool. Except that agents were really too heavy to be
used in a web-based application, and too simple on the interaction side
to do some real work - they felt like having an augmented Paperclip.
A real first-generation thing.
Talking to a calculator
Chat bot Eliza is from 1966 - she's a "computer program for the
study of natural language communication between man and machine"
<bliep>. Her age means that as a program, she's tiny.
Her Artificial Intelligence is still understandable by people like me
(meaning: Eliza just turns around your question into an answer). Also
that the program was ported to all sorts of languages, VBscript, Javascript,
etc, and I first encountered her on a Mac back in 1994 or '95. I thought
she was hilarious, and I got really intrigued by the way this text/conversation
thing worked.
Eliza repeats your own words back to you in a question, so she needs
a very small vocabulary herself. She does not remember. She does not
combine and deduce. And eventually, you notice. The interaction is lacking
something; it's not like having a conversation that is going somewhere.
Chat bots Alice and Racter do a better job, but have their own flavour
of madness, so to speak. Well, I haven't even started to solve that
problem, yet :-)
Having a conversation: get that calculator to talk back
Some years ago I made this little pixel character in Flash that
one could move about with the keyboard, and that could answer simple
typed-in questions. At that time, chatter bots usually needed a serverside
logic to get an answer back to the client - hardly web friendly: type
- refresh, type - refresh. In a conversation, that wait is always too
long. So I put the logic in Javascript - to stay on the page, to avoid
the wait, and also because I could make use of regular expressions in
Javascript to match strings, something Flash could not do. This was
my "TalkBack" project. But I wondered about the character:
was that little avatar or persona needed for proper conversation?
Reading up on conversation analysis
Now I am thinking along similar logic, but different interaction
lines. In MSN chatting, sometimes you do have to wait, but that doesn't
feel distracting. A person needs to type before sending, don't he? So
apparently when talking by means of a tool, through a computer, the
no-wait convention within a conversation is relaxed. My guess is that
other conventions are different too, when it's clear you're using a
tool. Like maybe the convention that you can refer back to things you
said, or ask about clarification, with words like "that".