I was offering some confidential counseling to a former co-worker last night, Jake over at ThurisaTech who hates his boss Stan and who thinks the lead developer over there, Rick, deserves a beating, when I again alluded to the fact that technology is almost a vocation for certain elements of the IT world, namely the developers and designers who’ve been sold for the last ten years or so that IT is a vocation, not a job, and they love what they do, but not necessarily what they build.
A bunch of them over at Thurisa love what they do, but they don’t take pride in their craftsmanship, which results in shoddy applications delivered at the deadline, with about the maximum number of known issues that the client will accept before signing the check and with a vast number of other issues that the client doesn’t know about but will soon find out. Of course, those developers over at Thurisa who build those shoddy applications love what they do. They work with the latest hip technologies and they get to spend time on their own pet projects (just like Google!) and they have LAN parties on the company network. It’s just the pesky demand from clients that cuts into their enjoyment, so the real paying work has to get done quickly and sloppily. They don’t care about the ultimate workmanship in their product.
If these guys were in the manufacturing world, they’d be all agog about the new drill press machine or deburring equipment. “Look, I’m learning C# on Rails Extreme!” they say happily. “I’m punching holes in metal!” “The coffee machine here is still only a quarter!” “We could build a Web service to handle that query and expose it, enabling us to build a Facebook app that uses it!” “Oooh, a new lathe!”
A real craftsman, on the other hand, prefers to do things right and likes to have a finished product that reflects the best he could do (without the normal IT rationalizations of timeline or budget, such as “We did the best we could do with the application given our short timeline and the fact that the customer didn’t want to pay for quality.”) A craftsman recognizes the tools for what they are and knows that his skills are demonstrated not in what tools he can operate without sawing off his own thumbs, but what he can make of them that won’t fall down in a crosswind of greater than 2 miles per hour or can withstand forces of greater than 2oz per square foot no matter how cool the thing is or how quickly he built it. The IT world sadly lacks craftsmen, and it makes QA’s job that much more difficult. (Just kidding! It’s logically fallacious to assert one can make the impossible more difficult.)
Sadly, the vocational enjoyment that developers and designers live for don’t pay the bills, and without some pride in workmanship or at least the drive to do things right instead of the drive to do things cool, a company’s going to run into some trouble when its clients figure out they’re being given short shrift to technical faddery.
However, by that time, the developers will have moved onto cooler pastures without learning a lesson, and the next projects will begin with the same fundamental flaws.