Software cratsmanship

Last night the subject for debate at XTC was software craftsmanship. This is not a new subject but seems to be gathering momentum. In many ways I am a supporter, however, I do have certain reservations about the way it is being presented.

We have a draft of a manifesto for software craftsmanship that has been written to build upon the Agile Manifesto. Following this we have a host of proposed principles.

Personally I care about delivering quality software, I believe that software apprenticeships and effective mentoring would have a very positive impact increasing the skill of those involved in the industry. Finally, I believe that practice (i.e. doing a task followed by reflecting on the task purely for the purpose of learning) is largely ignored within our industry. If you care about what you build at work you should practice to develop your skill in your own time.

On the other hand I would prefer it if the concepts of craftsmanship and agile were kept separate. Being a craftsman is a personal choice independent from the process your team has selected. It is also a life choice since it is unlikely that you can be a craftsman 8 hours per day. By contrast agile teaches us about collaboration. I am sure that these two are compatible, even complementary but my preference would be to retain the separation.

Leave a comment

Your comment