Software Craftsmanship is a metaphor that can radically transform the way that we create and deliver software systems, with implications for the way we develop software, manage teams and deliver value to the users. Is an approach to software development that emphasizes the coding skills of the software developers themselves. http://en.wikipedia.org/wiki/Software_craftsmanship
The software craftsmanship movement talks about practising as a way to to develop programming skills to become software craftsmen. Technical practices are considered to be important, it takes time to learn them and become better programmers.
The manifesto for software craftsmanship
The book Clean Code: A Handbook of Agile Software Craftsmanship (Robert C. Martin) is an excellent place to start if you haven’t. I’m not the first and definitely not the last to compare coding to craftsmen in today’s world and in previous times in history.
I would suggest reading Software Craftsmanship: The New Imperative
Doing a Google search I found Building Software Craftsmen
“To become craftsmen programmers need to gain “real-world experience and practical applications of knowledge”
How can programmers develop their skills to become software craftsmen?
Googled again and “Why I Don’t Do Code Katas”
“if you want to get better at something, repeating practice alone is not enough. You must practice with increased difficulty and challenge.”
“craftsperson is someone who not only creates something from nothing from materials of their choice, but usually puts a part of themselves into what they make.”