Years ago, I used to write code by the seat of my pants. Getting work was hard and the lowest bidder often walked away with the prize. I was earning my chops, so I was willing to work late hours and write code until the cows came home. I was what I like to call a duct-tape coder. We didn’t follow no stinkin’ SDLC. We didn’t write user-manuals or user-friendly comments in our code. HELL no! There was no time. We were purist…code was all that mattered.
I define a duct-tape coder as a programmer/developer/etc who writes code w/o premeditated course. A coder who pieces together a project a few hundred lines at a time. A duct-tape coder typically lacks experience and vision, focusing only on the problem at hand. I could go on…but I think we all get the picture.
I look back on those years, sometimes missing the excitement that came with the all night code jams and tight deadlines. But then something, or someone comes along and reminds me how extremely lucky I am to be a corporate programmer. How lucky I am to have clear, defined processes and thorough documentation.
I was recently asked to be a volunteer on enhancing the CorridorRecovery website, a site put together for the distribution of information to benefit victims of the Iowa Floods of 2008. When I was asked to help, I jumped at the chance – it was the least I could do to help the victims of this disaster. And so I rushed to the EOC (Emergency Operations Center) and met with the guy who was spearheading the CorridorRecovery website initiative.
The guy, who we’ll call Mike, had been working 36 hours straight to get the site up and running, and those 36 hours were not typical hours, they were very stressful hours. You can only imagine the numerous requests that were being asked of him. Without a doubt, he was under the gun to get the site up and running. In fact, they were advertising the site days before development had even begun.
As you can imagine, Mike needed some help – that’s where I entered the picture – me and a couple of additional willing participants. From the moment we arrived, information was thrown at us at an unanticipated rate. There was total chaos, no one really understanding the process to developing a sound and stable website.
At first, we all tried very hard to update and manage the site. The site was developed using classic ASP. Anyone who has developed in ASP has probably heard the term, “spaghetti code”. It’s a mess! That’s exactly what happened with this project. Because of how haphazardly the site was put together, every little modification or enhancement meant working in a mess of unorganized, uncommented, and non-object oriented code. I volunteered to develop a custom ASP.NET web application for data entry just so I could stay out of the mess of classic ASP.
I was so frustrated with the site. It was written in a legacy language; the site was running on a shared hosted server, so it was extremely slow; and everyone involved with the progression of the website kept changing their minds every other minute. I found myself complaining – ME….COMPLAINING…can you imagine? Anyway, that’s when I realized something. I had evolved. Just like the old man who sees a teenage kid and says, “Damn punks” – I had matured – I was the old man. I saw poor practices and was very judgemental. I couldn’t believe it…I wasn’t the hip young coder I once was. But hey, that’s okay.
So today I say goodbye to that life in the past. I’m no longer a duct-tape coder, and thank goodness for that. I’m very fortunate to have landed a career as a corporate programmer. I owe it to years of experience and guidence from developers more intelligent than myself. I’ve had the privilage to work with some brillant software engineers over the years, and I believe that they too once rode in the saddle of “the duct-tape coder”.
- the UB