Open source and libre software can provide money to fund their developers. Companies like SGI, IBM and Sun all stand to gain by making software a cheap commodity product. You see, software is a complementary product to computer hardware. If software costs more, you will buy less of the hardware. So, hardware makers have strong incentive to pay for the development of free-to-the-user software. That's why those three companies, and many others, have been funding the development of libre software. All three have GPL'd some of their formerly proprietary programs (XFS, JFS, Staroffice, respectively), and all three are paying developers for things they need.
Why choose a libre license?
No company, not even Microsoft, can hire all the developers in the world. Even mighty MS can't even hire all of the best. However rich your organization, the majority of the developers in the world will be elsewhere, and among those outsiders will be some of the best. The only way you can harness the efforts of those outsiders to work on your program is to make the program you want them to work on libre. That assures them that any work they do will always remain open to them, and that they will be able to profit by it on an equal footing with you.
That's why companies like SGI, IBM, and Sun have chosen to release code under the GPL. The code has no value, no sales potential, as long as they keep it in house. I suspect that they avoided the BSD licenses exactly because they allow third parties to make changes and take them private, which is specifically forbidden by the GPL.
The fact that no manager can assign someone to do some dirty work is often seen as a disadvantage to libre development. In fact, that is a major source of invention and innovation. People who love their work can play with whatever they want to, even if it doesn't seem important to someone else. Instead of being assigned to work on the markting department's latest bad idea, developers can work on what they care about. Even if it is something that management would rather not have.
Just as with everything else in the world, 90%+ of these inventions and innovations are crap, but that ``wasted effort'' is the price we pay for the few jewels. I put ``wasted effort'' in quotes, because it isn't wasted at all. The people who are doing whatever you would characterize as wasted effort are doing something they care about, for their own ends. This is a vital point: any good you get out of it is happy accident. As long as you aren't putting out any resources to get that widget you didn't want, you can hardly complain about the effort which was required to bring it to you. The fact that someone bothered to write it tells us all that someone wanted it badly enough to justify the effort.
How can it be good if it's free?
The ``it can't be good if it's free'' paradigm is partly real. This goes hand-in-hand with the ``who do we sue'' story. I'm sure that there are people who honestly believe that they have some meaningful legal recourse against Microsoft, et al.
I'm sure there are still a lot of people who can't conceive of a non-zero-sum game. Libre software is a non-zero-sum game: this is one of those happy few things in which all the participants can come out ahead. No one is harmed by free riders (thanks to network effects, we can even be helped by them!), and small contributions by many add up to large, complex systems for all. That's how free stuff can be good: if it's improved by sharing, better make it free, so that more will share it.
The ``it can't be good if it's free'' and ``who do we sue'' problems are partly cover-up. I think that these are used, all too commonly, as a coverup for a very different problem, which no-one wants to talk about: Libre software doesn't have salesmen with expense accounts to wine and dine managers and purchasing agents.
I suspect that this is a far greater obstacle to open-source than any perceptions about quality. Just look at the ridiculous deal between Oracle and the State of California. Do you think that there wasn't corruption involved there? Postgresql and Mysql weren't even in the running: they couldn't provide kickbacks, couldn't make mega-buck political contributions, simply because there wasn't going to be any money changing hands.
In government in particular, every year-end there is a mad scramble to get ALL the budget spent, and woe to the manager who lets money lapse. Sometimes, the most important point of a RFP is to get the money spent.
A manager's importance is measured, at least partly, by the size of his budget. If you are ``buying'' free software, you aren't doing everything possible to grow your budget and importance.
There is a lot of libre software, but few firms which can respond to proposals and take money for it. If you are determined to spend money (that is, if spending money is the important part of the software rfp), the libre developers aren't really going to be able to help out, regardless of the quality of their code, or the quality of their solution.
Proprietary software exports jobs.
Let's begin by assuming that proprietary software does cost less to run, neglecting the purchase price. Under this dubious assumption, the justification for spending the money for the license is that it will save you money which would otherwise be spent on developers and administrators for a libre solution.
Thus, the justification for purchasing proprietary software from Microsoft is that it allows you to export highly skilled, high-paying jobs in software development from your location or your department, to Redmond, Washington. Think about it: if you are a government official, do you really want to tell that to the voters? Could this be part of what's behind the initiatives we're seeing in Taiwan, India, and Peru?
This isn't only a problem outside the US. Every state in the union is exporting jobs to Redmond, WA. In a time of balloning budget deficits, if you're going to spend a fortune paying software developers, maybe you should pay them to work in your own state, rather than funding an employment program for that state of Washington.