Comment by avar
2 years ago
Microsoft notoriously has major issues implementing new features or fixing bugs due to their commitment to backwards compatibility.
E.g. I've been told personally by Microsoft developers in the know that certain oddities or performance differences between POSIX and Windows come down to a handful of obscure but tricky test regression failures, and nobody could justify the time spent on bridging the gap. This was in the context of improving Git performance on Windows.
So even if Microsoft made the management decision tomorrow to ditch NT and ship Windows as a Linux distro, it's unclear how they could square that with backwards compatibility in a way that would result in overall cost savings for the foreseeable future.
The weight of that single word "tricky" in tricky test regression failures is very high!
I can't imagine the obscure craziness you'll be encountering when working on a codebase that's easily over 25 years old, supporting billions and billions of devices.
Yes, although having never been at Microsoft (and thus just speculating) I wouldn't underestimate the managerial effect of siloing either.
There are many tricky problems in major companies that are actually relatively easy with say a month of developer time, but any single team affected by it can't justify that over a workaround that takes a week to implement.
Then nobody adds up cost of 10 different teams needing to each repeat that twice.