After sinking a few dozen hours into playing Factorio, it dawned on me that part of why I like it is exactly why I like tinkering with what I call my Personal Stack. That's a suite of applications, mostly open-source, some of them hand-made, that I host on a server and use to do a great many things.
In Factorio, you're building out a base/factory. You start up slow, because any new project takes some time to grow into its full complexity.
And when you're well on your way to your goal, there's always something demanding your attention. There's some bottleneck that needs tuning; a broken down pipeline that needs fixing; an outage in the production of some component (looking at you, green circuits) used by so many other things that most of your factory grinds to a halt. You know you'll need more power soon, so you build a nuclear power plant; but then you need more fuel, and your uranium mining has slowed down because you didn't provide enough sulfuric acid. You investigate and find out your chemical processing plant has broken down. By the time you fix it, aliens wreck your uranium centrifuges.
Most of the time there are multiple things you could be doing; and since it's just something you're doing for fun, you can pick and choose.
It feels the same with a programming & self-hosting hobby.
I use my Search index to check whether I already bought a game. Then I think it would be cool if the search result card showed not only when and where I bought it, but also how long it takes to beat and what its ratings are. Not a problem, that's data I already have - I need just to modify the display component.
Then I notice some games don't have a cover picture. To add them automatically, I need to modify 2 completely different pieces of the stack.
While I'm there, I realize it'd be cool to also have a "year of original release" in my Book database. But that requires modifying the Goodreads scraper and rigging up something that'll add the data for all of the books in evidence. Then I notice the scraper doesn't handle apostrophes correctly. Wait, that probably means the same bug is also in Obskurnee, the Book Club app! By the time I at least jot these down for later, aliens release a breaking change to my Search engine. And Matrix bridges. They also make my server run out of disk space.
Endless loops of running between bottlenecks, issues, outages. Lots of bug squishing. Dopamine highs when you complete your latest change and see the whole monster of a thing you've created spring back to life.
Count me in.