Most software developers today have heard of the Agile Manifesto, and many of us live by it to. In recent discussions there seems many have interpreted the use of Agile as a “Silver Bullet”-solution to developing good software. It’s not. A process alone will not make good solutions. It may help, but in the end there is only one way to make good software: Do a Good Job.

As a response for the need, many have discussed what makes a good programmer and what practices we need in order to do a good job. What makes us good craftsmen. Last week an extension to the Agile Manifesto was posted at http://manifesto.softwarecraftsmanship.org. The manifesto states:

As aspiring Software Craftsmen we are raising the bar of professional software development by practicing it and helping others learn the craft. Through this work we have come to value:

Not only working software, but also well-crafted software
Not only responding to change, but also steadily adding value
Not only individuals and interactions, but also a community of professionals
Not only customer collaboration, but also productive partnerships

That is, in pursuit of the items on the left we have found the items on the right to be indispensable.

I think this is an important extension for us to be able to grow our community and gain the respect we need from our customers and our peers. Software development is a craft, and should indeed be treated as one.