With software craftsmanship there’s a lot to say about tools and methodologies, but if I had to sum up in only 1 word what you need to do to be a software craftsman or craftswoman it would be “care”.
- care about the people (including your memory-challenged future self) who will have to work with the code you’re writing today – 6 months, 2 years or maybe even 10 years from now
- care about the people who will be using the software you’re developing today
- care about the people who have staked their reputation on the product you’re developing today (and about whatever promises you make to them)
- care about learning to be better at what you do
- care about what your fellow team members are working on and about being able to give them a hand if necessary
- care about mentoring your fellow team members and others
Some cynical people think that Software Craftsmanship is a fad to sell training and consulting. There may or may not be a grain of truth to that, but there’s no certificate for caring – either you care, and the results will gradually become evident, or you don’t care, and the results of that will also be evident at some point to somebody. If you do care, there are many free resources, including this blog, which can help you learn about the methodologies and tools you need to become a software craftsman or craftswoman.