Slashdot Mirror


How Microsoft Develops Its Software

crem_d_genes writes "David Gristwood has a post on his blog that notes '21 Rules of Thumb - How Microsoft Develops Its Software', on which he will elaborate at TechEd in Amsterdam next week. It was derived from interviews with Jim Mccarthy, also of Microsoft. Gristwood: 'As someone who has been involved with software development for over two decades, the whole area of how you actually bring together a team and get them to successfully deliver a project on time, is one worthy of a lot of attention, if only because it is so hard to do. Even before I joined Microsoft, ten years ago, I was interested in this topic, having been involved myself in a couple of projects that, I shall politely say, were somewhat less than successful.' Tips include such features as 'Don't know what you don't know.'; 'Beware the guy in a room.'; 'Never trade a bad date for an equally bad date.'; and 'Enrapture the customers.'"

38 of 816 comments (clear)

  1. Enrapture the customers by ideonode · · Score: 5, Funny

    Enrapture the customers

    Shouldn't that be shrink-wrapture the customers?!

    1. Re:Enrapture the customers by amightywind · · Score: 4, Funny

      Enrapture the customers

      He means to say "capture the customers."

      --
      an ill wind that blows no good
  2. Me thinks by Anonymous Coward · · Score: 0, Funny

    They will never make it without open source. No one will even take them public, and I am still waiting for the day when Microsoft hits at least 1 million dollar in revenue for the quarter.

    Only open source represents a viable business model, ask Mandrake, Caldera and VA Linux.

  3. Dates by canfirman · · Score: 3, Funny
    7. Never trade a bad date for an equally bad date.

    I guess that's proof that M$ programmers actually go on dates!

    --
    It is not our abilities that show what we truly are... it is our choices.
    1. Re:Dates by andhravodu · · Score: 2, Funny

      ah, so that's why the anti-MS tirade on /. I am starting to understand it all now. i'm such a genius

  4. By chance... by artemis67 · · Score: 3, Funny

    does it have anything to do with "an infinite number of monkeys"?

  5. Re:Microsoft develops software by justkarl · · Score: 2, Funny

    Why do you think new XP updates come out all the time?

  6. Re:Microsoft develops software by strictnein · · Score: 4, Funny

    With its eye's closed...

    Come on... you got the correct form of "its" but you screwed up on the plural form of "eyes"?

    You can do better...

  7. Re:My post by heinousjay · · Score: 3, Funny

    The quote is correct, but only for certain degenerate values of correct. You have to get yourself deep into managerspeak before something like that can be accepted with a good conscience.

    Caveat: I am a developer, and I am aware that the only software that has zero bugs is unwritten software.

    --
    Slashdot - where whining about luck is the new way to make the world you want.
  8. Re:My post by tlhIngan · · Score: 5, Funny

    I never thought "too much money on hand" is a problem, at least to me. It usually is the other way around.

  9. How they develop? That's easy... by fail_miserably() · · Score: 1, Funny

    first they make diagrams using fisher price blocks, then they write their first prototype on an etch-a-sketch. If that etch-a-sketch sand holds firm under 'rigorous' testing standards, it's ported to windows under VB and released for the masses!

  10. Re:21 eh? by ch-chuck · · Score: 2, Funny

    that's the highest he could count with his shoes off and pants down

    --
    try { do() || do_not(); } catch (JediException err) { yoda(err); }
  11. The REAL story by revery · · Score: 4, Funny

    All we know for sure that is that when Microsoft needs a new product, Bill Gates goes into his High Tower of Closed Sourcery with 15 sheep, Steve Ballmer, a technology company with an established product, and an Enya CD.

    When he emerges, two months later, the new MS product is ready for market, the sheep have been trained as VP's, and the technology company is dead.

    --
    http://www.livejournal.com/users/gymbrall/

  12. Re: That loud slurping sound by Anonymous Coward · · Score: 1, Funny

    we all heard was XeRXeS-TCN furtively lapping up some karma points by doing some brown nosing.

  13. Microsoft imitates Rummy by schmaltz · · Score: 3, Funny

    "1. Don't know what you don't know.

    It is essential not to profess to know, or seem to know, or accept that someone else knows, that which is unknown. Almost without exception, the things that end up coming back to haunt you
    ..."

    Did anyone else think of Rumsfeld's infamous mindfart (for which he won a Foot in Mouth award) --

    "Reports that say that something hasn't happened are always interesting to me, because as we know, there are known knowns; there are things we know we know. We also know there are known unknowns; that is to say we know there are some things we do not know. But there are also unknown unknowns -- the ones we don't know we don't know."

    Eerie.

    --
    Big Daddy, Johnny, Burp, Aunt Zelda, Scott, Slurp, Big Momma ... where's Siggy?
  14. Microsoft's flowchart by Anonymous Coward · · Score: 1, Funny

    Start
    |
    Alpha version
    |
    Enough bugs? - No - Add features
    |
    Yes - Create a separate product to deal with it
    |
    Beta version, release as golden master
    |
    Stop

  15. How MS makes software by IWantMoreSpamPlease · · Score: 4, Funny

    is much like how sausages are made:

    Best not to know how.

    --
    So rise up, all ye lost ones, as one, we'll claw the clouds.
  16. It's not the guy in the room by FraggedSquid · · Score: 2, Funny

    It's the guy(s) in the board room I'd worry more about.

    --
    You don't need a lab to make mud.
  17. Re:Worth considering... by gyratedotorg · · Score: 5, Funny

    I don't think anyone would stoop so low as to say they put out the WORST product out in the market.

    well, ill say one thing. microsoft's windows me was definately one of the best operating systems around when it came to drawing white text on top of blue backgrounds.

    --
    Gyrate Dot Org - "Where high-tech meets low-life"
  18. Re:My post by cabazorro · · Score: 2, Funny

    I guess If a definition confuses people then..the definition sucks!
    No wait.
    "The Zero Defects definition has "Zero Defects""

    --
    - these are not the droids you are looking for -
  19. Re:#11: Build it every day by turgid · · Score: 2, Funny
    So true. And "in a public place" is definitely an important part of that - when a build fails, everyone should be able to see the compilation error.

    Another nice technique is to send a derogatory email to the person responsible cc'd to the entire company insulting his/her sexuality, ethnic background, football team, choice of clothes and lack of education and haircut and anything else you can think of.

  20. Rule (-1) by jbeaupre · · Score: 2, Funny

    -1) DOS isn't done until Lotus won't run. True or not, it sure seems like it. Anyone wonder about XP-SP2?

    --
    The world is made by those who show up for the job.
  21. Re:Zero defects my ass by MarkGriz · · Score: 4, Funny

    "NT 4 shipped with 65K defects?"

    There were probably more, but they rounded down to avoid the "integer out of range" error in their bug tracking software.

    --
    Beauty is in the eye of the beerholder.
  22. One to rule..... by Anonymous Coward · · Score: 1, Funny

    If it compiles, it ships.

  23. Re:Professionalism by xanadu-xtroot.com · · Score: 4, Funny


    Humans were not meant to sit in cubicles all day long, Michael.

    --
    I'm not a prophet or a stone-age man,
    I'm just a mortal with potential of a super man.
  24. Re:Microsoft master plan! by Kenja · · Score: 1, Funny

    My gods, your RIGHT! This whole Windows thing is a blatant rip off of KDE. And I just noticed that Solaris uses the same style of CLI that Linux pioneered.

    --

    "Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
  25. Re:You could not be more right. by Speare · · Score: 2, Funny

    A Lieutenant was radioing in a field report to the Major back at the base. "Sir, we have some problems here and..." The Major cut off the Lieutenant, saying, "Don't say 'problems' on the radio, son. It's best to think of them as 'opportunities.'" The Lieutenant, looking at the exploded husk of his jeep on the side of the road, yelled into the radio, "Sir, we have some insurmountable opportunities here, and..."

    --
    [ .sig file not found ]
  26. Re:Portability is for canoes? by FuzzyBad-Mofo · · Score: 4, Funny

    Say, what kind of music do you play at this bar?

    Oh, we have both kinds, Country and Western!

  27. Re:ooo by Anonymous Coward · · Score: 1, Funny

    And "lock in" is for prisoners...

  28. Re:What's with #6? by Anonymous Coward · · Score: 1, Funny

    Watch it pal. I am an ex-frat boy who is also a professional software developer!

  29. Re:What's with #6? by upsidedown_duck · · Score: 2, Funny

    ...ask that Twinkies and Coke be left outside the door. They didn't see him for a week...

    Beware of the bucket in the corner.

    --
    -- "Makes Little Debbie look like a pile of puke!" - Moe Szyslak
  30. Bad dates by sbjornda · · Score: 2, Funny
    'Never trade a bad date for an equally bad date.'

    So here's one advantage of being a programmer at Microsoft: At least you get dates, even if they are bad ones.

    --

    .nosig

  31. Re:Okay, I'll bite this troll by Anonymous Coward · · Score: 1, Funny
    just as Linux can be more unstable than Windows 95 when it's in the hands of someone that doesn't know what they are doing.
    Or has a sound card... *duck*
  32. Obligatory Python Reference by Psymunn · · Score: 2, Funny

    We are the tech support that say 'NI'
    Now go fetch me a radeon or i shall say 'NI' to you...

    --
    The Neo-Bohemian Techno-Socialist
  33. My Synopsis (sorry for redundancy) by RALE007 · · Score: 2, Funny
    Shipping great software on time is a difficult but not impossible task.

    Then why doesn't MS do it? For any MS fanboy who insists some of their software is great, what about the majority of it? Mediocre maybe?

    Get to a known state and stay there.

    Instability? FUD? Monopolistic practices? Insecurity? Bloatware? et cetera....

    Organize the project around the concept a reaching milestones with zero defects. Zero defects does not mean that the product does not have bugs, or missing functionality; it means that the product achieves the quality level that had been set for that milestone.

    Great, so zero defects doesn't mean zero defects, it means some intangible level of acceptable defect. Hm, sounds like a redefinition of language to have the meaning of words fit the state of their software.

    Slipping is what happens when information that was unknown becomes less unknown.

    Don't not unknow that which is known to be non-unknown knowingly..... Nothing against MS here this guys just sounds like a shmuck.

    The product should be built every day, along with all setup scripts and on-line help, in a public place, where QA can conduct appropriate assessment of daily status, and the entire team can observe progress or its lack.

    Why that sounds more like a bazaar than a cathedral.

    Portability is for canoes...the complexity of multi-platform support is beyond the reach of most development organizations...build your product on the absolute fewest number of platforms possible.

    Multi-platform support is beyond the capabilities of MS, not most development platforms. This is exemplefied by Linux, BSD, Gnu software etc.

    Enrapture the customers. Most software is a renewal business. Customers buy multiple releases over a relatively long period of time. As a consequence, the market has a deep understanding of your software and its flaws, and your organization and its flaws.

    Entrap the customer. They understand your software and its flaws, and your organization and its flaws. Make a token effort to alter the most obvious ways we're screwing the consumer and they'll thank us for only buggering them half the time we were before.

    Establish a shared vision.

    I'm establishing a vision of a penguin dancing on Bill Gates head. Is it working yet?

    Get the team into ship mode.

    Tell development the product is being released, ready or not.

    Everybody (or nearly everybody) must believe that achieving the milestone is possible.

    Ignore whistle blowers, we're releasing.

    All members of the team must understand precisely what they must do prior to shipping. All unknowns are factored out.

    We don't know if that glaring flaw in our software will be exploited, factor the unknown out.

    The goal is an acceptable quality level at ship time.

    Noble words, however based on past releases, an acceptable quality level defined by MS is extremely lacking.

    Understand the range of quality that is acceptable to your customers.

    Will they still buy this steaming pile of...

    How many low priority bugs did your product ship with last time? Was it a problem?

    Did they take the last steaming pile of...

    Are the customers better off with this product including this bug?

    Are we better off with the customers money now at the risk of disrupting their lives with our steaming pile of...

    Since destabilizing the software is more of a problem than most bugs, be very careful about which bugs you fix.

    Don't fix bugs, it might make our software buggy.

    This is why we have "ReadMe's" and bug lists.

    Releasing buggy software is ok, just let them know after the fact in some obscure reference and our hands are clean of responsibility.

    Well, if there were any doubt in my mind left as to why their products could be so horrible, getting an idea of their development method pretty much removes it.

    --
    Beware blue cats moving at .99c
  34. Re:You could not be more right. by igny · · Score: 2, Funny
    to never use the word "problem" and instead use the word "issue."

    Redmond, we have an issue.

    --
    In theory there is no difference between theory and practice. In practice there is. - Yogi Berra
  35. Rule #1 ... by evslin · · Score: 2, Funny

    If it compiles, ship it?

  36. Re:Okay, I'll bite this troll by dedazo · · Score: 2, Funny
    Hahaha, I love it when the retarded zealots tell me my machine is somehow dying and I haven't noticed. Yeah, I was looking out for BSODs and missed the reboots!

    bwahahahaha!!!!!

    My god.

    --
    Web2.0: I love when people Flickr my cuil and digg my boingboing until my google is reddit and I start to yahoo