Subject: Re: Redistribution constraint
From: Trevor Lohrbeer <trevor@labescape.com>
Date: Thu, 19 Aug 2004 10:48:52 -0500 (CDT)

On Thu, 19 Aug 2004, Andrea Chiarelli wrote:

> Hello,
> my company is going to develop a software project for one of our
> customers. The software will manage a very specific problem and is
> very customized. The customer would get the source code and we would
> give it under an open source license that gives him the ability to
> copy, run, modify it but not redistribute for profit. We would avoid
> that the customer makes profit from redistributing the software.
> However we allow redistribution just for free.
>
> Here are my questions:
>
> - Is this redistribution constraint a problem for open source philosophy?
> - Is there an already approved open source license that meets this
> requirement? (I have found none among the published ones)

As others have mentioned, the redistribution constaint is a problem in
OSS.

More importantly, why do you want to restrict your customer from making a
profit redistributing the software? Do you want to retain the ability to
sell the software yourself?

Depending upon your underlying needs, a couple solutions that may still
allow you to release your software as open source include:

 - Use a restrictive license like GNU GPL that requires all derivatives
   of the work also be licensed under the GNU GPL, and then publically
   distribute the software through a site like SourceForge. While this
   wouldn't specifically restrict your customer from selling the software,
   it effectively drives down the price to a level where your customer
   won't be making much money from redistributing the software itself.
   However, they could easily make good money providing services related
   to the product, providing warranties for the product, etc.

 - If your project can be broken down into separate components that are
   valuable components to the OSS community, you could license those
   components separately, but provide a commercial license to your
   client for the combined project.

   In this case, you want to ensure you retain copyright to the code so
   you can provide the components to the public under an OSS license, but
   to your client under a commercial license. (Or you can use the OSS
   licensed components in the application you provide to your client, but
   then that restricts which OSS licenses you can use and you have to
   analyze how those licenses interact with your commercial license).

 - If your goal is to eventually make money selling commercial licenses to
   the product, you can consider a dual-license approach where you license
   under the product under a restrictive license like the GPL, but also
   provide commercial licenses for those who are interested. This is most
   effective if your software is generally used as a component in a larger
   solution.

Overall though, I would question why you want to restrict your client from
making a profit selling the application? If this is a highly specialized
application, is there really a market that would enable your customer to
sell the application? Or is the application better suited to being
released as open source so the few others who would use it can customize
and evolve it to their own uses?

--------------------------------------------------------------------------
Trevor Lohrbeer                             Lab Escape, Inc.
Chief Technology Officer                    Open source data visualization
trevor@labescape.com                        http://www.labescape.com/

Corporate: (504) 885-6517 x205
Direct:    (828) 232-0039
Cell:      (828) 713-2304