Licenses
This is just a brief summary of the most wide-known licenses a computer scientist deals with:
Source code
The obvious option is making a privative license, which is granted by basic copyright if no license is specified.
Recently, the open-source or free-source initiative is getting great interest due to its usefulness in making things better, sharing efforts, and saving time. Having access to the code means that the customer can repair bugs, improve functionality, avoid malicious code, back doors, etc. Furthermore, some licenses like the extended GPL grant that further improvements are also open-source software (OSS). Some important entities or organizations here are Richard Stallman, Free Software Foundation (FSF), Open Source Initiative (OSI).
There is a simple classification among the licenses:
Strict:
- GPL (GNU Public License): It is one of the most extended ones for final applications. It ensures that further developments must be also open-source and GPL. Whenever you distribute a software based on something GPL it has to be also GPL. However it does not mean that you sell that for free or that you distribute it to everyone. You can even not distribute it to the authors of the original GPL software. But your software has to be GPL.
- AGPL: It is an even more stric GPL that says that even web services based on GPL software have to be GPL.
Flexible: Allow the development of privative software based on open-software.
- LGPL: Developed for libraries. For example, if one develops a operative system or a very useful library. One may deserve to sell its license as GPL but also as privative. Then, customer can develop and sell both open and privative software. Makes the market more heterogeneous. LGPL ensures the remaining of the library as GPL but allows the privatization of the new code, if cites that it uses a LGPL component.
- BSD/MIT/Apache: The idea is the same as above but with no need to maintain the original code or show which part is used, just cite the authors that developed such code. Useful when you want something really permissive.
General things and Creative Commons
Another common license is creative commons. This is useful, rather than software, for general information. For example, the contents of your blog, your poems, pictures, paintings, etc. It is very easy and comprehensive. It is a good initiative with iconic licenses. One of the interesting specific restrictions that can be added is non-commercial use.
Summary of concerns
One of the concerns one might have is that free-software turns to be generally free. It seems that you can only sell support or know-how on your software. However, you can sell the software before developing it. That is to say, you develop something for someone using GPL and then it is GPL but you will earn money for developing it (the first time). Then you can still sell support and know how. The advantage is that you can use GPL software from others to develop your software and so others can use yours. Free-software exploits the sharing-power vs the hiding and re-developing from the scratch.
One practical case. A University owns a piece of software (its copyright) and licenses it as GPL. Then a star-up or spin-off of the University can make use of it. They can even sell it but always GPL. Not only the spin-off but also other companies can make use of it but it has to be always distributed as GPL. Only the owner of the source (the Uni) can suddently re-license it and sell it as privative software or under a new license.
If the owner changes the license of the software from GPL to Private. People who downloaded it while it was GPL can still make use of it as GPL. But they are not allowed to use the new Private version.
Other companies can sell your GPL software, support, know-how, improvements, etc. The only restriction is that it has to be GPL. Therefore, many people thinks that if you sell a GPL software you will sell few copies because the customers can re-distribute it for free, provided that it is still GPL.
In a nutshell, if you want to take profit of software you have to know how to sell it and whom. That way you can even sell it before you create it. The openness is then irrelevant, because you already took profit of it, and this fact of being open only gives advantages to everyone, even yourself, as developer.
¿What if I use information from other web site?
This is another concern that many computer scientists might have. By default data is private and its owned by its creator. So you cannot create a web spider and sniff content of other webs. Specially, if you are going to take profit from that.
What you can do is ask the owner or read its terms and conditions (some of them allow reproduction of the content if you cite the source). Some sites offer APIs to access to their data (Facebook connect, Wikipedia, etc) and they explicitly regulate what you can do with the data. The APIs normally are restricted to an amount of request per month or to specific information, then, if you want more, you have to pay.
There are some public sites (government) that offer free information provided that you cite the source.
But, in general, information is private (see copyright of newspapers sites).