Hackers, Heroes of the Computer Revolution - LightNovelsOnl.com
You're reading novel online at LightNovelsOnl.com. Please use the follow button to get notifications about your favorite novels and its latest chapters so you can come back anytime and won't miss anything.
Many of the parts for The System had been donated by the Western Electric College Gift Plan, directly from the phone company. The club's faculty advisor was also in charge of the campus phone system, and had seen to it that sophisticated phone equipment was available for the model railroaders. Using that equipment as a starting point, the Railroaders had devised a scheme which enabled several people to control trains at once, even if the trains were at different parts of the same track. Using dials appropriated from telephones, the TMRC "engineers" could specify which block of track they wanted control of, and run a train from there. This was done by using several types of phone company relays, including crossbar executors and step switches which let you actually hear the power being transferred from one block to another by an other-worldly chunka-chunka-chunka sound.
It was the S&P group who devised this fiendishly ingenious scheme, and it was the S&P group who harbored the kind of restless curiosity which led them to root around campus buildings in search of ways to get their hands on computers. They were lifelong disciples of a Hands-On Imperative. Head of S&P was an uppercla.s.sman named Bob Saunders, with ruddy, bulbous features, an infectious laugh, and a talent for switch gear. As a child in Chicago, he had built a high-frequency transformer for a high school project; it was his six-foot-high version of a Tesla coil, something devised by an engineer in the 1800s which was supposed to send out furious waves of electrical power. Saunders said his coil project managed to blow out television reception for blocks around. Another person who gravitated to S&P was Alan Kotok, a plump, chinless, thick-spectacled New Jerseyite in Samson's cla.s.s. Kotok's family could recall him, at age three, prying a plug out of a wall with a screwdriver and causing a hissing shower of sparks to erupt. When he was six, he was building and wiring lamps. In high school he had once gone on a tour of the Mobil Research Lab in nearby Haddonfield, and saw his first computer--the exhilaration of that experience helped him decide to enter MIT. In his freshman year, he earned a reputation as one of TMRC's most capable S&P people.
The S&P people were the ones who spent Sat.u.r.days going to Eli Heffron's junkyard in Somerville scrounging for parts, who would spend hours on their backs resting on little rolling chairs they called "bunkies" to get underneath tight spots in the switching system, who would work through the night making the wholly unauthorized connection between the TMRC phone and the East Campus. Technology was their playground.
The core members hung out at the club for hours; constantly improving The System, arguing about what could be done next, developing a jargon of their own that seemed incomprehensible to outsiders who might chance on these teen-aged fanatics, with their checked short-sleeve s.h.i.+rts, pencils in their pockets, chino pants, and, always, a bottle of Coca-Cola by their side.
(TMRC purchased its own c.o.ke machine for the then forbidding sum of $165; at a tariff of five cents a bottle, the outlay was replaced in three months; to facilitate sales, Saunders built a change machine for c.o.ke buyers that was still in use a decade later.) When a piece of equipment wasn't working, it was "losing"; when a piece of equipment was ruined, it was "munged"
(Mash Until No Good); the two desks in the corner of the room were not called the office, but the "orifice"; one who insisted on studying for courses was a "tool"; garbage was called "cruft"; and a project undertaken or a product built not solely to fulfill some constructive goal, but with some wild pleasure taken in mere involvement, was called a "hack."
This latter term may have been suggested by ancient MIT lingo-- the word "hack" had long been used to describe the elaborate college pranks that MIT students would regularly devise, such as covering the dome that overlooked the campus with reflecting foil. But as the TMRC people used the word, there was serious respect implied. While someone might call a clever connection between relays a "mere hack," it would be understood that, to qualify as a hack, the feat must be imbued with innovation, style, and technical virtuosity. Even though one might self-deprecatingly say he was "hacking away at The System" (much as an axe-wielder hacks at logs), the artistry with which one hacked was recognized to be considerable.
The most productive people working on Signals and Power called themselves "hackers" with great pride. Within the confines of the clubroom in Building 20, and of the "Tool Room" (where some study and many techno bull sessions took place), they had unilaterally endowed themselves with the heroic attributes of Icelandic legend. This is how Peter Samson saw himself and his friends in a Sandburg-esque poem in the club newsletter:
Switch Thrower for the World, Fuze Tester, Maker of Routes, Player with the Railroads and the System's Advance Chopper; Grungy, hairy, sprawling, Machine of the Point-Function Line-o-lite: They tell me you are wicked and I believe them; for I have seen your painted light bulbs under the lucite luring the system coolies ...
Under the tower, dust all over the place, hacking with bifur- cated springs ...
Hacking even as an ignorant freshman acts who has never lost occupancy and has dropped out Hacking the M-Boards, for under its locks are the switches, and under its control the advance around the layout, Hacking!
Hacking the grungy, hairy, sprawling hacks of youth; uncabled, frying diodes, proud to be Switch-thrower, Fuze- tester, Maker of Routes, Player with Railroads, and Advance Chopper to the System.
Whenever they could, Samson and the others would slip off to the EAM room with their plug boards, trying to use the machine to keep track of the switches underneath the layout. Just as important, they were seeing what the electromechanical counter could do, taking it to its limit.
That spring of 1959, a new course was offered at MIT. It was the first course in programming a computer that freshmen could take.
The teacher was a distant man with a wild shock of hair and an equally unruly beard--John McCarthy. A master mathematician, McCarthy was a cla.s.sically absent-minded professor; stories abounded about his habit of suddenly answering a question hours, sometimes even days after it was first posed to him. He would approach you in the hallway, and with no salutation would begin speaking in his robotically precise diction, as if the pause in conversation had been only a fraction of a second, and not a week. Most likely, his belated response would be brilliant.
McCarthy was one of a very few people working in an entirely new form of scientific inquiry with computers. The volatile and controversial nature of his field of study was obvious from the very arrogance of the name that McCarthy had bestowed upon it: Artificial Intelligence. This man actually thought that computers could be SMART. Even at such a science-intensive place as MIT, most people considered the thought ridiculous: they considered computers to be useful, if somewhat absurdly expensive, tools for number-crunching huge calculations and for devising missile defense systems (as MIT's largest computer, the Whirlwind, had done for the early-warning SAGE system), but scoffed at the thought that computers themselves could actually be a scientific field of study, Computer Science did not officially exist at MIT in the late fifties, and McCarthy and his fellow computer specialists worked in the Electrical Engineering Department, which offered the course, No. 641, that Kotok, Samson, and a few other TRMC members took that spring.
McCarthy had started a mammoth program on the IBM 704--the Hulking Giant--that would give it the extraordinary ability to play chess. To critics of the budding field of Artificial Intelligence, this was just one example of the boneheaded optimism of people like John McCarthy. But McCarthy had a certain vision of what computers could do, and playing chess was only the beginning.
All fascinating stuff, but not the vision that was driving Kotok and Samson and the others. They wanted to learn how to WORK the d.a.m.n machines, and while this new programming language called LISP that McCarthy was talking about in 641 was interesting, it was not nearly as interesting as the act of programming, or that fantastic moment when you got your printout back from the Priesthood--word from the source itself!--and could then spend hours poring over the results of the program, what had gone wrong with it, how it could be improved. The TMRC hackers were devising ways to get into closer contact with the IBM 704, which soon was upgraded to a newer model called the 709. By hanging out at the computation center in the wee hours of the morning, and by getting to know the Priesthood, and by bowing and sc.r.a.ping the requisite number of times, people like Kotok were eventually allowed to push a few b.u.t.tons on the machine, and watch the lights as it worked.
There were secrets to those IBM machines that had been painstakingly learned by some of the older people at MIT with access to the 704 and friends among the Priesthood. Amazingly, a few of these programmers, grad students working with McCarthy, had even written a program that utilized one of the rows of tiny lights: the lights would be lit in such an order that it looked like a little ball was being pa.s.sed from right to left: if an operator hit a switch at just the right time, the motion of the lights could be reversed--Computer Ping-Pong! This obviously was the kind of thing that you'd show off to impress your peers, who would then take a look at the actual program you had written and see how it was done.
To top the program, someone else might try to do the same thing with fewer instructions--a worthy endeavor, since there was so little room in the small "memory" of the computers of those days that not many instructions could fit into them, John McCarthy had once noticed how his graduate students who loitered around the 704 would work over their computer programs to get the most out of the fewest instructions, and get the program compressed so that fewer cards would need to be fed to the machine. Shaving off an instruction or two was almost an obsession with them.
McCarthy compared these students to ski b.u.ms. They got the same kind of primal thrill from "maximizing code" as fanatic skiers got from swoos.h.i.+ng frantically down a hill. So the practice of taking a computer program and trying to cut off instructions without affecting the outcome came to be called "program b.u.mming," and you would often hear people mumbling things like "Maybe I can b.u.m a few instructions out and get the octal correction card loader down to three cards instead of four."
McCarthy in 1959 was turning his interest from chess to a new way of talking to the computer, the whole new "language" called LISP.
Alan Kotok and his friends were more than eager to take over the chess project. Working on the batch-processed IBM, they embarked on the gargantuan project of teaching the 704, and later the 709, and even after that its replacement the 7090, how to play the game of kings. Eventually Kotok's group became the largest users of computer time in the entire MIT computation center.
Still, working with the IBM machine was frustrating. There was nothing worse than the long wait between the time you handed in your cards and the time your results were handed back to you. If you had misplaced as much as one letter in one instruction, the program would crash, and you would have to start the whole process over again. It went hand in hand with the stifling proliferation of G.o.dd.a.m.n RULES that permeated the atmosphere of the computation center. Most of the rules were designed to keep crazy young computer fans like Samson and Kotok and Saunders physically distant from the machine itself. The most rigid rule of all was that no one should be able to actually touch or tamper with the machine itself. This, of course, was what those Signals and Power people were dying to do more than anything else in the world, and the restrictions drove them mad.
One priest--a low-level sub-priest, really--on the late-night s.h.i.+ft was particularly nasty in enforcing this rule, so Samson devised a suitable revenge. While poking around at Eli's electronic junk shop one day, he chanced upon an electrical board precisely like the kind of board holding the clunky vacuum tubes which resided inside the IBM. One night, sometime before 4 A.M., this particular sub-priest stepped out for a minute; when he returned, Samson told him that the machine wasn't working, but they'd found the trouble--and held up the totally smashed module from the old 704 he'd gotten at Eli's.
The sub-priest could hardly get the words out. "W-where did you get that?"
Samson, who had wide green eyes that could easily look maniacal, slowly pointed to an open place on the machine rack where, of course, no board had ever been, but the s.p.a.ce still looked sadly bare. The sub-priest gasped. He made faces that indicated his bowels were about to give out. He whimpered exhortations to the deity. Visions, no doubt, of a million-dollar deduction from his paycheck began flas.h.i.+ng before him. Only after his supervisor, a high priest with some understanding of the mentality of these young wiseguys from the Model Railroad Club, came and explained the situation did he calm down.
He was not the last administrator to feel the wrath of a hacker thwarted in the quest for access.
One day a former TMRC member who was now on the MIT faculty paid a visit to the clubroom. His name was Jack Dennis. When he had been an undergraduate in the early 1950s, he had worked furiously underneath the layout. Dennis lately had been working a computer which MIT had just received from Lincoln Lab, a military development laboratory affiliated with the Inst.i.tute. The computer was called the TX-0, and it was one of the first transistor-run computers in the world. Lincoln Lab had used it specifically to test a giant computer called the TX-2, which had a memory so complex that only with this specially built little brother could its ills be capably diagnosed. Now that its original job was over, the three-million-dollar TX-0 had been s.h.i.+pped over to the Inst.i.tute on "long-term loan," and apparently no one at Lincoln Lab had marked a calendar with a return date.
Dennis asked the S&P people at TMRC whether they would like to see it.
Hey you nuns! Would you like to meet the Pope?
The TX-0 was in Building 26, in the second-floor Radio Laboratory of Electronics (RLE), directly above the first-floor Computation Center which housed the hulking IBM 704. The RLE lab resembled the control room of an antique s.p.a.ces.h.i.+p. The TX-0, or Tixo, as it was sometimes called, was for its time a midget machine, since it was one of the first computers to use finger-size transistors instead of hand-size vacuum tubes. Still, it took up much of the room, along with its fifteen tons of supporting air-conditioning equipment. The TX-O's workings were mounted on several tall, thin cha.s.sis, like rugged metal bookshelves, with tangled wires and neat little rows of tiny, bottle-like containers in which the transistors were inserted. Another rack had a solid metal front speckled with grim-looking gauges. Facing the racks was an L-shaped console, the control panel of this H. G. Wells s.p.a.ces.h.i.+p, with a blue countertop for your elbows and papers. On the short arm of the L stood a Flexowriter, which resembled a typewriter converted for tank warfare, its bottom anch.o.r.ed in a military gray housing. Above the top were the control panels, boxlike protrusions painted an inst.i.tutional yellow. On the sides of the boxes which faced the user were a few gauges, several lines of quarter-inch blinking lights, a matrix of steel toggle switches the size of large grains of rice, and, best of all, an actual cathode ray tube display, round and smoke-gray.
The TMRC people were awed. THIS MACHINE DID NOT USE CARDS. The user would first punch in a program onto a long, thin paper tape with a Flexowriter (there were a few extra Flexowriters in an adjoining room), then sit at the console, feed in the program by running the tape through a reader, and be able to sit there while the program ran. If something went wrong with the program, you knew immediately, and you could diagnose the problem by using some of the switches, or checking out which of the lights were blinking or lit. The computer even had an audio output: while the program ran, a speaker underneath the console would make a sort of music, like a poorly tuned electric organ whose notes would vibrate with a fuzzy, ethereal din. The chords on this "organ" would change, depending on what data the machine was reading at any given microsecond; after you were familiar with the tones, you could actually HEAR what part of your program the computer was working on. You would have to discern this, though, over the clacking of the Flexowriter, which could make you think you were in the middle of a machine-gun battle. Even more amazing was that, because of these "interactive" capabilities, and also because users seemed to be allowed blocks of time to use the TX-0 all by themselves, you could even modify a program WHILE SITTING AT THE COMPUTER. A miracle!
There was no way in h.e.l.l that Kotok, Saunders, Samson, and the others were going to be kept away from that machine.
Fortunately, there didn't seem to be the kind of bureaucracy surrounding the TX-0 that there was around the IBM 704. No cadre of officious priests. The technician in charge was a canny white-haired Scotsman named John McKenzie. While he made sure that graduate students and those working on funded projects-- Officially Sanctioned Users--maintained access to the machine, McKenzie tolerated the crew of TMRC madmen who began to hang out in the RLE lab, where the TX-0 stood.
Samson, Kotok, Saunders, and a freshman named Bob Wagner soon figured out that the best time of all to hang out in Building 26 was at night, when no person in his right mind would have signed up for an hour-long session on the piece of paper posted every Friday beside the air conditioner in the RLE lab. The TX-0 as a rule was kept running twenty-four hours a day--computers back then were too expensive for their time to be wasted by leaving them idle through the night, and besides, it was a hairy procedure to get the thing up and running once it was turned off.
So the TMRC hackers, who soon were referring to themselves as TX-0 hackers, changed their life-style to accommodate the computer. They laid claim to what blocks of time they could, and would "vulture time" with nocturnal visits to the lab on the off chance that someone who was scheduled for a 3 A.M. session might not show up.
"Oh!" Samson would say delightedly, a minute or so after someone failed to show up at the time designated in the logbook. "Make sure it doesn't go to waste!"
It never seemed to, because the hackers were there almost all the time. If they weren't in the RLE lab waiting for an opening to occur, they were in the cla.s.sroom next to the TMRC clubroom, the Tool Room, playing a "hangman"-style word game that Samson had devised called "Come Next Door," waiting for a call from someone who was near the TX-0, monitoring it to see if someone had not shown up for a session. The hackers recruited a network of informers to give advance notice of potential openings at the computer--if a research project was not ready with its program in time, or a professor was sick, the word would be pa.s.sed to TMRC and the hackers would appear at the TX-0, breathless and ready to jam into the s.p.a.ce behind the console.
Though Jack Dennis was theoretically in charge of the operation, Dennis was teaching courses at the time, and preferred to spend the rest of his time actually writing code for the machine.
Dennis played the role of benevolent G.o.dfather to the hackers: he would give them a brief hands-on introduction to the machine, point them in certain directions, be amused at their wild programming ventures. He had little taste for administration, though, and was just as happy to let John McKenzie run things.
McKenzie early on recognized that the interactive nature of the TX-0 was inspiring a new form of computer programming, and the hackers were its pioneers. So he did not lay down too many edicts.
The atmosphere was loose enough in 1959 to accommodate the strays--science-mad people whose curiosity burned like a hunger, who like Peter Samson would be exploring the uncharted maze of laboratories at MIT. The noise of the air-conditioning, the audio output, and the drill-hammer Flexowriter would lure these wanderers, who'd poke their heads into the lab like kittens peering into baskets of yarn.
One of those wanderers was an outsider named Peter Deutsch. Even before discovering the TX-0, Deutsch had developed a fascination for computers. It began one day when he picked up a manual that someone had discarded, a manual for an obscure form of computer language for doing calculations. Something about the orderliness of the computer instructions appealed to him: he would later describe the feeling as the same kind of eerily transcendent recognition that an artist experiences when he discovers the medium that is absolutely right for him. THIS IS WHERE I BELONG.
Deutsch tried writing a small program, and, signing up for time under the name of one of the priests, ran it on a computer.
Within weeks, he had attained a striking proficiency in programming. He was only twelve years old.
He was a shy kid, strong in math and unsure of most everything else. He was uncomfortably overweight, deficient in sports, but an intellectual star performer. His father was a professor at MIT, and Peter used that as his entree to explore the labs.
It was inevitable that he would be drawn to the TX-0. He first wandered into the small "Kluge Room" (a "kluge" is a piece of inelegantly constructed equipment that seems to defy logic by working properly), where three off-line Flexowriters were available for punching programs onto paper tape which would later be fed into the TX-0. Someone was busy punching in a tape.
Peter watched for a while, then began bombarding the poor soul with questions about that weird-looking little computer in the next room. Then Peter went up to the TX-0 itself, examined it closely, noting how it differed from other computers: it was smaller, had a CRT display, and other neat toys. He decided right then to act as if he had a perfect right to be there. He got hold of a manual and soon was startling people by spouting actual make-sense computer talk, and eventually was allowed to sign up for night and weekend sessions, and to write his own programs.
McKenzie worried that someone might accuse him of running some sort of summer camp, with this short-pants little kid, barely tall enough to stick his head over the TX-O's console, staring at the code that an Officially Sanctioned User, perhaps some self-important graduate student, would be hammering into the Flexowriter, and saying in his squeaky, preadolescent voice something like "Your problem is that this credit is wrong over here . . . you need this other instruction over there," and the self-important grad student would go crazy--WHO IS THIS LITTLE WORM?--and start screaming at him to go out and play somewhere.
Invariably, though, Peter Deutsch's comments would turn out to be correct. Deutsch would also brazenly announce that he was going to write better programs than the ones currently available, and he would go and do it.
Samson, Kotok, and the other hackers accepted Peter Deutsch: by virtue of his computer knowledge he was worthy of equal treatment. Deutsch was not such a favorite with the Officially Sanctioned Users, especially when he sat behind them ready to spring into action when they made a mistake on the Flexowriter.
These Officially Sanctioned Users appeared at the TX-0 with the regularity of commuters. The programs they ran were statistical a.n.a.lyses, cross correlations, simulations of an interior of the nucleus of a cell. Applications. That was fine for Users, but it was sort of a waste in the minds of the hackers. What hackers had in mind was getting behind the console of the TX-0 much in the same way as getting in behind the throttle of a plane, Or, as Peter Samson, a cla.s.sical music fan, put it, computing with the TX-0 was like playing a musical instrument: an absurdly expensive musical instrument upon which you could improvise, compose, and, like the beatniks in Harvard Square a mile away, wail like a banshee with total creative abandon.
One thing that enabled them to do this was the programming system devised by Jack Dennis and another professor, Tom Stockman. When the TX-0 arrived at MIT, it had been stripped down since its days at Lincoln Lab: the memory had been reduced considerably, to 4,096 "words" of eighteen bits each. (A "bit" is a BInary digiT, either a one or zero. These binary numbers are the only thing computers understand. A series of binary numbers is called a "word.") And the TX-0 had almost no software. So Jack Dennis, even before he introduced the TMRC people to the TX-0, had been writing "systems programs"--the software to help users utilize the machine.
The first thing Dennis worked on was an a.s.sembler. This was something that translated a.s.sembly language--which used three- letter symbolic abbreviations that represented instructions to the machine--into machine language, which consisted of the binary numbers 0 and 1. The TX-0 had a rather limited a.s.sembly language: since its design allowed only two bits of each eighteen-bit word to be used for instructions to the computer, only four instructions could be used (each possible two-bit variation--00, 0 1, 10, and 11--represented an instruction).
Everything the computer did could be broken down to the execution of one of those four instructions: it took one instruction to add two numbers, but a series of perhaps twenty instructions to multiply two numbers. Staring at a long list of computer commands written as binary numbers--for example, 10011001100001-- could make you into a babbling mental case in a matter of minutes. But the same command in a.s.sembly language might look like this: ADD Y. After loading the computer with the a.s.sembler that Dennis wrote, you could write programs in this simpler symbolic form, and wait smugly while the computer did the translation into binary for you, Then you'd feed that binary "object" code back into the computer. The value of this was incalculable: it enabled programmers to write in something that LOOKED like code, rather than an endless, dizzying series of ones and zeros.
The other program that Dennis worked on with Stockman was something even newer--a deb.u.g.g.e.r. The TX-0 came with a debugging program called UT-3, which enabled you to talk to the computer while it was running by typing commands directly into the Flexowriter, But it had terrible problems-for one thing, it only accepted typed-in code that used the octal numeric system.
"Octal" is a base-eight number system (as opposed to binary, which is base two, and Arabic--ours-which is base ten), and it is a difficult system to use. So Dennis and Stockman decided to write something better than UT-3 which would enable users to use the symbolic, easier-to-work-with a.s.sembly language. This came to be called FLIT, and it allowed users to actually find program bugs during a session, fix them, and keep the program running.
(Dennis would explain that "FLIT" stood for FLexowriter Interrogation Tape, but clearly the name's real origin was the insect spray with that brand name.) FLIT was a quantum leap forward, since it liberated programmers to actually do original composing on the machine--just like musicians composing on their musical instruments. With the use of the deb.u.g.g.e.r, which took up one third of the 4,096 words of the TX-O's memory, hackers were free to create a new, more daring style of programming.
And what did these hacker programs DO? Well, sometimes, it didn't matter much at all what they did. Peter Samson hacked the night away on a program that would instantly convert Arabic numbers to Roman numerals, and Jack Dennis, after admiring the skill with which Samson had accomplished this feat, said, "My G.o.d, why would anyone want to do such a thing?" But Dennis knew why. There was ample justification in the feeling of power and accomplishment Samson got when he fed in the paper tape, monitored the lights and switches, and saw what were once plain old blackboard Arabic numbers coming back as the numerals the Romans had hacked with.