Over a million developers have joined DZone.

Software Craftsmanship: Kevlin Henney

DZone's Guide to

Software Craftsmanship: Kevlin Henney

We continue our series of interviews on Software Craftsmanship and explore how it relates to katas, pair programming, TDD, and more!

· Agile Zone ·
Free Resource

You've been hearing a lot about agile software development, get started with the eBook: Agile Product Development from 321 Gang

In this series of ‘3-minute Q&As,’ we give you an insight into some of the world’s leading thinkers and doers in the world of Agile and Software Craftsmanship.

So sit back, relax, and take a sneak peek. Oh, and if you like this and want more, then you should also check out sc-london.com, where you can immerse yourself in two-days of talks, discussions, and networking with the authors of the blogs.

Q. When Did You First Come Across Software Craftsmanship?

Sometime around 2008, I think.

Q. What Does Software Craftsmanship Mean to You?

A community of knowledge and practice applied in the detail to benefit more than oneself.

Q. What Do You See Being the Future for Software Craftsmanship?

The substance and focus will remain and evolve, but I suspect that it may find itself going by another name or becoming allied or integrated into other bodies of practice.

Q. What Do You Hope People Will Take Away From Your Presentation?

That there's more to katas than just deliberate practice. Katas and small well-framed problems offer an opportunity to experiment, to deepen knowledge, to get creative and think laterally, to find simplicity, elegance and aha! moments in something familiar or seemingly trivial. And fun.

Q. How Do You See Katas Being Used by People at Different Experience Levels?

I see them being used as warm-ups, as a social activity, as a way to kick the tires of new tools, languages, and practices. At the most common introductory level, they seem to be, unsurprisingly, about learning TDD and pairing. This remains true at other experience levels, but with other levels, people seem more likely to use katas as vehicles for other ends, such as experimentation.

Q. Are There Any Other Methods That You Would Recommend to Supplement Katas?

Yes: immersion, conversation, presentation (giving and receiving), reading and writing. In other words, the traditional other ways of refining and exploring skills and knowledge.

Q. Are There Any Projects You'd Like People to Be Aware Of? How Can People Help Out?

At some point soon I plan to start collecting contributions for 97 Things Every Java Programmer Should Know. Like 97 Things Every Programmer Should Know before it, I will be looking for short contributions on anything from the mechanics of the code to the people and practices that surround it.

Download the free agile tools checklist from 321 Gang. This guide will help you choose the right agile tools to position your team for success. 

agile ,software craftsmanship ,kata ,tdd

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}