Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Windows Businesses Microsoft Open Source Operating Systems Linux

Microsoft Developer Explains Why Windows Kernel Development Falls Behind 347

New submitter mha writes "In a response that truly seems to be from a core Microsoft developer, we are told about why Windows kernel development continues to fall further and further behind that of the Linux kernel. He says, 'The cause of the problem is social. There's almost none of the improvement for its own sake, for the sake of glory, that you see in the Linux world. ... There's no formal or informal program of systemic performance improvement. We started caring about security because pre-SP3 Windows XP was an existential threat to the business. Our low performance is not an existential threat to the business. See, component owners are generally openly hostile to outside patches: if you're a dev, accepting an outside patch makes your lead angry (due to the need to maintain this patch and to justify in in shiproom the unplanned design change), makes test angry (because test is on the hook for making sure the change doesn't break anything, and you just made work for them), and PM is angry (due to the schedule implications of code churn). There's just no incentive to accept changes from outside your own team. You can always find a reason to say "no," and you have very little incentive to say "yes."'"
This discussion has been archived. No new comments can be posted.

Microsoft Developer Explains Why Windows Kernel Development Falls Behind

Comments Filter:
  • NTFS (Score:5, Informative)

    by wallyhall ( 665610 ) on Saturday May 11, 2013 @11:44AM (#43695783) Homepage
    "Oh god, the NTFS code is a purple opium-fueled Victorian horror novel [...]" -- lol!
    • Re:NTFS (Score:5, Interesting)

      by Carewolf ( 581105 ) on Saturday May 11, 2013 @01:05PM (#43696295) Homepage

      "Oh god, the NTFS code is a purple opium-fueled Victorian horror novel [...]" -- lol!

      Wouldn't that make it on par with XFS and ZFS? Modern filesystems have their advanced features by breaking the traditional layers, which makes them much harder to organize, and makes it seems like they have dirty tentacles branching out into everything else.

      • Re:NTFS (Score:4, Interesting)

        by KonoWatakushi ( 910213 ) on Saturday May 11, 2013 @02:19PM (#43696745)

        The ZFS code is actually very readable and well organized. The choice of an alternate layering model is logical and useful [oracle.com]. That said, I would not be surprised if the NTFS source is truly a horror to behold.

        • Re:NTFS (Score:4, Insightful)

          by AmiMoJo ( 196126 ) * on Sunday May 12, 2013 @04:15AM (#43700917) Homepage Journal

          I'm sceptical. All we have is the word of this one guy, who for all we know might just be an idiot who doesn't understand what he is looking at.

          NTFS seems to be fairly robust. I'm sure someone will chip in with an anecdote about how it screwed up and they lost all their data, but even back in the XP/Vista days I used to replace about 50-60 HDDs a month for customers and as long as the drive wasn't totally dead NTFS was usually readable and recoverable. You don't hear credible reports of fatal data loss bugs or corruption issues, and Microsoft doesn't often issues patches for it because it doesn't seem to have many issues.

          Of course the codebase may still be horrible, but since that is usually a guarantee of instability and flaws in what is a critical part of the operating system it does seem somewhat unlikely.

    • Comment removed (Score:5, Insightful)

      by account_deleted ( 4530225 ) on Saturday May 11, 2013 @07:09PM (#43698591)
      Comment removed based on user account deletion
      • Nice. I see a lot of insults in the replies to this comment, but I don't see any substantial explanations for your observation, or even any real denials.

      • Re:NTFS (Score:5, Informative)

        by Yvanhoe ( 564877 ) on Sunday May 12, 2013 @01:01AM (#43700345) Journal
        You don't seem to understand that the problem is not with Windows, Linux, Microsoft or Torvalds, but about the driver developers.

        Driver developers target Windows. Period. Windows does not develop the ATI driver, the Nvidia driver, provides just a stack for developing the thousands of wireless drivers out there.

        If you had a clue about what you are talking about, you would see that driver interfaces in linux are good, are working, are really good to develop with. They are documented, they do change at a pace that's much less insane than Windows'.

        Every hardware that does work at all under linux (and honestly, I had more luck with linux in recent times when installing new drivers or usb camera than windows) works because someone in the OSS world wrote a driver for it. This work is not done by Microsoft for windows, so don't compare apples and oranges.

        If you want to shout against someone for the lack of graphical cards driver support (that must be it, because, seriously, wireless and sound have been working correctly for ages on most hardware) you will have to shout at ATI and NVidia. The binary blobs you are probably referring to are made by them, not by anyone in the kernel develoment team. And yes, they often break, they often have unfixed bugs. Preferentially shout a bit more at NVidia because while ATI doesn't open source its driver, it at least opens its specifications and allows the OSS driver developer to at least not code blindfolded.
        • Re:NTFS (Score:4, Interesting)

          by AmiMoJo ( 196126 ) * on Sunday May 12, 2013 @04:20AM (#43700943) Homepage Journal

          They are documented, they do change at a pace that's much less insane than Windows'.

          Most of the driver APIs are the same as they were back in the NT days, just with some extra driver signing requirements because developers proved to be untrustworthy and incompetent. The only API that does change fairly quickly is Direct X, and that is mostly due to demand from GPU manufacturers who want support for new features and improved performance, as well as game developers.

          If Linux fails to keep up with the pace of change in the graphics/GPU computing world it will never be able to rival Windows as a gaming platform.

      • by tibman ( 623933 )

        So you ran security updates on XP for 9 years and your wifi didn't break? Glad to hear it. You can do the same with linux. Pick a distro with LTS and you'll be fine for at least 5 years.

        Also, Android still uses linux.. it's the exact same driver system. You compile it in or as a module.

      • by DrYak ( 748999 ) on Sunday May 12, 2013 @07:40AM (#43701467) Homepage

        When you can show me ONE distro, just one, that can pass "The Hairyfeet Challenge"* then you have something to brag about.

        *.- For those that don't know "The Hairyfeet Challenge" simulates the typical 5 year cycle of your average PC, we take one random laptop and one random desktop out of the pile, we install ANY distro release from 5 years ago and we update it to current. Wanna guess what happens when you hold Linux up to just HALF the Windows lifecycle? it DIES, it DIES HARD, it shits all over its drivers and by the end you'll be lucky if even 30% of what was working at the start is 100% functional at the end.

        Well I for one, are introducing the "Reverse Hairyfeet Challenge".
        You do the same with Windows. But with one little specific detail: you do it from the point of view not of a corporate user, but a at-home end-user.

        So you try surviving going all the way from Win98, all the way though WinME, and end up with Windows XP Home. See if you can keep you sanity going through this mess.
        (I could have been even worse, I could have asked to start the challenge at Windows 3.11 and end-up at Vista, but I would probably get arrested for violating international laws against torture just for suggesting this).
        And even if you managed to keep sanity you would probably not keep the hardware: at each major jump you'll end up noticing that your hardware is from a noname aisan manufacturer who since long went belly up and didn't bother writting drivers for the newer OS architecture. Requiring you to buy another piece of hardware from another manufacturer).

        For the record, the laptop on which I am writing this is happily running opensuse for more than 2 years now, each update being done simply by live-updating to the newer version - while the distro is still running and used at the same time.
        And 2 years ago, this laptop wasn't installed clean from scratch. I simply carried over the disk content from its predecessor. (Yup, try doing that with windows without entering a world of pain: you take a running Windows XP from one laptop, then yank out the disk, plug it into another laptop, and have it start. On linux, its mostly without problems. On Windows, your only hope is to clear huge part of the registry and configuration, to put it back into a "fristboot mode" where all the hardware is scanned again).
        And I've got probably desktop carrying over the same installation for much longer. I think the jump from 32 to 64 bits was the last time I did a fresh install, then kept simply ugrading over.
         

      • Re:NTFS (Score:4, Informative)

        by something_wicked_thi ( 918168 ) on Sunday May 12, 2013 @02:32PM (#43703407)

        Funny that when I upgraded my laptop from Windows 7 to Windows 8, the video stopped working, as did the accelerometer, and the bluetooth controller. Fixing the drivers required completely uninstalling all video drivers and reinstalling them. Even now, I've been unable to upgrade the video drivers in that computer past that one version I have working because new drivers cause it to BSOD.

        And then, masochist that I am, I upgraded my desktop computer. The sound didn't work anymore. Popped the sound card out and plugged it into my Linux desktop. Wouldn't you know, it worked fine. Reinstalled the driver. No go. Some people claim it's a problem with SoundBlaster sound card drivers on a machine that has a flash hard drive. But apparently it worked fine in Windows 7. I ended up having to use the built-in sound on that computer.

        None of this is to say that Linux is perfect and Windows is horrible. All in all, I've had more weird-ass hardware problems on Linux. But Windows is definitely not the panacea you make it out to be. I remember even as far back as upgrading from Windows 98 to Windows XP, the video card I had at the time didn't work at all on the new OS. There's a reason Microsoft publishes tools for checking if new versions of Windows will work with your hardware and software. It's because their shit stinks, too.

  • by korbulon ( 2792438 ) on Saturday May 11, 2013 @11:45AM (#43695795)
    People at M$ only innit for the money. Microsoft's got good people no doubt, but I am reminded of line from Chef in Apocalypse Now: "They lined us all up in front of a hundred yards of prime rib. Magnificent meat, beautifully marbled. Then they started throwing it in these big cauldrons. All of it. Boiling." That's Microsoft: boiled prime rib.
    • by shutdown -p now ( 807394 ) on Saturday May 11, 2013 @06:08PM (#43698097) Journal

      As a Microsoft developer, I find your comment deeply offensive. I am not in it for the money, but for an opportunity to work on interesting stuff [codeplex.com] together with smart people. It certainly helps when something that you really enjoy doing is also paid well, and they do pay well, but spending 8 hours of your life daily doing a job you hate just for the sake of money is a horrible way to run your life, and I'd never go there.

    • People at M$...

      Obligatory Penny-Arcade: http://www.penny-arcade.com/comic/2002/07/22 [penny-arcade.com].

  • by Anonymous Coward on Saturday May 11, 2013 @11:50AM (#43695819)

    These NIH type problems are hardly unique to Microsoft, or even proprietary software. It's human nature. Big success contains the seeds of its own destruction. Open source has the forking mechanism which provides an outlet against some of the worst abuses (only).

    • Re: (Score:3, Insightful)

      by gbjbaanb ( 229885 )

      But you'd expect a company that is joined-up, has significant managerial talent and expects to produce a good, core product to do a little better than continually produce internally-incompatible extras - what he said about cmd.exe not being upgraded and getting powershell instead rings too true for everything at Microsoft (he did forget cscript that appeared in between them, and no doubt there will be another one sooner or later). The same definitley applies to serious system components, I know the dev div

      • by Yaa 101 ( 664725 )

        Politics my friend, it is all down to politics, successful companies sooner or later create these little islands of power inside their organizations, when that happens nothings else ever happens.

        Everybody kills off anything that has the perception of breaking the status quo.

        The moral is to make your success vast while keeping your organization as small as you possible can.

  • And the retraction (Score:5, Insightful)

    by caywen ( 942955 ) on Saturday May 11, 2013 @11:54AM (#43695849)

    Sounds like the guy was just frustrated and venting. Lots of us do that sometimes, and this one seems ready made to please the slashdot crowd. But do read the retraction the guy posted.

    First, I want to clarify that much of what I wrote is tongue-in-cheek and over the top --- NTFS does use SEH internally, but the filesystem is very solid and well tested. The people who maintain it are some of the most talented and experienced I know. (Granted, I think they maintain ugly code, but ugly code can back good, reliable components, and ugliness is inherently subjective.) The same goes for our other core components. Yes, there are some components that I feel could benefit from more experienced maintenance, but we're not talking about letting monkeys run the place. (Besides: you guys have systemd, which if I'm going to treat it the same way I treated NTFS, is an all-devouring octopus monster about crawl out of the sea and eat Tokyo and spit it out as a giant binary logfile.) ...

    • by Anonymous Coward on Saturday May 11, 2013 @12:04PM (#43695925)

      The link's gone from HN, but it's still up here:

      http://blog.zorinaq.com/?e=74 [zorinaq.com]

    • Re: (Score:2, Interesting)

      by paulpach ( 798828 )

      Sure, people vent about frustrations at work. But you do that privately with your friends, family or select coworkers. You don't post something like that about your company on the web, embarrassing the hand that feeds you in front of the whole world. I am sure he did not think it would end up on Slashdot, but who's fault is that except his own?

      If I was his manager and knew who it was, I would fire him immediately. Otherwise I would be risking him "venting" again in the future and embarrassing me even f

      • Re: (Score:2, Insightful)

        by fredprado ( 2569351 )
        M$ is losing more and more of its competent developers to Google, Apple and other companies. It is in no position to start firing people for Internet posts. And no, they can't take legal action against him because of this post. The post was very generic, no specific information was disclosed.
        • It isn't just that either. 20 years of legacy code.(windows 95 is currently 18) The developers who wrote the original NTFS, WIN16, WIN32 subsystems, etc are growing old and retiring. Programmers don't like to document code and MSFT was worse than others at it as they were constantly trying to hide the way things worked to limit reverse engineering.

          Sure MSFT is moving away from win16, and win32 but so many depend on it(as recently as last year I installed customer software that was written for windows 9X

          • by epyT-R ( 613989 )

            Doesn't the .net runtime (and the rest of the runtimes ms has produced) run on top of win32? Win32 isn't going anywhere so long as windows stays relevant.

          • Interestingly, the guy in the original post also claims that "We do not ship code that someone doesn't maintain and understand, even if it takes a little while for new people to ramp up sometimes."
      • by Anonymous Coward on Saturday May 11, 2013 @01:18PM (#43696369)

        Why not? "The hand that feeds you"? What kind of corporate-slave joke world do you live in? The company owes him for his services just as much as he owes them for his salary.

        If you fired somebody who is allegedly one of the only good engineers in the organization what value would you have brought to the table? You can fire people who make you look bad? Why is it about you in the first place? It seems his complaints about Microsoft target the kind of attitude that you yourself have - that politics, punishment, and "managing up" matter more than real engineering work.

        If I was his manager I'd ask him to post the retraction a bit more publicly since its been buried under the initial criticism, but then I'd try and carve out areas where the barriers he described could be broken down and improvement could be made. I'd also reward incremental improvement and argue for my colleagues and managers to as well - whether that be a fool's errand or not.

        • Why not? "The hand that feeds you"? What kind of corporate-slave joke world do you live in? The company owes him for his services just as much as he owes them for his salary.

          Employment is a symbiotic relationship. The employer wins because he gets software (or labor in general) that it values more than the money it pays, the developer wins because he gets money that he values more than the time and work he gives.

          A person is employable as long as the company gets more value from employing him than without him. When he posts something like this, for many, the negative publicity means the employee is no longer worth the cost.

          He is no slave of the company, nor is the company a sl

          • by SomeKDEUser ( 1243392 ) on Saturday May 11, 2013 @03:34PM (#43697179)

            It is because of people who think like you that there is an isotherm of truth in companies. The grunts know. The middle managers suspect. The upper echelons are completely out of it. Eventually, the company drowns in its own shit.

            It needs not be like that: this dev did a great and good thing for MS: it made it impossible to ignore the truth. The truth was always there, knowing it changes nothing, except that you can now work on it.

            Incidental rant: private sector companies are much better at covering up the shit than public sector ones, thus the myth of private efficiency. But in reality, it is all about people like you who cover up the shit -- whereas in the public sector, you always have some incentive to uncover the problems: you can always blame your predecessor for political gain.

      • by meta-monkey ( 321000 ) on Saturday May 11, 2013 @01:18PM (#43696371) Journal

        No, I'd promote that guy (maybe put him in a position to have as many as four people working right underneath him). He cares enough to bitch.

      • by mysidia ( 191772 )

        If I was his manager and knew who it was, I would fire him immediately. Otherwise I would be risking him "venting" again in the future and embarrassing me even further. He is probably in violation of his employment agreements

        How do we know he/she isn't an Apple developer, slapping on the name Microsoft to hide his/her identity?

        • If I was his manager and knew who it was, I would fire him immediately. Otherwise I would be risking him "venting" again in the future and embarrassing me even further. He is probably in violation of his employment agreements

          How do we know he/she isn't an Apple developer, slapping on the name Microsoft to hide his/her identity?

          In the original post, he added a hash signature, that supposedly proves he works for Microsoft (I have no clue how though). It has since been removed.

          This was very stupid in my opinion, because with it, he could be identified.

          • by mysidia ( 191772 )

            Ok, but i'm supposed to be persuaded by a hash which supposedly existed -- which was removed, that could supposedly only be generated by a Microsoft employee, contracter, partner, or other entity with some level of read access to the Windows source code materials?

            And could only be verified by another person with similar acces.... and, they would be unlikely to pull the document to verify, as downloading the revision, could implicate them as an accomplice, when Microsoft's IT security will review the

      • by Frosty Piss ( 770223 ) * on Saturday May 11, 2013 @01:31PM (#43696431)

        If I was his manager and knew who it was, I would fire him immediately. Otherwise I would be risking him "venting" again in the future and embarrassing me even further

        So, you are the type of manager who runs a shop full of passive / aggressive "brogrammers" and are more concerned with being "embarrassed" than putting out a quality product? I take it that you work at Microsoft? Or would like to? You sound like you would fit right in!

      • by epyT-R ( 613989 ) on Saturday May 11, 2013 @01:43PM (#43696491)

        and with attitudes like yours, freedom dies a little more, and society becomes a little less tolerant of the truth, instead bottling up the incongruence between it and politics til the pressure blows out via the next weak link.

      • by just_a_monkey ( 1004343 ) on Saturday May 11, 2013 @02:46PM (#43696921)

        It is not his postings that embarrass his manager. It is not fixing the problems that does that.

      • Re: (Score:3, Interesting)

        by jbolden ( 176878 )

        What legal action would that be? Most likely he's an American. Criticism in the public interest is a first amendment right. Rights are not subject to contracts. In a legal action you would get mauled At this point Microsoft would be engaging in a policy of intimidation to cause employees to fail to disclose information in the public interest, their liability would be staggering.

        Fire -- don't forget whistleblower laws apply here too.

        Your reaction is why companies have HR. Because his little criticism

        • by Threni ( 635302 )

          Whistle-blower laws? Really? There's a public interest in knowing that some developers think their implementation of C11 could have been handled differently?

    • by AJWM ( 19027 )

      "but we're not talking about letting monkeys run the place."

      Wait, has he even seen the Steve Ballmer developers dance?

    • Sounds like the guy was just frustrated and venting. Lots of us do that sometimes, and this one seems ready made to please the slashdot crowd. But do read the retraction the guy posted.

      No, it wasn't venting and no it wasn't there to please the Slashdot crowd. People are at their most truthful when they go off-the-cuff, and this was most definitely off-the-cuff. The hasty attempt at a half-retraction tells you that. He's bang on regarding systemd, however.

  • Poor Management (Score:5, Insightful)

    by rudy_wayne ( 414635 ) on Saturday May 11, 2013 @11:55AM (#43695855)

    All of the problems listed there are the direct result of poor management.

    Accepting an outside patch makes your lead angry because . . . .
    makes test angry because . . . .
    and PM is angry because . . . .

    There's just no incentive to accept changes from outside your own team.

    When this happens, the manager who is in charge of all those people steps in and says "You will co-operate and get things done, or else you will no longer work here". Sadly, too many managers are too lazy and/or gutless to do this.

    • The problem is that it goes all way up to Ballmer.
    • Efficient fix tracking and evaluation and merging and testing is all part of the ordinary workflow of any software development organization. Whether the proposal comes from one of the devs or a customer or a completely random person doesn't fundamentally matter, it's still simply code to be managed. In all cases the ordinary workflow routinely has to make decisions, based on merit and opportunity and risk and backward compatibility and all sorts of factors, about how and when to incorporate the proposed f
    • by leuk_he ( 194174 )

      The problem is then shifted to measuring lines of codes produced to measuring co-operation scores. The Lower level mananager will then optimze their processes for the optimal coorperation scores. And you have new problem instead of solving the other. And no good manager will start to kick out talented people because they fail on something that is not their main business, and do their job "ust good enough"

      Most project work with business goals that have to be solved within a plannable period. That is what yo

    • "You will co-operate and get things done"
      That goes against the grain of how things are done at MS. They rather foster and adversarial environment within your team - competing rather that cooperating.
      See: Vitality curve aka Stack Ranking.
    • Re:Poor Management (Score:4, Interesting)

      by Afty0r ( 263037 ) on Saturday May 11, 2013 @01:53PM (#43696553) Homepage

      When this happens, the manager who is in charge of all those people steps in and says "You will co-operate and get things done, or else you will no longer work here".

      Actually, to do this would demonstrate very poor management skills - a good manager doesn't just tell people to do things while leaving a broken system in place.

      A good manager would modify the work environment in order to incentivise the staff to act in a way which is more in line with the business goals (advancing the kernel) - then they would explain these changes and why they were making them to all involved.

      Shouting "DO YOUR JOB" at people has a curiously poor track record for making people, y'know, actually do their job.

    • by Skreems ( 598317 )

      When this happens, the manager who is in charge of all those people steps in and says "You will co-operate and get things done, or else you will no longer work here". Sadly, too many managers are too lazy and/or gutless to do this.

      What incentive does the manager have to do this? He's the one responsible for setting all those goals that an unplanned patch is putting at risk, and he's doing it because he's on the hook for shipping certain features by a certain date. This unplanned, extra-team patch is in his

  • by mha ( 1305 ) on Saturday May 11, 2013 @12:03PM (#43695923) Homepage

    I submitted this story. I am only human - what was I thinking? I guess I thought of the many strange comments I could elicit...

    I am so sorry, guys. I must say that shortly after reading the story reason set in (but I was too quick on /.) - there is nothing unexpected in it. It is no big deal. It is a non-story. Everything described is not "Microsoft", it is human, including the complaints. I don't think the points are invalid, it's just that one can make a long list like this for ANY large (or even medium) project. Life is messy - but I got my first story submitted (which means nothing).

    My apologies.

    I just hope that the guys managers, should they find out, react maturely - by doing exactly nothing (at least no punishment). Stuff like this happens, and if it does so only once it should be overlooked.

    PS: On the other hand, enough people voted this to the front page...

    • by TheGoodNamesWereGone ( 1844118 ) on Saturday May 11, 2013 @12:14PM (#43695981)
      I've never thought the people at M$ were stupid, or incapable. Their problem is that the company's run by marketers instead of engineers. I'm with you; this guy was just venting his frustrations.
      • by Sulphur ( 1548251 ) on Saturday May 11, 2013 @12:39PM (#43696151)

        I've never thought the people at M$ were stupid, or incapable. Their problem is that the company's run by marketers instead of engineers. I'm with you; this guy was just venting his frustrations.

        Gates, Allen, and Ballmer : The Three Marketeers

      • by DogDude ( 805747 )
        Their problem is that the company's run by marketers instead of engineers.

        ... as opposed to what great software company that's run by engineers...?
      • by gtall ( 79522 )

        The problems the fellow mentioned are not caused by marketers. They are caused by a management culture that came out of the pointed little head of Bill Gates. He more or less built a disfunctional company because he didn't know how to manage. Ballmer is similar in that respect; when he took over the reins and didn't realize the problems this fellow mentioned and failed to fix them if he did, then it is as much his fault as Gates.

    • Re: (Score:2, Insightful)

      by symbolset ( 646467 ) *

      PS: On the other hand, enough people voted this to the front page...

      I have discovered recently that it's not as hard to get a submission accepted to the /. front page as it once was.

    • by ShanghaiBill ( 739463 ) * on Saturday May 11, 2013 @12:55PM (#43696223)

      It is no big deal. It is a non-story. Everything described is not "Microsoft", it is human

      Yes it is a story, and it is interesting. Of course it is human nature, and all organizations have these problems. But successful organizations overcome these problems. Organizations that don't overcome these problems fail ... except for Microsoft. What makes Microsoft so fascinating, is that it is only successful because of some early chance opportunities that allowed it to establish customer lock-in, and this has allowed it to succeeded despite being utterly dysfunctional. Microsoft has not only failed to overcome these human problems, but has wallowed in levels of backstabbing, empire building, and technical incompetence that would have destroyed any less endowed organization. Anyone interested in organization behavior should look at Microsoft as a fascinating outlier that breaks all the rules, yet still survives.

      • Spot on.

        I haven't followed biz history very much, so as I cast about for other companies that fit the bill you portray, I'm left with...
        Microsoft is a one-off. (There was the old British East India Trading Company or something, might've come close?) And you're right, it would, or will, make for a fascinating study, especially if anyone could gather enough of the pieces (people, projects, politics, decisions) to put it together.

        Apropos of little, I do know that every time I poke around their research, I co

        • There was the old British East India Trading Company or something, might've come close?

          The East India Company [wikipedia.org] is certainly a fascinating one-off, but in completely different ways. It not only lasted for centuries, but even raised armies and waged war in its own name. Other corporations with a need to plunder and loot have co-opted a nation state to wage their wars for them.

    • It is normal for a lot of companies, but most companies are not so huge that they are about to topple over under their own weight of different, and incompatible, divisions layered side by side fighting for position.

      It also matters because Microsoft is still a very important company.

      Its things like this that I, as a manger, would like to hear - sure its all venting anger, but there's always some grains of truth behind it. And my job would partly be to figure out those grains and fix the problems causing them

  • by Greyfox ( 87712 ) on Saturday May 11, 2013 @01:07PM (#43696307) Homepage Journal
    I never see anyone working to improve the quality of already working code. Unless it's actually not doing the job intended, no one will ever revisit that code. If something needs to be added to it, they'll go do that and everyone will probably hate working with the code because the design sucks, but no one will think to improve the design. If you told them they could, they'd look at you like some strange alien monster.

    If a project has enough churn, you can actually justify cleaning up design, interfaces and even entire subsystems in some cases. If all you do is make each piece of code you touch suck just a little bit less, you'll hate having to work on that code less and less over time. All you have to do is look at the code and think "it doesn't HAVE to be this way!" If that old application everyone hates has gotten to the point where it requires a full time position just to maintain it, there's usually no reason why the design couldn't be improved along the way. My goal in maintenance positions is to eliminate the need for that job. There'll always be SOMETHING that needs maintenance, so I don't feel bad about doing so.

  • by buybuydandavis ( 644487 ) on Saturday May 11, 2013 @01:36PM (#43696453)

    From Pournelle's web site:

    Pournelle's Iron Law of Bureaucracy states that in any bureaucratic organization there will be two kinds of people":

      First, there will be those who are devoted to the goals of the organization. Examples are dedicated classroom teachers in an educational bureaucracy, many of the engineers and launch technicians and scientists at NASA, even some agricultural scientists and advisors in the former Soviet Union collective farming administration.

    Secondly, there will be those dedicated to the organization itself. Examples are many of the administrators in the education system, many professors of education, many teachers union officials, much of the NASA headquarters staff, etc.

    The Iron Law states that in every case the second group will gain and keep control of the organization. It will write the rules, and control promotions within the organization.

    *** Finding a way to effectively deal with bureaucratic capture of institutions is probably the number one human problem.

    • Re: (Score:3, Insightful)

      by gweihir ( 88907 )

      Indeed. And the bureaucrats believe firmly they the more time of others they can "bind" (i.e. make them waste it against their wills by processes, forms, committees, etc.), the more important they are. These people are natural parasites that try to take over the host slowly, but permanently. Unfortunately they are typically slow enough that the host takes a long, long time dying. Prime example: The former USSR.

      While bureaucrats are amoral (i.e. devoid of any morality and ethics, be it good or bad, and as su

    • by Tom ( 822 )

      *** Finding a way to effectively deal with bureaucratic capture of institutions is probably the number one human problem.

      Ancient Athens had it solved, and the solution is incredibly simple: No career bureaucrats, no career politicians.

      Everyone in the athenian administration was basically the equivalent of a conscript. Part of being a citizen was the duty to serve a few months in the administration every few years.

  • by Error27 ( 100234 ) <{error27} {at} {gmail.com}> on Saturday May 11, 2013 @02:54PM (#43696979) Homepage Journal

    I am a fairly active linux contributor. I have patches all over the kernel tree. I also review drivers/staging code.

    Most of the patches that I send are things that I cannot test because I don't have the hardware. Even though I'm careful, there are still a few times where I have introduced bugs. The most recent example was code like this "if (!attributes & 0x4000)". That has a precedence bug so the condition is always false. Unfortunately changing it to "if (!(attributes & 0x4000))" disabled certain graphics card. The correct thing was to delete the condition.

    Breaking stuff is just a part of development, you try your best but don't let fear of breaking things stop you from applying patches.

    Probably over 5% of the 10,000 patches in every new kernel are cleanups. We're always merging API changes and unlike Microsoft we don't care if it affects out of tree drivers. There isn't any subsystem where the owner says, "This code is stable now and I'm only accepting actual bug fixes."

    The other thing that helps is the short release cycle. If something does break, it's easy to fix.

    Some people find linux development frustrating. One developer told me, "Ever since XXX took over the YYY subsystem he has been constantly changing the API and re-writing my code. Does he ever sleep? I don't know how anything works any more."

    It's hard on reviewers as well. I have reviewed literally over 3000 cleanup patches to the comedi subsystem. I have mornings when I feel lazy and it doesn't fill me with joy to see 40 new cleanup patches in my inbox. The process is expensive.

    But I do feel a great deal of pride in the work.

  • The first rule of the internet is that everything is true, and that if somone says they are something then it must be so, like me, im a astronaut on a super secret mission to be the first to land on mars, go me...we launch in 2017, but you wont know it, it will be disguised as a satellite launch.

    I must say though, anonymous person posting over tor does leave a little credibility to be desired. Of course i remember the first rule of the internet, how can i not, its the only truth out there, but if i was trul

  • by EmperorOfCanada ( 1332175 ) on Saturday May 11, 2013 @04:05PM (#43697333)
    It sounds like MS has become like most IT departments in the world; the department of NO.

    Generally IT people are operating under a a system where they are brutally punished if things go wrong, are vaguely rewarded if they do what someone wants, and not rewarded for doing things that people don't understand (like simplifying the usage of VPNs). So these IT departments see any change requests as increasing the possibility of disaster and thus bad. This results in a combination of refusing to adapt to the company's needs as both dictated through employe requests and through changing technology. This is evidenced through many larger older organizations still running a bunch of SUN servers or a Novell network.

    But it is often far more vicious where you have IT people actively reaching out into the company and telling them what technology they may use and how they might use it. One advantage of the iPhone over the Blackberry was that generally iPhones were impossible to ruin through "Corporate Policy" and BlackBerries could be completely neutered through an easy to use interface. But out of control IT people need not fear for long as horrible companies came along to give them the tools to mangle even the iPhones.

    IT people might blah blah about corporate security and various data management laws but the simple fact is that if companies don't exist for the sake of their IT departments. IT is a tool that most companies use to achieve their core goal. Yet you have IT departments treating say the head of marketing of a $20 billion dollar company like an infant "for his own good". Where I find it interesting is when IT meets the President or the CEO. Often the president will say something like "I don't want to change my password every 30 days" The IT people don't dare pull the "corporate policy" card but resort to whining about the rational with the CEO concluding, "I'm going to change my password at the exact same frequency that I change the head of IT. So set things up accordingly."

    Again this is not all because IT is filled with evil trolls but because their rewards are structured incorrectly. The best run companies that I have ever seen structured IT really well so that when some guy comes in with his Vic-20 and wanted to use it for presentations they either showed him how bad an idea it was or made it happen but then billed his department for the effort. Saying NO just wasn't something they were insented to do. The result was the more stupid the requests from various departments the more budget that went to IT. This way you don't cut ITs budget you told the various department heads to be less stupid with their money.

    Back to Microsoft. It sound like MS has created a similar case of fiefdoms that have perverse incentives that are not aligned with the basic goals of the company. I know in the old days of MS they would hand out stock options like candy. This resulted in many people becoming insanely rich. Maybe they need to go back to that same structure. If a small department does something extraordinary they get some big bucks. This would have to be carefully managed as I can see a few superstar programmers doing the heroic only to watch their manager pull up in a new Porsche on Monday and for them to quit on Tuesday.
  • Code turns to crap with indenting screwed up and code which nobody knows the purpose of. Nobody wants to fool with it because of the risk.

What hath Bob wrought?

Working...