Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Beyond Fast Good And Cheap

Beyond Fast Good And Cheap

How do we balance building the right thing with building it well? In this presentation we will examine this question at multiple levels of focus. We will discuss how a team can define the threshold for acceptable quality for their own context.

Alan Stevens

April 12, 2012
Tweet

More Decks by Alan Stevens

Other Decks in Technology

Transcript

  1. I'm never in favor of writing code poorly, but I

    am in favor of writing code to reflect your current understanding of a problem even if that understanding is partial. Ward Cunningham “Ward Explains Debt Metaphor” http://c2.com/cgi/wiki?WardExplainsDebtMetaphor
  2. The tests specify requirements in a way that does not

    require human interpretation to indicate success or failure. Jim Newkirk Test Driven Development in Microsoft .NET
  3. Once you get your systems to work, you still have

    to go back and clean up the wreckage left behind by the victorious battle. You are not done until the victorious code has been cleaned, polished, and oiled. “Uncle” Bob Martin “The Rush” http://blog.objectmentor.com/articles/2009/06/26/the-rush
  4. I thought that rushing software out the door to get

    some experience with it was a good idea, but that of course, you would eventually go back and as you learned things about that software you would repay that loan by refactoring the program to reflect your experience as you acquired it. Ward Cunningham “Ward Explains Debt Metaphor” http://c2.com/cgi/wiki?WardExplainsDebtMetaphor
  5. The rest of a developer's career is spent pursuing better

    and better answers to the question "where should this code go?" Jeremy Miller On Writing Maintainable Code http://codebetter.com/blogs/jeremy.miller/archive/2006/12/06/On-Writing-Maintainable-Code.aspx
  6. See it once: do it See it twice: notice it

    See it a third time: Abstract It! The Rule of Three
  7. When you finally realize what your program is doing, you

    have to go back and make it look like you knew that all along. Make it look like it was easy to write this program, even if it wasn’t. Ward Cunningham “Mastering the Craft of Programming” http://railslab.newrelic.com/2009/09/15/ward-cunningham-aboutus-org