6 comments

[ 174 ms ] story [ 1043 ms ] thread
I worked for a company that was building a low-latency real-time platform for applications like financial trading. We shipped on both Linux and Windows. As I recall, our latency on Linux was fairly reliably under 1 ms, while on Windows it was often more like 15ms. In short, the Windows scheduler was nowhere near adequate for real time work.
As someone who has worked with Windows or Supervised people who worked with Windows for most of the last decade I can confirm this type of behavior.

What I've noticed about Windows is that certain bugs just seem to linger. I can list about 30 bugs that have been around since Windows 2000 and which are still in Windows 7 today.

So clearly what Microsoft is doing much of the time is just layering on more and more features without doing much to the base functions of the Operating System. That's why these basic bugs persist because no one's touched that code in years (at least that's my theory).

And that's also why you get such bottlenecks.

Linux is less prone to feature-itis because the companies doing the real work on it aren't interested in meaningless features as much as they're interested in stability and performance. So you get a situation where the Windows code is constantly getting more verbose while the Linux code is constantly becoming more optimized.

I think it is a philosophy thing was well. Latency and network speed are key Unix heratige features which carry over to Linux. Windows has always considered this as something we should do, but not core.
One point I would make is that being a Linux developer is harder than being a Windows developer. Giving Developers neat new tools to expedite development is something Microsoft does well.

So while the figure about them being paid more is probably true the Skill Level-To-Pay ratio is probably more attractive on the Windows side.

I wonder if Linux developers have better sex lives as well?

Yes.