But it isn’t necessarily the extraordinary youth of these people that enabled them to rise to their celebrated positions in the industry. They rose because of pure talent. More specifically, most of the people who created this industry gained entrance because of their programming skills. And programming is something that can’t be faked—the program either works or it doesn’t. Computers are immune to all human prejudices. They are utterly literal and totally fair. They open their secrets to anyone, but only if that person can speak their language.
Indeed, until very recently, one of the major factors that kept the mysteries of programming closed to most people was access. Very few people ever had a chance even to try learning how to communicate with computers. The old-style machines were huge, extraordinarily expensive, and cloistered in air-conditioned, dust-free chambers; access to these inner sanctums was permitted only to a small priesthood of intermediaries.
I was one of the very few lucky ones who succeeded in gaining access to these machines in the early 1960s. My mother, father, two brothers, two sisters, and I moved from Dubuque to Iowa City, Iowa, in 1964, when my father, a Presbyterian minister, became professor of New Testament at the University of Iowa. My brother Gary, my sister Cathy, my mother, her sister, a cousin, and I became Brøderbund's founding shareholders, and Cathy and my mother both worked with Gary and me at Brøderbund at one time or another. But that was sixteen years in the future.
In 1964, I was a high school student. That summer I went to Northwestern University, in Evanston, Illinois, to attend a summer conference on engineering for bright high school kids. The conference included classes in calculus, physics, and engineering and, most importantly, a class entitled “Introduction to Digital Computers.” It was then that I learned how to write programs in the programming language known as FORTRAN. The machine was an antique of laughably limited power, judging by today’s standards: an IBM monster that filled an entire room.
Today’s desk-top computers are far more powerful than that IBM machine and cost a fraction of the IBM’s original price. But I had no idea then of what was to happen to computer technology in the near future. In those days, I was, like many others, simply seduced by the logical, gamelike, mathematical, and tactical challenges of writing, debugging, and running my own computer programs. It was like a cross between solving jigsaw puzzles, building models, and playing chess—the kind of fascinating activity that involved me for hours on end before I noticed the passage of time. I started cutting all my other summer classes in order to spend more time in the computer center.
The reason I had to hang out near the computer, and the very notion of “computer center” itself, were artifacts of the way computers worked in 1964. Computers in those days took in data and programs and then returned answers in the form of printouts; the system as a whole was known as “batch processing.” First, all the programs and data had to be coded in terms of those square-shaped holes on small pieces of cardboard universally known as “IBM cards.” If there was a missing instruction in the program, or if one of the cards had a hole punched in the wrong place, then the programmer would get back a printout full of mistakes (called “bugs”) instead of solutions. That meant that the programmer would have to study the printout in order to discover the bug.
In practice, the programmer would bring a deck of cards down to the computer center, then wait five hours for the batch processing. But if any bugs turned up before the five hours elapsed, the programmer would simply copy the cards and submit them again. Because of the waiting time, several different programs would be run one after another, so that there would be a steady stream of output. This meant that I, as a programmer, was running down to the computer center every forty-five minutes to see if another batch of output was waiting for me. Before I realized what had happened, I had spent the entire summer immersed in printouts and decks of cards.
The following summer, I got a job at the University of Iowa computing center as a batch clerk who took in the decks of cards and gave them to the operators who ran them through the machine. As this procedure reflects, there was a definite hierarchy of access to the computer, and it is not wholly poetic license to refer to the top of the hierarchy as a priesthood guarding the holiest of holies. But I didn’t mind my lowly position or the minimum-wage pay, partly because Iowa summers are hot and the computing center was one of the few air-conditioned buildings in the vicinity. I was also motivated by the prospect of getting a free account number to submit my own programs, and there were plenty of computer aficionados around—they weren’t widely known as hackers yet—to teach me even more about the programming art. There weren’t too many college programming courses, and none at the high school level, back in 1965. As far as I knew, the only way to really learn the ins and outs of the art was to hang around a university computer center and pick up tips from the experts.
This strategy soon paid off, and about halfway through the summer, the university started to use me as a programmer. One of the more interesting jobs I had was writing the program that computed the salaries of all the employees at the university. I got a sense of the real power that programmers held when I realized that my father was one of the employees whose salaries I was computing. At that time he was still teaching at the university, and out of curiosity I found out how much money he earned. This might not seem like a big deal today, but I remember being impressed with the fact that computer programmers were privy to a lot of information that would otherwise have remained under lock and key. They never would have been allowed access to it had they not performed the valuable and mysterious service of creating computer programs.
I went to Harvard the following fall. (In fact my brothers, Don and Gary, also attended Harvard, and at one point all three of us were there at the same time.) I worked as a programmer for two years as an undergraduate, but at that time computer science was hardly my burning ambition in life Adventure, excitement, and novelty—qualities that others in my age group over at MIT found in the new time-sharing computers—were what primarily interested me. So I went off to Africa and ended up teaching math and geography it Botswana for a year.
When I returned to college, I became a more serious student and abandoned programming, which had been a personal hobby rather than a vocation anyway. I buckled down to study social psychology and was graduated with high honors in 1970. I went to graduate school on a fellowship at the Johns Hopkins School for Advanced International Studies in Washington, DC, and concentrated in African affairs and international economics. However, after I had attended school for a year, the school’s funding was cut back unexpectedly, and it had to cancel most of its fellowships, including mine. Since had no money, I took a job instead of returning to finish my masters degree.
American Express hired me as an editor for its language publications division, which was located in Washington, D.C. This division published basic texts, books to accompany teaching tapes, and readers that were used at its language centers. I edited French, German, Italian, and Spanish textbooks (I was pretty decent in French and German but had to rely on outside help for Italian and Spanish) and arranged the taping and manufacture of the language tapes.
With two languages out of four, I was apparently the best they could find—at least I was the best they could find for $7800 a year. I stayed at the job for only about seven months, however, before city life started to get to me. When a few more book contracts came my way, I talked my boss into letting me write the books instead of farming them out. Since authors didn’t have to work at the office, I moved to Maine.
Читать дальше