Complexity – Large-Scale Software Systems
“Out of the Tar Pit” is an old paper, but worth a read never the less. The paper was picked up in more recent years by Hacker School, and also “10 Technical Papers Every Programmer Should Read (At Least Twice), and more recently, Brian Gesiak.
Since Brian has offered a few interesting call-outs already, I’ll only offer a few additional thoughts/quotes:
Page 1: The biggest problem in the development and maintenance of large-scale software systems is com- plexity — large systems are hard to understand
Page 2: Complexity is the root cause of the vast majority of problems with soft- ware today
Page 10, Complexity caused by Code Volume:
“Many of the classic problems of developing software products derive from this essential complexity and its nonlinear increase with size”
Net out, try and keep systems simple to avoid a complexity death spiral