Short term memory loss

I've been thinking about the nature of Microsoft and why they write such crap code. There's been a lot said about their "unique" software processes, but I think there are other factors.

It seems incredible that a company can make so many of the same mistakes, over and over again. A topical example is the I LOVE YOU virus. This isn't a new idea, in fact the same thing happened a few years ago with MS Mail. That's right, a virus that grabbed all the addresses from MS Mail and mailed itself to everyone in your addressbook happened long before Outlook was released.

Another example is the braindead implementation of Windows NT and MS Exchange. Here is an organisation that built a Unix operating system years ago, so why are they making the same design mistakes made by Unix hackers in the 70s?

So why does Microsoft keep remaking mistakes? My theory is the organisation has a built-in memory loss mechanism.

Imagine yourself a programmer working for Microsoft in 1984. You get a few thousand options in the company every few months. These options at least double in value every year. Four years later, it's 1988 and your options vest. You cash out and go to live in a mansion in the Greek Islands and never think about computers again.

This cycle is repeated endlessly as the Microsoft wealth generation engine has continued. The result: nobody technical in Microsoft sticks around longer than 4 years or so. This means memory within the organisation lasts only a few years. From there, the newly recruited programmers know nothing more than Microsoft's latest products.