Coffeehouse Thread

82 posts

“Why Windows is slower” - a 'rant' from within WinDiv

Back to Forum: Coffeehouse
  • User profile image
    felix9

    "I Contribute to the Windows Kernel. We Are Slower Than Other Operating Systems. Here Is Why."
    http://blog.zorinaq.com/?e=74

    its expected, but still interesting.

    My guess: this is from someone young and fresh, landed in WinDiv recently and get frustrated somehow.

  • User profile image
    Bass

    I think the more interesting part is that to put out his criticisms he had to use Tor and was generally scared shitless about retribution from within Microsoft.

  • User profile image
    cbae

    This is another example of a "grass is greener" rant that happens at virtually every company. I remember a rant from somebody at Google that showed that things weren't all rosy there either.

  • User profile image
    Bas

    All the caveats instantly rob it of any impact it may have had. Now it's "here's a rant that got debunked by the author himself but I won't let that stop me from posting it anyway I guess?"

  • User profile image
    exoteric

    The corporate culture aspect of the rant is interesting, regardless of caveats. It's also interesting to contrast this with Duffy's blog posts about leadership.

    @felix9 I thought Bass would have beat you to this posting

  • User profile image
    evildictait​or

    The person who reposted it is an idiot, since they redacted the only part of the rant that anonymously proves that the author is genuine.

    I'm a developer in Windows and contribute to the NT kernel. (Proof: the SHA1 hash of revision #102 of [Edit: filename redacted] is [Edit: hash redacted].) I'm posting through Tor for obvious reasons.

    Also:

    I think the more interesting part is that to put out his criticisms he had to use Tor and was generally scared shitless about retribution from within Microsoft.

    The employee was absolutely right to be scared shitless. If Microsoft finds out who posted it, they're going to get fired.

    That's not to say he doesn't have some valid points. Indeed, I can identify with several of the points he's making (teams really hate "inheriting" code that they didn't write, and it's much easier to write new code than repair old code, for instance).

    But the reason he's gonna get fired when they find out who it is isn't because he's making these points, but because of how he's making these points.

    If you have a problem with your employer, talk to your boss. If your boss doesn't listen, talk to his boss. If he doesn't listen, write your CV and go somewhere where your talents will be appreciated.

    Writing a negative post about your employer online on a site that you know is going to use it as ammunition against your and your colleagues is always going to get you fired when they find out. That's not just "how Microsoft works". That's how every company in America works.

  • User profile image
    felix9

    well, just noticed the original poster has posted an update after I read that last time.

    now its balanced, and nice. Smiley

  • User profile image
    vesuvius

    , Bass wrote

     was generally scared shitless about retribution from within Microsoft.

    Care to lead by example? Please post your current employer how much you are paid, and how much money your boss is paid. Feel free to comment on your current coding project, who it is for and post some source code if you like.

    Go on, show us at least that you're not scared shitless about retribution from who you work for

  • User profile image
    eddwo

    Other people have posted equally revealing, if not quite so snarky, posts on the internal goings on of Microsoft without all the elaborate privacy measures. 

    The series of posts on the rise and fall of WinFS gives a lot of insight into the politics at play within and between the WinDiv and DevDiv teams, and it's hosted on the official blog platform.

    I know it's against corporate culture to air your dirty laundry in public, but it actually make the process feel more real to us as outsiders. It's comforting to know that even large organisations that like to portray themselves as such well oiled machines are actually subject to similar levels of internal dysfunction to that which we experience on the outside.

    I know I've been reading MiniMSFT (which has been quiet for a while now) and the like for years, hoping to catch a glimpse of what is actually going on behind the curtain.

    It's probably more healthy to let employees let fly the odd Steve Yegge now and again, to relieve the tension, than to bottle it up for years and contribute to an unhealthy work environment.

  • User profile image
    wtfhIs​Microsoft​Doing

    Another reason for the quality gap is that that we've been having trouble keeping talented people. Google and other large Seattle-area companies keep poaching our best, most experienced developers, and we hire youths straight from college to replace them. You find SDEs and SDE IIs maintaining hugely import systems. These developers mean well and are usually adequately intelligent, but they don't understand why certain decisions were made, don't have a thorough understanding of the intricate details of how their systems work, and most importantly, don't want to change anything that already works.

    These junior developers also have a tendency to make improvements to the system by implementing brand-new features instead of improving old ones. Look at recent Microsoft releases: we don't fix old features, but accrete new ones. New features help much more at review time than improvements to old ones.

    (That's literally the explanation for PowerShell. Many of us wanted to improve cmd.exe, but couldn't.)

    As a talented person working at a huge software company similar to Microsoft, I can relate to this.

    Start-ups that used to have next to no funding in 1975 when Bill Gates inked his contract with MITS now have tens of millions in funding before they even rent out office space. These start-ups can offer 1%+ equity that is practically automatically going to be worth millions because of their funding pipeline in the web of venture capital that was created in the last 10 years in SV.

    Microsoft and other IPO companies can no longer offer that type of pseudo executive compensation to even the best young programmers.

    In the past this would have been some sort of risk for the person, but now with the funding structure and companies like Sequoia and Andreessen Horowitz, the equity is almost guaranteed to vest at several thousand times the value you were issued it at.

    So what does that mean?

    It means that the people left behind, AKA myself and others working at these huge software corporations has to manage away the problem. How do you do that? Unit testing, code coverage and really good continuous integration ( automation nets for bad programming practices ). You also need really good peer to peer code review. More importantly you need people to actually conform to the development and QA cycle. Most people after a while will get comfy and just skip various stages of the project cycle and check them off anyway. I think that happens pretty much everywhere.

    Conversely a company like Facebook does not have dev branches or unit testing that you know of. The developers there are all good enough to commit directly to the main SVN trunk with no other review, and Chef pushes their changes public to all the node clusters.

    But Facebook generally attracts the type of people who don't really need peer review or continuous integration layers to protect the company from their mistakes. The pay rate is several orders of magnitude higher.

    I think that nature really dictates what needs to happen. The big companies need to die off, and their star dust needs to form new companies, or stars to take their place. These new stars are full of potential energy and will burn for many years to come. Rather than drag on the process to fuel the founders, we need to make a more efficient model for the end of life of companies that have completed their funding pipeline and have played out their market value. There should be some calculated threshold and guidelines that dictates when a company should die and thus we can make business development renewable in the most efficient manner rather than what exists today.

  • User profile image
    cbae

    , wtfhIs​Microsoft​Doing wrote

    As a talented person working at a huge software company similar to Microsoft, I can relate to this.

    Start-ups that used to have next to no funding in 1975 when Bill Gates inked his contract with MITS now have tens of millions in funding before they even rent out office space. These start-ups can offer 1%+ equity that is practically automatically going to be worth millions because of their funding pipeline in the web of venture capital that was created in the last 10 years in SV.

    *snip*

    The vast majority of venture funded companies have an ice cube's chance in hell of being acquired let alone going IPO.

    *snip*

    Conversely a company like Facebook does not have dev branches or unit testing that you know of. The developers there are all good enough to commit directly to the main SVN trunk with no other review, and Chef pushes their changes public to all the node clusters.

    But Facebook generally attracts the type of people who don't really need peer review or continuous integration layers to protect the company from their mistakes. The pay rate is several orders of magnitude higher.

    *snip*

    OTOH, the type of coding that happens at Facebook is probably several "orders of magnitude" more trivial and have 10s of "orders of magnitude" fewer dependences than, say, the coding required of an operating system kernel.

    Of course, that's using your definition of "orders of magnitude".

  • User profile image
    wtfhIs​Microsoft​Doing

    OTOH, the type of coding that happens at Facebook is probably several "orders of magnitude" more trivial and have 10s of "orders of magnitude" fewer dependences than, say, the coding required of an operating system kernel.

    That reduced version of libc they statically link and the other ko drivers mostly created and submitted by 3rd party ISVs. And the chip architecture hooks. Actually isn't the kernel the most independent piece of software running on a multitasking computer?

    Isn't that why it's loaded first, and why everything else uses its system calls?

    It's not relevant to the point I was making. just sayin'

  • User profile image
    Bass

    , evildictait​or wrote

    The employee was absolutely right to be scared shitless. If Microsoft finds out who posted it, they're going to get fired.

    That's not to say he doesn't have some valid points. Indeed, I can identify with several of the points he's making (teams really hate "inheriting" code that they didn't write, and it's much easier to write new code than repair old code, for instance).

    But the reason he's gonna get fired when they find out who it is isn't because he's making these points, but because of how he's making these points.

    If you have a problem with your employer, talk to your boss. If your boss doesn't listen, talk to his boss. If he doesn't listen, write your CV and go somewhere where your talents will be appreciated.

    Writing a negative post about your employer online on a site that you know is going to use it as ammunition against your and your colleagues is always going to get you fired when they find out. That's not just "how Microsoft works". That's how every company in America works.

    If you read what this guy is saying, more then just technical criticism of NT, he is saying that NT's problems come from the fact that Microsoft is so rotten from the inside that internal criticism probably wouldn't be productive. I've read MiniMSFT quite a lot and it's obvious he's not the only Microsoft employee that feels that way.

    But I'm sensing a pattern here. I point out something horrible, you say "the rest of the tech industry is like this". But, it's always easy to use Google as a counterexample. The famous Google criticism guy cbae mentioned even used his real name. And IIRC was never fired and even said that it would be ridiculous for a company like Google to fire an employee over public criticism, because the company is better then that.

    I''m really not personally trying to even promote Google in any way.. but they somehow just keep proving over and over much better they are then the rest of tech industry when it comes to stuff like this. Maybe that's also why they have been consistently rated a much better place to work for then Microsoft and why the guy complains that Google is hiring away all of Microsoft's best talent.

  • User profile image
    blowdart

    , wtfhIs​Microsoft​Doing wrote

    Conversely a company like Facebook does not have dev branches or unit testing that you know of. The developers there are all good enough to commit directly to the main SVN trunk with no other review, and Chef pushes their changes public to all the node clusters.

    Not exactly. All facebook employees run the latest build, and it gets tested that way before it gets pushed to live.

  • User profile image
    wtfhIs​Microsoft​Doing

    Not exactly. All facebook employees run the latest build, and it gets tested that way before it gets pushed to live.

    Yes, exactly. Facebook only has one branch, trunk  and it's SVN. Developers version on their own machines with Mercurial, git or whatever then commit directly to trunk. That gets pushed out to staging then production with Chef.

    This is vastly different than the continuous integration cycles at other companies of comparable size in the IT services business.

    Facebook is still able to change rapidly because it never gave up the model from when Mark Zuckerberg started it. Microsoft gave up the 1975 Albuquerque model in the mid 1980s. One day Facebook will slow down significantly and get old too, and it probably won't be too far in the distant future. It's already starting. That IPO BS put a huge dent in the bumper.

  • User profile image
    cbae

    , wtfhIs​Microsoft​Doing wrote

    *snip*

    Facebook is still able to change rapidly because they're a web-service company, not a software company.

    FIFY

  • User profile image
    Bass

    Web stuff is a much bigger deal to not f**k up, because so much of people's data and life is on the web.

    Relevant XKCD:

    Generic Forum Image

  • User profile image
    JoshRoss

    As a customer, I would rather have the operating system stable and secure over performant. Don't get me wrong, I like performance increases. But, I would rather not run into a regression, that broke my app, because someone squeezed out a 5% improvement on directory traversal.

    -Josh

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.