How we tackled technical debt at Wikipedia

Talking a bit helped us write off several years of technical debt

Jon Robson (David Lyall)
Mar 13 · 10 min read
A product owner responds to an engineer who has told them they need a feature freeze while a year is spent fixing some poorly defined technical debt without a clear outline of what that means (Source: Pixabay, free for commercial/non-commercial use.)

The problem statement

A newly hired front-end developer inspects the dependency tree for Wikipedia’s mobile search functionality (Source: U.S. Department of Energy, public domain)
We constantly monitor JavaScript bundle sizes for the Wikipedia article about Facebook via webpagetest. It shows the mobile site’s JavaScript is 60% of what’s needed to run the desktop site (where many of our editors are). You can check these graphs out and explore this data more on our grafana instance.
Wikipedia, a decade old web veteran reviews the latest proposal to adopt React.js in Wikimedia’s websites [Source: Wikimedia Commons, public domain]

The solution

Lessons learned

1. Stop coding every now and again

2. Be problem focused not solution-driven

3. Consider refactoring rather than rewriting

Refactors may not necessarily be a good idea if you are building a replacement bridge, e.g. this one in Oakland, but they are always worth considering if you are not sure if you will completely finish. (Source: Wikimedia Commons, Creative Commons Attribution 2.0 Generic license.)

4. Make talking a routine

A software engineer show and tells the latest JavaScript framework to their colleagues with the claim it will solve ALL the problems© during their weekly developer focused meeting (Source: Wikimedia Commons, Creative Commons Attribution-ShareAlike 3.0 License.)

Technical debt is a real problem — recognize it!

A new hire at a recent IPO inspects the codebase he’s inherited (Source: US Airforce, public domain)

Footnotes

Down the rabbit hole

Facts, stories, and people from across the Wikimedia movement

Thanks to Sam Smith.

Jon Robson (David Lyall)

Written by

Travel fanatic, writer, web dev british hippyster on a mission to make the web all happy with rainbows, unicorns etc

Down the rabbit hole

Facts, stories, and people from across the Wikimedia movement