How did the "server executable" get written in the first place, and how can it be maintained and enhanced over time, if the only revenue stream for the company is from (optional) hosting services? Especially when relevant data for a given customer is small enough that it can be "ejectable" and self-hosted in the first place?
The same way anything else gets created before it exists in order to create revenue - loans and/or early investors.
EDIT: whoops, I missed the second part of your question ("...how can it be maintained and enhanced over time..."). I've already implicitly answered that in my original reply, by claiming that the attractiveness of "optional hosted services" is higher than the average HN reader - who is predisposed to be a tinkerer, a self-hoster, someone who cares about DIY and learning - would assume. There are plenty of existing companies who make their base software available for free, but make a healthy income off of hosting and support. This article doesn't propose anything radically new in that regard - just extending it to "ejectability".
You give your server.exe away for free, and make all of your revenue in value-add hosting, and maybe professional services stuff to specific customers. You still have to maintain server.exe -- fix bugs, add features, etc. -- which requires engineering resources, time, money.
Someone else comes along, downloads your server.exe, and offers hosting and professional services themselves, as a competitor. To a customer there is no difference between you.com and competitor.com, they're hosting the same thing on different domains. And the competitor gets their revenue the same way you do, but they don't have to spend anything on server.exe, because you're doing all that work already.
Again, this math doesn't work out, at least not for you. The competitor will always come out ahead.
If the claim is that you have some unique ability to produce revenue that isn't available to third parties that download and use your server.exe, then whatever that is, it's not part of the server.exe, just by definition! You've got the server.exe you offer freely, and a different my-server.exe that only you can operate and which has value that only you can extract. So we're back to square one.
Ah, I see your point now. Not "how can you generate income (at all)", but "how can you generate income more effectively than a competitor who is drafting off your development, to ensure you don't get competed out of business". Makes sense, sorry for initially misunderstanding!
I still don't think this is an intractable problem, though - there are still some properties that provide a moat to allow you to survive:
* the experience of having developed the server.exe means that you have some institutional knowledge that makes you better able to offer support - you don't have to "learn it from scratch"
* you can offer upcoming features to your paid subscribers earlier than they get released in the free version
* name/brand recognition is A Thing - there is some non-zero dollar value that customers will assign to the comfort and security of buying from "the real source"
But I do recognize and agree that those are slim and not _necessarily_ decisive. In some cases, the differential revenue accrued by those things will be enough to continue development on the product that is otherwise given away for free; in others, it won't. A careful balancing act, to be sure!