Cover of Out of the Software Crisis
books

Out of the Software Crisis

Baldur Bjarnason

It’s common for men (especially men) my age to lament the decline of this or that. New inventions suck.

5 highlights
critical-insight software-design on-architecture

Highlights & Annotations

Churn is devastating for software quality as it destroys institutional memory and sabotages many of the fundamental mechanisms of programming, which require stability and consistency. Churn in manufacturing or physical product design isn’t nearly as disruptive as in software.

Ref. 8E7E-A

Software automation has two important flaws:

Ref. A4BC-B

But even in that case, it would be better if the software automation grew with the company as it grew. That way, the software system and the warehouse system could start simple and only evolve into complexity over time.

Ref. 8AF9-C

Simple software tends to work. We know how to make simple software that works.

Ref. 7504-D

Or, if you’re looking at it from the other end: the effort it takes to deliver correctly functioning software increases nonlinearly with its complexity. You don’t know in advance just how nonlinearly. You might think a feature would only lead to a marginal increase in effort. And, if you’re lucky, you might be right. Or, it might require a complete re-architecture of the entire app for it to work. Usually, a developer can tell in advance which it is, but not always. The difference between simple and even just moderately complex software can be dramatic.

Ref. 506E-E