Tuesday, June 26, 2012

This is why I love cache...

This is why I love cache...



Friday, June 22, 2012

Conventional Debugging vs. TDD


Conventional Debugging vs. TDD


Conventional 

  • Write 10s of lines, run, hit bug: break out debugger
  • Insert printfʼs to print variables while running repeatedly
  • Stop in debugger, tweak/set variables to control code path
  • Dammit, I thought for sure I fixed it, now have to do this all again

TDD

  • Write a few lines, with test first; know immediately if broken
  • Test short pieces of code using expectations
  • Use mocks and stubs to control code path
  • Re-run test automatically

Friday, June 15, 2012

Testing Software

Testing Software

Before

  • Developers finish code, some ad-hoc testing 
  • “toss over the wall to Quality Assurance [QA]”
  • QA people manually poke at software

Today

  • Testing is part of every Agile iteration
  • Developers responsible for testing own code
  • Testing tools & processes highly automated; 
  • QA/testing group improves testability & tools

Software quality is the result of a god process, rather than the responsibility of one specific group.