The most often-overlooked risk in software engineering is: incompetent programmers. […] One bad programmer can easily create two new jobs a year. Hiring more bad programmers will just increase our perceived need for them. If we had more good programmers, and could easily identify them, we would need fewer, not more.
David Lorge Parnas
Canadian early pioneer of software engineering. Developed the concept of information hiding in modular programming, which is an important element of object-oriented programming today. Author of the seminal paper On the criteria to be used in decomposing systems into modules and A rational design process: How and why to fake it. Also noted for his advocacy of precise documentation.