Raymond asked Why 16-bit DOS and Windows are still with us, and Mike answered. This is something I’ve thought about a bit lately, in a way anyway.
Both dana and I agree that the time to break backwards compatibility is now (I still claim that I was the first to say it 🙂
The immediate response from people, including Robert was that Microsoft’s number one rules is “don’t break existing apps”. This is echoed in Raymond’s original post.
To this I say. “So what?” Just because Microsoft releases a new OS doesn’t mean that a company automatically has to upgrade to it (much to Microsoft’s chagrin I’m sure 🙂 If Longhorn, or XP Reloaded, or whatever the new release is breaks something…. don’t upgrade. If your company is still relying so heavily on some ancient 16 bit DOS app that harkens back to 10 fucking years ago, and the company is out of business, bought up, sold out or just won’t upgrade their software, you really have only a few choices.
- Do nothing. Leave everything as it is (more on this in a sec)
- Find a new piece of software, upgrade, buy your CALs, keys, or whatever, retrain, upgrade, live in the present
- Hold the CEO hostage until he finds you something that is compatible that meets your needs
- Assuming that you need to upgrade for security needs, isolate the computer(s) that need to run this outdated software on machines that are well protected from risk so they can run happily away without the danger of running them “in the wild”
What you shouldn’t do is hold the rest of the world hostage because your big ass company can’t do without some random decade old chunk of code. From my understanding Microsoft is keeping the (no doubt) millions of lines of backwards compatibility code in Windows, Longhorn, XP Reloaded because the CEO of BigCO is going to stop sending B-B-B-Bill gobs of money if things stop working.
I wonder if Microsoft would make more money if they took out the crap that allows 8 and 16 bit programs to work. So you might lose some customers, but you’d probably gain some as suddenly your OS would be fresh, new, clear of historical baggage, and stable.
This is one case where Microsoft should look at what Apple did with their OS9 compatibility in OS/X (they won’t of course, no one listens to me). Linux and the open source community has already proven that you can create a runtime environment for a completely different OS running seemlessly within another, without the baggage of writing it into the OS. Please point the Longhorn developers at DOSEMU.
Just a thought.