On Sunsetting Code
Posted On April 7, 2016
Today I took a call from a colleague asking if we could extend an existing app to support new changes that had been made in the business. When scoping the project and prioritizing we realized that we have outgrown the app and need to replace it with a 3rd party solution in order to provide the level of scale we want to provide without having to add weeks of development time and priority waits. Before I move on, just a quick note of nostalgia about that killer app.
15 years ago I wrote an application to provide us with a repository of information. We called it our knowledgebase. If we learned how to do something for a client our practice became to “add it to the KB” so we could use it later. It became a selling point. Each client benefits from our extensive base of collective knowledge gathered through years of experience and hard work. The app itself was a tinny piece of classic ASP code written in VB, initially stored in an Access database, later upgraded to SQL Server. It was connected to our customer list from the accounting system, enhanced with document management capabilities, and refined countless times over the years.
A few years later while sitting around a conference room table loaded with monitors and takeout containers, spreadsheets on projectors, I contemplated with three longtime colleagues how we could help the team leap from our homegrown ticketing system and knowledgebase to our recent purchase of ConnectWise – a professional tool with greater scalability. It had one major problem. No KB — at least not like the one to which we had all grown accustomed. While we mulled, I surfed through the database and threw a couple of views together, and in the span of ten or so minutes threw together some shaky code that worked! We had a simple but elegant solution to our problem. Team members could now enter information into the system without modification, and we could retrieve it using this new app. It was fast, simple, and effective.
It was quick moment of pride as I got to use some talent and skill to quickly solve a business problem with some great teammates.
Years have gone by and that dodgy code has matured into a professionally coded web application integrated with Active Directory used thousands of times a day by a team over 100 strong and growing. As we step into the next level of maturity for our company we need to grow faster than my little two-person team of jacks-of-all-trades can responsibly manage given our current set of priorities.
So it is with sadness and just a tiny bit of pride that I recognize the end is near for an application that has lived and grown with me for the last decade and a half.
It was great fun to grow together.