Software End of Life Part 3: From Abandonment to Open Source Revival

In the world of software development, the topic of end-of-life scenarios often remains overlooked. Personal experiences of grappling with closing down products have revealed a stark absence of guidance of case studies to navigate such situations effectively. This series of blog posts aims to fill this gap, drawing from my own real-world experiences across various companies.

Software End of Life Part 1: The Journey to Closing Down a Legacy Product delves into managing a legacy software product closure, navigating challenges and strategies to retire outdated systems and transition to modern solutions.

Software End of Life Part 2: Overcoming Tech Debt With a Complete Rebuild looks at what to do when the burden of tech debt becomes so overwhelming that a complete product rebuild becomes the only viable solution.

Software End of Life Part 3: From Abandonment to Open Source Revival outlines the transformative journey of leveraging open source to breathe new life and opportunity into a product acquired and later abandoned by its new owners.

A story of dedication amid abandonment

There are many good reasons to open source a product, such as to disrupt a market, but doing so as a ‘last gasp’ to keep it alive is not normally advisable. But there are occasions where it may be the right thing to do…

One business I worked at was part of a group of digital learning businesses under a massive parent company, let’s call them MegaCorp. One of these businesses had a really cool product, but very, very niche. MegaCorp decided not to continue investing in this product or business but refused to officially wind it down. The dedicated and long standing team (they had over one hundred staff at the point of acquisition!) reluctantly left one by one, until over number of years, one sole developer remained.

At this point, the product retained a decent number of enthusiastic customers and was still generating what would be considered a decent annual profit for most small businesses. The sole remaining developer had personally made such a great emotional investment in the product over so many years that he continued to maintain it, basically keeping the lights on, even handling license renewals and winning a few new customers. Way above and beyond for a software engineer.

A plan is hatched

We ran a matrix structure at MegaCorp so I line managed all of the developers in the ‘learning’ division. So this developer happened to report into me and looked to me for support and advice in their unusual situation. Given my background in open source, I came up with a kernel of an idea, and we hatched a plan: we would propose to MegaCorp that they allow us to anonymise the codebase, debrand the product and release it under an open source license. At the same time, the developer would be made redundant, with a decent redundancy payment for his many years of service.

This dual approach, if it worked, would mean that he could continue maintaining the product under his own steam and continue to service the products clients with fixes and new releases. He did the math and figured he could eek a living out of it, and would have a decent redundancy payment as a buffer while he tried to make it work.

Setting the software free

We didn’t really think it would fly to be honest but it was definitely worth a crack. I prepared a short PowerPoint deck outlining the proposal, rationale, business impact and next steps. To our surprise, MegaCorp’s head of division gave it their blessing and connected me with the head of legal. If legal got behind it, we were told we could go ahead.

I presented the slidedeck to a few legal bigwigs and answered a few follow-on questions, following which they also approved the plan. At that point is then simply became a project management job to execute it, which was a pretty straightforward affair. Fast forward a few years and the developer is now doing quite nicely out of it!

This was such a great feeling not just for helping out a really good developer and a genuinely nice guy, but also the feeling of ‘setting the software free’. There was never really any likelihood of a community developing around this open source product, but it did give a developer security for the future. A happy ending to a sorry saga.

To this day, I still don’t understand why MegaCorp bothered acquiring a great business, only to run it into the ground. But I’m glad the product is still going and starting to blossom again.