COMPUTER
PROGRAMMING
by Paul Lutus
Paul Lutus dropped out of the NASA rat race to live on a mountaintop for $40 a month.
Then he wrote the most popular word processing program for personal computers...
Paul Lutus is the author of Apple Writer, one of the best-selling word processing programs of all time.
You may have heard about me. In the computer business I'm known as the Oregon Hermit. According to rumor, I write personal computer programs in solitude, shunning food and sleep in endless fugues of work. I hang up on important callers in order to keep the next few programming ideas from evaporating, and I live on the end of a dirt road in the wilderness. I'm here to tell you these vicious rumors are true.
Now that I've confessed, I'll explain how I met my first personal computer. It was 1976, and I was designing some electronic devices for the NASA space shuttle. I was a college dropout whose employability rested solely on the fact that I could build things that worked (the lights on the present shuttle fleet are powered by my electronics). But I was about to drop out even further. That spring I moved to one of the wilder corners of Oregon and built a twelve-by-sixteen-foot cabin atop a four-hundred-foot hill. Since I didn't want a road, I carried the lumber on my back. I planted a vegetable garden. I wrote poetry and played mathematical games in notebooks. And I chose to do without electricity.
One night when I was reading Scientific American in the yellow glow of kerosene, I saw an advertisement for the Apple II. Wow, I thought, a personal computer! With a computer you could draw a world in three dimensions out of colored lines. Write stories. Play music. Locate Neptune to point your telescope. Store fantastic amounts of trivial information . . . The very next day I rode my bicycle to the nearest telephone and placed my order.
During the next few weeks I filled notebooks with ideas for programs I was going to write, in some cases setting them down in code. I also strung the oaks and madrones with twelve hundred feet of electrical cord to power the machine.
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.
Return to Table of Contents | Previous Article | Next Article