"Software craftsman" as complimentary term for programmer
Is software craftsman a complimentary term for a programmer or is it just neutral?
Solution 1:
I would say adding 'craftsman' to any skilled profession would be taken to be complimentary - unless, of course, used ironically
To answer the question - certainly not neutral.
Solution 2:
Software Craftsmen is not in common usage like the terms Software Engineer or Software Developer.
Programming is one part of the application of Computer Science to solve real world problems. As such, could be viewed as an engineering discipline. Traditionally craftsmen are called upon by engineers or artists to perform skilled manual tasks. So, if the programmer aspires to engineering the term Craftsman could be seen as limiting, however affirming it may be of "hands on" skill.
Solution 3:
If I hear someone refer to a programmer as a Software Craftsman, I presume that they have an interest in the Software Craftsmanship community. So it's not merely a complimentary term, but also a political* affiliation.
*loosely.
Solution 4:
While "Software Craftsman" is not frequently heard, "Craftsmanship" in common usage can be applied to any field or endeavor, be it engineering, the arts, or even ditch digging.
"Craftsman" typically implies a person who cares deeply about the quality of what he produces, or who strives for and achieves excellence -- one who is a master in his field. To further emphasize this "Master Craftsman" is sometimes used. To me the term is definitely complimentary.