How software programmers do their 'crossword puzzles'
Needham, Mass. — Phillip Florence never finished high school. He never went to college. But 25 years of computer ''finishing school'' has put him in the slot of executive vice-president of research and development at Leading Edge Products Inc.
Mr. Florence is a programmer. He has just written a highly competitive word processing program for the IBM personal computer, one that enables computer owners to compose and edit documents on their machine.
But what is it like to be a programmer?
For the most part, it's hard work. ''A relaxed week is 60 to 70 hours,'' Mr. Florence said in a interview at his Spartan office.
''The speed of progress [in the computer industry] is so fast that if you are going to insert yourself into the marketplace, you better insert quickly, because the window of opportunity may close down on you,'' Florence said.
In April, Leading Edge saw the window opening and hired him to lead the company's first foray into software development. He hired two more programmers and dug in.
''Developing software is a long process,'' Mr. Florence said. ''Typically, your first offering is going to take 18 months. It is almost like the gestation cycle of a whale. You can't line up 18 whales and have a whale baby in a month. It just doesn't work. You're already aiming for a product that is going to be released 18 months after you conceive the idea and get the go-ahead. A world can happen in 18 months.''
Thus, prophetic vision or solid instincts are invaluable to a programmer.
''If you deliver 18 months after you start, the product should live five years, six years. That means you're aiming 78 months into the future. It's like leading a clay pigeon at a skeet or trap shoot. You have to take aim much farther in advance of the target because you have such a slow moving process.''
The process begins, at least for Florence and his team, by defining the problem and then ''blue skying'' for a solution. ''We do a creative lab every day. And we talk and fight and argue. Somehow the rough edges get worn down and we get a general notion of what the product is going to look like. That process took from May to August .''
Typically, this seeming do-nothing period can be a source of friction with management. But it is essential to a good end product, contends J. B. Royal, the company's bearded vice-president for word processing. (Despite their titles, neither Mr. Royal nor Mr. Florence dresses like a traditional executive. The office uniform appears to be more vintage Levi's than Brooks Brothers.)
''Management [in general] tends to take shortcuts to get to market - rather than getting it right,'' Royal says. ''From experience, I know that if you do it right the first time, not only do you save money but you save time. You don't write [programming] code for the first four months. What you do is sit and think about it. And management says nothing's been done: 'I don't see any progress being made.' But you'll finish at the same time, and have a better product, if you take your time,'' Royal says.
During this brainstorming period, the team also analyzes such things as the competition; their own equipment and its limitations; and the needs of their prospective users.
In August they sat down to choose a language to program in. That is not as easy as it sounds. There are ''devotees'' of each language and programmers are rather chauvinistic, according to Florence. Finally, in October they began ''writing code.''
To get an idea of what programming is like, ''Imagine trying to teach someone how to brush their teeth,'' says Florence. ''Only you don't have available to you [the phrase] 'Take the cap off the toothpaste.' So you have to break that up into all of the small movements required to pick up the toothpaste tube: With one hand pick up the tube. Reach over with the other hand, find the cap, grasp it, and describe the process of twisting the cap off.
''And along the way you must ask: Is the cap all the way off? And then you have to define that. You might need a whole process to determine that the cap is loose.''
What kind of people make good programmers? Mr. Florence, for all his experience, doesn't have any pat definitions. ''Musicians make good programmers. On the other hand, I know people that are totally tone deaf that are good programmers. It would be like trying to define someone who does well at crossword puzzles. You have to have a willingness to get into the infinite detail and be picayune and pedantic about things.''
One of the potential weaknesses of a software company is that its principal assets are its programmers. If one leaves, the loss could be devastating.
''It's so true of humongous corporations that I don't think the public realizes that in some situations there are a few that are entrusted with an incredible amount of knowledge,'' Royal says with a shake of his head.
To guard against cataclysmic departures, he rotates his programmers through various positions. He believes this not only protects the company's investment but offers the programmers new challenges and strengthens their product.
Leading Edge will be debugging its new word processing program until August, when the product hits the market. The company is best known for marketing such products as memory disks and computer peripherals. In three years, sales have soared from $5 million to $70 million. ''We'll proably hit $150 million next year,'' says the chairman of the privately held company, Michael B. Shane.
''If it [the program] is as easy to use as it appears, this is definitely a top contender,'' says Ronni T. Marshak of Seybold Publications, who has evaluated ''at least 25 word processing programs this year.'' If she's correct, the company's growth curve should continue skyward.
The background of the company's chief architects speaks favorably for the product. Both Florence and Royal spent five years in management positions at Wang Laboratories, the ''largest word processing company in the world,'' Florence says.
The new program will sell at ''under $300,'' which is ''a remarkable price,'' says Ms. Marshak at Seybold. ''It will show other software designers they are going to have to come down in price.''