By the time my Apple arrived, I had become a basket case with my notebooks and pencil. When the machine was hooked up, I was ready to play all night. I followed the instructions to the letter, but I couldn't get into BASIC. I kept getting stuck where the instructions said "Type CONTROL B and press RETURN." I must have typed CONTROL B a hundred times, but nothing happened. Finally I abandoned the instructions and began experimenting. It was then that I noticed the key marked CTRL. Remember, I had never used a real computer before. I had only imagined it. Instructions that come with computers should be written for people who can only imagine them. What they should have said was, "Press down the key marked CTRL. While holding it down, press the B key. Now release these keys and press the key marked RETURN." Without intending to, I had gathered all the necessities for what would now be called an "electronic cottage." Far from the hustle and bustle of Silicon Valley, I began writing programs for the fun of it-programs that drew pretty pictures on the display, played music or did something elegant and mathematical. I mailed some of them to Apple Computer, which promptly offered to buy them and encouraged me to write more. Then as now, there were many more computers than programs. I had bought the computer as a plaything, but within weeks I had been paid more than the cost of the machine. I began to think about a more ambitious project, a word processing program to "obsolete" my typewriter. Since I write a fair amount, I knew I would be able to test my program properly, which turned out to be very important. This brings me to the day Mother Nature tested Apple Writer. I had finished my program and was using it to write the instruction manual. It was raining, so I thought it a perfect day to stay inside and work with the computer. Because I was off in a digital twilight zone, I paid no attention to the fact that I was perched on a four-hundred-foot ridge in a rain storm. I was (rather proudly) in the midst of explaining how my program would save the data in memory if the user accidentally pressed the RESET key, when suddenlybam!-lightning struck a tree just outside the window. Sparks flew around the cabin and my poor Apple went bananas. At first I thought it had been completely zapped, but there were some signs of life and I restarted my program. Lo and behold, the program reconstructed the data in memory! In a moment the display appeared, with the cursor sitting beside the last word I had typed in. This despite the fact that half the diskettes lying on the table had been erased by static discharges. I mailed off the first version of Apple Writer in a big manila envelope, and after some negotiating (and a few revisions) Apple agreed to pay $7,500 for the program. It didn't occur to me to ask for a percentage of future profits, but fortunately two things happened: 1) the first version became a big hit, and 2) no one at Apple was able to make the improvements that were needed for the next version. So about two years later Apple and I decided to start over, this time on a royalty basis. Apple would market the program and pay royalties, and I would retain all other rights. At this writing, the new version of Apple Writer is yielding more per day in royalties than the original's sale price. A Hacker's Habitat I still live in the backwoods with my computers. Deer are more frequent visitors than people. In my pond one turtle seems to have met another, and I intend to watch this development carefully. I want to explain why the computerized cottage and trees work so well together. First, the finished work of the computer usually weighs nothing, so a post office or telephone line is enough to get it delivered. Second, computers take over a lot of the trivial thinking we do, freeing us to be creative. I have always felt the best background for creative thinking is complete silence. Programming the present generation of computers in machine language means thinking about twenty things all at once without dropping any of the pieces. Of course, there is one drawback to the backwoods computer life. If you're not a complete hermit, you could get lonely or want one of the many forms of night life to which most people are accustomed. I think this problem will eventually be solved by increasing the cultural attractiveness of the small town, a development that should follow on the heels of the computer revolution. Also, I've been told that good programmers rarely have mates. This is usually offered as evidence of how asocial we are. Without fail, we're pictured as disheveled cyber-hobos hanging around computer centers, shunning serious relationships, coding for the sake of coding. I can't really disagree with this view, but there is something interesting behind it-at least for me. I began to notice, as I got more involved with computers, that acceptance by the machine required absolute precision on my part. The slightest misstep caused the instant erasure of many hours of work; the machine would reject everything with perfect dispassion until each detail was just right. Then the program would suddenly function beautifully, and never fail again. A mistress of perfect consistency, the computer rejects all but the flawless, offering no explanation. When the acceptable is finally offered, the machine's acceptance is total, unwavering and eternal. As Einstein said in a different context: "the years of anxious searching in the dark, with their intense longing, their alternations of confidence and exhaustion, and the final emergence into the light-only those who have themselves experienced it can understand." The result of this strange relationship was that for a time I became too spoiled for the flesh-and-blood women around me. I got tired of hearing, "If I've told you once, I've told you a thousand times-the answer is maybe!" It's clear that person-machine relationships could be dangerous for a functioning society, but from time to time they are very tempting. On the other hand, the computer can be a powerful tool for bringing people together. I once used the GraFORTH graphics language I had written to create a "computer letter" in the form of a diskette that displayed images and messages. In one of the sequences a cabin appeared on a hilltop, the door opened, then music played. It was designed to persuade a certain someone to visit me in Oregon, and it worked. I don't mean to create the impression that I write computer programs day and night, until in starvation I crawl to the kitchen for a carrot. This is true only sometimes; the rest of the time I'm hiking around the Oregon wilderness or bicycling alongside a river. From time to time I fly my Mooney 201 airplane, bought with my first large royalty payment, to Apple headquarters in California, or I simply fly slowly along the Oregon coast, watching for whales. Team Troubles There's a lot of talk these days about how the individual cottage programmer is on the way out. I don't think so, even though a team of cooperating programmers is in principle a better arrangement. My doubt springs from the fact that the best of existing programs are the product of one, at most two individuals, and that some of the teamwork experiments have turned out to be complete failures. There is a saying in the computer industry: a program that might take one or two authors six months to write will take twice as many programmers twice as long to write. In one notable example, a large computer firm created a wonderful piece of hardware that would in principle solve all the problems of communication between functions, allowing the user to think only about the task. A crack team of programmers was put together. They would meet each day to discuss their progress and resolve difficulties, so that the entire system would work in perfect harmony. The problem here was that each programmer thought his part of the system was more important than the others', with the the result that no one bothered to make the pieces compatible. The original idea (task orientation) became lost, but it was still possible to make all the tools cooperate in a single task (file compatibility). Then this goal was also lost. The result was that if a user wanted to move his task created with tool A over to tool B, he first had to place it into electronic picnic basket C and carry it over. In some cases one computer must be coaxed into talking to another, but this was the first time a computer refused to talk to itself. The moral? You can lead a horse to water, but first you have to find some water. Overall, I believe the computer age favors the individual and that resistance to the individual work style is the last gasp of the dying industrial age. Many software companies put their faith in committees because they believe this is the way things have always been done. In fact, most unique modern achievements have been the product of individuals or very small groups, including relativity theory, the airplane, the laser and the computer itself. Until now, individual achievement has been exceptional in a mass society, even though the exceptions often transform that society. The deliberate cultivation of individual creativity may end up being the most important social result of computer technology. Either that, or cottage programmers like myself will simply have more time to cultivate our gardens.