But it is. Every once and then you should start off a clean slate. You should throw away old code, even if it works, and rewrite it in better ways than possible when it was originally written. You have to incorporate what you learned into it.
The fact Windows probably contains code written for release 2.x is a weakness, not a strength.
> The fact Windows probably contains code written
> for release 2.x is a weakness, not a strength.
No way - it's a strength, so much so that I think you're getting downvotes because saying otherwise reads like a troll. Maybe you can support your position better.
Code that is battled-tested by millions of hours of runtime is extremely valuable. Consider protocol code. Or processor-optimised assembly language that has backwards compatibility and which hardware manufacturers have developed against.
Microsoft is a great example of a company that has been far too ready to rewrite. They could have had happier consumers for far less effort, and be in a better strategic position now if they'd followed a conservative OS strategy and tried to preserve NT and leveraged virtualisation to get the feature and security advances they needed. There was precedent for this (IBM VM) and they had experience with that kind of thing with their OS/2 v2 exposure (win32s API ran on OS/2 v2, and OS/2 1.x stuff ran on NT4), which isn't to say they would have needed to exactly mirror either of those approaches.
Even with near-infinite resources at their disposal they have struggled with the pace of change they've put Windows through, and significantly alienated the customer base in the process.
There is a huge difference between code that's been optimized for decades and code that's plain old and there just because nobody ever touched it again.
Even code like IBM's VM should be updated when new processors appear (zSeries CPUs get updated from time to time).
As for code that's there just because it's old (and not because it has been carefully maintained for decades), I advise you to look into it. You probably learned something in the past decade that can improve it.
But it is. Every once and then you should start off a clean slate. You should throw away old code, even if it works, and rewrite it in better ways than possible when it was originally written. You have to incorporate what you learned into it.
The fact Windows probably contains code written for release 2.x is a weakness, not a strength.