How Do You Fund an OpenSource Project?
Stuart Herbert asks: "I maintain Generic NQS, a successful, and long-standing, GPL'd project. I'd love to be able to work on this project (or perhaps other GPL'd stuff) as the day job (who wouldn't? ;-) but to do that I need to find funding from somewhere. I'm wondering how many Slashdot readers have been successful in achieving this holy grail without having to setup a company themselves to sell the product, and how they did it. "
You may be able to get government funding for new technology ventures. This varies depending on the local governments: city, province/state, federal..
It seems that government funding is really interested in job creation vs. technology. The key is to say that your project will create a large number of new jobs and generate $$
Another option is to generate $$ by advertising on your website. See if you can get corporate sponsors that would use your product or would work in conjunction with your product to pay for advertising.
For example, here's my game plan. I have a website called Introduction to Data Communications. It is a book about data communications (surprise!). I tried the publishing route but either the contracts were too restrictive, or required me to give away the complete rights to the book or the publishers wanted something very specific (Can you expand the two chapters into 450 pages?). So I'm giving away the book gpl'd. I have received many calls from post-secondary institutes requesting the zipped/tarred html, pdf or ps version which I hope to have ready this week (sigh..)
I will be contacting every possible company that has anything to do with any one of the over 300 pages of data communication. I figure if I can get one advertiser at $10/month per page than I will be so happy that I will be whistling dixie out my asshole. We'll see. Maybe somebody will rip off my website and do it themselves, now that I've blabbed to the world....
SourceForge is a service provided by VA to the open source community. The URL is sourceforge.net. They provide a complete hosting solution, including disk space, CVS repository, mailing lists, web space, and many other services that I'm only starting to explore. It appears to be well funded, with three people and quite a stack of hardware. I'm trying it for my own project, enhancing the Print plugin for the Gimp (check it out, although I only got started yesterday with SourceForge).
Another possibility would be to contact Red Hat and VA to see if they would be interested in funding your project (i. e. hiring you as an employee or a consultant).
Whenever I think about this, my thought is a dual license. Release a library under GPL (to prevent linking against non-GPL I think, if not, substitue another license there) and offer to release under a different license for a fee. This way, the software is out there, commercial companies can benifit, and the author can benifit. It would require that all submitters of patches/additions do so with a dual license (allowing the maintainer to relicense for a profit) and it would be a good idea to give some profits back to those that made significant contributions to a project. I've often thought about this, but never tried it, which is why I'm posting it here I suppose.
I'm working on a really cool project right now at work. It's a Mason/mod_perl-based front-end to RRDtool. Since its development directly benefits my employer, they have no problem letting me work on it. Once I get this thing into a state that is worth distributing, it will most likely be open-sourced.
The easiest way to get your project funded is to get a job at a place lets you do "project" work and is also open source-friendly like my employer. Chances are, if your project is cool, there is some commercial potential for it.
Good Luck!
Chris
The most common one being: No funding at all. Do it in your spare time. Work days, code nights. For Example AIDE is not funded by anyone.
Others that I have seen include your own company: See GNOME, Miguel de Icaza
Government funding: Gnupg
As a part of your work: Redhat labs,Xfree86
Public project house: CoSource, SourceXchange
AIDE - Advanced Intrusion Detection Environment
One cool way to do this is to sell your data. You're often writing a new tool because you want to work with data more easily. Well, because you're the author, odds are good you know how to use your software better than the average bloke, so you might be able to turn a dime working on the data your software is designed to handle.
:)
For instance:
1. If it's a game, sell the artwork, levels,
and sound files. These are called "mission
packs" in the game industry.
2. If you're writing a GUI like GNOME or KDE,
then sell the artwork for "themes".
3. If you're writing a music composition
proggy, then sell music. Um, nevermind.
Better keep your day job on this one.
Guess it goes w/o saying, but some data is easier to sell than others.
Anyway, if working on the data is too much of a load, or you don't want to work at that, then try to partner with someone who is good at it. In exchange for splitting the profits, he gets a piece of software that is custom-designed for and around his artwork/etc, and you get gorgeous data to help demo the killer function of your proggy, and you both get a little scratch, hopefully.
I think that there is scope for a slightly different kind of relationship between employee and employer.
;-)
RedHat, SuSE, VA etc. all make money from things that they do not own fully. Since they rely on having good software to bundle with their distribution, it follows that they should take an active interest in ensuring that software gets written. (OK, nothing mind-blowing in there
Instead of the CoSource type model of doing a single task for money, the Free Software companies should fund individuals to write software full time. That is, pay the individual a full salary with the guarantee that said individual will produce an output that an old-style proprietry software house would accept. (that varies wildly, I know)
I can appreciate that many companies would have a problem paying someone to write code that any other company could use, so maybe some kind of charitable foundation (mmm, tax breaks) is the way forward. (didn't I read somewhere about a foundation for free software advocacy being set up? does it involve bob young?)
Rather than do a job, then leave as in CoSource, you would be a permanent employee of a charity. (Free Software Foundation?) Companies that use free software would donate to this charity, which would then use the money to pay people.
Hmm, does this fall under a charity? It could be described as a way for companies to dodge tax. (do employees of charities get tax breaks?)
I've always thought that the FSF could do more to promote itself - sell stuff through it's website (promoting GPL e-commerce?), advertise, employ. Why not employ a whole bunch of MS marketing gurus to promote the FSF? I'd imagine that a lot more people would buy GPL'd software if they were aware they could.
I think that having the software available to a company is more desirable than simply relying on the Free Software Community to do what you want. If paying a charity that employs highly-motivated individuals to write lots of code can be shown to be "profitable" then companies may go for it.
Anyway, I'd contact the FSF. I think they'd have the best idea on how to make writing gpl code pay for the roof over your head.
----- Documentation is worth it just to be able to answer all your mail with 'RTFM' - Alan Cox.
I get paid to write open-source software.
I'd rather not tell the specifics of my case, but I would love to disclose my method: On your own time, do a substantial amount of development on an open source project of the kind that your company wants, or better yet, needs to survive. Then present it to your boss as "a FREE, nearly-completed solution to our problem!". Make sure your project entails continual development.
Hooked on OSS worked for me!
Washington, DC: It's like Hollywood for ugly people.
Okay, I can't answer your question. But, I think it is worthwhile as an exercise to go through the funding models that Eric Raymond presents in two chapters of The Magic Cauldron: Use-Value Funding Models and Indirect Sale-Value Models. Asking yourself how each of these models could apply to you, or why it couldn't, might help clarify the question.
It may be that you don't have a product to sell directly to customers (I'm not familiar with the project). What you might have to do is pitch the idea to somebody for whom the project would have value, still as an open source project.
The net will not be what we demand, but what we make it. Build it well.
Try looking at CoSource. I've been able to develop GPLed code and be paid for it
(well, actually I think the check is still in the post, as I haven't got it yet, but I digress).
There's quite a bit of cash floating about and CoSource has a few ideas on how to
make cash from software you are already developing, so I'd urge you to take a look.
Another avenue is sourceXchange, who cater for the corporate taste; but you
will have to convince a reasonably sized company to sponsor you.
Savant
I actually put a couple programs out on the net thinking that if a company makes money on the programs I wrote they would be kind enough to send me money for them. Well, actually at first I asked for money if my programs were used commercially and instead all I got was hate mail from people who I guess didn't understand why I wanted to make money on my programs :(
:(
:) (I'm the author of ASP2PHP and Naken Chat) and people sometimes thank me (and of course people still flame me cause I'm not GPL.. :( )..
:)
I've also actually had multiple people tell me that if I add such-and-such feature to my chat server program they would pay for my time. After I add the feature I never hear from them again.
/me bends over
Well.. at least they were fun programs to write
Anyway..
I would like to comment briefly on Stuart's project, Generic NQS. I'm sure that there are a million projects out there that "really need" some sort of funding, but I am surprised that nobody's taken on NQS yet.
For those who don't know, NQS is a load-balancing daemon for just about anything that can be queued, and it can be run on just one machine or a cluster of them. Very flexible, powerful stuff; useful for those of us who need more power than "at/batch" gives us.
I would think that a large application provider (ala SAP/R3, or Oracle or Informix) who is committed to Linux would be interested in funding your project. Our own in-house database product (Datatel Benefactor running on Ardent's Unidata database) is running on Tru64-Unix, but we have a very complicated hierarchy of users here and we needed the control and capabilities of something like GNQS to maintain order that could not easily be maintained using atq's and the like. This way, too, should we ever move up to another server in addition to the current one, we can balance across two nodes.
My point is, perhaps in your specific case you need to get noticed by a major applications vendor who has a use for the flexible scheduling and load-balancing capabilities of your product. The average guy doesn't have a need for it; I only found your product by sheer accident one day, and now it's my organization's first foray into GPL'd software. (Since its phenomenal success, we have added a few more.)
While I am not an expert on the matter here is a suggestion: :)
There is alway RedHat.... :)
1. find a company that uses your product, as a main part of their solution, preferably one you would want to work at
2. Then along with working on their solution you can also work on yours along with adding specialized functionality with the product, as long as it maintains its GPL license which it has too:)
3. In effect you become a little mini-VAR just for their company. This allows you to get paid for developing you product.
4. It is just one suggestion, It may not be the best or the most obvious but I beleive it is a valid suggstion.
------------------------------------------------
As it happens, there is an article at Byte on exactly this issue at the moment. I don't agree with everything in the article, but it is worth a read.
Paranoia isn't an infectious condition, it's a way of life