Hacker News new | past | comments | ask | show | jobs | submit login
Q: How is software created at Microsoft? A: Very slowly (from the horse's mouth) (msdn.com)
10 points by henning on Feb 13, 2008 | hide | past | favorite | 13 comments



I guess this is why they have been unable to understand the internet, they live in an era were software was written by big groups of people and getting them to communicate meant having meetings.


I've been reading a book called Microsoft Secrets. It is a very dull book so you'll appreciate the summary.

Microsoft works on an industrial division-of-labour principle. It also works on the assumption that bugs ("defects") are enevitable. Indeed, the quantity of known bugs can be used to track the progress of a product. A product with numerous bugs gives a bad reputation and has poor sales. Products with very few bugs are more expensive to produce and users are reluctant to upgrade to subsequent versions. Ignoring the economics, there is a engineering approach to managing emergent complexity.

You'd get most value from this book by comparing it to The Mythical Man Month. There is a strong correlation with the theory in the Mythical Man Month and the observed practice in Microsoft Secrets.

I only bought Microsoft Secrets as a gift for a former manager. However, I subsequently discovered that he was a former Microsoft employee. Sometimes a gift can be too appropriate.


The Internet was created that way too...


Ah, usually before the planning phase there is a pre-planning phase that takes weeks. During that time the group tries to identify all the people that need to be in the planning meetings.

I actually worked in a place that developed software this way. The smallest of projects would take over 8 months. Large projects would take close to 5 years.

Any project that took over 1 year was likely to get canceled. The budget would usually look different the following year, the business priorities would shift or the technology stack would be obsolete.

I was in meetings over 90% of the time. Often meetings had to be scheduled during lunch time since it was the only time everyone was available.


I highly recommend Show Stopper!: The Breakneck Race to Create Windows NT and the Next Generation at Microsoft http://www.amazon.com/Show-Stopper-Breakneck-Generation-Micr...

Fun drama like a C++ programmer spending months to get a simple window to appear on screen (e.g. building the Win32 API). Dave Cutler from DEC throwing things.


"In the last few weeks I have literally had a few meetings every single day, in order to get the spec right, plus I sent dozens of emails per day."


"I love seeing a document get bigger and bigger, more detailed and with more things written inside."

I love how it's sprinkled with Microspeak as he describes this soul-draining bureaucracy: "cool", "great", "passion", "innovate", "exciting". They're really passionate about meetings, emails, and bigger and bigger documents over at Microsoft.

And on being able to start with a blank page for this spec that he's spending so many hours in meetings and writing emails to put together, rather than having to fill out a form, he says, "I don’t know about you, but I really love this kind of freedom!"


Dude, he's an intern, and he's learning. It makes a lot of sense for him to try and participate in the culture during his short time there. There is always lots of time for cynicism afterwards.


Compare that to the shuttle design where lives are on the line and the software has to just work. The microsoft spec approach is really to just ``wing it''


In the space shuttle, almost every bug could kill an entire crew. For Microsoft, a bug may cause a desktop to crash. Arguably, Microsoft wastes the most potential because many millions of instances of Microsoft software repeatedly waste a few minutes of people's lives.

The difference is that Microsoft is able to externalise almost all risk and accountability. The same principles of "defect management" are applied to aerospace hardware and Microsoft software. The only difference is the acceptable threshold for bugs. For the space shuttle, bugs are minimised until the budget is exhausted. For Microsoft, bugs are minimised until it costs less to to say "Oh, heck. Just ship it."


One thing you forget: If MS where to remove all the bugs nobody would buy their software, as it would cost 10-20 times what it cost today.


The marginal cost of selling software is $.00 pretty much. So MSFT operates on a what-the-market-can-bear approach, not a costco-style mark-up-everything-10-percent appraoch.


You are implying there is some relation between the price of Windows and the amount of work that goes into it. Given the size of their war chest, one could argue that they already charge much more than their software costs to produce.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: