Table of Contents
The license topic of SCaVis is complex and requires a good understanding of several issues.
A complete license information for end-users is given here. Click on the “Agreement” link. Below we will consider a more complicated case when SCaVis is used by developers for for-profit organizations.
Many components of ScaVis are free. But many services (including the full access to this manual) and jar components are only accessible for full members. The yellow components shown on this diagram are free and protected by the GNU (v3) public license.
Other components (blue with red text) are only acceptable for full members.
For developers of for-profit organizations
Getting the SCaVis core packages
The main core libraries (jhplot and jehep package and other used by these libraries) are licensed by the GNU General Public License v2. This means that one can use it to develop a commercial product and sell it. Read this article for explanation. However, the derived works can only be distributed under the same license terms. What does it mean? Falling under GPL does not mean you have to publish your code on the web. You should provide it only when a person having the license asks for it. Typically, a random person does not ask for the code unless he or she actually bought the application.
If you are happy with this, what you need to do is to send an email to email@example.com asking about the list of libraries which comes with this core libraries. In most cases, they have permissive licenses suitable for modifications and for commercial usage (it they are either GNU or Apache License. Some libraries will be removed which do not comply with such licenses. We change a small donation for this service which goes to the maintenance of this project.
It should be noted that such reduced version of SCaVis is not totally functional and hardly is interesting for non-professional programmers and general users. The reason is that SCaVis talks to a server to access documentation, has build-in documentation databases with the help system, example databases and language files. All of this falls under the Creative Commons Attribution-Share Alike License version 3.0 as explained here. Finally, the SCaVis web-based services will be closed (wiki, documentation, svn, example libraries etc.)
Getting the complete package
You may still buy a complete SCaVis project for your development. You will need to buy a license which will allow you to use SCaVis as a whole plus a membership which will help your company to access documentation, changes, examples etc. You still need to agree with the the GNU license of your future “derived” work.
However, this does not mean that your work will be totally unprotected (see below) and competitors will use it in their own benefit. Firstly, their derived works must also to comply with the GNU license and your company can request the source code with new modifications. Secondly, the GNU license has several gray areas which can be used to make your product totally useless for your competitors. Example: non-GPL binary Linux kernel is based on this interpretation of GPLv2. Thirdly, one should remember that any software that focuses on knowledge-discovery or other similar tasks requires a good documentation and examples. Even a GNU-based software is totally useless without well-written documentation which can be protected by a different license and shipped together with your product. Finally, your company can provide various services to support the software.
What about the price? This depends on what your company is doing and how many users will be targeted by your product. You should provide the details of your project, such as: 1) who are the main users of your product; 2) How many users will use your products; 3) What is the final price of your product for end-users; 4) What is the fraction of functionality of your software will be based upon the SCaVis libraries (here we mainly mean the jhplot and jehep packages).
Use JythonShell of SCaVis to get a price estimate. Here is an example:
YourProductCost=50 # expected cost of your final product TotalNumberUsers=1000 # total number of expected users FractionJHEPWORK=0.2 # fraction of functionality that requires SCaVis print "Should pay ($) =",YourProductCost*TotalNumberUsers*FractionJHEPWORK / 2
The above calculation assumes no consultation fees. A limited consultation service can be provided for an additional price.
I want to protect all source code!
Some people ask: what if my company will decide to rewrite this project and alter the license? Technically, this going to be a very expensive project. SCaVis has more than 80M of source code files which are all need to be rewritten. Even a large company hardly can afford doing this. It is certainly almost impossible to be competitive with hundreds of academic users writing scientific software and contributing to the development of this package.
— Sergei Chekanov 2010/12/02 19:52