Software provides an opportunity to automate the boring rote tasks of day to day life, allowing time for more fulfilling activities. On the team, software is expressive and embodies the domain language, so that everyone can understand and change any part of the system. For customers, it means that the team has taken the time to understand the context and ways the software is used, and is actively trying to craft a streamlined experience. Great software is like any great tool, it amplifies the effectiveness of a person completing a task.
In the same way software amplifies the effectiveness of the customer, I work to build up my team by trying to model the values of simplicity, communication, feedback, respect, and courage in everything I do. This includes helping create situations where collaboration is fun and easy, the code being written is readable and changeable by anyone, I am in a position to help the team, and everyone is empowered to participate in crafting our process.
I want to share what I have learned with all developers, globally. To that end, I have published a liveProject series on manning.com, titled TDD for a Shopping Website. This series shows you how to use test-driven development with a focus on shipping customer value sooner. And how TDD enables incremental design improvements without stopping to rewrite the entire system.
As with all things I stand on the shoulders of giants, I have named this site after a blog post by Tim Ottinger