Month: July 2014

People Get Ready, There’s a Train A-Coming

Before World War II, MIT had not been much of a digital computer hotspot.  While Howard Aiken at neighboring Harvard and John Atanasoff at Iowa State College were exploring digital solutions to solving complex differential equations, MIT remained firmly planted in the analog world with Vannevar Bush’s differential analyzer.  During the war, however, the university became one of the primary centers for war-related scientific research.  From the development of fire control systems at the Servomechanisms Laboratory to the breakthroughs in radar delivered by the Radiation Laboratory, MIT secured its place in the military-industrial complex as a critical research hub and became deeply involved in digital computer design through Projects Whirlwind and SAGE.

As Project Whirlwind gathered steam in 1950, MIT provost Julius Stratton formed a committee chaired by physics professor Philip Morse to study the question of whether and how MIT should introduce a computer for general use by faculty and staff at the university.  In 1954, the committee returned a recommendation that MIT should build a Computation Center on campus “to aid faculty in keeping up to date on computer use within their fields and to assist them in introducing the use of computers into their courses; to educate all MIT students in computer use; and to explore and develop new ways of using computers in engineering and scientific research.” (Source: Guide to the Records of the Massachusetts Institute of Technology Computation Center)  After considering whether to re-purpose the Whirlwind I or invest in a commercial machine, Morse decided in July 1955 to recommend MIT acquire an IBM 704 computer — which he managed to convince the company to provide free of charge, but would not be ready until 1957.  Formally announced on September 23, 1955, the Computation Center was incorporated into the forthcoming Building 26 as an 18,000 square foot area near the northwest corner of the building dedicated solely to housing the 704 computer. (Source: A Century of Electrical Engineering and Computer Science at MIT, 1882-1982 by Karl Wildes and Nilo Lindgren)  The center came online with the installation of the 704 in 1957 just as a new generation of college students that had received limited exposure to computers in the mid-1950s matriculated to MIT bound and determined to learn everything they could about the new machines.  The interaction of these students with MIT’s new computing resources ultimately resulted in the creation of the first widely disseminated computer game.

The Tech Model Railroad Club

dec.anderson_kotok_and_man_at_Chevron-Hilton_hotel.1964.102665174.lg

Alan Kotok (seated right with glasses), TMRC member and early computer hacker

In September 1946, a group of 26 students (according to the membership rolls maintained by TMRC on its website) established a new organization on the MIT campus called the Tech Model Railroad Club (TMRC).  Located in Building 20, which had been built during World War II to house the Radiation Laboratory, TMRC dedicated itself to building and operating what quickly became an immense model railroad system.  As discussed in Stephen Levy’s book Hackers: Heroes of the Computer Revolution, this work attracted two distinct types of students: the train and modelling buffs that would meticulously construct accurate railroad cars and elaborate scenery, and the electrical engineering buffs of the Signals and Power (S&P) Subcommittee that would constantly update and refine a track control system of impressive complexity described by Levy as appearing like “a collaboration between Rube Goldberg and Wernher von Braun.”  Spending long hours together under the train layout installing parts donated by Western Electric or scrounged from Eli Heffreon’s junkyard in nearby Somerville, members of the S&P quickly bonded over shared interests and even developed their own lexicon.  For example, a person who studied instead of joining in the fun was called a “tool,” garbage was called “cruft,” and a clever project undertaken just for the fun of it was called a “hack.”  Ultimately, this group of tinkerers would launch the computer revolution referenced in the title of Levy’s book.

Hackers paints portraits of the key TMRC members that matriculated to MIT in 1958.  Foremost among them were Alan Kotok and Peter Samson.  According to Levy, Kotok grew up in the New Jersey suburbs of Philadelphia, where his parents learned he was an electrical engineering prodigy when he was already building and wiring lamps by the time he was six years old.  As touched on in Hackers and elaborated on in an oral history Kotok conducted with the Computer History Museum, Kotok’s first exposure to a computer was a high school field trip to a Socony-Mobil research laboratory in Paulsboro, NJ (Note: Hackers claims the facility was in nearby Haddonfield, but Kotok’s contention in his oral history that it was in Paulsboro appears to accurate), where the students not only viewed a mainframe computer, but actually ran through a programming exercise using punched cards.  From that day forward, Kotok knew his future lay with computers, which is why he applied to MIT.  Interested in model railroads, Kotok quickly gravitated to TMRC, where according to Levy he was quickly accounted one of the best electrical engineers in S&P.

Samson, on the other hand, was a local boy who grew up just thirty miles away from the university in Lowell, Massachusetts.  His first exposure to computers was a television program on the Boston public TV channel WGBH that gave a basic introduction to computer programming.  Inspired, he learned everything he could about computing and actually tried to build his own computer using relays pried out of pinball machines.  He also viewed computers on trips to MIT, where he resolved to continue his education after high school.  Samson joined TMRC on the first day of Freshman orientation in Fall 1958 and was instantly hooked when he beheld the complex system of wires, relays, and switches that kept the track running.  TMRC members received their own key to the club room after putting in forty hours on the layout: Samson earned his key in less than three days.

From available evidence, it appears few TMRC upperclassmen shared the same interest in computers as the class of 1962.  One that did was Bob Saunders, who joined TMRC in 1956 and by 1958 had become the president of the S&P Subcommittee.  Unlike Kotok and Samson, Saunders appears not to have received exposure to computers before matriculating to the school.  Levy does describe several engineering exploits he undertook as a boy in the suburbs of Chicago, however, including the construction of a six-foot-tall high-frequency transformer that Saunders claimed blew out television reception for miles around and working a summer job at the phone company installing central office equipment.  Indeed, it was the telephone parts used in the train control system that first attracted Saunders to TMRC.

Samson, Kotok, and several other TMRC students gained exposure to the IBM 704 in the Computation Center in Spring 1959 through the first computer course MIT had ever offered to Freshmen, and Kotok even became intimately involved in a chess project being implemented on the computer (and which will be discussed in detail in a later post), but Levy recounts that this experience did not satisfy the bright and curious TMRC members.  As a batch processing computer, the 704 required trained IBM staff to actually run programs and provided little feedback to the students and professors who would bring their punched cards to Building 26 and return hours later to see the results, all the while hoping no serious errors had prevented the program from running.  Levy, echoing the words of Ted Nelson in his seminal 1974 work Computer Lib, compared these interactions to acolytes (the programmers) asking for divine aid from a fickle god (the computer) through a dedicated priesthood (the operators).  This metaphor of a computer priesthood remains an oft-invoked image to this day when discussing batch processing mainframes.  Frustrated by their limited access to the 704, TMRC students searched for alternative means to scratch their computing itch.

As described by Levy, Peter Samson particularly enjoyed stalking the hallways of Building 26 at all hours looking for new activities to feed his insatiable curiosity.  He would trace wiring, examine telephone switching equipment, and look for unguarded technology to fiddle with.  One of these excursions led him to the Electronic Accounting Machinery (EAM) room in the basement, where the university had installed several IBM accounting machines, including an IBM 407.  These were electromechanical tabulators of limited capability, but they could read and sort cards and print out the results.  Even better, they were only guarded during the day, making the 407 the closest thing to a computer to which TMRC members could secure direct access.  Before long, Samson and other TMRC members could be found clustered around the 407 late into the night using the machine to keep track of the expanding array of switches under their train layout and seeing just how far they could push the technology.  This work on the 407 represented one of the earliest manifestations of a new computer-centric culture within TMRC.

Hacking the TX-0

jm027 Univac Trip Nov 1963 Jack Dennis

Jack Dennis, the former TMRC member and MIT professor that introduced TMRC to the Tx-0

In July 1958, Lincoln Laboratory decided it had no further need for the TX-0 computer built by Ken Olsen and Wes Clark and therefore placed it on semi-permanent loan to MIT, which housed it in the Research Laboratory of Electronics (RLE) in Building 26, located, according to Levy, just one floor above the 704 in the Computation Center.  As the computer was coming online, a new MIT instructor by the name of Jack Dennis was just settling into his office down the hall.  An MIT alum, Dennis, according to a TX-0 retrospective in the Spring 1984 issue of the Computer Museum Report, had recently completed his dissertation and accepted the instructor position in the fall of 1958, but he was uninterested in pursuing his dissertation topic further.  Dennis was soon drawn to the nearby TX-0 and began writing programs for the computer, the most important of which were FLIT, a debugger he wrote with Thomas Stockham, and MACRO, an assembler.  These programs allowed a programmer to work in assembly language rather than the more difficult machine language and more easily identify and correct bad code, therefore opening TX-0 programming to a larger user base.  About a year and a half after the TX-0 arrived, Dennis was placed in charge of the machine.

Unlike the 704 in the Computation Center, which was operated by trained staff, the TX-0 was generally available for faculty and graduate student research: all a person needed to do was sign up for a block of time.   Jack Dennis, however, wanted to go a step further.  As an undergraduate, Dennis had the opportunity to program on the Whirlwind, and he believed that interested undergraduate students were a valuable resource that should be encouraged to run their own computer experiments.  Dennis had also joined TMRC as a freshman in 1949 and still had contacts within the group, so he knew exactly where to go to recruit his cadre of interested programmers.  In his oral history, Alan Kotok remembers Dennis approaching TMRC members in Fall 1958 and asking if they would like to learn to program the TX-0.  He took aside an interested group of students that included S&P president Bob Saunders and freshmen Kotok, Samson, Dick Wagner, and Dave Gross and delivered a crash course on the TX-0.  The students were amazed to discover a computer that allowed them to program directly and fix their code on the fly.  With Dennis’s support, they negotiated with the people in charge of the computer, Earl Pugh and John McKenzie, who agreed to allow them access to the computer during blocks of time not already committed to official research.

During the day, the TX-0 was usually being put to serious use, but few projects were ever run overnight.  Therefore, the TMRC members became nocturnal creatures, ignoring both their classes and any semblance of a social life to maximize the amount of time they could spend programming the machine.  The young coders derived great joy from pushing the computer to its limits and mastering its capabilities.  Like the work they did on the railroad in building 20, the projects they undertook on the TX-0 purely for the fun and the challenge came to be called “hacks,” and the programmers began referring to themselves as “hackers.”

Few of the programs created by the TMRC coders did anything useful — or at least nothing useful enough to justify employing a multi-million dollar computer.  Hackers and the Computer Museum Report describe several of these programs.  Peter Samson created a program to convert Arabic numbers to Roman numerals and then puzzled out a way to manipulate the primitive built-in audio speaker to play simple, single-voice melodies using a square wave.  Kotok discovered a way to interface an FM receiver with the analog-to-digital converter on the computer to create a program he called the Expensive Tape Recorder, while Wagner, who had been using an electro-mechanical calculator in a numerical analysis class, was inspired to write a program called Expensive Desk Calculator.

The Demo Scene

MOuse in a Maze Recreation

A screenshot of an emulated recreation of MOUSE

In addition to the experiments of the TMRC hackers, the TX-0 also became home to a number of demos.  As explained by J.M. Gratez in his August 1981 article for Creative Computing, “The Origin of Spacewar,” getting the general public interested in early computers was rarely easy.  While many people were attracted by the high technology on display, they were soon bored watching a computer work, as there were no manifestations of its activity save for blinking lights and whirring tape.  This quickly led programmers to create programs that were visually striking and/or interactive in order to generate interest in computer use.  The previously discussed Bertie, NIMROD, MIDSAC pool, and Tennis for Two were all essentially interactive demos created for this purpose, and TX-0 programmers were soon crafting their own demos to achieve the same result.

The TX-0 demo programmers most likely took some inspiration from the program recognized as the earliest computer demo, a bouncing ball program created on the Whirlwind I by Charles Adams in 1950.  As described by Graetz, this simple program began with a single dot falling from the top of the screen and bouncing when it hit the bottom of the screen, accompanied by a sound from the Whirlwind speaker.  The ball would continue to bounce around all four sides of the screen until finally running out of momentum and rolling off through a hole in the floor.  While the program was simple, the effect proved stunning in a time when no other computer could actually update a CRT display in real-time.

Graetz describes several demos on the TX-0.  One, called HAX, would generate an ever-changing array of shapes to show off the capabilities of the TX-0’s CRT.  Another was a Tic-Tac-Toe game — played against the computer by typing commands using the flexowriter — designed to show off the computer’s interactivity.  Perhaps the most impressive hack, combining the visual interest of HAX and the interactivity of Tic-Tac-Toe, was the MOUSE program developed by Doug Ross and John Ward and first publicized in January 1959.  As described in the Spring 1984 Computer Museum Report, Ward had observed people programming on the Whirlwind at Lincoln Labs but had never had the opportunity to program the machine himself.  Therefore, when the TX-0 became available, he decided to sign up for time but did not know what type of program to write.  Remembering a program he had developed while working with a UNIVAC 1103 on Eglin Air Force Base with Ross, the head of MIT’s Computer Applications Group and the person who first coined the term “computer-aided design” (CAD), Ward convinced Ross to help him create a similar program on the TX-0.  In the finished product, with logic by Ross and a display by Ward, the user would create a maze directly on the CRT by erasing lines from an 8×8 grid of squares using the light pen and then place pieces of cheese throughout the maze.  A mouse would then traverse the maze while eating all the cheese.  The mouse would run out of energy if it did not reach a piece of cheese within a certain amount of time, but it would remember the paths taken in each attempt and therefore develop a more efficient route over time.  A variant replaced the cheese with martini glasses and had the mouse stagger the more it drank.

MOUSE and Tic-Tac-Toe highlighted the potential of an interactive computer as a device for playing games, but the TX-0 display remained too limited to create a truly engaging interactive visual experience.  In 1961, however, DEC donated one of the first PDP-1 computers to MIT, which was placed in the RLE in the room next to the TX-0.  Sporting a more sophisticated display than the TX-0, the PDP-1 was the perfect platform for the TMRC hackers to take the lessons learned through programming the TX-0 to create the first truly influential computer game, Spacewar!