Tuesday, April 15, 2014

Observations on Product Development: Part 5

  1. The K├╝bler-Ross Model (a.k.a. "The Five Stages of Grief": Denial, Anger, Bargaining, Depression, Acceptance) is also applicable to product development projects that are in trouble.
  2. Build servers must have monotonically increasing clocks; otherwise builds using tools like make are not reliably reproducible.
  3. Consider completely divorcing your product build system from whatever damn fool build system that generates your root file system; the latter is seldom optimized for the same things as the former should be.
  4. If you want to eventually generate revenue, you must first optimize for developer productivity; everything else is negotiable.
  5. If you don't believe #4, read your company's financial report and see where most of its money is being spent.
  6. Don't build the Taj Mahal on a foundation of sand and loose gravel, no matter what your precious agile methodology says about customer value.
  7. It almost never needs to be gold plated.

No comments: