Freshman on Acid: Roots of Software for Knowledge Work

(Paper presented at the conference of the Cultural Studies Association, 2012.)

This paper is about how universities have produced a substantial amount of the conventions we take for granted in software, especially software used for knowledge work, though perhaps the rest too.

The undo command, writ in gold. Project by Erica Dorn.

Last summer, I went to Brown University for dissertation research. I went to find out about the origin of the undo command, Ctrl-Z, that lets the user retract the last action and restore a previous state. The command is now ubiquitous, available in every application for Microsoft Office, throughout Adobe’s Creative Suite, and also available on Facebook and other online apps. It must have come from somewhere, and, on the way to Brown, I thought I was finally going to find the origin of the undo command.

I did, but I didn’t, and I also found something else.

Ted Nelson
Andy van Dam

In 1967, college buddies Andy van Dam and Ted Nelson got together and decided to work on the world’s first hypertext editing system: HES (that’s short for hypertext editing system). Two years earlier, Ted coined the term “hypertext” in print, and van Dam got his job as a professor in Applied Mathematics at Brown. In 1968, Ted came to Brown and they began work. For Andy, this was a side project. His specialty was graphics, but a hypertext editor promised to help him with his newfound responsibility of writing the sorts of documents that professors have to write. He recruited some undergraduates to help with the project. Among these was Steve Carmody, a freshman, who was available, smart, and the only one with both the time and ability to write the code to build the software to make this radical hypertext idea become a reality. Ted had lots of ideas and vision, but couldn’t do the implementation himself. That job fell to Steve and the other undergrads. Andy explained to me,

So Carmody was this crazy kid who was as qualified as anybody to listen to crazy Nelson and say, “I think we can do that, no that’s totally bullshit we can’t do that,” “doesn’t work that way,” “that’s too hard” and a lot of the time he was right, sometimes he was wrong. Of course Ted was furious that a mere snot-nosed undergraduate could have the determining effect on what the system would look like. […] I mean it was hard for him to accept the fact that at times I would say “I’m sorry Ted, I’m gonna listen to Steve on this, if he says he can’t do that I’m gonna take his word for it” so it was mostly the three of us who did the design for HES and Steve and several other students did all of the implementation.

The group finished the project. Though it fell short of Ted’s dreams, it was pretty exciting. They showed HES to Time-Life and to the New York Times. Both companies were enthusiastic but considered the technology too far ahead of its time. The collaborators found a backer and almost formed a business, but couldn’t agree on a plan for the company. Embittered by the experience, Ted left. Andy began work on a successor system, again built more by undergraduates. It was called FRESS: File Retrieval and Editing SyStem. This program was the first to have an undo command, which Andy claims to have come up with on his own.

Bob Wallace

Like HES, the new system was built by undergrads. Students didn’t just do the implementation either, they did design, debugging, documentation, user interface, and almost every other part of the job. Andy pointed out to me that one student, Bob Wallace,

did a lot of the FRESS design, much of it when he was tripping on acid and god knows what else he was ingesting at the time. This was the 60s, I knew my students were doing drugs and there was nothing I could do about it and as long as they performed I was not about to tell them how to live their lives. Anyhow, Wallace became one of the cofounders of Microsoft and did a lot for them

Wallace, with his wife, ultimately supported scientific research, public education, and harm reduction efforts related to psychedelics, starting their own foundation and bookstore. They also contributed financially to most of the key organizations in the field, including Erowid, MAPS, DanceSafe, and Black Rock Arts Foundation.

Andy’s new hypertext system came to fruition at Brown, and, after being used in a couple of courses, receiving a couple of grants, and going through maintenance and minor upgrades for ten years, finally retired. Outside of Brown, it was little known and had little direct influence. Its undo command, for example, did not lead to the ubiquitous command found in so much contemporary software. The hypertext that mattered most in our history – HTML, the basis of the web – was invented twenty years later by Tim Berners-Lee. He had never seen FRESS and never heard of Ted Nelson.

Bob Wallace

Here is my question. If HES and FRESS had no direct influence on the software that we use today, does that mean their story doesn’t matter? Is this the only story of its kind, or how long has this been going on? Did it matter that Bob Wallace, who designed much of FRESS, was an undergraduate on drugs?

Andy told me,

I built Brown Computer Science on the notion that even freshman, after they've had one rigorous course under their belt can make serious contributions and so you’ll find all the early papers the dominant contributors are undergraduates.
[…]
so the way I work with the kids I never did any of my own implementation because I’m not as fast as they are and I don’t have the time – the luxury – to do what they do, which is to sit down with their Coke and their pizza and go for 8 hours or 10 hours or 14 hours of design and implementation and debugging marathons. I have to teach, I have to do fundraising, I have to advise, I have this that and the other duty. So what I love doing is working on the ideation part
[…]
The undergraduates come out of my course, so I know they’ve done very well, I try them out on a five finger exercise if they’re good, then I pay them and or I give them course credit, they get to choose, and I pay them over the summer as summer interns and so if I were to show you demos today you would see mostly work done by undergraduates.
Brown students designed, tested, refined, and documented FRESS, one of the first hypertext editors and an ancestor of contemporary word processing.

Academic production is not just work done by professors and graduate students. To this day, undergraduates make up a huge part of the campus labor force and do a large portion of the work of academic science. This academic work has been hugely influential in the development of the software which mediates contemporary life.

SAGE, a huge experiment in real-time computing, trained professionals in computing at a time when such experience was hard to get.

The story I’m telling here is not the usual story. A more common account is that modern computing derives from military projects. It is true that military funding was crucial for the development of computer hardware especially from the 1940s to 1960s. However, most of the projects they funded were of general use to civilians or other branches of government, such as keeping Air Force bases supplied or analyzing large sets of demographic data. The usual way military money developed computing in the U.S. was by funding research sites, most of which were university labs staffed by students, grad and undergrad. Large scale military computer programs also served as training facilities for computer specialists, who very frequently left the programs to take on other computer-related work outside the military. By the 1960s, military support for computing moved through DARPA, where men from MIT directed the funds toward their MIT-inspired fantasy: systems that would overcome the batch processing paradigm and allow people to do science and engineering work in real time on responsive terminals linked to a central mainframe. Throughout the 1960s, a huge range of government organizations, churches, corporations, and specialized users began working with computers, and paying for their development. By the 1970s, software came into its own as an industry, and very few of the conventions of software by which we live today had yet been set.

US military funding did contribute to modern computing, but it was also, and quite significantly, a means by which those already working on computers furthered their own work on the government’s dime. The government put in the money, mostly universities received it, and then someone did the work. Though people like Andy van Dam claimed credit for inventions such as the undo command, how much of this work was done by students? And even today, how much of contemporary computer science is done by undergrads?

The UMass Lowell robotics team, not unlike other labs where students put in the hours to turn ideas into reality.

There are two reasons to care what work was done by students. First, it’s important to recognize who is actually doing the work. Similarly, undocumented immigrants do not run California, but they make California run. Recognizing the productive power of labor is itself worthwhile.
Second, if undergraduates are dreaming up how our phones, ATMs, medical simulations, and online forums for democratic discussion will work, the conditions of their work may be important to recognize. Those in computer science are overwhelmingly white and male, the design that they find intuitive, the structure that they find secure, the treatment that they think users should get may subtly become the world of possibilities in which we will be living for the next few decades. It might make a difference if the technology that we live by comes from senior faculty or from foreign Master’s students.

Among these groups, I think undergrads are interesting because they have been least acknowledged. As Andy pointed out to me at Brown, undergraduate students will sacrifice their free time more readily than faculty or grads, may be perfectly qualified for a job that no one really knows how to do, and may even like it.
I have not yet found numbers to assess the scope of undergraduate labor in scientific research on campus. How many hours of work done in a lab are put in by undergraduates? How do we measure the difference between those who clean test tubes and those who turn interface ideas into working programs? I don’t know the answer here, so if you have anything, please let me know!

What influence does the work done by students have on software? I see basically three kinds of influence:

UCSD’s Pascal

1st, they can make a product that becomes widely adopted. Undergrad students developed Counter-Strike and did most of the work to make UCSD Pascal, which was an early DOS rival. Visicalc, the first spreadsheet program, which some see as the killer app that made Apple personal computers successful, was written by an MBA student. People with free time, computing resources, and something to prove have more recently invented Napster and Facebook. So these conditions can still lead to important products.

Slide from the making of the slides for this presentation. I have used many conventions to produce this document, and here are some of the better known software conventions. Font size, typeface, alignment, text boxes, split columns, scrollbars, menus, taskbars, multitasking, and a program to play music while I work.

2nd, student work on software can establish informal conventions by doing valuable work that never amounts to a successful product. Before offices switched from typewriters to what we would recognize as word processors, almost every university campus with a mainframe had a program for writing and editing documents. Most of these were written by students. The prehistory of commercial word processing.
Contemporary web browsers retain many aspects of the design of Mosaic, which was itself preceded by Erwise and ViolaWWW, both student projects.
Almost every software program appropriates and combines thousands of pre-existing conventions. The scrollbar, the pop-up menu, tabbed browsing, password, jpg, file, search, and installer are not simply reproduced mechanically or taught in classes, they move between programs as folk knowledge of programmers and designers. Yet, once a certain solution to a particular problem, the scroll bar, for example, becomes acceptable, other designs rely on it, users become accustomed to it, and it gets very hard to change. Jaron Lanier calls this lock-in. The limitations of a format no longer become negotiable or open to change. These building blocks of software are always being put together in new ways, but the blocks themselves can sometimes become quite regular. The corpus of previously design programs informs new ones as surely as old songs and novels influence those being created now.

Xerox PARC, where personal computing came together, resulted in few products, and was snatched up by recruiters from Microsoft and Apple.

3rd, one of the most powerful forms of technology transfer is to move the people. Students who worked on one project often use this experience to get a job doing related work elsewhere. This was ultimately the path by which the undo command came from a totally different source, a recently graduated PhD from MIT at his first job moved to a job at Xerox PARC in 1972 and eventually the command became part of the Apple OS and Microsoft Word, going mainstream in the early 80s.

In trying to understand the history of the conventions of software that mediate everyday activity, there are students at work everywhere you turn. The story is not the same for methods for counterterrorism, design for automobiles, recipes for chocolate chip cookies, or policies about religious expression. Software has a special connection to student labor.

What are the conditions of this labor? How do these conditions translate into what gets produced and what does not?

Gate at Brown University

At Brown, undergrads worked for money or credit on an exciting project that was against the grain of computing up to that time. The project could not have been initially justified at a company and did not make dollars, but it did make sense to those who were typing and editing text documents all the time. People like students and teachers. The project leader (Andy) had personal reasons to take it on, but the project shifted emphasis from the open-ended always-online text advocated by the visiting scholar (Ted), to a word processor suitable for outputting the kind of documents professors need to write. It was the 60s, some students were on drugs, and all were expected to be able to work long hours, mostly at night, to make the system a reality.

By understanding contemporary conditions of academic production in software, we may be able to better understand a diffuse but important aspect of the terms and conditions of life with software. Undergrads today are designing, debugging, and implementing the structures of software to provide customized real-time traffic data, map ocean currents, put on multi-media shows, hack cars, and fight spammers. Why does the software work that way? Maybe it’s just because that’s how the undergrads put it together.