If you’ve been in software engineering for more than a couple years, there’s a kind of project you have definitely seen (and maybe participated in): it’s absolutely massive (often a total refactoring, replatforming, or rearchitecting), and if you ask 10 different people around your company why you’re doing this Massive Project, you’ll get 10 different answers. In fact, if you wait 6 months and re-poll the same 10 people, you’re as likely as not to get a whole new set of answers again.
“We’re doing it to fix our broken reporting pipeline!”
“It will cut the time to onboard a new customer to almost nothing!”
“Developers will move so much faster!”
“Our error rates were out of control!”
“Latency on the home page will drop!”
These Massive Projects roll through a company, fueled by unrelated hopes and impossible dreams, and—since they’re always nonsensical and doomed to eventual failure–the only way they can keep themselves rolling a little while longer is to hoover up some new set of hopes and dreams from some new poor sap.
I’ve been looking for a good name for this kind of project for a long time—unfortunately, they’re common enough in our industry that you have to be able to talk about them–and finally, today, a guy I work with (who is both much smarter than me and much more deeply steeped in gaming culture) found it.
From the Wikipedia page on the early 2000’s Playstation Game Katamari Damacy (emphasis mine):
The game’s plot concerns a diminutive prince on a mission to rebuild the stars, constellations, and Moon […] This is achieved by rolling a magical, highly adhesive ball called a katamari around various locations, collecting increasingly larger objects, ranging from thumbtacks to people to mountains until the ball has grown great enough to become a star.
So now, I’ve finally got it: introducing the Katamari Project. If you see one, grab whatever you can and run away as fast as your legs will carry you.