Summary:
On a very regular basis, I find myself explaining to colleagues why it is the case that software development is so expensive and difficult to do well. I've found success by introducing three new analogies. These are software development as 1) highway construction 2) developing a space mission 3) founding a modern nation state. I discuss the pros of each of these analogies and provide a critique of the most commonly otherwise used analogies of building construction and gardening.
The Old Metaphors - Building Construction and Gardening:
David Thomas and Andrew Hunt discuss two analogies for software development in their classic book "The Pragmatic Programmer" (see Chapter 7 section 40 of 2020 edition):
On a very regular basis, I find myself explaining to colleagues why it is the case that software development is so expensive and difficult to do well. I've found success by introducing three new analogies. These are software development as 1) highway construction 2) developing a space mission 3) founding a modern nation state. I discuss the pros of each of these analogies and provide a critique of the most commonly otherwise used analogies of building construction and gardening.
The Old Metaphors - Building Construction and Gardening:
David Thomas and Andrew Hunt discuss two analogies for software development in their classic book "The Pragmatic Programmer" (see Chapter 7 section 40 of 2020 edition):
Analogy |
Good for Emphasizing |
Building Construction |
Simple, linear, repeatable, processes. |
Gardening |
Need for constant management and intervention (pests, weeding), emphasis on external conditions (no rain), things not going according to plan (hurricane took out tomato stakes). |
RSS Feed