Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!rutgers!mit-eddie!bbn.com!adoyle From: adoyle@bbn.com (Allan Doyle) Newsgroups: comp.unix.wizards Subject: Re: Ware Ware Wizardjin Message-ID: <63660@bbn.BBN.COM> Date: 11 Apr 91 13:43:07 GMT References: <9104072151.AA28702@gaia> <9104081805.AA14112@samadams.Princeton.EDU> Sender: news@bbn.com Reply-To: adoyle@vax.bbn.com (Allan Doyle) Organization: Bolt Beranek and Newman Inc., Cambridge MA Lines: 59 In article <9104081805.AA14112@samadams.Princeton.EDU> tr@SAMADAMS.PRINCETON.EDU (Tom Reingold) writes: >and I hate poorly designed and implemented programs, but I now work on >a product that suffered the design flaws recently covered in this >thread. I am beginning to see that although the excess size and >duplicated function cost the user, the speed at getting the user what >he wants is also a major factor. If he doesn't get what he wants >*soon*, even if improperly done, it may be a lost opportunity. > >We hope to take some time and fix things up in our product. If we >don't manage to find the time, it will be because we will be doing a >major rewrite anyway. The major rewrite will be spawned by the need to >add large amounts of functionality, making our current product >obsolete. If it's obsolete, tightening it up would be futile. In >doing the rewrite, we hope to learn from our mistakes of excess size >and redundancy. Let's step back a minute and look at the shop-worn analogy of software to cars. People have flogged the car/program user-interface issue to death - to the point where I'm reluctant to mention the auto industry. But here goes... In the U.S. it takes up to seven years for a car to go from concept to the showroom. (The cycle is getting shorter and 7 may be too long, no flames please). It takes the Japanes about 3. Just accept the fact that it takes more than 1 year. Yet new models come out every year. Yes, some of the models are just tweaks of features on top of old models but there are still *new* models every year. How do they do it? They use a design pipeline. While Design A is in production, Design B is in retooling, Design C is in prototyping, Design D is in concept formation, etc. Design A gets dumped, design B moves into production, etc. How many companies do this with software? I suspect it is near heresy to suggest that a SW company begin design of a new rev of software using new technology before the previous rev is out the door. Look at how long it takes Lotus to get from 2.0 to 3.0, Apple to get from 6.3 to 7.0, etc. If you want to introduce new technology on a regular, timely basis, why not start working with the new technology sooner? I suspect this has to do with culture. Programmers don't want to work on 1990 technology if they see a group working on 1991 technology. The good ones in the 1990 group would sooner quit and go work for company X that promises them a shot at their 1991 project. It also has to do with management. How many SW company executives have a background in manufacturing? How many work for the near-term profits? It takes a pretty long view to see that starting a rewrite of a product that's not even out the door might be a real revenue enhancer in the future. Are there any venture capitalists out there who want to fund two or three groups of programmers before the first product gets out the door? [Give me a call if you are one :-) ] Allan Doyle adoyle@bbn.com Bolt Beranek and Newman, Incorporated +1 (617) 873-3398 10 Moulton Street, Cambridge, MA 02138 USA