In my observations, I’ve noticed two different kinds of professional developers: Those for whom software is a job, a thing they do between nine and five, a skill they know how to perform, and that they perform in order to get paid.
The other group doesn’t seem to think of software development as a job at all, more of a calling, an obsession, a passion, a drive. Most of the time they’re doing software development all the time – when they’re not actually programming they’re reading about it, thinking about it, learning about it.
A number of individuals in this second group not only have a passion, but a drive to excellence, and a high level of dedication and professionalism. I believe these individuals are software craftsmen (and craftswomen, as quite a few of them were not men at all, but I’ll stick with the one term to include both). Continue reading