Take the 2-minute tour ×
English Language & Usage Stack Exchange is a question and answer site for linguists, etymologists, and serious English language enthusiasts. It's 100% free, no registration required.

Is software craftsman a complimentary term for a programmer or is it just neutral?

share|improve this question
3  
It's more complimentary than neutral, but I (as a "software craftsman") get tired of all the extremely wide terms for programmer/developer/designer/architect/etc. –  Richard Sep 22 '11 at 19:03
7  
It depends. If management gives him the title "software craftsman" in order to avoid giving him the salary of a "software engineer", then he may not think it is complementary. –  GEdgar Sep 22 '11 at 19:36
1  
As an employer, I wouldn't look upon a candidate favourably if they had a job title of "software craftsman". It's my personal opinion but it looks ridiculous and pretentious to me. –  Ste Jul 24 '12 at 12:50
    
I'd guess that Martin and Jorgensen would regard the term as complimentary, but I'm not sure I'd go so far as to aver that the term is regarded as universally positive. As a side note, it seems this question could be debated on Programmers.SE as easily as on English.SE. –  J.R. Feb 16 '13 at 22:00
    
@Ste: That's a good contextual note. It might work just fine as an official job title within a company, but look presumptuous as a self-described attribute on a résumé. –  J.R. Feb 16 '13 at 22:03
show 1 more comment

8 Answers

up vote 14 down vote accepted

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.

share|improve this answer
12  
may also be perceived as purposely confusing or quite pretentious –  ZJR Sep 22 '11 at 13:48
1  
Craftsman has significant "traditional" overtones, so it's not really appropriate for a modern fast-advancing field such as software development (I never much liked the Programmers Guild as a name either, for the same reason). So I'm afraid my vote will have to go to @Jodrell's answer - the epithet isn't exacly wrong, but it doesn't really hit the spot for me. –  FumbleFingers Sep 22 '11 at 16:44
    
@FumbleFingers - yes but to me it also carries overtones of both technical skills and, for want of a better term, "art". Good code is technically good and aesthetically pleasing or maybe "elegant" is a better word? –  Wudang Sep 22 '11 at 16:55
    
@Wudang: I think "elegant" is an exceptionally strong positive word for most programmers who really care about what they do. The same goes for scientific theoreticians at a much more rarified level, particularly mathematicians. I bet if I could understand it, Peter Shor's work on quantum computing, for example, would be "elegant" to me. I know it seems odd to speak of an elegance you can't personally perceive, but sometimes you just have to trust the judgement of others. –  FumbleFingers Sep 22 '11 at 17:15
    
@FumbleFingers I was thinking of "elegant" in the sense that a maths proof is "elegant" when it is a clean simple proof. –  Wudang Sep 22 '11 at 17:48
show 4 more comments

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.

share|improve this answer
    
I disagree that Coder is in common usage. –  zooone9243 Feb 16 '13 at 21:51
    
@zooone9243, I broadly agree, hence the edit. Although, terms like Coder, Programmer or even Hacker do have a definition that describes the act of programming, they needn't give a positive emphasis. I've not seen the term Software Craftsmen anywhere but here. –  Jodrell Feb 18 '13 at 9:29
add comment

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.

share|improve this answer
add comment

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.

share|improve this answer
    
People have been talking about the craftmanship involved in software for decades before that manifesto was published. You can't assume affiliation or even agreement just because somebody used something as a title. –  Jon Hanna Feb 17 '13 at 0:46
    
One should be aware of the political implications of using a term. Arguing that it has a more general meaning is a little late now. –  Sean McMillan Feb 19 '13 at 21:51
    
Hardly, I'm still going to make tea with tea bags. –  Jon Hanna Feb 19 '13 at 21:57
add comment

As an experienced software professional, I take the term to be extremely complimentary. Many software professionals pride themselves in high standards of "craftsmanship." Two software products that behave identically may be crafted very differently, and one may be much more elegant than the other on the inside.

So the term increases the importance and significance of the craftsmanship and quality of the work that a professional creates.

Quoting the aptly worded Wikipedia page for Software Craftsmanship:

It is a response by software developers to the perceived ills of the mainstream software industry, including the prioritization of financial concerns over developer accountability.

share|improve this answer
add comment

"Software Craftsman" is a elitist software programmer who is geekier, nerdier, and an awesome programmer. He is not certainly not the usual or regular software programmer. "Neal Ford", "Ola Bini", "Joel", "Obie Fernandaz", "Yehuda Katz", "Matz", "DHH", etc are all notable examples of "Software Craftsman".

"Software Craftsman" thus can only be an elitist title :)

share|improve this answer
add comment

The Software Craftsmen I know strive for professionalism, technical expertise, practice, continuous improvement, and community participation. At the Software Craftsmanship North America (SCNA) 2013 conference, Ken Auer told attendees that humility is also a requirement. In my opinion, anyone who calls Software Craftsmen "elitist" is ignorant of the Software Craftsmanship movement, and the nature of Craftsmanship in general.

share|improve this answer
add comment

Software Craftsmanship refers to the degree of creativity a software programmer can exhibit in his programming, thus reflecting true art or skill while writing a program. The skill involved is thus assumed to be at par with the skill used in other areas of engineering.

share|improve this answer
    
at par with the skill used in other areas of engineering ... meaning that there is otherwise less skill in software than in other areas of engineering? –  zooone9243 Feb 16 '13 at 21:55
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.