I have a lot of side projects. Most advice says I should kill them.
Pick a winner. Archive anything that is not growing. Stop spending time on products that will never become companies.
I understand the advice. I do not think every piece of software has to justify itself like a startup.
They still do something
BudJet helps me understand where my money goes. Viddl downloads a video without turning the page into an ad maze. SlovoCard helps me retain the language around me. Earth Roulette turns “where should we go?” into an actual place.
Those products remain useful if the market is small, growth is flat or I am one of the main users. I would like them to make money. I do not require it.
Sometimes maintenance is two seconds
SlovoCard’s typed-answer flow used to advance as soon as an answer was submitted. In July I added a two-second pause to the cloze and listening cards so the learner could read the correction before the next card appeared.
The test waits 1,999 milliseconds and checks that the card has not advanced. One more millisecond allows it through. There was no new deck, subscription tier or relaunch. The existing exercise became less annoying to use.
That same month, BudJet needed a replacement for a model removed from its Telegram receipt path. The person sending a receipt did not need a new feature. They needed the old one to keep working.
The limits still matter
Maintenance is not free. Security can make old software irresponsible. Infrastructure can cost too much. A dependency can become impossible to support. Sometimes deletion is the right decision.
I label the projects by how I work on them now. A maintained tool needs compatibility fixes and a way to report problems. My main product needs sustained product work. An old project needs an accurate record.
“Last tended” is useful because a commit is only one kind of care. Work can also mean fixing data, checking a deployment or answering a user.
If I call a product maintained, I still look after it. If that changes, its label should change too.