Minimizing the Cost of Change
October 24, 2009
My current job title suggests I spend my workday improving our site’s user experience. Unfortunately, very little of my time goes here. We’re currently overhauling our code base with a tight deadline fast-approaching. I’m usually working well below the surface of the application. (I’m sure once the refactoring has settled a bit, this will change.) With my brain buried deep in functional code, I find it almost impossible to work on what I want, the way I want.
While doing some Google searches on user experience design techniques, I stumbled on some nifty whiteboard magnets for prototyping called GuiMags and a complementing book called The Unplugged. GuiMags look like the nicest way to prototype something before going to HTML. Labor intensive forms of prototyping don’t seem to add much value, and paper prototyping only works until you’ve changed your mind and have to throw your work in the trash. In addition to the new tool, I found The Unplugged’s premise to resonate with my own feelings on software development: we limit ourselves by the technologies we use. Instead of thinking outside the box, we’re thinking in it. A large part of this thinking inside the box is how we develop software. Whether you adopt a waterfall or agile process, the cost of change is more and more expensive as the product matures. I think most developers have experienced this first-hand. The Unplugged shows how to move changes to the beginning of the software development process so overall cost is minimized.
Check them out.