Repaying technical debt gives you a discount on your next few tech decisions

Historically, all of drupal.org's code repositories were self-hosted on CVS, a somewhat crusty old version control system that was perceived as a major barrier to entry for wannabe new contributors. It was a hell of a job migrating all the code to (still self-hosted) Git, but thanks to a large team of contributors, the move was pretty much seamless: at least, from my perspective!

In accomplishing this, their efforts paid off years of technical debt. This is a newish concept in software development: that an unattended, un-upgraded system accrues such technical debt over time; eventually, it must be paid off in terms of time and/or effort; this is a minimum requirement of the system continuing to be as useful at a later date, as it was when it was first implemented. Now, only 12-18 months after the original CVS-to-Git migration was completed, the wider Drupal community is now contemplating a move from self-hosting to Github-hosted repositories. What does this continued restlessness signify?

All too often, technical debt is seen as a necessary evil of supporting long software projects. But as far as I'm concerned, the mere fact that we're having this debate now is evidence that repayment of the technical debt has also brought with it an unexpected advantage: the expanding of the community's technical horizons. Even if d.o doesn't move to Github - and there are very good arguments either way, so good that it's very much worth reading them - the fact that it could do says a lot about the strength of its technical position, post-CVS. The debt repayers should feel doubly proud, that this discussion is happening at all.