Funding Open Source?
An Open Investment...
Luke asks: "Open Investment is a concept whereby Open Source principles are applied to making money. Open Investment is inspired by recent articles and diary entries, on Advogato, lamenting the lack of funding of strategic projects. Eric S. Raymond's 'Cathedral and the Bazaar' papers describe how Open Source projects get off the ground by starting as a programmer's itch turning into something useful to other people.
What if there are strategically important projects that just take too long to ever get off the ground, such as
an Open Exchange replacement? With the Economist's recent news on how users expect more and more from IT, how is the Open Source community ever going to keep up? Who is going to pay for it?
The principle behind the Open Investment Initiative is to
encourage the Open Source Community to take matters into
their own hands, by getting smarter about money. If that
happens to mean that programmers become part-time wheeler-dealers and happen to _like_ it better than programming, then good for them! Open source developers (or anybody else for that matter) could even band together to form investment syndicates, with the aim of gaining financial independence.
For the most part, the expectation is that several smart people willing to learn about investing, negotiating and making money get together, and succeed where they would be unable or unwilling to do anything on their own.
Who wants to give it a shot?"
...for a Common Situation?
Yaztromo asks: "I'm the project administrator and lead developer for an Open Source project that brings PalmOS handheld synchronization to Java-enabled platforms, called the jSyncManager.
I started the project back in 1997 for personal use (the full history of the project as available here), and in November of 2002 decided to make it Open Source under the GPL (although parts have since had their license changed to the LGPL to make using our API (especially our plugin APIs) easier for all kinds of developers). After about 8 months we're getting pretty close to final releases of the project for public consumption.
So I've been at this for 8 months, with some success, but am getting to the point where two things concern me:
- How do I best market my project?
- How can I raise funds to help continue the project?
How have you raised your Open Source projects public profile (particularly if it isn't something that is of general use), and how have you gone about obtaining funding to help take care of those annoying little costs that creep up along the way?"
Hi Luke,
Are you seriously asking us to "invest" by giving you money, with no assurance of getting anything in return?
I've got nothing against panhandling, but you should at least be honest about what you're doing.
The article's idea of "Open Investment" doesn't seem to be about finding ways to fund open-source projects directly, but rather on educating developers on how to become personally wealthy so that they can donate their time to open-source. Or did I misunderstand it?
Anyway, I think Yaztromo just solved his problem #1 - by getting his question posted on Slashdot, I don't think he'll have any trouble marketing his project now, assuming it's any good. I'm interested in #2 as well, though - raising funds to accelerate development. I'm the lead developer of Audacity, and I've been thinking recently of various ways we might be able to raise money to pay a full-time developer:
1. Lots of small donations, targeted at specific features. Simple to set up, but how likely is it that any one particular feature would get enough funding to really pay for its development?
2. Corporate sponsorship - anyone out there successfully gotten a corporate sponsor for an open-source project before? How did you approach them? How much will they try to control how the money is used?
3. Non-profit grant - we could write a proposal to add a large, significant, but specialized feature, such as making Audacity optimized for blind users, or creating a version for kids, and then find an appropriate charityto fund it.
Anyone had luck with any of these approaches? Other ideas?
Here's another question. Is donating to an open source project tax deductible?
"How can I raise funds to help continue the project?"
One word: sponsorships.
No, I'm not talking about T-shirts with your project's name on them... although if you think that will help, go for it. I'm talking about finding companies that will actively sponsor your development.
For instance, my company has been in talks with both the PHP project and the PostgreSQL project about sponsorship. (We haven't officially contacted the Postgres team, but we will for our August advertising budget.) We're happy to sponsor open-source projects for two reasons: one, we use these projects to make money, and two, because people who are interested in a particular project are often looking for a company that offers support for that particular project.
There are lots of open-source projects out there that have referral links or sponsorships from companies that use that project to make money. For us, sponsorship is huge, since we want to become well-known in "niche" markets like PostgreSQL web hosting, as opposed to the generic and overblown "virtual web hosting" category.
So approach companies that make products that depend on your project and ask them to sponsor it. You may find a company that uses your project to make money is more than a little happy to kick back $50/month for a banner ad or text link on your project's website. Don't be afraid to ask!
Simpli - Your source for San Jose dedicated servers and colocation!
I had found this excellent article a few days ago:
0 OPBZCY--
http://linuxtoday.com/infrastructure/200104120062
It is about Open Source Economics, money from open source, and what are some economics-related myths about open source.
Though it is not "exactly" relevant to this topic, it talks about related issues.
I have found a solution to Riemann's Hypothesis, but have run out of spac
The problem with open source is that you can get the code for free. The great thing about open source is you can get the code for free!
Our company looked at developing and releasing open source products based on the "Tall Emu" public licence (for want of a better name).
The concept was basically to sell the product as a non-free solution until such time as milestones were met (revenue, units sold, whatever).
These terms were to be included in the licence.. something along the lines of "This licence will terminate and be replaced by the GPL licence once we have sold xyz units and you can see current sales at www.tallemu.com."
By thinking carefully about the licence, it is possible to "guarantee" that the company wouldn't be able to weasel out of it's obligations to release the source at some point, but also it could make money for a period of time.
The second part of the problem is to figure out a way that people just don't wait until your product becomes open source, so you wear all of the costs and non of the (financial) upside, or even worse, try and find a loophole in your licence.
I guess it also depends on your product. The Exchange Killer (TM) was the product that I wanted to write and use with the licence I describe above.
What about mixed licensing? Main project becomes a commercial project (with expected enhancments, gui, stability) and feeds back into the pool after so long.
Or the club. Mandrake or WineX style. Members get to vote on what features get more focus.
I've been thinking about this more and more from the other side of the coin, as a young OSS user who would like to support developers *and* would like to see more polished projects.
Audacity is a great example of a really cool open source project that could also use a little shine. One way or the other its a terrific project (if you haven't guessed, I'm a user).
Quack, quack.
I might let my lack of knowledge show through here, but what exactly are these "annoying little costs that creep up along the way?" It seems to me that coding requires 2 things:
(1) Hard Work
(2) Free Time
I have a slight issue with funding Open Source because it's kind of like Why don't I just buy a license instead? How is donating any different?
As for getting your name out there, make sure your product fulfils a needed gap. If it's a "free" alternative to an expensive product, make sure people who need to use the product are aware of it.
But most of all, if your project was originally merely because you need it, don't let it get out of hand in size and scope. Keep that goal in your mind, and remember that that is your purpose.
As an example, I'm working with a group right now that started out fulfiling a needed gap in the education at my college. But now they're trying to move to being a non-profit company, and raising "investment capital." Don't ask about the how some people on the project think those entities can co-exist. The truth is, it's tough for them to. And the project is starting to grow exponentially before it's ready, and the original goal of fulfilling the gap in the education is now second priority to making money.
Just my little experience from the POPFile project.
1. Money
All the money I get from POPFile is through donations made through Amazon.com or PayPal. This brings in enough money to keep me *very* interested in the project, although it does not cover the rent at this point. However as POPFile's user base grew I saw donations grow with I would estimate around 10% of users donating an average of $20.
2. Marketing
I spend no money on marketing, but I am *very* nice to any press that want information on POPFile. They are your friend since they will advertise your product for free if you can get them to write about it. The key to getting them to write about it is to think of the "hook" that they will use. All writers have a "hook" or key idea in the story that they are writing about. If you can relate your product to a hook then you can get them to write about it. In the case of POPFile the hook is spam. Although POPFile is designed for generic email processing it's good at fighting spam too and so I work with writers who deal with the spam problem and they in turn mention POPFile.
On a related note I'd say that the free (as in beer) nature of free (as in speech) software is also a big plus for journalists. There's nothing like recommending a product to their readers that is free.
3. Be Nice To People
Word of mouth is very important to any product (commercial or not) and that means answering every single email you get. I read every message in the POPFile forums and answer every email sent directly to me. This is vital because people then realize that the community around POPFile is welcoming and they feel more comfortable using the tool.
John.
I am working on the specification for a suite of programs called "OpenDemocracy" consisten for now of "OpenPolicy" and "OpenVote"...these programs will allow for the distributed discovery of policy and for Internet based voting.
I am certain slashdotters see the future of democracy is the net...and that open source software is the key to increasing the amount and quality of democracy [I posted an article about the first use of Internet voting in an election in North America which will take place in Markham, Ontario - just north of Toronto - in November, in my slashdot blog - the software is from Elections Systems and Software which raises very serious concerns as this is a private, for-profit company and the source code is unavailable for scrutany]].
I am also certain that the high-tech companies who create and maintain the infrastructure that is the Internt would be interested in supporting such an effort. Here's my plan so far [read my blog here to get the latest updates.]
1. A white paper describing OpenDemocracy.
I am working on this now, and I will table it at the next slashdot meetup here in Toronto at the end of this month.
2. Start a sourceforge project.
I will do this after I have gotten initial feedback about the white paper.
3. Start speaking about the project.
I will contact all the high-tech groups here in Toronto [there are more than 30] and ask to speak to them about Internet democracy.
4. Speak to potential sponsors.
I will contact all the high-tech firms with offices in Toronto, and give them the same presentation and ask for money. Money to form a non-profit corporation and to pay a small core of programers to work on the project fulltime.
5. Seek government money.
Same as #4, but government instead of industry.
Also, by the time you have become 'independently wealthy', you will probably be old, decrepit and be only be able to use the money to pay for a better funeral (or leave it to a bunch of spoilt brats who will spend the rest of their lives fighting each other over the inheritance).
Forget about all this crap. Just get on and live the life you want to live *NOW*. If you want to put more time into developing opensource stuff, just get on and do it, even if it means compromising in other, less important, parts of your life (like being enslaved to becoming financially independent). While you figure out all those complicated plans, your body is busy dying.
3.) bandwidth
4.) domain names
5.) server hardware
For some people, $50+ per month can be quite a pinch.
Frequently, the need for money comes when some developer has a financial crunch and is faced with the need to work more paid hours. He can either resign from the project or ask for money.
Another common case is that the user and developer base grows and bottlenecks appear. Examples include mailing list moderation, design lead, and software repository moderation. Sometimes, these bottlenecks require someone to commit a significant chunk of time to the project. When this happens, the developers as a whole fish around for both money and someone gullible enough to drop their real job and work on the project full time.
In the end, its a developer's dream to nurture his project that leads to the desire to let it grow and the consequent need for more funding.
Another way that you can make money off open source is by leveraging the reputation you get from being an open source developer. In my own case I created POPFile an open source email filtering/sorting tool which some people use for spam fighting.
Because the project is open source many people are using it and my knowledge of spam went up, because of that I got invited to the MIT Spam Conference. Because of that I'm now a paid consultant for ActiveState on their Anti-spam Task Force. I never would have been given that job or money if it weren't for the credibility of the open source tool I created.
In fact it's clear that ActiveState *likes* the open source part of the equation because having me there buys them credibility. (No they are not paying me to write this entry).
In addition to ActiveState I got other offers to consult for people on spam and email. This is a good way to make money without affecting the open source project. Nothing in POPFile has even been done for cash.
John.
I guess I will add the to troll and take another karma hit.
The very nature of an investment means that you are buying an asset that has a positive financial return.
A software project magically becomes a good investment when it starts returning money. The idea of asking for investment before you have a financial plan is guaranteed loss. It is no different than asking for alms.
I hate it, but those stupid affiliate web sites that clutter cyberspace have investment value, even though they really don't add much value to the net, while good OSS projects don't have investment value. This happens even despite the fact that the OSS project is adding a great deal of value to the planet.
Unfortunately, the economic thing is too often hidden from the IT staff. Yet, the whole investment thingy has driven software and IT development since its inception. The IT jobs existed because we were all building a capital asset, not because we were making interesting things happen on a screen.
The last tech boom, where people no longer had to show a return on investment messed up our minds, and we have to get the financial end back intact to thrive. That means programs that actually produce financial transactions.
I am a troll because I believe the value of OSS is in its being open, and not in its being free.
I believe with all my heart that software should be creating a capital asset.
When programming, I ask myself both about what I am adding to the technology as well as the financial assets of my employer.
This does not necessarily mean that we need to work for the productization of all computer code, but I really wish the OSS community would spend a little more time thinking about getting cash piped through its pipes.
As such, I found the shareware ideal much more appealing than pure OSS. The shareware concept essentially lets people learn from software, but demands payment when the software is used in a business setting.
I always felt proud when I managed to convince a company to buy a shareware program, because I was contributing to the software economy.
The Oracle approach has been quite successful. Students and schools can get the software for free, but businesses must pay for it.
In some ways, my ideal would be that the code is open for review and tweaking, but there is a license to use the material.
One possible mechanism for funding technology would to include a licensing layer in the technology. Basically each object in a build would record its source. Imagine a database filled with the names of individuals that contributed objects to a code. The company could then pay a license through a mechanism that distributes cash to the object owners.
With such a mechanism, OSS developers would have a cash flow. They would then find that they could invest in more code to increase that cash flow.
It really seems to me that the goal of a community should be the enrichment of the people in the community. It's never bothered me when a company has to pay for a computer license as that money goes into the community.
I have been thinking on this problem quite a bit lately.
.. ad infinitum (until we cannot split anymore [1 penny] or dependencies run out).
Consider the following:
Company XYZ launches an OSDN like websight that maintains a dependency graph of open-source projects (e.g. FOO project depends on code from X,Y,Z and libraries V,W).
The community can vote on and manage those dependencies and their relative importance. Any entry in the project database only lists it's direct dependencies (which themselves may have others). The system will self-organize and may require some interesting checks and balances but could be done.
The system perhaps begins as a donation website to "donate" to projects that you want to support, but could very quickly mobilize marketing to lobby companies that use projects to donate to those projects, etc...
The company running the website takes a commission from every "donation" or payment. We want this. This incents that company to continue and keeps it in business.
The balance after the commission is split 50% / 50% between the project principals and the dependencies. The 50% going to the dependencies is split according to the voted importance of those dependencies on the project. For each dependency, 50% is taken for that project and the other 50% split amongst it's dependencies,
All proceeds that go to project principals are really just numbers in accounts on the website associated with open-source projects, and while eventually it may make sense to do further breakdowns according to project members, in the beginning, the company running the website could just issue a check on a periodic basis to whomever the agreed-upon organization or person is that is associated with that project.
If you allow this model to evolve over time and provide the company running the website with enough financial motivation (e.g. good commissions), it is highly likely that it would become a mobilizing force for raising funds for projects.
But the best part would be that open-source authors could collect royalty checks for many years for their work, much like book-authors do.
This model may not be perfect, but I think with the right company and a willingness to evolve this basic model into something that fits with community needs, it could become a powerful force for rewarding and compensating open-source contributors.
It is your personal duty to fight for what is right on a daily basis. Ignoring injustice is identical to approving
The only other thing remaining is to find muses for all the developers. That could be a tough one!
--
Luck is just skill you didn't know you had.
These are exactly the sorts of little costs that have currently cropped up -- internet costs.
We've done well for some of these things -- we're using the webspace SourceForge provides for our project, for example. But domain registration still costs, as does our mailmap system.
And the project has become big enough that I can quite easily spend an entire 8+ hour day working on it, and I frequently do. As the lead developer and the project administrator and the primary project evangelist and primary technical support person, I spend my days replying to e-mails, providing end-user technical support, writing press releases, writing code, debugging code, trying to advertise our project, writing documentation -- etc.
It's all a big job. Thankfully, I have a good team of developers that has helped take some of the pressure off. Our build manager does a fantastic job, as does our webmaster (my efforts at both of these jobs in the earlier days was terrible :) ). My backup project administrator has done a fantastic job of managing bug and feature requests, and one of our testers/plug-in developers who knows CVS better than anyone else has been invaluable in helping me whenever I run into something odd with CVS (and has been a huge influence in how our CVS tree is currently organized, with more to be done after our next GA release).
But that still leaves a ton of work to do. And we're at that jumping-off stage where we're building up more and more "true believer"-type users, who are using the project in some serious projects of their own, and I'd hate to be forced to _decrease_ my participation (at least before our next GA release) because of finances.
Yaz.
some god damn kiddie does the same thing it took you 4 years to do, in two months and gives it aways for free. Nope. Hobbists always win.
Having once been one of those kiddies, I can say that this only really applies to the most simple applications.
The jSyncManager looks deciptively simple on the outside (on purpose -- we have a very good GUI developer who takes HCI stuff pretty seriously involved in the project), but it's inner workings are more complicated. Its multi-threaded, object oriented protocol stack is beyond even the most talented "kiddie".
It's an exceedingly difficult thing to "get right", in part because no official protocol specs have ever been published.
Anyhow, for us that has never been a fear or concern. A bigger concern is that at some point in the future Palm will simply drop their synchronization protocol altogether, or make it significantly more difficult for us to reverse engineer.
Yaz.
I think that a non-profit organization that has the specific goal of raising money to support the Open Source community would do a great service. It would collect money and pay for expenses of certain projects. Companies could donate money and get tax write-offs for it. The non-profit could also allow companies to earmark a certain percentage of the funds to go to a certain project. If the company wants to switch entirely to open source, they could donate to the project(s) they need the most for the switch. The companies would be more willing to contribute to open source as they are getting tax write-offs along with something useful to the company.
IANAL, but this seems like a viable plan to me.
-hoch
2*31*37*263
Crossing the chasm, whilst it's intended audience is proprietory IT firms, makes the point that consultancy is often *the* cash generator in the early market.
A viable Open Source project will almost *always* require consultancy at the firms who choose to use it. If there's a better marriage between the commercial sector and Open Source projects I couldn't think of it. The challenge is to make sure there are 'no strings' and that each side thinks the share is fair. It strikes me that the 'best' Open Source projects are alread doing this (think MySQL, apache, etc).
As a further example, the company I work for sets aside a percentage of its turnover for project funding, our most recent being joining the FSF corporate sponsor programme (try and encourage your own companies to do this - they need waaaaaaaaaaay more than they've picked up so far - companies who use Open Souce *should* fund it!).
Implementors in the 'trenches' at Open Souce 'early adopters' should make the ideal funding partners for coders who, let's face it, made all this possible in the first place...
Just my £0.02
Just write and sell documentation and you'll make good money for the project. If you don't know how to do it, ask these guys.