| Well, if I may, there is something that doesn't sound (to me) "rational". I have seen quite a few of these cases where a larger company buys the old one (essentially to get a list of their current customers) and then terminates the product replacing it with some crappy new stuff that usually completely fails to work, but in this case the soon-to-retire programmer at least gets some (little) money (and knowledge is lost forever). But if the one man company is going to shut down because the programmer is going to retire, the acquisition cost for a young, willing programmer is 0. This hypothetical young programmer could - I believe - invest some time to understand not so much the actual codebase, but rather the workflow of the program and re-write it along that same workflow in a new language/platform/whatever. I am pretty sure that those niche users would be ready to pay a fair amount of money to have something modern/updated that actually works and works like the old one. What I have seen often is that the new program, for no real reason, has been written by someone that most probably is much more brilliant at programming but that knows nothing about how the program is actually used, has no idea about how to deal with some "edge" cases (that already surely happened in the tens of years of life of the old software), etc., in some ways it is like all the experience accumulated over the years is suddenly lost and the new program repeats the same (or worse) mistakes/issues that already happened (and that were already solved). Maybe the problem is that there is not an easy way to tell to the world "I am going to retire, any taker?" |
> I am pretty sure that those niche users would be ready to pay a fair amount of money to have something modern/updated that actually works and works like the old one.
I don't know. My experience is, for many smaller niche things, they're entrenched in orgs and used The One Way, and any deviation - change a button label, add a menu, etc - will result in a lot of complaints from existing users. They'll have to 'retrain', etc.
No doubt some people will appreciate and welcome 'new/modern' stuff, but many won't. And figuring that out ahead of time is... time. and effort. And along with that, there's usually heaps of institutional/domain knowledge that just can't be replaced without... time in the trenches.
It's not that it's not possible, it's just not typically 'worth it' for most people. ROI is too low compared to other options.