Re: human cognitive variation

I think it’s very important that user interfaces not be standardized or mass-produced (or, alternatively, to have them be extremely customizable) for exactly this reason (among others).

Human beings have a very wide variety of needs (some task-based, some more general, and some an intersection of the two — like habits designed to compensate for weaknesses or enhance strengths when solving a particular set of problems), and any user interface worth its salt (particularly a user-agent) needs to adapt itself or be adapted to these human needs.

Re: user-agent headers

Digging into the history of the term ‘user agent’ (which led me to RITA), I found that the use of the term seems to have diverged in the late 70s. RITA’s language manual shipped with an example program for a user agent intended to send electronic mail, which appears to have influenced email implementations that later influenced the specifications for email protocols, but by the time these specifications were being standardized, the semantic drift from ‘expert system’ to ‘application name’ had already taken place.

The RITA documentation itself adds to the confusion a bit, because in it the user agent is a set of (from what I can tell) TUI applications that may or may not interact directly with the underlying expert system, planner, scheduler, & event handler. It’s completely reasonable to think that someone outside of RAND in 1976 or 1978 might skim the RITA language manual (or some other documentation from the project) & come to the conclusion that the defining feature of a user agent is that it is ‘user friendly’ rather than that it has a planner with user-supplied rules for event handling, scheduling, filtering, and code generation. After all — what was more common in 1976: a user-friendly TUI application or a planner language with backtracking? Probably the latter, from the perspective of somebody writing email protocols.

The original form of ‘user agent’ came back with a vengence in the late 80s and early 90s, eventually showing up in fiction (Ghost in the Shell: Man Machine Interface features them). I think they may have been common in company demo reels as well (Douglas Adams’ Hyperland & Apple’s Knowledge Navigator clips both feature user agents that act like a combination of a modern voice assistant and an expert system for planning & code/config/event generation). This seems to have gone away around the time the novelty wore off of java applets. It certainly never affected the alternative use in protocol specs.

Written by

Resident hypertext crank. Author of Big and Small Computing: Trajectories for the Future of Software.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store