Do you aim to make your resources as widely available and reusable as possible?
Conversely, do you try to protect the investment of time and resources that went into producing the IP?
The choice of license can be a tricky thing, and getting it wrong can cause considerable problems for you, and for others attempting to build on your work.
An interesting situtation is that you may have no rights to release any of your work as open-source software as goverened by your contract with your instiutution. The fact this happens anyway is because a lot of this flies under the radar in terms of IP. Every time I've spoken to our local business team they always ask if any piece of work we take on will result in IP worth commercialising.
I haven't released software publicly myself, but IMO for libraries and toolkits Apache/MIT/BSD-style licensing is the appropriate way to go. For full featured software stack you have a choice. Personally I prefer more permissive licenses, but can understand the need to GPL the code.
Very broad question... you see people only answer part of it, making it impossible to indicate a single 'correct' answer... the current one by Pierre does not answer all... perhaps split up?
my code ( http://code.google.com/p/lindenb/ ) is released under GNU General Public License v2 but frankly, the characteristics of all the available licenses are just vague for me. I just want a license that would say:
use my code as much as you want but
tell me if you're doing something
interesting with it, cite my work if an article is published, and remember me if
you're getting millionaire.
I think this captures the essence of it, and the licence you wish for doesn't (really) exist yet. I'd like the simplicity of Creative Commons licenses that can be applied to software.
Without getting into a licensing discussion: I prefer to use the most permissive licenses like MIT/BSD instead of GPL. The bottom line is being I never want the license to be a reason for people not to use my code--though I can see the reasons why some libraries choose different licenses.
One important consideration is that of the support that made the software possible. When someone's work is supported by public grants (aka taxpayers) both ethical considerations and probably the law requires that the software be made available with few strings attached.
The fundamental differences between the Open Source licenses can be found in the conditions specifying the licensing of derived work based on the software. Some licenses do not impose any conditions: MIT, BSD; others strictly mandate that any type of derived work must be licensed the same conditions as the original work GPL.
I have been on various sides of software licensing, but now I think that each situation is unique thus no general rule or recommendation applies to all situations.
Most of the times I don't care about the license, I just forget to include it in the files; however, I didn't publish anything important yet apart from some scripts on github.
If I want to use a license, I choose GNU GPL2, but just because it is the only one that I know more or less how it works.
I prefer BSD-style license over GPL because I am a bit aware of the problems of using GPLed code in corporate setting. For example a software project might catch wind because it is inside some corporate codebase (i.e. has users) even if they do not technically have to release the modified sources.
I use GPL for applications, and LGPL for libraries, other licenses available on negotiation (but nobody ever asked, and I'm not holding my breath).
The rationale is that, yes, you can benefit from my work for free, but only if you let others in turn benefit from yours. In practice, LGPL is probably more limited than I would like - I don't mind commercial/proprietary use as long as modifications to the library itself are contributed back - but at least it clearly allows distribution with other open source code, which I think is more important.
GPL/LGPL is a copy-left license, which means if you use some GPL'ed code, you and others who use your code are obliged to share code. It is a virus. I do not like someone force me to do with my code and I do not like force my users to do anything they feel uneasy about.
For most of my code I use the ISC License (2-clause BSD license). For blog posts and talks etc. mostly CC-BY. For some smaller stuff I tried CC0. The last mentioned would be the least restrictive one.
An interesting situtation is that you may have no rights to release any of your work as open-source software as goverened by your contract with your instiutution. The fact this happens anyway is because a lot of this flies under the radar in terms of IP. Every time I've spoken to our local business team they always ask if any piece of work we take on will result in IP worth commercialising.
The best course of action is: don't ask don't tell policy ... ;-)
There's a nice, readable review of open source software licences at Smashing Magazine: http://www.smashingmagazine.com/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/
I haven't released software publicly myself, but IMO for libraries and toolkits Apache/MIT/BSD-style licensing is the appropriate way to go. For full featured software stack you have a choice. Personally I prefer more permissive licenses, but can understand the need to GPL the code.
LGPL seems favoured by our more developmentally oriented bioinformaticians I've noted.
Very broad question... you see people only answer part of it, making it impossible to indicate a single 'correct' answer... the current one by Pierre does not answer all... perhaps split up?