I've thought about this topic for years.  The conclusion that I've come to
is I never want to charge royalties for software I write.  It's a terrible
way to make money off software given the nature of open-source and how
open-source markets work.

As the OP has stated, the common ways of making money off open source
software are support and better jobs because of a popular project.  I've
tried both these, I even moved my family to California so I could be
present physically as node.js got off the ground.  I was rewarded with many
good salaried node.js jobs even though I never licensed a line of node code
I wrote.

But I like to experiment and do my own thing, so my latest strategy is to
become an open source mercenary.  I'll spend all day writing open source
projects that interest me, but allow people to sponsor various projects
that they want me to focus time on.  This month I'm working full-time on
the js-git project because my kickstarter for it was wildly successful.

I'm inspired by people like Mike Pall (luajit) and Marijn Haverbeke
(codemirror and tern.js) who seem to be able to work on their own projects
and still make money.  There are no commercial licencing deals for any of
their projects, rather companies sponsor features they wish existed and the
result it donated to the entire community for free.

Over the years I've asked many of my employers who were paying me to write
open source node.js modules why they see value in paying me.  I would be
writing open source software even if they didn't pay me.  The answer was
always they saw value if directing and prioritizing what I worked on.  Even
if their competitors could freeload and use the code I wrote.  My employer
had a strategic advantage because it was written specifically for their
needs.

Now, I feel no shame in charging subscription fees for media content
(screencasts, books, etc), but I never seem to have time for that.  I'm
more a code-slinger than a media producer.

I hope this helps.


On Tue, May 7, 2013 at 2:10 PM, Mark Hahn <m...@hahnca.com> wrote:

> You can write any license you want.  The different phases of licensing
> would all be described in one license.
>
> However, you would have to use definitions for the different phase that
> are totally unambiguous.  Using terms like "making $100,000" would be
> ambiguous.  Using a period of time wouldn't be.
>
>
> On Tue, May 7, 2013 at 12:02 PM, Isaac Schlueter <i...@izs.me> wrote:
>
>> (IANAL.  I'm fantasizing.  Please ignore.)
>>
>> I've often thought it would be worthwhile to have some kind of "free
>> once I make some money" license.  Like, if you're a not-for-profit
>> entity, you can use this code under BSD today.  If you are a
>> for-profit enterprise, you can use this code freely for profit as long
>> as you pay me $100.  Once I've made $100,000 from this code, it'll be
>> released for all under the BSD license.
>>
>> Neat idea for a startup or something :)
>>
>>
>> On Tue, May 7, 2013 at 9:06 AM, Martin Cooper <mfncoo...@gmail.com>
>> wrote:
>> >
>> >
>> >
>> > On Tue, May 7, 2013 at 8:39 AM, Alex Kocharin <a...@kocharin.ru> wrote:
>> >>
>> >>
>> >> You can use dual-licensing. Let people choose GPL or commercial
>> license,
>> >> so anyone who can't use infectious type will be forced to pay...
>> >
>> >
>> > ... or simply choose a different package. It's open source; if people
>> don't
>> > like the terms, and there's a need, someone else will write one with
>> more
>> > acceptable terms. You won't "force" anyone to pay.
>> >
>> > --
>> > Martin Cooper
>> >
>> >
>> >>  --
>> >> // alex
>> >>
>> >>
>> >> 07.05.2013, 16:51, "Saleem Abdul Hamid" <meel...@gmail.com>:
>> >>
>> >> Is there a license that says most people can do whatever you want with
>> my
>> >> stuff but if Microsoft (example) uses it to make 100 million dollars,
>> I want
>> >> to negotiate for a piece of it? That's really the question everyone is
>> >> asking, although they're too shy to say it, because wanting to make
>> money
>> >> off of your stuff is considered bad form in certain quarters.
>> >>
>> >> Personally, even if a huge company with a lot of money was using one
>> of my
>> >> projects as an integral part of a moneymaker, I'd be happy with a
>> very, very
>> >> fair (for them) royalty that they would probably not even consider
>> >> significant. But if you use the MIT, the question of negotiating
>> anything
>> >> doesn't even come up.
>> >>
>> >> To be clear, I want a license that is not infectious at all. That lets
>> >> people use, modify, redistribute, all that good stuff. But just leaves
>> open
>> >> the door that if someone gets really rich using my project, I can
>> benefit
>> >> from coming up with the idea and doing the work.
>> >>
>> >> Is there a license that represents this?
>> >>
>> >> On Friday, December 14, 2012 10:38:05 PM UTC-5, Forrest L Norvell
>> wrote:
>> >>
>> >> On Fri, Dec 14, 2012 at 7:29 PM, David Herron <da...@davidherron.com>
>> >> wrote:
>> >>
>> >> I'm curious about the preferred license for modules that are
>> distributed
>> >> through the npmjs.org repository
>> >>
>> >>
>> >> We discussed this a bit at NodeConf summer camp this year, and the
>> >> consensus was pretty strongly in favor of BSD or MIT licenses, or at
>> least
>> >> pretty liberal, commercial-use friendly licenses (including the Perl
>> and
>> >> Apache licenses).
>> >>
>> >>
>> >> In particular is there any legal barrier to using GPL in such modules?
>> >>
>> >> As far as I understand it, the legal barrier would be whether a module
>> >> which uses a GPL'd module is derivative of that module.  I don't think
>> that
>> >> it would be, but then the LGPL license does exist for a reason.
>> >>
>> >>
>> >> Isaac can speak to this more authoritatively than I can, but npm itself
>> >> prescribes / proscribes no particular licenses. You could attach GPL3
>> >> licenses to your modules if you wanted, but uptake would probably be
>> >> hampered, especially if there were some kind of associated
>> Canonical-style
>> >> contributor's agreement. Node is still pretty much the wild west, and
>> it's
>> >> tough to say if today's random hack project might not become tomorrow's
>> >> startup idea, and I think most devs want to keep their options open.
>> >>
>> >> F
>> >>
>> >>
>> >>
>> >> --
>> >> --
>> >> Job Board: http://jobs.nodejs.org/
>> >> Posting guidelines:
>> >> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>> >> You received this message because you are subscribed to the Google
>> >> Groups "nodejs" group.
>> >> To post to this group, send email to nodejs@googlegroups.com
>> >> To unsubscribe from this group, send email to
>> >> nodejs+unsubscr...@googlegroups.com
>> >> For more options, visit this group at
>> >> http://groups.google.com/group/nodejs?hl=en?hl=en
>> >>
>> >> ---
>> >> You received this message because you are subscribed to the Google
>> Groups
>> >> "nodejs" group.
>> >> To unsubscribe from this group and stop receiving emails from it, send
>> an
>> >> email to nodejs+unsubscr...@googlegroups.com.
>> >> For more options, visit https://groups.google.com/groups/opt_out.
>> >>
>> >>
>> >>
>> >> --
>> >> --
>> >> Job Board: http://jobs.nodejs.org/
>> >> Posting guidelines:
>> >> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>> >> You received this message because you are subscribed to the Google
>> >> Groups "nodejs" group.
>> >> To post to this group, send email to nodejs@googlegroups.com
>> >> To unsubscribe from this group, send email to
>> >> nodejs+unsubscr...@googlegroups.com
>> >> For more options, visit this group at
>> >> http://groups.google.com/group/nodejs?hl=en?hl=en
>> >>
>> >> ---
>> >> You received this message because you are subscribed to the Google
>> Groups
>> >> "nodejs" group.
>> >> To unsubscribe from this group and stop receiving emails from it, send
>> an
>> >> email to nodejs+unsubscr...@googlegroups.com.
>> >> For more options, visit https://groups.google.com/groups/opt_out.
>> >>
>> >>
>> >
>> >
>> > --
>> > --
>> > Job Board: http://jobs.nodejs.org/
>> > Posting guidelines:
>> > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>> > You received this message because you are subscribed to the Google
>> > Groups "nodejs" group.
>> > To post to this group, send email to nodejs@googlegroups.com
>> > To unsubscribe from this group, send email to
>> > nodejs+unsubscr...@googlegroups.com
>> > For more options, visit this group at
>> > http://groups.google.com/group/nodejs?hl=en?hl=en
>> >
>> > ---
>> > You received this message because you are subscribed to the Google
>> Groups
>> > "nodejs" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> an
>> > email to nodejs+unsubscr...@googlegroups.com.
>> > For more options, visit https://groups.google.com/groups/opt_out.
>> >
>> >
>>
>> --
>> --
>> Job Board: http://jobs.nodejs.org/
>> Posting guidelines:
>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
>> You received this message because you are subscribed to the Google
>> Groups "nodejs" group.
>> To post to this group, send email to nodejs@googlegroups.com
>> To unsubscribe from this group, send email to
>> nodejs+unsubscr...@googlegroups.com
>> For more options, visit this group at
>> http://groups.google.com/group/nodejs?hl=en?hl=en
>>
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "nodejs" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to nodejs+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>>
>>
>  --
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to nodejs@googlegroups.com
> To unsubscribe from this group, send email to
> nodejs+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
>
> ---
> You received this message because you are subscribed to the Google Groups
> "nodejs" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to nodejs+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>

-- 
-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nodejs@googlegroups.com
To unsubscribe from this group, send email to
nodejs+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to nodejs+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to