Is It Good For Business To Subsidize OSS Developers?
ruphus13 writes "A lot of developers for open source software have full-time day jobs too. As economist Milton Friedman said, 'The business of business is business.' So, does it make sense for companies to encourage their developers to contribute to the open source community? OStatic discusses a blog post by Alfresco exec Matt Asay, who makes the case for why they should. '"Companies like IBM, Intel, SGI, MIPS, Freescale, HP, etc. are all working to ensure that Linux runs well on their hardware. That, in turn, makes their offerings more attractive to Linux users, resulting in increased sales." While I don't think we'll ever see companies everywhere subsidizing employee development of open source tools, many tech and non-tech companies alike could benefit from subsidizing open source development from employees with talent. If more companies woke up to this idea, we'd see more purpose-driven, mission-critical open source software shared by firms in the same industries. That, ultimately, would benefit the companies providing the subsidies.' Should your employer pay you for time spent on open source development?"
snydeq points out an Infoworld story suggesting that there's something to learn from the way French companies are promoting open-source development.
Is it "good" to maintain and expand the upstream rain forest that provides your raw materials?
It's not good for this week's balance sheet, but it's good if you think about it for five minutes.
My turnips listen for the soft cry of your love
From FOSS, to nuclear power.
Most businesses use at least one major OSS project, be it Linux, Apache, MySQL, or perhaps even an OSS language like Perl, Python or Ruby. And a lot of minor businesses lack a good programmer to fix bugs, so it should be natural for them to pay some OSS developers to fix a bug, or add in a new feature.
Taxation is legalized theft, no more, no less.
There's no "beg" here. OSS developers get funding because companies think their free software benefit them. e.g. Apple *needs* WebKit because it's critical that they have it, and can customize it, on the iPhone.
Why would a business pay for software that benefits everybody else? Why not just wait for someone else to do it?
There are answers to this question - e.g. IBM or Google is big enough and uses Linux enough that it needs to make the fixes just for its own benefit; pushing them upstream is not much extra work. Or, companies in long-term relationships - e.g. in the Silicon Valley ecosystem - can encourage each other to contribute to public goods like OSS via a "reputation mechanism" - contributors get respect and this translates into better relationships.
But the CAP is the fundamental issue.
It comes down to the companies controlling officers opinion of the companies' needs.
On one hand, I see no motivation for small to midsized businesses to contribute to open source applications, especially those that don't relate to the business' operating needs. Each business' business model and methods are distinct enough that most software is completely proprietary, or a proprietary implementation of a base package.
On the other hand, public relations is sometimes given more consideration. Contributing to relevant open source projects can be very benificial if the package is used and useful to the company.
Always going forward, 'cause we can't find reverse.
Because colossal missed opportunities arising from beneficial externalities that are not getting incorporated into the development funding.
Example: almost *everyone who has a website benefits from some part of the LAMP stack, though they pay nothing for it. This isn't a problem, as the marginal cost of the LAMP stack is zero.
But if all those beneficiaries would pool a fair price -- or 5% of a fair price -- for that code, and put it into more development .. well, I can barely imagine how fast the stack would improve.
My turnips listen for the soft cry of your love
Wow, that article on the French is an evidence-free zone. The only actual French OSS project they mention is some middleware doodah that I've never even heard of. Trying to think of some myself... um:
1. Mandrake ...er ... ... that's it.
2.
3.
I'm sure there are others but none springs to mind.
Well, according to the Free Software Foundation:
'Freedom is a matter of liberty, not price. Think of free as in "free speech" not "free beer".'
It's silly to put basic research and (more generally) the development and maintenance of public goods in the hands of public companies because their motivations are not even vaguely in that ballpark. "The market" isn't good at providing the things that make markets possible, as the years since Reagan took office have shown. Markets are powerful tools for optimizing certain kinds of behavior, but they are not self-hosting.
If we as a society don't spend that money on basic research and other public goods like FLOSS, we're spending down our base assets and not replenishing them.
What part of "A well regulated militia" do you not understand?
It's inherent in successful FOSS projects that they work with their users, and when these users are businesses, it's usually win-win for the businesses to invest something in the projects they depend on.
* they pay anyhow, and it's better to pay as partners than clients.
* their engineers get to learn the insides of the product and so are able to reduce the risks of using it.
* they can get their business needs incorporated into the product.
* they give their engineers a way to enjoy their work more.
* they get access to the community, which respects firms that contribute.
* they compete better in the market.
It's a small step from contributing one's own work to a project to sponsoring outside developers to work on a project, a natural form of delegation to experts.
Many small software firms have long understood that open source is about creating profitable ties to the community and market. Larger technology users have realized that close ties to the experts that make their key technologies can save them money and make their businesses work better.
Mostly, FOSS projects that don't need or seek this kind of relationship with business are those with a different market, usually individual users. But even these projects usually welcome funds, and contributions.
My blog
The path that budding developers take is infinitely more accessible (and far less expensive) via open source. If you lose the foresight of funding that community you risk intellectual hoarding and corporate driven (read "heavily manipulated") R&D that is self serving and beleaguered with protection, IP, DRM, and general monetary ballast that ultimately imprisons creativity.
F/OSS means that you don't have to buy or write an operating system just to run a single program on a single device, or write an OS for a new piece of equipment from scratch. It means you don't have to come up with a proprietary database when you're not sure the bigger project will pan out. It means that you can support standards and undermine format monopolies, allowing you to bring your product to market despite an 800lb gorilla.
"The business of business is business" doesn't mean that short-term gain trumps long-term. It means that business, in a market economy, seeks advantages where it can find them. Having a large base of reliable free software is a big enough advantage for some companies that they happily underwrite its development.
"Should your employer pay you for time spent on open source development?"
People have been "paying" for OSS since it's inception. It just hasn't been a formal thing until now.
The company I work for would love to subsidize open source development. We'd all love to use and extend existing projects instead of writing code from scratch. But recently I spent a couple of weeks writing a proprietary communications package when there's already perfectly good code on SourceForge.
Why? The OSS project uses the GPL. This means if the company donates two weeks of my time to subsidize this OSS project, it ends up losing ownership of the rest or our application. That would cost the company *a lot* more than wasting time rewriting existing code.
Whenever I start a new project I always look for existing solutions for my company to subsidize. LGPL, Apache, and the rest are fine, and that's why there's so much commercial support for those projects. It's just to damn bad there's so much GPL. Let's get the religion out of software development.
...support open source development is that of helping to advance the technology of the human race and benefits of in all the ways it can.
And at the rate that open source can do above and beyond the false constraints of proprietary software.
See more info
The above contents at url has broken links and some outdated info but the general scope is still valid.
The paper only report "hirts_report1.0.pdf" address the failure, of autocoding to identify incompatibility inspired by closed source profit motives. Software packages are difficult to get to work together because of it.
To put it simply: proprietary software development has such incentives and financial motives to intentionally make incompatible (with other softwares) and overly constraining (use constraints) to inherently limit advancement in exchange for direct financial profit, Whereas the open source development direction is such that the benefits and profits to be had is achieved and what teh tool of software can help produce. Teh better the software the better the products that software is used to produce.
I'm surprised nobody has yet pointed out that contributing to OSS is likely to lead to a direct increase in developer skillset.
I record my sleeptalking
and let me tell you why - its basically no different than government subsidizing industries that are desperately needed by countries.
and in open source, you dont want to supply a constant subsidy either, there are other sources also donating to that project. so its like an installment plan.
you basically encourage and contribute to the development of a software you need or you probably will need.
its democracy at its finest - open contribution from all. how much a software is needed by people, market, it gets donated by the people, and it gets developed. basic, simple, efficient.
Read radical news here
OSS developers get funding because companies think their free software benefit them
I may be overly cynical, but I would suspect that the only time a company contributes to an OSS project is when it wants some form of control over it: benevolence doesn't really come into it, nor does a subscription to Free Software ideals.
Take Apple: as closed and proprietary as Microsoft, if not more so, yet they contribute to OSS. In fact, take Microsoft, who now sponsor the Apache Software Foundation.
I suppose my point is that perhaps instead of asking whether companies should subsidise OSS, we should be asking whether OSS should want companies to subsidise it.
Amnesty International
A company whose livelihood is open source proposes that other businesses should subsidize open source... That's kinda like asking the RIAA and MPAA to sponsor a study on piracy.
It's not a subsidy; it's paid support. Do you want to pay the person you know, or the person assigned to ignore your bug-report/feature- request. If I contribute on behalf of a client, the client doesn't have to maintain a fork. I compete on knowledge and service, not secret incantations.
"The Open Road" article annoys me because it incorrectly implies that free/open source software has some sort of problem and needs subsidizing. Honestly, it's quite insulting to the free/open source software movement. IMHO, the author has hugely underestimated the strength of the free/open source software movement. It's not free/open source software that's in trouble - it's companies that rely on selling proprietary software that are in trouble.
Bradley Holt
Open source is really about users taken responsibility and control for mission critical applications. Government is just a big user, like a big bank, an insurance company, or film production company. They have internal needs. All organizations need to look at their internal needs and skills and contribute effectively, where it is of direct benefit to them. When the benefit is big enough, they pay someone to work on a project directly, if not, they don't. Sometimes it is only part time, and the level of expertise is only for QA, patches, and the like. That's fine!
The major Apache contributors at the outset were all firms whose survival depended on having an effective web server. The business case for working on apache was compelling for all involved. Other contributions should be similarly compelling.
The flip side of yesterday's story on Quebec sole sourcing (avoiding all responsibility of any kind, and just following 'the market'), is national funding of software distributions (taking total responsibility to the point of re-inventing the wheel) Neither approach is going to work best in the long run. Large organizations funding what they need, is just the corporate analogy of individuals scratching their itch.
blog post about that: http://csptrn.blogspot.com/2007/03/national-use-of-open-source.html
Logiciel Libre is Big in France.
In France, that's what they do, on a massive scale. Example: the French Fisc (like the US. Internal Revenue Service) replaced their almost all Oracle all the time solutions by making an RFP (Request for Proposal) with specific performance tests for a J2EE platform. All the biggies were invited (Oracle, IBM, BEA, etc...) but the fastest implementation was by a small local firm using open source tools.
reference:
http://www.cllap.qc.ca/2006/modules/wfdownloads/singlefile.php?lid=48 duh... it's in French...
They don't care if you can't read it, their in it for their own good.
The fisc saved a ton of money by doing a competitive procurement. The winning company is local, and developing expertise among people who pay taxes, and drive the economy.
Another useful initiative in France with OSS is
http://adullact.org/ where people from a bunch of different local governments work together and fund and adopt common integrations of OSS technologies for specific vertical uses. Each local government reduces their costs by partially funding the common solution. Each gets a say in requirements and functionality delivered. None is stuck shouldering the whole burden.
It is not about creating new software projects. There are thousands of those, and almost all needs can be met by integration/consultation of existing software, because, frankly, not a lot of government needs are that complicated. People just have to have a mind set that they are responsible for the technological choices they make, and get educated about long term implications.
On a given government procurement, the traditional decision is 'buy vs. build' that is an obsolete decision, it is more like 'buy vs. assemble' or 'buy vs. contribute' or 'buy vs. cultivate (local talent)' today. The costs are looked at on over the duration of a procurement, not on a life cycle basis.
For example, if you take open office, and you say it will cost 4 years to make the transition, that's true. the requirement for the functionality is not going away, so in five years, assuming the transition was taken care of, when you have to renew your MS license, ooo is going to cost close to zilch. That's when they pay back starts.
Government needs to look at things rationally over the long term. the only thing on the side of the traditional vendors is perceived level of risk and market share. As the number of adopters increases, both of those aspects are declining.
Should your employer pay you for time spent on open source development?
Thats not my decision to make, my employer can do whatever they wish with what I produce as a coder (or designer, or....) as I'm producing it for them. They tell me what to do, and so long as its within my ethics ranges, I do it - if they wish to then put my work out into the wild through some open source scheme, thats entirely up to them.
But if all those beneficiaries would pool a fair price -- or 5% of a fair price -- for that code, and put it into more development .. well, I can barely imagine how fast the stack would improve.
As fast as windows probably?
That is, the company making that stack code would try to bind it with their own text editor, which they would try to bind with their own text format, and when it becomes used a lot, they would start charging more for the initial product.
And at that point (or before), they would realize that it's more profitable to invest in marketin than development, and target managers rather than techies.
I may be overly cynical, but I would suspect that the only time a company contributes to an OSS project is when it wants some form of control over it: benevolence doesn't really come into it, nor does a subscription to Free Software ideals.
I don't think you are over cynical, but I do think you are missing something. Companies contribute to OSS projects when it gives them a return on their investment. Sometime that's control. Most of the time, though, they realize that they can benefit from cooperation if the software is not part of the core service/business that they are selling.
To really understand how free and open source software works in this circumstance, you merely have to look at consortiums. These were popular with businesses long before free software came around. It's a bunch of businesses that agree to cooperate on something that is not what they are selling in order to reduce cost (or sometimes they cooperate on something that they *are* selling in order to make a standard -- take DVD technology for instance). Free software just lowers the barrier to that consortium so that *many* organizations can contribute and benefit.
A really good example of this is the OpenNETCF project. It's an implementation of the .Net framework libraries with a MIT style (I think -- it's been a while since I used it) license. Back when I was doing mobile work with .Net it was indispensable. Microsoft's own implementation just plain didn't work and my company needed code that would operate the same on both desktop and mobile platforms. So we used OpenNETCF. And we fixed bugs in a few places and submitted patches.
The key here isn't control. Hell, on Microsoft platforms (and especially in .NET) Microsoft has control. You aren't going to change that. But we needed working development libraries and MS was a bit slow to deliver (it was not a high priority for them at the time). Many, many others were in the same boat, which is why OpenNETCF got started and flourished. It just doesn't make sense to horde your improvements -- the people who you are working with aren't your competition. You can only benefit from sharing.
So while I'm sure there are still lots of companies (maybe even most companies) out there that will not share no matter what, there are enough companies out there who will share to make it viable. They understand that shared benefit is still benefit.
Having said that, I agree that most companies do not adhere to free software ideals. It is fortunate that such ideals are not necessary for free software ideas to be useful. That's what "open source" is all about -- pragmatic use of free software methods without regard to ideals. IMHO keeping the ideals in mind is also good for business (what's good for your customers can be good for you -- and free software ideals are about protecting the customer), but it's an argument that I don't think needs to be had in this context. It's enough to say that free and open source software development is completely pragmatic in many places in business. To avoid it is to cut off your nose to spite your face.
See, I do something 3Dish, it is open source (or will be when i revive my 5 year old sourceforge project and do the initial commit). So just gimme my paycheck.
On second thought, let's not go to Camelot. It is a silly place.
If a company like M$ destroys your market - you destroy theirs by offering their product for free. As this is not legal, you support somebody else who does. Economics of supporting FOSS explained in a capitalist market! Second: I would love to see a modified GPL which limits the use of SW it covers to non-commercial use but allows companies who contribute ( according to some key/function etc..) to include it in their products/use it for their commercial purposes.
True, but I can think of a reason why companies would want to subsidise OSS for their own selfish needs.
Currently I use some OSS software in my company, dragging my boss kicking and screaming and recently, begrudgingly agreeing that it was a better solution!. Now, there are features I'd like to add, improvements I'd like to make, additions I'd like to implement, but I don't really have the time at work or at home to do it. Persuade my boss that we could improve the OSS software and we would have a better system for our needs, and the OSS projects I use would gain from my work.
I don't think we'd ever directly pay for improvements we'd do it ourselves, but both ways amount to the same thing - subsidised OSS software, where everyone wins.
It is a question weather the software is part of their value add. If the software is not part of a companies value add, but just a cost of doing business then they should look at the best option for them, open or closed. In many cases the open option will be the lower cost, best value. Buying support or paying a tech to install the software is one form of financial support. Another is paying a developer to add the functions you need to a project and releasing the code back to the world. Lower overall support cost.
The issue is most IT managers do not understand this, want to risk this. You do not get fired for buying Microsoft. We just need to keep pushing awareness outside of the programming world of the economic advantages. The IT managers might not care but the bean counters will.
Normally, companies can't meet these different needs: and extra money doesn't help retain the kind of staff who would want to work on OSS projects. So as a cheap and efficient way of retaining people they value, why not let them work on their own projects - so long as it doesn't interfere with the business of business?
politicians are like babies' nappies: they should both be changed regularly and for the same reasons
Having a large base of reliable free software is a big enough advantage for some companies that they happily underwrite its development.
It is only an advantage if you can keep your competitors from using it too; othewrise it is just a cost of doing business.
How about asking the question: "Is it good for business to fund applied and theoretical research and development?"
Easy call in my mind.
In my experience, the support works both ways. What I want, and enjoy, is the community of development.
When I need help with a particular project, say printing barcodes, the OSS community allows me to incorporate features into my code that I'd otherwise have to spend a lot of $ to get. The ability to extract source code to streamline the process for my users makes for an easier to use system.
Any code changes that I make that improve functionality or fixes bugs, I return to the project. (I guess that 2/3 of my changes are actually stripping out unneeded parts instead of putting in stuff.) I don't care that my About screen has pages of source listings. I think only one person has ever even looked at my licensing text. Only two people have ever talked to me about it, and one was my boss at work.
I benefit from the line of developers before me, and I support the developers who come after me.
If I stuck my head in a proprietary system, and only coded to add-ons I paid for, then I'm limited to what someone else decides to market. Since I support only a few users of any given program, I can't offer much $, so any company that wants to sell software won't listen to me, even if I find a reproducible bug in their applet.
But are you keeping your "additions/improvements" internal? If so then it means that you mooched code and improved it without giving it back to the community. That's not really in the spirit of "subsidizing OSS".
On the other hand, if you do give your "additions/improvements" back to the community, then your competitors can mooch your code for free and your company has been played for suckers.
On a number of occasions I have hired people who actively participate in OSS projects. Here's why:
And they get bonus points if they have done the work in some area that relates to the work I'm paying them to do, even if we don't use their package. Why? Because it means they've been thinking very hard about the problem.
Apache is an excellent example because it gained enough ground that to recreate it would cost any company too much money. It's far better to let the experts handle it and chip them a little money to put the system on your hardware too.
I think that OSS lends itself to the consulting business, but it's not quite there yet. Companies that get paid for results and not for software directly, like web hosts. I think that ERP systems and business software could be the next frontier if companies changed over. Everybody buys $100k+ business systems, only to toss the actual support contract 3 years in because the original company only "sells" and does not develop. So they pay small consultant firms to customize code for their business but still get beat up for license fees and support from time to time. I think it's a market primed for Open Source as nobody in business cares if the consultants use code at more than 1 customer as long as they get their updates more cheaply. There's stuff to work out, but the market is primed to be wiped out by OSS or Microsoft.
And eating snails.
Let's say I'm running Company A, and I compete with Companies B and C. If I subsidize an OSS project (rather than paying external or internal devs for a private custom solution that might give me a competitive advantage), what's to stop Companies B and C from using the OSS code that I funded, for free?
Or the reverse: If Companies B and/or C are willing to subsidize an OSS project, why should I subsidize when I can mooch that code for free myself? I'd be more than happy to let my competitors fund code that I then can use for free.
As time goes on, more and more companies would wise up and realize that funding OSS code let's their competitors mooch that code for free, and more and more companies will stop subsidizing since they're being played as suckers.
I know OSS advocates hate comparisons with communism, but communism failed because there's no incentive to do anything when everything you do, others mooch for free and vice-versa. Productivity goes down the toilet.
When's that last time OSS folk actually invented something? IBM or Google tweaking Linux or Apache and giving those tweaks back to the community is baby shit. Let's see Google release their search algorithm code so that Yahoo, MS, Ask, etc can use it for free, then I'll be convinced that subisdizing OSS is worthwhile.
A better question would be:
Why would a person who doesn't know what a homograph is post absurd rhetorical questions on Slashdot?
Of course, almost any other question would have been better, so it's not like I had to jump very high to clear the bar.
Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
Unless your competitors use it and have their own changes that they want to make and push up stream, which benefits you as well as them. Everyone is scratching itches, and most of us have overlapping itches and not enough fingers to scratch with.
If I mod you up, it doesn't necessarily mean I agree with what you've said, sorry.
That's how you lock up code.
Your "real question" is already settled. If you want to use MS SDK's you have to pay a developer. You cannot profit from the SDK without giving money back to microsoft.
You're hardly warmbait, never mind flamebait.
What point would there be to have the source code for SysV R1? What if all further changes were propriatory. How much good would that code you still have access do for you? No NUMA, no modular drivers, no SMP. Memory less than 4GB and no more than 1024 processes. Oh, and Y2K incompatible.
Now, you COULD rewrite all the patches needed but that's a shitload of work and you'd be the sort of person who'd keep that to themselves anyway, meaning that the work is repeated thousands of times.
Sounds like a huge waste to me.
I am from Google and co-operate the "zxing" open-source barcode reader project. (http://code.google.com/p/zxing) Two of us were allowed to devote most of our time for 6 months to this open project, because it made strategic sense for the business.
Why? To be brief, 2D barcodes open up new possibilities for advertising services in print. Our Print Ads business wanted to build services around them. However the market is still developing and while there are some dominant open standards evolving, there are several proprietary formats emerging. We thought it best -- both for the ecosystem but also for our business -- if the open standards won. So we explicitly set out to promote them, and one way of doing that is to release free, open, quality software that uses the open standards.
Contributing to open source can definitely be strategically valuable.
I know, I know, to some extent that's exactly what Apple does with webkit. But my feeling is that, sadly, they cannot concede because of the looming threat of lunix, as in: "first, it was the browser, then, the whole desktop". So no concessions at all are made.
A really good example of this is the OpenNETCF project. It's an implementation of the .Net framework libraries with a MIT style (I think -- it's been a while since I used it) license. Back when I was doing mobile work with .Net it was indispensable. Microsoft's own implementation just plain didn't work and my company needed code that would operate the same on both desktop and mobile platforms. So we used OpenNETCF. And we fixed bugs in a few places and submitted patches.
In fact, OpenNETCF is released under a "shared source" licence, the first condition of which explicitly prohibits distribution or combination with other free (both senses) software.
Actually, the whole thing reeks of Microsoft sponsorship.
To be fair, a lot of their other projects (little helper apps, debugging tools etc.) _are_ MIT licensed (they call it "true Open Source").
Sure they should: you reap what you sow.
Open Source is now used as a weapon in corporate competition.
Why does IBM spend money to release Eclipse? To hurt Sun. (What does an Eclipse do to a Sun?) To make it more difficult for Sun to earn money off of Java. (You can commoditize something to prevent it from becoming your rival's money making product.) At the same time, the software is an economic complement to things that IBM sells. (All manner of middleware and corporate consulting, mostly the latter. A great IDE and other tools encourages more in-house corporate development. More opportunity to sell stuff like consulting and middleware.)
It may not be an advantage compared to your direct competitors, but it may well grow your market overall.
-josh
Very interesting... I swear it was MIT licensed about 3 years ago (when I was using it). I wish I had saved a copy... In fact, I vaguely remember when 1.3 came out there was a division between OpenNETCF and OpenNETCF.com. And I also seem to remember that there were two different licenses at the time.
But if this is what happened, then it is indeed scuzzy beyond words...
You say "control" like it was a bad thing. In the case of OSS, all this "control" means that the company gets features they want in the software. There's no reason we should resent that, when that is the whole point of OSS - the more contributors there are adding their own features, the better software we all get.
If you keep your code internal, you have to maintain a branch and handle any conflicts introduced whenever anyone else touches the same bit of code as you. If you send it upstream, merging conflicts becomes someone's problem and doesn't cost you anything.
Whether letting other people use your changes will cost more or less than keeping them secret depends on your individual case.
I am TheRaven on Soylent News
How is the parent a troll? That is the whole point of the GPL.
SJW n. One who posts facts.
Great post,
There are numerous advantages of commercial software in your home based business. This is especially true if you experiment with trial ware, demo ware, and even shareware. When you own and operate a home based business, every single minute counts. It is important to find resources that can assist you in time management, preserving energy, and increasing your overall productivity and efficiency. It may take several tries before you are able to find a shareware or other type of software program that you like, but once you find it, you are sure to be glad that you did! Here, you will learn about some of the advantages of commercial software in your home based business.
Free Software Directory