Some time ago, Suw Charman-Anderson introduced the idea of an Ada Lovelace Day, to celebrate the achievements of women in technology. As part of this effort, Suw also created a 'pledge' on MySociety's excellent and innovative PledgeBank service, which stated:

I will publish a blog post on Tuesday 24th March about a woman in technology whom I admire but only if 1,000 other people will do the same.

In her blog post, Suw says:

Women’s contributions often go unacknowledged, their innovations seldom mentioned, their faces rarely recognised. [...] Recent research by psychologist Penelope Lockwood discovered that women need to see female role models more than men need to see male ones. That’s a relatively simple problem to begin to address

Now, I will admit that in addition to wanting to support this excellent initiative for its own sake, I had another, related motive. When I read the original pledge I will confess that I couldn't immediately think of a candidate to write about - which rather reinforces the point that Suw is making. In my day job I get to collaborate in one way or another with some talented women. One or two of them I really admire - but I won't embarrass them here - some readers of this blog will know some of these women. There are some women I encounter in my professional life who will clearly carve out a place for themselves in the lore of their particular fields.

For some reason I set myself the following criteria for selecting a candidate:

  • they must have actually inspired me in some way, in a broadly technological context
  • they must have achieved a reasonable level of public exposure - 'made an impression' in other words

I found myself fretting about the fact that I couldn't think of a woman who met these conditions (I should say that I can't think of an awful lot of people, of either sex, who I would say have inspired me in this context). But a week ago someone mentioned 'software agents' in conversation, I started talking about the interest I had in this area in the 90s and then I remembered Pattie Maes.

In around 1996-97 I was writing my dissertation for my MSc on the area of software agents. I had prototyped some software which would follow the activity of users browsing the Web and harvest and collate pages of interest. My 'Big Idea' was to gradually establish an automated recommender system using agents acting on behalf of users across a University department. It never really worked because I was a naive developer at the time and made a bunch of poor tech choices but, hey, not such a bad idea. In the course of my research I discovered the Software Agents Group of MIT's Media Lab, led at the time by Pattie Maes.

The aspect of my interest in software agents which really fascinated me was not so much the 'software', as the 'agency'. Pattie's work seemed to be focussed in this area, and she and her team were producing some very interesting results.

At some point in the writing of my dissertation, I remember I got very bogged down in trying to get something to work well enough to demonstrate some of the ideas I was developing. It got to the point where I was considering a rather drastic change of direction, abandoning this line of research entirely. Then I came across an interview with Pattie which I found utterly inspiring. I have just spent an hour tracking this down - I did not have a reference saved anywhere unfortunately, but I believe it was On Software Agents: Humanizing the Global Computer , even if this is not the source I used at the time.

Some highlights from this include:

Now that we have a network, it's as though we already have our intelligent machine. It's a huge distributed system in which, like an ant society, none of the components are critical.


The whole metaphor of direct manipulation, of viewing software as a tool that the user manipulates, was invented about 25 years ago when the personal computer was first emerging and when the situation for the user was completely different. Back then, the computer was being used for a very small number of tasks. It was being used by one person, who knew exactly where all the information was on the computer because he or she put it there. Nothing would happen unless that person made it happen. This was a very controlled, static, structured kind of environment.

The situation that a computer user faces today is completely different. Suddenly the computer is a window into a world of information, people, software. . . . And this world is vast, unstructured, and completely dynamic. It's no longer the case that a person can be in control of this world and master it. So there is actually a mismatch between the way in which we interact with computers, or the metaphor that we use for human-computer interaction, and what the computer environment really is like today. I think we need a new metaphor.

and, in answer to the question: "Do you think the Microsoft 97 Office Advisor is an agent?":

It's a simple example of an agent, but it definitely is one. It's just providing better help functionality, but it monitors your actions, and based upon the pattern of actions that you demonstrate, it recommends specific help topics to you. So it tries to recognize what your goal is and gives you help that is relevant to the current situation. It's not personalized yet, it's assisting me in the same way it's assisting you, but it's a first step. Hopefully people will like this first attempt, and Microsoft will take it further.

Hmmm - Well you can't be right all the time. I guess some of us don't miss that PaperClip...!

Reading this again, I'm struck by how much my subsequent work and thinking was influenced by this. I no longer maintain a close interest in software agents, but a particular paragraph leapt out at me as being highly relevant to my thinking and work today:

Definitely my priority is to build things that demonstrate the usefulness of this technology, so that it isn't simply the next fad that everybody has forgotten about a year from now. I want to make sure that there is something substantial there. I'm less interested in coming up with the standards before we even know whether users want this stuff. [...] Yes, definitely. And I think it's still too early to standardize agents and the languages they use. We need more experimentation first, more wild ideas that people try out, and different applications. Whenever you come up with standards you stop research and development right there, or at least slow things down a lot.

In the mid-late nineties, some of the best work of Pattie and her team was commercialised - notably with the launch of (now defunct). Around this time I had started reading Wired - only available as an import from the US at the time I think - and stumbled across a feature about Pattie, the work she was doing at MediaLab, and the business she had founded. It's still an interesting read, and shows someone being successful both in the rarefied academic world of computer science, and in mainstream commercial entrepreneurship.

Pattie has moved on to other things at Media Lab, and now runs the Fluid Interfaces Group (great home page!). If you want to see the kind of cool stuff they do there, check out Pattie's TED talk where she demos some very cool new technology developed by one of her students, Pranav Mistry.

Photo used under Creative Commons license. Copyright Wa-J.