Skip to content
quotesby

About this quote

What does it mean?
Large software projects become too complex for one person to understand, hindering collaboration and making refactoring difficult due to constant feature additions.
In plain terms
Big programs are hard for one person to know fully, making teamwork and updates harder.
What can you take from it?
Complexity limits teamwork and flexibility in code.

Where it applies

  • managing large teams
  • system design
  • legacy code

Putting it to work

  • modularize systems
  • document code
  • limit feature creep

Questions to consider

  • How do we scale development?
  • When does size hurt agility?

Another view

Assuming individual knowledge is required ignores effective documentation practices.

More from Bill Gates

  1. 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…

    Permalink to quote #40
  2. 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…

    Permalink to quote #42
  3. 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 p…

    Permalink to quote #39

Related quotes

  1. 'Regression testing'? What's that? If it compiles, it is good, if it boots up it is perfect.

    Linus TorvaldsLinus Torvalds quote #31
  2. If something's expensive to develop, and somebody's not going to get paid, it won't get developed. So you decide: Do you want software to be written, or not?

    Bill GatesBill Gates quote #1
  3. Premature optimization is the root of all evil (or at least most of it) in programming.

    Donald KnuthDonald Knuth quote #1