April 8, 2008
how does a software company make money, if all software is free?
On Page 122 of this month's Wired Magazine, I'm given a brief mention in the first paragraph of an article, "Open Source Software Made Developers Cool; Now It Can Make Them Rich", all to do with monetization of Open Source software. Here's the online version.
Last spring, marketer and blogger Hugh MacLeod posted a question on his site: If open source is such a phenomenon, where are all the open source billionaires? His audience wasn't amused. Open source software relies on a community of volunteer developers who tinker on, write for, or amend a program, then give it away free. MacLeod's site filled up with complaints that even to look for billionaires violated the spirit of the open source movement. "There have to be rewards," one commenter wrote, "but they don't have to be financial." Another simply recommended that MacLeod "shut the fuck up," adding: "You don't know what you're talking about."
I would agree with this charming "shut the fuck up" fellow that I know very little about software. I have never claimed to be that interested in it. What gets me working for Microsoft is that I've always been very interested in something else, namely, how people make a living. This is true for large companies, small companies, billionaires and "humble tradesmen" alike. This is why I can work with a large software company like Microsoft, or a small tailoring firm like English Cut
, and find them both utterly fascinating. Everybody needs to get paid; that is the great constant in business.
Last summer, at a dinner party in London, I had the great pleasure of meeting Simon Phipps, the Head of Open Source at Sun Microsystems. What a great guy. Insanely smart. Enjoyed his company immensely. A lot of the conversation was off the record, but one of my main take-outs was that Simon passionately believes that "The Future Is Open Source".
Simon may be right, he may be wrong, he may be a little bit of both. The future always has a way of surprising us all. But for sake of argument, assuming that "The Future of Software is Open Source" is proved correct in time, perhaps this would be a good time for my client, Microsoft to ask the question: How does a software company make money, if all software is free?
The answer, of course, was hinted at in the aforementioned Wired article. With Open Source, people don't pay for the software per se; but they DO pay for the peripherals.
How can you build a business by giving away the store? The money comes from selling add-ons, service contracts, and hardware to go with the software.
It took me a while to figure this out, but what applies to Open Source, also applies to Microsoft.
When you buy a Microsoft product, you're not just getting ones and zeros. There's also a form of "social contract" implicit in the commercial transaction. You gave them money, this entitles you to certain expectations.
A few weeks ago, I met a young developer who worked in an IT department of a large insurance company. I asked him what kind of software did he use. Answer: About 75% Microsoft, 25% Open Source. I asked him why did he not use more Open Source? I thought IT people loved Open Source?
"If something goes wrong with Microsoft, I can phone Microsoft up and have it fixed. With Open Source, I have to rely on the community."
And the community, as much as we may love it, is unpredictable. It might care about your problem and want to fix it, then again, it may not. Anyone who has ever witnessed something online go "viral", good or bad, will know what I'm talking about.
The reason Microsoft is able to charge the money it does IS NOT JUST BECAUSE OF THE SOFTWARE. Like Open Source, the social contract can often matter far more than the ones and zeros.
[UPDATE:] After reading the comments below, a friend of mine sent me the following e-mail:
OMG open source people are funny. Is it always that easy to make them dance? :)
What strikes me as particularly entertaining is that, if their
product/service offerings ARE comparable or better than Big Business
offerings, perhaps if they turned their passion outwards instead of just
ranting and gushing to each other and at you, more of the world might know
about it and they might get more market traction and be greater catalysts
for competition and change within their industries.
Dear Open Source Community: It would appear that you suck at marketing.
Which makes it positively comedy gold that you are bitching at Hugh MacLeod
about the challenges and misconceptions you face... due to sucking at marketing. :)
My friend's snarky attitude notwithstanding, I'm wondering what marketing problems Open Source DOES have. I know techies like to consider themselves relatively immune to "All that marketing crap", however...
Posted by hugh macleod at April 8, 2008 3:30 PM
is this one-person-sample relevant, how ?
ever called microsoft to fix anything ?
know anyone who ever did ?
know anyone who did and ever got anything fixed ?
I rest my case.
Doesn't it help in the end, though? I mean, for Microsoft, or the recording industry, or pharmaceutical companies? I think 'open-source' is plugging holes in an old, bad model, that is: Overcharging for the things I (or my friends) *can* do and underperforming on the things I can't. Like any other natural force, it's making the profit industries change, evolve. They have to present us with something worth paying for and, with the exception of a few idealists, we will, but an out-of-the-box typing program is no longer going to cut it.
Eh! You're learning! Cute.
Exactly, Seth. I see all this as part of a perfectly natural evolutionary cycle, which is going to happen anyway, with or without Microsoft on board. Or Sun. Or Oracle.
When I worked for a large insurance company it was explained to me thusly: Who do you sue when something goes horribly wrong?
I appreciate the cynical nature of the question, but that's how it came down in that company. So much so, in fact, that the preferred arrangement was to have a large consulting company, in addition to Microsoft, to help assume the risk. Did they pay for that? You bet, and handsomely. Why? Because assumption of risk is worth money.
It's a business model.
Sam, this is what I'm talking about. Social Contracts. Accountability. All that good stuff :)
Hugh, I know you don't really care about this techie stuff, but you should really sit down with some open source people sometime.
You are repeating two of the biggest lies about the differences between open source and Microsoft.
Open Source software is not "given away for free" per definition, and you can get the same level of support, ie the same kind of social contract with an open source supplier *if you choose* (and pay for it). It's a matter of choice, and the only difference is that the choice is up to you, and not up to Microsoft.
You're right about the bottom line though. It's all about the social contract. That's exactly what the entire open source movement has always been about, you should read some of Richard Stallman's essays about the subject.
Using open source software actually costs much the same or even more than using Micro$oft's offerings. Take Red Hat as an example. Free open source Red Hat Linux will cost at least as much in licensing and maintenance fees to use as Windows.
And before all you ope source guys flame me, I may have an artist's blog but I work in IT and I know how much we pay MS and how much we pay Red Hat.
Hey, thanks for the great feedback so far, Everybody.
Rick and Rafi, Excellent points. Please bear in mind that, as somebody with a professional relationship with MSFT, I'm not trying to answer the question, "How do we get folks en masse to keep shelling out money for MSFT product, just like they always have?"
I'm more interested in the question, "What has got to happen at MSFT if it wishes to remain a relatively happy, successful, interesting company for the next thirty or so years?"
I REALLY want to know the answer to this question. And I don't care where the answer comes from... pro or anti MSFT.
Hugh, you really dodged Rick's question. How does the whole point of your post hold up, if open source software can get you the same kind of service like MS does, in case you choose to pay for support. The key word is choice.
stvblgh, you are perfectly free to not use MSFT if you don't wish to. That's "choice", too. Rock on.
Even for a company like Sun, for several reasons (internal and external forces) it has been a very difficult task to re-orient the company towards openness and free software.
For a company like Microsoft, with a 15 year track record of disregard for ethics, the law, and mostly everything else but Microsoft, the challenge is, indeed, of monstruous proportions.
The Microsoft problem is not only a PR problem, it's also not a technology problem, it's something much more deep and complex that lies at the very core of its company culture.
The only way Microsoft can change is a viral effect that promotes ethical standards and a real passion to communicate with their public, developing empathy, feeling their customers pains as if it were their own.
In order to do this, Microsoft has to flatten its internal hierarchical system, enable for more peer to peer communication and abolish the culture of fear and terror. People have to be proud again to work there.
I have a friend whose husband works for Microsoft. The other day he came home, he was so excited about a new project Microsoft had comissioned, one of his biggest challenges to date.
My friend (his wife) has been a pro-Mac, anti-Microsoft person since before knowing him, since before I got to know her, more than 12 years ago. She can't fake a smile, or be excited about her husband's work, she knows too well all the stories about internal power fights, about poor shortsighted decision making that had them pending on a thread when salaries were squeezed, and people was getting fired, only to re-hire him months after as a subcontractor, for a different sum and different career expectations.
This first hand account (which is one of many) makes me believe there's a lot of creative, hard working people at Microsoft who aren't working at their fullest.
What does open source have that Microsoft doesn't ?
An ideal, a motivation to change the world, serve the public better, respect their freedoms, be proud of their technological accomplishments.
The very structure and leadership of Microsoft is what needs to be changed, not the technology, not the people.
They need leaders they can believe in.
They need ideals, something meaningful they know they can stand for.
They need to be proud, so they can get home and tell their wives and children they did something significative to change the world in a positive way.
Like Joel Postman was telling us earlier today on Twitter, about the time he met James Gosling at Sun Microsystems, and he was proud to tell his son he had worked that day with the man who invented Java.
Have you ever heard stories like that in Microsoft ?
Who gets back home with a smile in the face to tell their children she's making a better world ?
There's many ways to improve Microsoft, but I don't see that happening if they don't truly, honestly, beyond any doubt build themselves anew, from scratch.
This may take very tough decisions, like erradicating the oldtimers culture of terror, also splitting the firm into more nimble, agile and autonomous companies that can work efficiently with the sole goal of making their customers happy.
Paraphrasing Edward Tufte when he wrote his famous critic on Microsoft Powerpoint:
Power corrupts. Concentrated Power Corrupts Absolutely.
Make Microsoft nimble.
Make Microsoft people proud.
Make customers happy.
Make the world happy.
It's been a while since Microsoft last did anything barely resembling that.
Rock on, Hugh :-)
For your info vruz... The world is full of enterprises which use MS's support services. I have personally created two cases for them - and got the issues fixed.
Regarding the "all software is free" idea... I can not see any reason why anyone would give products of their expertise for free. Hairdressers don't do it, why should coders?
Naturally in the case of large ERP implementation projects, the software can be "free". But one cannot invest millions into Halo 4 or next Office and then give them for free, no matter how full of ads they would be.
Do keep in mind that Google is not free for advertisers, although the company has several free services.
And congrats for the book deal, Hugh! :)
From a consumer perspective, we've seen a lot of people make precisely that choice - *not* to use Microsoft.
From the Mac fanboys, to the Ubuntu adopters, via the eee PC buyers, and TiVo users. As more stuff goes online, and Google Docs offline rolls out, I guess that's just going to increase.
How are Microsoft going to continue to make money; didn't IBM have to answer that question a few years back? They'll have to change.
Now how they change, that's going to be fun to watch, but challenging if you're in the space they move to.
Q: "What has got to happen at MSFT if it wishes to remain a relatively happy, successful, interesting company for the next thirty or so years?"
A: "Thirty or so years is a short period of time for an industry. Think 300 years. Don't underestimate Microsoft's ability to release new product on a frequent basis, license it, support it, offer training, purchase competitors, and repeat the cycle. It is a business model that works."
And now a comment about Microsoft vs. Open Source. I like Open Source. It provides an alternative, which is a mental decision making concept humans need. It's perfect for the Microsoft haters who need a place to live just like the rest of us. And it's fun to play around with. Personally, I have made a decision to play with the Microsoft toys because to me they are cooler. And I get paid better because there are more jobs. Nothing beats Visual Studio 2008 and the AJAX toolset for having fun. SQL Server is jammin' as is Oracle. And VB is the most widely used programming language on the planet by a wide margin. All this makes it easier to find work and also to thrive in supportive, well funded environments. So, go mainstream, roll in the dough, and write Open Source at home for your hobby to collect the non-monetary rewards. Don't quit your day job...
It's a really interesting debate, and one that I'm slowly becoming more educated about, as I'm trying to bridge the gap between doing social things around my blogging and pet projects, because it all makes absolute sense to me - and trying to do it on a formal company level with justifications on a ROI level in a formal setting...
I flit between open source and business apps depending on what's most appropriate at the time - and a mixture seems to work best.
Hugh baby, I know this is one of your posts designed to provoke outrage among non-Microsoft-lovers, but the quote from an IT person saying "If something goes wrong with Microsoft, I can phone Microsoft up and have it fixed. With Open Source, I have to rely on the community" is clearly and objectively false, as you are no doubt aware.
Read the blogs about Vista SP1 or the dumbass anti-virus routine they introduced that asks you to trash your own PST files. In neither of these cases can users "phone Microsoft and have it fixed", but with Open source tools you are legally free to create your own fixes or draw upon those shared by the community.
There is no social contract with MSFT, there is simply a de facto almost-monopoly based on ignorance among users and (worse) IT departments. You know this. I know this. Anything else is just trolling, to be brutally honest.
Interesting post, Hugh, and I held these views myself before working on an open source project (I'm not a developer either, by the way). I have since changed my views.
There is so much more to open source than the fact it's free-as-in-beer. For the comments that follow, you should assume that I'm talking about commoditized software, from the perspective of the Enterprise.
1) Because the code can be inspected and amended, it means it can be tailored. And more often than not, these improvements are returned to the commons. The net result is that open source projects increase in both quality and function over time, in line with the needs of it's users. So you end up relying on the community a lot less than you'd expect - more often than not, someone else has already dealt with the problem you're facing and the extra code is freely available, or the job required is relatively small and you can do it yourself (especially if you're a big enterprise with decent resources). Good luck getting someone like Microsoft to change their product for you. Even if they agree, you often have to wait until the next product release.
2) Don't underestimate the importance of open standards. Billions of dollars are spent by large companies each year because of vendor lock-in. Vendors will charge whatever they can if they know they've got you over a barrel. If you can inspect the code, and integrate systems yourself, huge amounts of time and money can be saved. It also puts you in a stronger position to give your customers what they want. In this day and age, if you can't adapt quickly, you wither on the vine.
3) One of the biggest mistakes people make is mis-understanding the power of the community behind open source software. There is often no written contract, but there is passion and there is love. Not love for the Enterprise, of course, but love and pure dedication for the software. Even on the modestly sized project I'm working on (TiddlyWiki), the dedication and responsiveness of the community is nothing short of sensational. If you don't believe me, try posting a question on the discussion forums asking how you can change the product to do what you want. Here's the link:
So, where should Microsoft go next? I expect they know the answer. Open source will nibble at their market share of commoditised products, gradually forcing them to focus on products that aren't commoditised. Maybe they'll open source their commoditised products in time, maybe they won't.
Disclaimer: I work for Osmosoft, which has the creator of TiddlyWiki at it's helm. We report into JP Rangaswami.
This is kind of a scope creep thingy.
Originally, I think Open Source was intended mostly FOR the community, NOT corporations (that came along later).
It's ok if corporations pay MS beaucoup bucks for service (you can't get that as a consumer, been there done that). IBM co-opted Linux and then it's "corporate" all of a sudden (another IBM marketing gimmick...free software paid services).
The normal user doesn't need all the whiz bang features that MS adds, just basic stuff to get by, y'know, stuff that shouldn't cost an arm and a leg for stuff you don't use. MS has a history of adding features no one wants, and their products suffer, and by default consumers.
So, you're right in one aspect that open source won't produce any billionaires, but that wasn't the purpose. Open Source is just an alternative to paying for fluff that isn't needed.
I think Microsoft has no easier answer to that question than (a) big ad agencies, and (b) big record companies.
The only social contract we have with MS is that they will try to get all our money in return for a crappy product. Fat, bloated companies can almost always be guaranteed to produce crap, but sometimes we still need them. For example, Joe can't make missiles fast enough in his garage to fuel the war machine, but he can turn out the next great software app--and that's the topic here today. I'll leave you to think about that a bit.
MS has succeeded by eliminating choices. Gates is a genius of ruthless business--not software development. Over the years, MS has bought up, closed down, and ruined more companies and their software than you can shake a stick at--all in the name monopolization. They knew that nobody would buy their crap if there were actual competitive products. (PS. I'm 50 so I actually remember these things). Now, MS has become an immovable, crap-pedaling behemoth and only time can change that.
Of course, MS is not alone in this. Meet my local cable company. They spend more money lobbying for sweetheart deals and bombarding me with junk mail promotions than improving service. Here's another? Ever wonder why a hospital needs to advertise? Wouldn't that money be better spent on, oh, I don't know...doctors and medicine? These are the imponderables of our broken free market system.
Look, nobody resents your right to work for MS and make mad money. In fact, I applaud you. What folks object to is you looking down at them for going a different route. And that's what you did with your billionaire comment (and don't claim otherwise, I beg you). I guess they don't understand why you think the 900 lb bully needs defending? But I know why you did it: You feel just a little "icky" about working for Big Satan. Well, don't. I am serious about that. Feed yourself and your family and don't apologize to anyone about it but don't think you've figured anything out, done anything special, or are entitled to the moral high ground. That's when the stuff starts flying.
Also, saying someone is insanely smart ruins credibility. BIG TIME!
But other than that you seem to be doing great. Keep at it with your art.
Rafi, that's apples to oranges, you do not HAVE to pay for redhat. Why you are doing so is beyond me.
I work for an oil and gas industry company as a software engineer. We're an all Microsoft shop, however I do 99% of my day to day work on Linux.
I find the assertion that you have to go all one side or all the other to be a bit curious at the outset. We use Microsoft servers, but we use MySQL database servers. Why? Because oil and gas companies are the biggest penny pinchers in the universe, and the fees for SQL server weren't justifiable for what we had to accomplish.
I personally use Linux as my daily OS because it doesn't annoy me as much. Every day, the antivirus on my windows machine updates, and _every_ time, it has to tell me about it. I don't care, but it tells me anyway.
Working in windows for me is like being in the company of a 3 year old with ADHD in a toy store. "LOOK AT ME LOOK AT ME" ad infinitum. I don't want to look at the sodding little prick, I want to sit down, and get work done.
That type of "feature" or whatever you want to call it, would be short lived in a linux users world, because developers like myself go nuts over those types of irritating tactics, and patch code like that out of the software.
Long ago, MS decided that they needed to take a very corporate stance with their OS. Rather than focusing on the customers who use it, they focussed on making vendors happy, oems happy, etc, much like they make their share holders happy with a certain disregard to their actual users.
You can look no further than windows Vista to see this at it's worst. DRM to the core made the entire computer slow and obnoxious. The user experience suffers so the MPAA/RIAA can clutch to a flawed and archaic business model.
To see how it was done nearly right, look at apple. iTunes is the largest music retailer in the USA now.
It seems to me that iD Software (makers of Quake, Doom, etc.) have the right approach to Open Source - they build their engine, they build their game, they sell their game, they license their engine.... and then a few years later, around the time they launch their next engine, they release the old one as open source.
As a business model, I think it works - they've gotten all of the money they're likely to get out of the software. Technology has moved on to where the money is and while opening the engine won't create any new revenue streams, it still appeals to the people who like doing crazy things like porting Quake 3 to their PDA, Quake 2 to old Silicon Graphics workstations, etceteras.
As for MS being happy for the next 30 years... in my opinion, they should stop chasing Google - either lap them with something fantastically awesome or find something else to do, as all of their "competing" offerings (A) only work right on windows, and (B) feel like redheaded stepchildren trying to be google equivalents. While Microsoft software is "good enough" in most instances, I've never heard anyone describe it as awesome - and people aren't going to use good enough when they can get awesome with the same amount of effort.
Quote... "If something goes wrong with Microsoft, I can phone Microsoft up and have it fixed. With Open Source, I have to rely on the community." ... unquote.
What that boils down to is that he's a lazy bastard that seems to think that whining fixes his problem.
You don't /have/ to rely on the community. Just go fix yourself. Oooh, you're unable to? Well then, put some energy into it and join the community. Maybe that is the price you need to pay for that particular piece of software.
>The reason Microsoft is able to charge the money it
>does IS NOT JUST BECAUSE OF THE SOFTWARE. Like Open
>Source, the social contract can often matter far
>more than the ones and zeros.
This is often cited, but usually wrong. Unless you spend a lot of money, MS doesn't really care about your problems. They might fix your bug eventually, but buy paying them money you don't get to count on it. The support they provide is scant, too.
Contrast this with open source, where the communities vary in helpfulness, but it's not difficult to find ones that are way more helpful than MS.
What you are buying is ones and zeros. The reason that they are able to charge for something that is essentially to replicate.
Also, while fewer, there are several open source millionaires/billionaires - Mark Shuttleworth for instance. I don't think a propensity of them in the software industry is necessarily good for us, however, any more than it is good for us that there are so many in oil or finance.
ruurd has summed up one of the most appealing and appalling things about FOSS. Whichever it happens to be definitely depends on the user, their level of skill, etceteras.
Me, I'd rather fill out the paperwork and spend a grand or so of my work software budget on 3d Studio Max every couple of years and receive a turnkey product that Just Works (most of the time, anyway) with all of my existing data than attempt to join and interact with the various FOSS products developing 3d apps.
For programmers it's easier to join the mlist and file bug reports. For everyone else it's easier to pay the money and dial the phone. "Free" and "Open" aren't selling points when you have to spend months of social engineering to get a bug fixed or a feature added when you can not have to deal with that bug - or have that feature - QA'd out the ass off the shelf.
FOSS vs. pay soft is ultimately a question of hassle, and what individuals consider to be hassle.
Open Source: you get what you pay for.
Off-the-shelf: caveat emptor.
There's advantages to both approaches I'm sure; however, as someone on the bidness side of the organization I'm stunned that companies are betting the farm on jury-rigged open source solutions that have absolutely no market testing. It's not a technical decision y'all--it's a marketing decision. Everything that every employee of a company does is marketing. That's the fact, Jack.
When it comes down to it BigCo's *like* paying for stuff. They might bitch and whine about the price but *free* freaks the shit out of them. So they'd prefer to spend a fortune on Enterprise Support (whatever the fuck that is) than download Fedora Core 8 and build some competency internally.
This is why Sun and MySQL will continue to make money from OpenSource offerings.
Whats changed is the Quantum of cost. You can no longer charge astronomical amounts for owning the IP, you have to actually deliver a service so this actually plays to Microsoft and IBM's strengths.
Unfortunately they have brainwashed wall st. into the ideal of uninterrupted capital appreciation of stock value based on accumulated IP value.
Unfortunately he industry is moving to a service revenue model which is people and infrastructure intensive in cost terms. Hence the race to dividends and flat price of MS stock and the horrendous performance of Sun stock in recent years.
How do you make money from software in this new world? Well the world of SaaS and most particularily Salesforce seemed to have cracked it and Google and Yahoo aren't doing a bad job either.
Why do we pay Red Hat? For the same reason Hugh's IT guy said he works with MSFT so that he has someone to call when it goes wrong.
So what does MSFT have to do to keep around? Probably more of the same and keep getting bigger and stronger in any new market. Oh yes, and don't make any more bad OSs like Vista...
MSFT should make Windows open source. Not free, but open source. The amount of innovation that will lead to will be incredible. It will open up new markets and whole new businesses.
If there's one thing I can think of that will 'change the world', it's that.
Tomi: Why would a company give away their product for free? Well, consider this: Why would a company collaborate with other people in developing software? With the product that the company I work for (CodeSourcery, Inc.) develops based on the GNU programming toolchain (GCC, GDB, and so forth), we've found it immensely useful to collaborate with the rest of the GCC and GDB community. It enables us to produce a product that is vastly more capable than what we could produce if we didn't collaborate. And "giving away our software for free" is how that collaboration works; we give them ours, they give us theirs, and we both are far ahead of where we'd be otherwise.
solios: That desire for "a turnkey product that Just Works" is exactly what we're aiming for with our GNU-based toolchain products. A lot of the value we deliver is that we've gone through all the work to select the right configuration options and do all the build steps to get a combination of GCC, GDB, binutils, Eclipse, this, that, and the other to work for the specific configuration you buy it for, and it's all wrapped up in a single .exe installer and a single coherent IDE. We keep track of all the relevant communities and the patches that get submitted to fix bugs, and integrate them into product updates, so you don't have to. And, if something goes wrong on your end, you simply go to our website and submit a bug report, and we fix it.
It's an interesting world.
Well, this topic certainly brings 'em out of the woodwork. Put up something about sex later on and compare the amount of posts in the same time span. An interesting comparison I would wager ...
Believe me I want Microsoft to thrive and succeed, just but not at the high cost of worldwide unhappiness.
By the way, didn't my constructive, and thoughtful previous post reach you ?
I don't see it approved, did I say something wrong ?
Were you really looking for thoughtful advice ?
Or is it that it didn't match the point you seem to be trying to make about the marketing naiveté of open source proponents ?
Are people still asking this question?
I suggest reading "The Success of Open Source" by Steve Weber. He answers it pretty clearly.
You can also read "The Cathedral and the Bazaar" and "Homesteading the Noosphere" by Eric S. Raymond but that one is a little dated.
in brief, the reason OSS exists, is because people choose to make it. When individuals get involved in OSS, they are not usually attempting to drive some market revolution, they are attempting to solve some problem of their own.
Linux happened because Linus Torvalds wanted a Unix system on his PC. Other people wanted the same thing so they helped him out. Eventually it grew into something that could compete with commercial Unix.
Apache HTTPd happened because the NCSA stopped supporting its public domain web server. A bunch of 'techies' rallied to save and extend the old server, and their product grew to dominate its market.
Many hackers enjoy writing software in their free time, (not just any software, but software the appeals to them,) and the most effective way to do this is as an OSS project so they can benefit from other's interest in what they are doing.
Finally, the third reason that hackers write OSS is because it is a good career decision. Not, "writing OSS is a good career," but "writing OSS, helps ones career." It is the easiest way to gain experience, improve one's abilities, and prove one's worth. The average job out of college is gruntwork, or worse, vaporware, and not very impressive on a resume. Contributions to OSS give off 'hacker cred' and make someone more employable, especially by the companies fro whom hackers want to work.
Plus, if someone gets lucky and creates something truly important, it can be very good for him. I believe Linus Torvalds is currently worth tens of millions. Guido van Rossum, (creator of Python) is in charge of Google's latest marketing venture, a webapp hosting business aimed at undermining Yahoo's S3 venture, and I'm sure the pay he receives in no small matter. OSS is not a way to make billions. It is a way to get employed by someone who makes billions.
With this in mind, it should be obvious why OSS sucks at marketing. The reason is, that with the exception of certain companies, and certain individuals, OSS hackers are more interested in what other OSS hackers think than what the rest of the 'n00b' world thinks. The Gentoo community would probably be thrilled if Debian users, en mass decided to switch to Gentoo and declare it the better Linux distro. If a bunch of Windows users switched to Gentoo, you can bet that there would be trouble. OSS is by geeks for geeks and while many do have the non-technical end user in mind, most don't. Its not that its an elitist operation, its just that there is more glory and its much easier making something that other hackers will use rather than some clone of some proprietary piece of business software you don't actually care about.
Ok, that was why OSS exists and persists in the market. Hackers write stuff for themselves and each other, that for them, is damn fine software, but has this grown into such a big thing and what can Microsoft do about it?
Well, the reason it is a big deal is obvious. It is a resource that exists and in a free market, any free resource is going to be utilized. OSS provided many things and depending on your needs and resources, it may be a better investment than the proprietary alternative. Restrictive licenses are more difficult for small companies to deal with than for large ones and may be more of a threat than lack of market testing. Sometimes its the only real alternative for those on a budget, (take Asterisk for instance.)
Ultimately, I think that reason that Linux in particular is so big, is actually because of Microsoft. Microsoft is by far, the most dominant player in the operating system market and as such, it has a lot of say in the IT industry. Companies like IBM, Oracle, HP, et. al. all have to work around Microsoft's offerings when selling their products. This gives them an incentive to undermine Microsoft's place in the market. The most obvious solution, promote Linux.
For example, the relational database market (Oracle, SQL Server) is split into two submarkets, the enterprise and the commodity markets. Oracle used to push it's enterprise software on expensive Unix systems and it's commodity on Windows. Then Microsoft started offering SQL Server to the commodity Window's user market and Oracle's pushing of Window's backfired. Oracle changed its strategy and began to offer Linux instead.
IBM explicitly gives to OSS to undermine its competition and create a platform on which it will be more free to offer its own products.
In the end, I don't believe that Microsoft maintain the position that it has in an over OSS dominated market. So much of its income relies on cornering key areas of the market and pressing the advantage that companies will find it easy to continually undermine it by pushing OSS. I find it doubtful that Linux will ever take the coveted title of mainstream desktop, but if it ever does, it will probably be too late to salvage Windows as a product.
That is, to make money out of OSS, you make products that utilize OSS. Microsoft specializes in making products on which other companies build their products. So for Microsoft to utilize OSS to a great deal, they would have to change their business model grandiosely and would ultimately sacrifice a lot of profit. If Linux and OSS continue to grow, Microsoft will probably have to embrace them and incorporate them into their own product stacks. There would probably be a lot of money in this through service fees, and proprietary extensions, (MS Linux would be very popular I think, and a particularly nasty blow to IBM and Oracle,) but I don't think it would be as profitable as the current model.
I spent the best part of 8 years working with Windows, both as a "regular" Win32/COM/MFC developer and as a fairly hardcore kernel developer.
In both cases, the only community I experienced was almost completely external to Microsoft. Most helpful information came from external sources, and you'd never expect MS to fix problems you encountered. It's recently gotten a bit easier to submit bug reports for some products, but just try googling for "microsoft bug report". Not the actions of a company encouraging conversation.
Working, as I do now, in a company that builds on Open Source is different. If there's a bug in a library we use, I can fix it myself. I can talk to the people that wrote the software and discuss hows, whats, and whys.
There's a lot fewer middlemen, and frankly it's just a lot more fun.
First let me say I'm glad you're getting the gratis/libre distinction. The intentional, malicious, continued misrepresentation of this by the opponents of F/OSS is what I find most infuriating. Steve Ballmer is not an idiot, he knows perfectly well the distinction. Nobody is giving the software away, except Mark Shuttleworth(and he has his own reasons). I've purchased many iterations and distributions of Linux and Star/Open Office over the years.
Q: "What has got to happen at MSFT if it wishes to remain a relatively happy, successful, interesting company for the next thirty or so years?"
A: They must come to realize the value of service. As in "customer" service. They'll have to rethink their whole business model because licensing will not be the cash cow it was two years ago.
I think Vista was a big mistake, from the "customer" service angle. I'm not in development but I'm in a .Net shop and there is zero talk of when they'll go to Vista. Server 2000 in the server room and XP on the desktop seems to be working fine. Not to mention the re training costs for 30,000 desk jockeys. You not being a tech guy may not see that. Office 2007 is nothing like Office 2000, seriously. So who's footing the re train bill if this enterprise goes to Vista, not MS. That's what I mean by "customer" disservice.
And this will have to come from the top. Gates and Ballmer, being 'boomers', may very well retire in the next 2 - 5 years and then the fun will begin. I believe, with no insight except hope, that who ever comes up will not be so completely invested in the "old school". They can look at it from the view of we don't seem to be making as much money as we were let's fix that from in here. And I say more power to 'em.
whilst we are at it, this is another thing Microsoft has to change, completely:
it's not just bad PR
can this situation be reverted ?
given enough time, I sure hope it will (but then I'm pathologically optimistic :-) I know that time alone won't fix it.
hope you succeed in your endeavour
Interchangeable parts, Microsoft Software, and Building Social Contracts On A Common Ground
"Interchangeable parts are components of any device designed to specifications which insure that they will fit within any device of the same type."
Eli Whitney saw the potential benefit of developing "interchangeable parts" for the firearms of the United States military, and thus, around 1798, he built ten guns, all containing the same exact parts and mechanisms, and disassembled them before the United States Congress. He placed the parts in a large mixed pile and, with help, reassembled all of the weapons in front of Congress. The Congress was immensely impressed and ordered a standard for all United States equipment. With interchangeable parts, the problems that had plagued the era of unique weapons and equipment passed, and if one mechanism in a weapon failed, a new piece could be ordered and the weapon would not have to be discarded.
How can worldwide commerce function without the Interchangeable Parts of Microsoft Office Documents and the server software it runs on? We already know that to fractionate communication leads to failure. It's sort of like the Intel Chip. Why would you make a different OSH version of the Intel chip so that hardware and software were no longer compatible? It is not about who makes it, how much it costs, or how well it works, but about building social contracts and ecomomic products on a common ground. Build together and thrive...
It strikes me that MSFT's success in the next thirty years is going to be driven more by internal organizational issues than it is by products and marketing. They're big now. Are they going to become GM or not? It's up to them. It feels like they are heading in that direction (although I'm an outsider, so I really don't know).
It looks like the entire Open Source Movement is a large-scale version of the age-old marketing technique known as the Loss Leader.
Marketing methods arise from the unforgiving and immutable laws of economics. Die-hard OS True Believers can ignore these laws only for so long before reality catches up with them.
I remember a tale told to me a long time ago. I don't even know if it were true.
Kwik Fit (big retailer in car tyres)made no money per se on selling tyres. They made money because the customer paid on the nail whereas the retailer paid the manufacturer on 60 days so they actually made their money from having cash in the bank.
A more recent example, I was with a big retail client this week who 'claim' the real money is made on the product accessories rather than the main product!
So, one day MS software will be free and we'll pay for services, storage etc.
Change at MSFT? It's the same for them as it is with any company in the same position. Change the DNA. It's really that simple.
I could also add: change the Techmeme algorithm so it recognizes there's more to the world than Google.
Microsoft is an old company. They have a huge legacy anchor encrusted with the barnacles of a million 'social contracts'.
The software world outside of Microsoft has moved. Microsoft's ability to remain happy, successful and interesting is directly tied to how willing they are to cut that anchor loose and catch up.
The MBAs need to let go of the cash cow of the past, and allow their brilliant people to work outside of the legacy theory of 20 years of reverse compatibility.
@vruz some people are proud to work here and things are changing. people expect this to happen overnight...that's like saying "i want to lose 20lbs" and expecting it to happen overnight. it doesn't...it takes work and there will always be setbacks. multiply that by 70k employees or so and it's quite an interesting challenge.
i think (maybe hope) that people 5 years from now will notice a very different microsoft. one that is more open than you could imagine right now.
time will tell.
@Dennis - spot on as usual
Steve, I totally concur. Rock fucking on.
I love this - there's a lot of goodness on both sides, but I think the real question is "who is going to be installing software in the future?".
From a consumer point of view, the only software people actively pay for (i.e. not as part of buying a new PC) by and large is game software, or maybe some specialized tools to support their hobbies (music, photography, that kinda thing). Used to be you had to pay extra for an MP3 encoder. Or a mail client. Or a word processor.
Oh, and many of those things are moving online (almost everyone I know uses a webmail client at home, rather than Outlook Express or Thunderbird). Flickr stores more photos than Photoshop Elements.
And guess what - most people don't care whether their software is Open Source - they want it to be as cheap as possible, that's all. So, they will use OpenOffice - because it's free, not because of its philosophy.
As for businesses - I think the "we can sue someone" argument doesn't hold much water - license agreements make it clear you can't sue for anything, and sueing a big consulting firm tends to be an exercise in washing dirty linen in public.
The thing businesses tend to care about is risk - which for software purchases are more about long-term costs. Using Microsoft technologies is relatively safe because you can always find people who know the technology to support it. You can buy books on how to configure it. Other companies in your business sector are using it without huge flameouts.
Some Open Source products have reached the "low-risk choice" status - Apache, PHP, Linux on the server. Those products have grown through word of mouth, rather than marketing - marketing to software folk must be very hard.
As for what Microsoft should do - well, if we knew that, we wouldn't be wasting our time reading blogs, now would we?