[BBC:OSS] On Kamaelia, Concurrency, Networking, Foundation, Components, Extensions, Messaging, Simplicity, BSD, Python, and My Recent LGPL Epiphany
[NOTE: There’s a reason for choosing to attach such a lengthy title, so please forgive me for blowing up your feed reader of choice if that feed reader of choice doesn’t handle titles that better resemble short stories all that well. ;)]
So instead of attempting to describe the experience I just had, instead, with permission from Sylvain, I am simply going to copy/paste the conversation that just took place that has brought into a whole new light what the Lesser General Public License is all about, and why I think that it flat out ROCKS! (thanks for helping to bring this into a greater understanding for me, Sylvain!)
Firstly, and understanding of what Kamaelia is all about,
A framework providing the nuts and bolts for building components. A library of components built using that framework. Components are implemented at the lowest level as python generators, and communicate by message passing. Components are composed into systems in a manner similar to Unix pipelines, but with some twists that are relevent to modern computer systems rather than just file-like systems.
Secondly, the conversation that lead to my recent epiphany in regards to the greatness (or at least potential greatness) of the LGPL.
that sounds very handy
OSS backed up by the BBC
you gotta love it :)
huh??? whoa! (checking out now…)
the kamaelia stuff seems nice
I haven’t checked how it works though
but the idea is neat
neat as in nice :)
yeah, seems like it… need to dig deeper…
u like it ?
You know, until I saw this explanation [ed.: see previous licensing link], I never realized just what the Lesser GPL was all about… Now THAT makes sense!
Is there anything I might be missing that might suggest its not as good as it sounds?
that is how it works :)
I mean, the general idea of requiring changes to the underlying foundation to be returned back to the community, while at the same time maintaining the freedom to license your extensions to the platform however you might want –
that’s the point of the LGPL indeed
but usually LGPL only makes sense for a library
not for an application per se
I still prefer the BSD license
because it is just simpler
the LGPL can be argued
what is a change of the original code?
Well, right… there would be no point in licensing extensions under the LGPL
so LGPL is very nice but can be a nightmare to interpret in some cases
agreed… BSD makes sense for applications that build on top of an underlying foundation
Please note though: since you can choose to accept the LGPL this means that you can use Kamaelia code in any project of your choice without releasing your code, as long as you don’t change any Kamaelia or Axon code. Due to the nature of Python and Python libraries we don’t count simple inheritance (that is class foo(component): … ) as modification to Kamaelia or Axon.
which I guess is why the above text was pulled out and explained further
and they clarify it really well
Thirdly, unless both Sylvain and I are missing something, the notion of requiring changes to the underlying system, or foundation, to be given back for the benefit of the community while allowing the extensions and/or components that build on top of this system to be licensed however their creator might see fit…
Now *THAT*, in my own opinion, makes a *TON* of sense!
Anybody care to provide a counter argument as to why this may not make as much sense as I’m suggesting?
So in quick follow-up to this: While I can’t remember the exact quote, paraphrasing a comment that Tim Bray once (well, probably more than once) made regarding the development of a specification…
“As time goes on, a good specification gets smaller, not bigger, with each revision”
As long as I haven’t completely munged up the meaning of the original statement, from a general standpoint, shouldn’t this statement apply to more than just technology specifications, but to the licensing frameworks that relate to technology as well? I mean, if our entire focus in technology is to progress forward by making things less complicated, easier to understand, easier to use, and easier to […] (that is what technology is all about, right?), then why not place this same focus upon the licensing frameworks these same technologies are bound to?
I do recognize that law and technology are two very separate things. I guess I just wish that in the spirit of freedom and progress we could find ways to be more progressive instead of oppressive in regards to both.
A pipe dream? If yes, does it really have to be that way?
Oh, and by the way… I’m pretty sure that it doesn’t have to be that way.
Update: via http://kamaelia.sourceforge.net/Challenges/?tab=2
Moore’s law has ended in terms of raw CPU power(Mhz) this will radically change the way systems we use are built.