There's a comment on Hacker News about Netflix that I keep coming back to:
Company starts
Makes things better to get a larger market share
Gets a mini-monopoly (large enough share that inertia and name recognition can preserve its market share)
Slowly but deliberately gets worse to increase profit margins
I agree with every line. But it left me chewing on something else. Is software ever "done"?
Some change is forced on you. Browsers move, operating systems deprecate things, certificates expire, a nasty bug turns up in prod. Nobody argues with that work. It's the cost of keeping the lights on.
The changes I'm suspicious of are the other two kinds:
- The team had time on their hands.
- Profit.
The first is mostly harmless and mildly annoying. You hired eight people, they need tickets, so the settings page gets redesigned for the third year running.
The second is insidious. Once a product has enough customers that leaving is a hassle, the roadmap stops being about what people want and starts being about squeezing. Ads on the tier you already pay for. Password sharing "cracked down on". A quality slider that quietly moved.
Netflix could have been done years ago. Play the thing I chose, in good quality, without losing my place. Instead look at the surface area of it now. Games, adverts, live events, a home screen that autoplays at me before I've picked anything. None of that came from someone asking what the person on the sofa actually wanted.
What I'd like to see is more teams comfortable saying a product has run its course.
Software isn't a factory machine or a building. It won't stand for a hundred years and it was never going to. The better mental model is a good piece of clothing. Something well made by skilled people, that fits you, that you reach for constantly. You'll stain it. The elbows will go. Or you'll spend two years at the gym and it just doesn't sit right anymore.
Good software works the same way. It should be a joy to use, it should make the person using it more capable, and it should get more mature with age rather than just bigger.
And then one day your customers will find something else. That's allowed. Maybe you should go find something else too.