Getting Paid to Write Open Source Code
Thanks to Norm J for pointing out the recent Doc Searls'
article that talks about the growing number of ways to earn money while writing open Source code. This article is especially interesting in light of CoSource and SourceXChange. So, buckle down, and have fun-get paid to do what you love.
I've been proposing something similar for years, but with the numbers reversed... I can't implement it, myself, but perhaps these guys can.
SourceXchange allows a single big sponsor to write a spec and then hire thousands of programmers. My (unimplemented) Programmer's Agency would allow a single big programmer to write a spec and then solicit thousands of sponsors. Each sponsor would contribute a small amount, which would then be held in escrow by the agency until the programmer completed his spec. The agency could then take a 10% commission on the programmer's earnings. From the sponsor's perspective, the agency would seem just like a mail-order shop selling commercial software... except it would be legal to copy what you purchased -- and you'd have to wait for it to be
written before you received it. From the
programmer's perspective, the agency would gather
thousands of small software purchasers into a
single rich purchaser with diverse interests.
Why can't the same companies implement both ideas?
--Ed Kiser
I quit my job 1 year ago.
I started my own company.
I write exactly the software I want.
I got investment and I have revenue.
It's not open-source, although I have
contributed in the past.
But, I completely love and enjoy what I do.
IMHO, open-source is like a hobby. If you can't imagine or find a way to get paid to do what you love, than that's your problem. Whether open-source or commercial. The openness or closedness of something is not what makes it fun or interesting. I'm sure the engineers who build stealth bombers at Skunkworks still have lots of fun.
Don't equate commercial developer with "suits" and "cubicles" and "dilbert"
Most of the people I know of don't have cubicles, or suits, they work in gargages in Silicon Valley.
If your attitude is "once I get paid to do open-source, it is no longer fun, and I have commitments and responsibilities and obligations, etc..."
then you have a serious problem with commitment, integrity, personal responsibility, and working with other people.
Is this a symptom of generation-Y, the real *ME* generation? It's kinda like "fuck everyone. I'm going to work when I want, on what I want, and no one tells me what to do. If you don't like my bugs, fix it yourself. Open-Source lets me get away with being a lazy irresponsible person. Because I can always fall back on 'if you dont like it, you have the source to fix it yourself' "
Is this really the essence of the Slashdot community? I don't want to be obligated to anyone?
The article, as far as I could tell, did not mention dissention. What if a developer produces crap, or nothing at all? He may not get paid, but now H-P or whomever is three months behind where they wanted to be. If an H-P programmer doesn't work, he gets a pink piece of paper...
The enforcement cannot be a strongarm contract -- individual developers do not have personal attorneys, and aren't willing to risk a lawsuit for $500 - $5000.
How do coSource, etc. handle enforcement on the development side?
Posted by FascDot Killed My Previous Use:
I don't doubt that you'll see proprietary companies touting the openness of their source code if you aren't already.
And yes, "Open Source" is a buzzword.
And yes, I also hate free (beer) software disguised as Free (speech) software.
BUT, you seem to be confused on number of issues.
First, Netscape is not the only corporation to have opened its code. Cygnus, IBM, Sendmail Inc and many others have always or recently been open.
Second, your only objection to sourceXchange and CoSource seems to be that the developer makes money. What's wrong with that? No one, not even RMS, objects to developers getting paid to do what they love. The objection is proprietary "standards", secret source code and lack of Freedom.
As for quality getting lost: What exactly do you feel will lose quality? Linux? These companies aren't hiring Linux developers, they are hiring developers for unrelated, Open Source software. And even if some of them wanted things like device drivers or kernel mods, they'd have to pass Linus to be official anyway.
--
"Please remember that how you say something is often more important than what you say." - Rob Malda
Here's the thing. People always use the "programmers will starve" argument against Open-Source and moving the whole industry in that direction. The thing is, they're half right. If the Open-Source model becomes the standard for the industry, those programmers who cannot adapt to it will either lose their jobs or have to take severe pay cuts.
However, there is still big money to be made. Why? Here's the deal: Open-Source has many advantages. The biggest advantage is that maintenance turnaround times are extremely high. However, Open-Source does have one flaw: initial development time, be it for a piece of software or even just a major feature being added to a piece of software, is very slow.
And that is where the money is to be made.
Why? Well, Open-Source proponents say that the initial development time does not matter. However, they're wrong: it matters. A great deal. People outside the industry care about it even if people in the industry don't. This isn't a bad thing, though, because that's where the money comes in. Imagine a company which writes only Open-Source software. Of course, you have the idea of selling support and such, but let's face it, that alone is not going to pay all the bills. It'll sustain the tech support division but it won't fund programming, especially not on completely new projects. However, what happens when that company also does consulting? That is, it is hired by others to write completely new Open-Source software or add large new features to existing software.
Why would people do this? Individuals probably would not, but businesses would. Why? Because they need software now. They can't depend on waiting for features to naturally evolve, as features do in the Open-Source model; it simply takes too long (and there is no guarantee that the feature you want will evolve at all). That is where the companies come in: what they are selling still is not the software itself. What they are selling is the ability to get that software out more quickly than would otherwise happen. It's like shipping via FedEx; you can save a lot of money by using the regular mail, but FedEx will get it there much more quickly (plus they're more reliable than the postal service).
There's money to be made in Free Software. You just have to know where to look. And ironically enough, Open-Source's only flaw is the reason you can make money from it.
I don't know about other authors, but before I do a minute's work for any of these groups, I'd have the license stated in my contract.
It doesn't matter much who owns the code as long as the license is fair. You can't take back the BSD license or the GPL.
Don't forget the non-profits like SPI and FSF. You can fund free software through them, and write it off your taxes, too. And I think they are more appropriate stewards of free software projects than companies like O'Reilly and Associates. Given O'Reilly's recent anti-GPL agitation, a lot of free software authors would not want to do business with them. It's a shame that HP chose them for an associate.
Thanks
Bruce Perens
P.S. use bruce@va.debian.org for email, my DSL provider went out of business and thus perens.com is down.
Bruce Perens.
One of the good things about the volunteers writing free software is that developers can come and go as their interest inspires them. A bug can be fixed or a new feature added by a newcomer just as well (?) as a member of the original core group.
I think that with these contracting arrangements new developers will not wander along and help out. The original core group (or person) will work on it until it is done. I didn't see any mention of how to compensate someone who jumps in at the last minute and fixes a bug or adds the final feature. How would the latecomer be compensated? I would guess that the core group will not change for the life of the project.
If the projects span a few weeks or months, then the group size will not have time to change. I think of KDE or Gnome where developers are more likely to come and go and contribute widely varying amounts of code to the project.
The idea that all bugs are shallow given enough eyeballs doesn't say if the eyeball that found/fixed the bug was a member of the core group of developers. A newcomer could have found/fixed it.
This may not even be a big deal, I don't know.
Your password has expired, please login to change it.
So are you saying that getting paid to write code is bad? Or that even if companies are advertising open source work, they are actually producing proprietary software. This conversation is pretty important to me at the moment, as I get set to launch a consulting and service firm oriented to *nix. I've hired one programmer full time, though he won't be programming full time, and another part-time to work on specialized programs. It would be nice to be able to get programmers to work on specific projects without having to pay them, but it's my opinion that they need to be paid for their time, especially since it is of value to me. My biggest problem is getting the finances to pay programmers what I think they are worth. I prefer to program myself and if I had a choice, I would not mind programming for little as long as I knew that I would be taken care of, but in my opinion programmers, especially good programmers, generally are not paid what they are worth. If anything management tends to be paid more for a job that is no more difficult than coding. The whole reason for hiring programers is the fact that I have customers that need a solution to their current problem. I intend to make my money off the consulting portion of the business, though I can forsee some projects that I will not open-source, quite a few can be released as open-source once they are complete and indeed I wouldn't mind making some of them opensource in the beginning to get professional help that I cannot afford at the present time. Comments? Thoughts? Lando
/* TODO: Spawn child process, interest child in technology, have child write a new sig */
This is a very interesting concept. What it allows for, in a sense, is something of a "mercenary" subculture of programmers. Instead of paying somebody a full time salary and benefits, and dealing with all the hassles that come with hiring somebody, a company could enlist the aid of a "hired gun" to get the job done. Yes, we have contractors now, but this allows for a completely different methodology. Instead of seeking out programmers/contractors, we have basically mercenary "contracts" (bounties even) available to anybody who thinks they can get the job done. Obviously, this means there is a level of trust that:
:) God I love(d?) that game!
a) the job will get done by the developer
b) the job will get paid for by the company
This is definately a step in the right direction for the Open Source movement. Not only does it allow people to make money, at the same time it still helps to furthur the community by making sure the code is open. The peer review is also a great way of making sure that quality code is produced. Not only that, but now, if a company needs support for certain hardware for a specific OS that doesn't have it, or some similar problem, and just wants it to get done, and does not care about owning the rights to it, it can get done quickly and efficiently.
Now you too can be a merc! Just sign up, hire some nerdy thugs, and make a killing! (figuratively speaking of course)
I can't help thinking of Mechwarrior 2: Mercenaries
-[Blaine]- "'Oh dear,' says God, 'I hadn't thought of that,' and promptly vanishes in a puff of logic."
The author of this article hopelessly confuses the meaning of "free software". He quotes a lot of Stallman to explain the slight ideological differences between "free software" and "open source", but then continues using the word "free" in the gratis sense to draw a comparison between "free software" and the software that these two companies are trying to help people create. Unless I greatly misunderstand the qualifications to be "open source", the products created under these kind of contracts will be "free software", and also will be free (gratis) to all who want them. The monetary transaction involved is to have the software created in order to sell services or add value to existing proprietary software.
I see this as (necessary?) steps in organizing the community, and I think there will be some growing pains in making it a success:
... debate ... over this.
/. reader, but the mass media doesn't make a distinction. I think it is important to continue to define the differences, so that the communities involved are not confused by the public.
It will be especially interesting to see how all this goes down with Richard Stallman and the Free Software stalwarts.
I don't recall hearing anything (yet) from this corner. I imagine there will be some
Whatever disagreements may persist between RMS and others in the often fractious movement he
started, the difference between Free and Open is now clear. The two can no longer be mistaken for
synonymous, and companies looking for open source development don't need to stumble over the F
word.
Perhaps it is clear for the discerning
often a great idea would come up and somebody would say, "Oh it would be really nice if somebody
worked on this." But because it wasn't really sexy, or because it wasn't an overnight hack, it would just go undone.
This is always going to be a significant problem. Not just for specific projects, but for
things like documention and quality control / testing. People may want to code it, but do
they want to take the extra steps to make it maintainable? This is an area I didn't really see addressed in the article.
This seems to be yet another case of Slashdot reporting old news. We at Subsume Technologies have been trying to get the boat floating in the "pay for your open source" movement since last year.
Put quite simply, nobody seems to be eager to to give funding to projects that may potentially help a competetor, regardless of the benefits of the open source model. For some reason, it is OK to buy the same word processor as your competetor if it comes from Microsoft or some other closed-source shop, but the second you want to release the source, they think they're just giving a free ride to someone else, which doesn't sit well with them.
We've taken pitches for software a company wants implemented, we've given pitches to companies for software they need implemented, and we've done software in advance in hopes of finding the market that will support it. In all cases, the mention of our intention to make the source open has been met with massive resistance.
In short, it simply won't fly. The market is not yet ready to contribute to the open source movement, they are only ready to plunder the works that already exist. It will be a good five or ten years before the more clueful companies show enough benefits to topple the old model of proprietary computing.
Last year my company sponsored what we called a "Linux Bounty"; we identified a dozen or so Open Source applications that we wanted ported to our operating system. We put dollar amounts on each and set up some simple rules:
- First acceptable implementation gets paid
- We decide what's acceptable
- We'll update in real-time a list of projects for which we have received implementations
- Whatever copyright terms applied to the original source base applied to the submitted code
We got a half-dozen implementations; for those which were useable, we paid. The most expensive item cost me $1000 out of my budget, and was cheap at the price.The biggest unanswered question about sourceXchange indeed lies in the matter of peer review. If I'm going to write a check for a few grand, I'm going to want to have some degree of trust in the technical judgement of the person or persons deciding if the submitted work meets the requirements. I expect I'm going to have to write wickedly precise requirements with respect to coding standards; things like "no compiler warnings beyond those generated by the starting source base", etc. Things that I need guaranteed if I'm going to be able to support the resulting software.
All in all, though, I expect to be a sponsor of a variety of projects. Start small, work my way up as I gain trust in the process. I don't like the idea of starting small; it will cost me time I can ill-afford. But it's the only way to mitigate the risks involved with someone else making an accept/reject decision on my behalf.
Jason