'No excuses' done done
Yesterday at
QCon London, Gus and Kris talked about how we at
Energized Work get from
concept to cash every week. It's a simple message really.
Keep it moving:- Sustain throughput and maximize profit by 'shipping' running tested features to production at least every week.
- Automate everything to achieve mobility and continuously invest in it to keep it cheap.
- Don't track bugs, fix 'em.
- Manage debt to keep moving fast.
Keep it working:- Eliminate individual anxiety and keep the team resilient by pair-programming all the time.
- Roll ownership of each story through the team to facilitate collective ownership and knowledge transfer.
- Maintain a rigourous test-driven approach through personal discipline.
- Colocate because the conversations never stop.
- Learn what's really needed by iterating with a full-time onsite customer at the wheel.
Keep it together:- Don't branch and don't stay away from the trunk for longer than 2 hours.
- The build monitors are the focal point.
- If the build breaks fix it immediately, otherwise what's the point of having it.
Keep it real:- Operate all the environments, including production, yourselves. And do your own support.
- Non-functional and sysadmin work is part of development and not an afterthought nor someone elses responsibility.
- Optimize at the right time and always in context of 'the whole'.
Keep it coming:- Write stories to be a little ambiguous to ensure conversation happens.
- Plan just enough when it's needed to prevent stalling.
- Make the showcase count because the client will decide whether to invest more money.
This stuff is as hard or as easy as you want to make it. It's not enough to be doing the technical practices and it's not enough to be living the values and principles. You gotta do it all and more, at the same time, learning all the while. It takes courage, willpower and
zeal. And, dare I say, you gotta know what you're doing. There really are no excuses. Ultimately, for me, it comes down to
having the right people, creating the right environment and working with the right clients.
Here are the
slides (they're better quality than those downloadable from the
QCon site).
When I get the official feedback on the session I'll post it here.
Labels: craftsmanship, qcon
Links to this post
Attitude drives skill
Art Tatum, a jazz pianist, often improvised to incorporate the bad notes elderly and worn pianos made into his music. Arguably his attitude led to him developing this skill. ( Paraphrased from
The Solutions Focus
. )
I think the right people have the right attitude and create the right environment to basically get the right stuff done, despite other factors. I believe, in certain people, I'm seeing attitude and discipline drive skill and diligent application every day.
Labels: attitude, craftsmanship, skill
Links to this post
Craft is ..
I just stumbled on a note I made before Christmas on a tweet from
Brian Marick that provided a
definition for craft. I tweaked it ever so slightly.
Craft is ..
obsession with quality,
tamed by discipline,
attentive to technique,
with a gut feel for structure
and awareness of context.
Labels: craftsmanship, discipline, quality
Links to this post
Craftsmanship and Artful Making
At Agile2008, in his banquet keynote,
Uncle Bob proposed that "
craftsmanship over execution" be added to the
Agile Manifesto as the fifth value statement. I've blogged
before about the lack of craftsmanship in software development and it continues to concern me.
While in Toronto I was reading
Artful Making
. The book bored me for the first few chapters but then it quickly became a compelling read. I recommend it. It contains many statements of wisdom. One passage, talking about a stage set designer, resonated with me:
The designers movements were simple, free of tension. But the control that allowed this simplicity and freedom of movement was sophisticated and hard-won, a consequence of many iterations - individual rigor drawn from iterative experience yielding great precision.
For me, '
the control that allowed this simplicity and freedom of movement was sophisticated and hard-won' is called craftsmanship. As a worker practices the techniques for wielding his tools to work his material, he develops an '
individual rigor drawn from iterative experience yielding great precision'. Repetitive mechanical application teaches disciplined handling of the tools and also creates recurring opportunity to
learn more and gain experience. The practices governing how tools are used, once silently incanted, become inculcated. Contextual awareness develops and
a deeper understanding of the principles underlying the techniques is acquired. Intuition develops providing internal guidance to a growing expertise in trade craft.
As I
blogged previously, a craftsman's mastery is borne out of his personal discipline when applying techniques to use his tools, his awareness of what's going on around him, and his thought processes.
Martha Graham said,
technique is the dancer's freedom. Technique is also the developer's freedom.
Labels: agile manifesto, agile2008, craftsmanship, uncle bob
Links to this post