Sprint 0: This design is the appropriate amount of engineering abstraction.

Sprint 2: This is over-engineered, too much work

Sprint 5: This is under-engineered, too many edge cases

Sprint 10: This is over-engineered, component Foo could be replaced by a bash script

Sprint 42: Foo is now the cornerstone of half our business logic

  • 5
    Did the relative complexity of the code change that much between sprints? Curious if this is different takes on essentially the same approach.
  • 1
    All hail foo man chu mustache
Add Comment