Why Can't Microsoft Ship Open Source Software?

If you’re right that MS has never shipped open source software with their boxed products so far, I wouldn’t bet that they never will. Bill Gates, who’s never been found of open source, is now out, while Scott Gu and other more open minded people are already making stunning progress in the dev department, with the release of several open source or shared source products, some of which can even run on other platforms than Windows and be used with other APIs/lib than MS ones. A few years ago, it would have been unimaginable.
I wouldn’t be surprised if in 10 years, half of what MS releases has open source stuff with compatible licenses included in them.

You may have been right a few years ago, but EVERYTHING is changing inside the Big Blue Monster. They get it more than you realize. It just takes a while to turn a ship this large.

Here’s a nice quote by Bill Gates:

Open source, he said, creates a license ‘so that nobody can ever improve the software,’

Taken from this Wired article:

http://blog.wired.com/wiredscience/2008/04/bill-gates-what.html

Shows where the company gets their philosiphy…

And let’s not forget MSBuild, a convoluted clone of NAnt.

As I see it, Microsoft has at least two major reasons to behave like this:

  1. The potential to achieve a better integrated experience for the developer/user.

Whether they actually will accomplish this isn’t known for sure when they decide to take this path. If I had lots of money, lots of smart developers, I might be confident, too.

  1. When you’re small and poor, you go unnoticed. When you’re big and rich, everyone wants a piece of you.

The decision maker has to consider litigation and reputation risk vs. risk of reduced sales (technically inferior or superior is a corollary only). Perhaps accepting the technical penalty of reinventing the wheel poorly is offset by not having people sue you to release your source code? Or scaring off conservative Fortune 500 customers who themselves are iffy about open source? And there’s always the expectation that you can invent a better wheel…

I would imagine, too, that the decision makers are wiser in the affairs of litigation/business/marketing than the pitfalls of ambitious software projects (unconscious weight to concrete risks vs. vague risks?). Maybe they listen to their top engineers for advice… but how many engineers emphasize the risk of failure at the outset of a project?

Personally, i don’t find it very hard to understand. As a company you don’t want to rely on things you can’t control and that cannot give you an advantage over you competitors.

By the way, can you please get your em-dashes right? The double hyphens puninfuriate/intended me.

@ScottHa.

For every group that gets it inside of MS, there are 10 that don’t.

http://code.msdn.microsoft.com/sourceanalysis/Thread/View.aspx?ThreadId=402

We won’t ship opensource either. Look at the terms of use of most of them. We don’t allow others to look into our code. With most opensource components, you must either ship your product as opensource or buy a license. So including opensource would force mircosoft to be nearly completly opensource. thats not good for a company.

Opensource is mostly done at companys with a financial mess. Look at sun. After the losses the put more and more things to opensource and have make more job reduction (march they announced to fire 2500 developers). Sure, OpenOffice is free. At the cost of many job. You won’t see Star Devision developers working at sun. Sure, the number of opensource apps increase. But … the number of good opensource software with a good end customer support is still low. And many opensource developers are disappointed at some point (see nDoc) and get back to real work to earn some money.

Why on earth should this infuriate anyone? If MS wants to throw their resources at reinventing a package that you don’t need, well, then, don’t buy it!

Or is Ryan D. upset that MS is (god fobid!) making money off their reinvented wheel?

I’ve contributed to Open Source, and I even have some stuff of my own that I offer free - but I have never understood the mindset of the OS zealots.

Then again, I’ve never understood not wanting to make money, either…

Re-Invent the Wheel is the stupidest trite comment ever. I find it’s use offensive in an industry of engineers.

Sometimes, when you are designing a car (tfs)… a better wheel or just a branded wheel makes sense. Innovation in making a BETTER wheel exists. If your company needs a wheel for it’s new car… you are not going to just use http://en.wikipedia.org/wiki/Image:Wheel_Iran.jpg .

These are not the same:
http://en.wikipedia.org/wiki/Image:Wheel_Iran.jpg
http://www.roadsters.com/wheels/
http://www.dmcustoms.net/#

I think if you use the phrase Don’t re-invent the wheel you aren’t an innovator and you will never be able to make a better wheel.

ps: Another poster had it correct, John Lam explains why iron ruby will never be on any product cds but available for download as a plug-in on his last .net rocks appearance.

If there are so many legal risks with shipping open source software, why apple isn’t being sued?

Why wait for Microsoft to go open source? Get the products you need from other places.

Isn’t MS rightfulyl afraid to have their devs looking at open source code? All it would take is for a few lines of that to get into, say Office and if it’s ever found…well, lts just say the GPL is MS’s biggest fear.

[Dr.Pepper] tastes like Carbonated prune juice. Bah! That’s what it used to taste like. Today it is but a ghost of its former self.

It seems to me that Dr.Pepper changed the formula sometime in the mid 1960s to expand their market outside the southern USA. When they did that they dumbed down the intensity of flavor, reduced the sweetness and increased carbonation. In other words, they ruined it.

Few of you young whippersnappers may recall that you could, and I did, drink Dr.Pepper in its original formula hot. Make mine with lemon, thank you. Alas, since the formula change I haven’t had a Dr.Pepper since.

otherwise it is assumed you are not practising any intensive form of branching and merging if you find VSS a pure joy to use

If you’re practicing any form of merging, you can’t reasonably find SVN to be a joy to use, let alone a pure one.

The only ways I found to have VSS be a pure joy was either to not code or not use VSS.

VSS has given us file locks

VSS hasn’t, and you can ask it to be lock-less. I found it even more painful than locked mode though, since the tool isn’t tailored for that.

Actually, I think a large part of this is to do with the Security Development Lifecycle (SDL). A real assessment of including any open-source component, as for including any third-party component, is going to be, how are we going to deal with security problems in this component?

Read for example Larry Osterman talking about ‘giblets’ (as Microsoft refer to them) at http://blogs.msdn.com/larryosterman/archive/2008/03/07/the-trouble-with-giblets.aspx.

Microsoft can’t figure out open source for probably the same reasons we still have CHKDSK as a kick-a$$ system utility STILL as a part of Windows. You’d think that their wise management would focus on Microsoft’s strengths (development tools and OS) to dominate the market. Now they are losing marketshare to OS X and XCode (which, arguably, is a much better dev. environment than Visual Studio - based on the merits of RAD).

Instead, we have Visual Studio which gulps down almost a gig of RAM at launch and needs a 10,000 RPM hard drive to run decently. Heck, why not burn this gem into ROM and save us from installation.

I worked for a large commercial software vendor - one that funds open source projects, actively contributes developers and code and sells commercial (closed source) products incorporating open source software (not GPL, obviously). It is a very successful model. However, the availability of free code that fit the requirements and was licensed appropriately was not sufficient justification for using open source over writing in-house code - there had to be a business justification above and beyond that. I expect that, like most companies of their ilk, Microsoft projects a driven by business requirements that look beyond the short term gain of getting free code. Perhaps (like many projects) Codeplex will just wither and die; perhaps they will continue to support it and will eventually reap the benefits of a project whose direction they can drive.

There are core economic reasons why Microsoft can’t out innovate open source. Let’s step back and think about innovation for a while. How does technology, or even in the broader sense, culture, change and advance? What kind of conditions promote innovation and which stifle it? The great thinker in this field was the economist Joseph Schumpeter, he coined the phrase ‘creative destruction’, to describe the driving force of innovation in a capitalist economy. Essentially the rate of innovation is proportional to the number of people able to innovate; the number of minds allowed to tackle a particular question and the ability of individuals or groups to attempt to profit from their idea without a severe cost of failure. Capitalism thrives on huge numbers of small companies and entrepreneurs constantly trying and failing. A Darwinian survival of the fittest where the vast majority do not succeed. Indeed it goes beyond capitalism, Jarred Diamond’s seminal work ‘Guns, Germs and Steel’, brilliantly shows how human development progressed in direct proportion to the size of human communities and the speed at which technological developments could be propagated. When you get bored of ‘learn WPF in 21 days’ it’s must read!

The software industry is a pure manifestation of Schumpeterian economics. The barriers to entry are almost non-existant; anyone with an idea can have a go. It doesn’t really make a lot of difference if you’re a highly paid Microsoft employee or a Gujarati teenager with a computer, the quality of your ideas is the only thing that matters. In fact there are two good reasons why the Gujarati teenager has an advantage: Firstly he doesn’t have to persuade his line manager that his idea is a good one before he’s allowed to explore it; he can have a go at any hair brained wackiness he likes. His idea doesn’t have to play nicely with any particular corporate strategy or favorite technology. Secondly, and conversely, he has to persuade the whole world that his idea is a good one. The Microsoft guy, once he’s persuaded the company, will have the whole weight of Microsoft’s marketing behind him and millions of Microsoft shops around the world will use his technology even if it’s sub-optimal. But because the Gujarati teenager has none of this support his idea will only thrive if it’s a really really good one.

So Microsoft’s 1000’s of highly paid geeks verses who knows how many millions of the rest of the world’s programmers? It’s no competition, the cutting edge will always be outside of Microsoft or any other corporation for that matter.