12.2.07
bill gates on software
- The finest pieces of software are those where one individual has a complete sense of exactly how the program works. To have that, you have to really love the program and concentrate on keeping it simple, to an incredible degree.
- We're no longer in the days where everything is super well crafted. But at the heart of the programs that make it to the top, you'll find that the key internal code was done by a few people who really know what they were doing.
- Unfortunately, many programs are so big that there is no one individual who really knows all the pieces, and so the amount of code sharing you get isn't as great. Also, the opportunity to go back and really rewrite something isn't quite as great, because there's always a new set of features that you're adding on to the same program.
- The worst programs are the ones where the programmers doing the original work don't lay a solid foundation, and then they're not involved in the program in the future.
- Programs today get very fat; the enhancements tend to slow the programs down because people put in special checks. When they want to add some feature, they'll just stick in these checks without thinking how they might slow the thing down.
- Before Paul and I started the company, we had been involved in some large-scale software projects that were real disasters. They just kept pouring people in, and nobody knew how they were going to stabilize the project. We swore to ourselves that we would do better
Bill Gates interviewed in 'Programmers at Work', Microsoft Press, 1986