Humane Computer

Images From a Lost World

 • 


IBM 2250 with lightpen, 1965 — (source)


Apollo Guidance Computer’s DSKY, 1966 — (source)


Englebart’s NLS with the first mouse and the keys, a chording keyboard, 1968 — (source)


Xerox Alto with the same inputs as the NLS, 1973 — (source)


Symbolics's LM-2 with the “Space Cadet Keyboard”, 1981 — (source)


The Canon Cat with “Leap” and new document keys, 1987 — (source)

Bill Joy

 • 

I have spent the last 20 years still trying to figure out how to make computers as reliable as I want them to be (they are not nearly there yet) and how to make them simple to use (a goal that has met with even less relative success). Despite some progress, the problems that remain seem even more daunting.

Bill Joy, 2000

Intro

 • 

An interface is humane if it is responsive to human needs and considerate of human frailties. If you want to create a humane interface, you must have an understanding of the relevant information on how both humans and machines operate. In addition, you must cultivate in yourself a sensitivity to the difficulties that people experience. That is not necessarily a simple undertaking. We become accustomed to the ways that products work to the extent that we come to accept their methods as a given, even when their interfaces are unnecessarily complex, confusing, wasteful, and provocative of human error.

— Jef Raskin, The Humane Interface

The computer revolution hasn’t happened yet

— Alan Kay, OOPLSA 1997

These are amazing times for computing. Incredibly powerful devices with high-fidelity screens and cameras are now in the hands of around 2 billion people. Advances in AI are adding rich levels of interaction and personalisation. New tools and technologies are enabling developers to build and deploy massive scale Internet services that would have been unimaginable a decade or two ago.

And yet, I can’t help but think that something is missing when it comes to end-user computing. The desktop metaphor from the 70s has been polished but never fully replaced. When you use a system like Smalltalk you see a glimpse of a potential future of what could have been. The advent of smartphones should have been an opportunity to build humane computers which unlock the full power of computing without any legacy complexity. While some great steps forward came about in the transition, I feel we’ve taken a similar number of steps backwards.

End-user computing used to be a wild, fertile jungle but over time we’ve tamed it into an arid monoculture. When the industry was in its infancy there was a huge amount of experimentation in core concepts. To be fair, many of them were flawed on one way or another. However, there are many cases where I feel that strictly superior technology did not get the chance it deserved for one reason or another; the technology was before it’s time (computers of the time were too slow), it needed some network effect or ecosystem that didn’t exist, or that the business that backed it failed to market it correctly (or even failed outright). All of these reasons are context sensitive and independent of the actual merits of the underlying technology, and given that the computing landscape today is very different from that of the 70s, 80s, and 90s, we can take a look at these lost technologies in a new light.

And that’s the goal of this blog; to take a fresh look at the history of end-user computing and try to try to pull out concepts, metaphors, and details that could pave the way to a different future. One in which we leave behind all legacy complexity and usher in a new era of humane computing.