It’s a rather long read. One important take away is that it’s not possible to plan out any large project to the n-degree entirely up front. To do so is to believe that you’ll learn nothing during the development process that will impact the plan. Don’t get me wrong – up front planning is a requirement. However, planning is an open loop process – it’s when you get to the development that you’re able to close the loop against your plans. The sooner that happens the less latency you have in your loop. And Latency is the death of a closed loop system.