fsteeg.com | notes | tags

∞ /notes/licenses-conclusion | 2006-05-17 | programming

Licenses, Conclusion

Cross-posted to: https://fsteeg.wordpress.com/2006/05/17/licenses-conclusion/

Alright, there is the possibility of dual licensing GPL/commercial, but the problem can't actually be avoided with this: If someone contributes he has to donate copyright to you, which avoids larger contributions. Plain GPL is out of competition becuase it avoids any commercialization... no that's not really true, but it prevents usage in any closed-source context. The Apache license on the other hand allows for usage of contributed stuff and has a mechanism to regulate patents issues. And it's approved in real world usage through Projects like Apache, Ant, Tomcat, Lucene,... Alright, but with that, someone can take it, change it a bit, and sell it as closed source. With the LGPL, it can be used by commercial products, and a changed version can be used internally, but if a changed version is redistributed then the changes need to be made public under LGPL again.

It actually seems the perfect solution in the middle between GPL and BSD-style... I mean there is something in what Stallman say about why to use GPL and not LGPL but why building up such a harsh distinction between free and proprietary developers, why not be both? I mean why not mod my own oss for a customer and sell that? Hm, could I do the same with GPL? But what if the customer doesn't want it to be oss, because they are concern about competitors or whatever, alrigth this could lead to a general debate on society and mankind, but that's where being pragmatic comes in I believe... Why not be more flexible and open to other ways, through using the LGPL, that is... I think if there was a LGPL-equal license thats not the ugly small sister I'd jump on it :D

Alright so I made some of my stuff available under LGPL on Sourceforge:

Why I use LGPL. Why not GPL? Because I try to be a pragmatic programmer, and therefor I prefer choice. Also, I don't think freedom can or should be enforced. Why not BSD-style? Because using LGPL I hope ensures that the project does not end fragmented. By using LGPL it is ensured that only one recent version is distributed. Also I hope it leads to an improvement of the projects.