<\/a>
\n<\/em><\/p>\nUp until now our team lead had managed to protect us from having to deal with this. This was the only site having this problem. Sending a developer there would be costly (this was before broadband connections where available everywhere). The case was bounced from department to department. Nobody wanted to touch it. After a lot of hesitation, I was one of the two developers who reluctantly agreed to go. Little did I know that I would change my attitude as soon as we arrived at our destination.<\/p>\n
When we arrived, we were greeted by the site administrator. \u201cI\u2019m so happy you\u2019re finally here!\u201d<\/em> he exclaimed. We could immediately see that he was exhausted. While waiting for us to fix the problem, he had been forced to connect a watchdog to the server. Every time the server crashed his cell phone would ring and he would have to drive to the site and restart the servers. The phone had become a ticking bomb that could go off at any time. During the last month he had been constantly on call, he had not been sleeping properly, and he had not been able to go away for weekends. Needless to say it was an extremely stressful situation for him.<\/p>\nAfter hearing his story, all of our reluctance to work on this problem was suddenly gone! We really wanted to help this guy out. After some really hard work and more than our share of luck, we finally managed to find and fix the problem before our flight back home. The look of relief on the site admins face was priceless. I still remember him calling his wife while driving us to the airport. \u201cHoney, they fixed the problem! Yes, really! I love you too. I\u2019m coming home soon.\u201d<\/em><\/p>\nBy learning the personal story behind that anonymous item in the bug tracking software that horrible assignment had turned into one of the most satisfactory moments in my career. This is what software craftsmanship means to me: keeping situations like this from happening in the first place. Every time we take a shortcut, skip writing that test, or guess at what is meant by a user story instead of asking, we risk that someone will suffer from it. If we can keep this in mind we will increase our chances of creating software that is useful and proudly call ourselves professional software developers.<\/p>\n","protected":false},"excerpt":{"rendered":"
\u201cWe need someone to go to site X this week\u201d, said our team lead. There was a sigh among the developers in the room. \u201cI know, I know,\u201d she apologized, \u201cbut we need to do this to keep management off our backs.\u201d Site X was a real pain. Some of […]<\/p>\n","protected":false},"author":32,"featured_media":571,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[54,83],"tags":[],"_links":{"self":[{"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/posts\/565"}],"collection":[{"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/users\/32"}],"replies":[{"embeddable":true,"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/comments?post=565"}],"version-history":[{"count":11,"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/posts\/565\/revisions"}],"predecessor-version":[{"id":1115,"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/posts\/565\/revisions\/1115"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/media\/571"}],"wp:attachment":[{"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/media?parent=565"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/categories?post=565"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/leanmagazine.net\/wp-json\/wp\/v2\/tags?post=565"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}