NO CARRIER

Computers, Science, Technology, Xen Virtualization, Hosting, Photography, The Internet, Geekdom And More

Software licenses are not for linguists

Posted on | July 10, 2008 | 4 Comments

There was a journal entry recently published on Slashdot which sparked several reactions. I think that it is safe to say most geeks realize that our lives will shortly depend entirely on computer software (much more than they do now). Most smart people realize the need to ensure that we keep software development as free, open and productive as it can possibly be. ‘Possibly’ is always relative, it depends entirely on the author’s circumstances at the time.

Recently, I made the decision to release free programs that I write under the new BSD license. I received a flurry of e-mails ranging from good choice' tohow could you?!?!`. For some people, a choice of software license is the closest thing that they’ll find to spirituality which rapidly evolves into some kind of religion.

The Slashdot journal suggested that a simple breakdown in linguistics might be the cause of so many clashes between so many free software camps. I really don’t think this is the case, both licenses are very specific and well written, there is little room for misunderstanding.

The GPL guarantees that every person who receives a copy of a GPL program will have the same freedoms with that program as the program’s author, barring the ability to license the work in any other way. If you write a program that uses GPL licensed code and distribute it, you must distribute you work under the terms of the GPL. GPL3 goes a few extra miles, which is why I’m moving away from it.

The BSD license removes the ‘barring the ability to license the work in any other way’. This allows anyone producing a work that incorporates BSD code to chose whatever license they wish, including one that makes the combined work non-free. The author of the program or anyone who receives a copy of the source code is welcome to (basically) do whatever they want with the code.

Neither license is better or worse, its really a matter of preference (or religion, depending on what your work means to you). I personally do not care about being given credit or proper attribute. If Microsoft sent me an e-mail tomorrow saying “Our x-y-z product will use some of your code and we’re giving you no credit”, I’d reply “Hey, neat, thanks for letting me know, can I get a free copy to see what you’ve been up to?”.

On the same token, if Microsoft produced some kind of killer application that humanity could just not do without, I would commit to helping any effort that aimed to make a free replacement for that program. There are plenty of ways to complain about Microsoft without resorting to the building blocks that they use in their software, if complaining makes you happy.

If it were not for the GNU project and the efforts of Richard Stallman, Linux would still be a ‘garage os’. What good is a computer that boots in record time and then facilitates nothing? How can we write programs for such a kernel without a proper C library (or even an editor)? Linux is a kernel that makes an operating system work, GNU is that operating system, plus a compiler and such libraries. Got it? Good. Official GNU programs run well under almost anything that you can think of, GNU is not at all married to Linux. If it were not for the GPL2 and its incidental need for ‘tit for tat’, I really doubt that the Linux kernel would be what it is today.

In fact, most new stuff that I am about to release under the BSD license will have a very clear notice, “If you wish to re-license this program under the GPL2 or GPL3, go right ahead! The license I have chosen allows you to do that, make it work for you!” I don’t care about the one way effect, if some substantial improvement was made to my stuff and released strictly GPL, I’d just re-write it and include it in my version. Big deal. You might wish ‘tit for tat’ for your code, or to enforce your ideals. That’s up to you, the license I picked gives you the latitude to make all of your own choices. My intent ended at writing and releasing the damn thing.

In short, it is not ‘linguistics’ that get in the way of free software development .. its ego. Ego gets in the way of any human interaction, why is this news? The licenses themselves are very specific, words like ‘freedom’ are always going to mean different things to different people. Society dictates what ‘freedom’ means, which makes the word more of a colloquialism rather than strict definition. If ‘freedom’ could not adapt to circumstantial needs the term would become archaic very quickly. Anyway, enough linguistics :) If the definition to a word is prone to change, any argument regarding the meaning of the word is (at best) dated.

I just want to share stuff that I come up with that might be useful to someone else in a way that allows them to use it no matter what they happen to be doing. I also need to eat, so having complete control over the terms governing the distribution of my stuff is ideal.

Perhaps the two camps will not amicably work together for some time, perhaps that’s best for all of us.

I’m in my own camp, I just release things that might be useful and help worth-while projects, regardless of their choice in license. I have a hard enough time reading other people’s code, much less their license :) That’s why I chose to keep mine simple.

Point being (yes, I have one), don’t use stuff that restricts the source code or your ability to help your neighbor if a viable alternative exists. As long as I have one copy of my program, it will always be free software and you’re welcome to have it. What you use and how you use it is up to you.

Comments

4 Responses to “Software licenses are not for linguists”

  1. unwesen
    July 10th, 2008 @ 6:57 pm
    If the definition to a word is prone to change, any argument regarding the meaning of the word is (at best) dated.

    In a way, that’s my point exactly. And yet people often don’t want to realize that definitions of a word can’t change, or can’t be different for each individual, and try to force their definition on everyone else.

    Which is why this whole thing could very well be a linguistic problem, in a manner of speaking.

  2. tinkertim
    July 10th, 2008 @ 7:32 pm

    I also want to add that checks and balances are paramount. The Free Software Foundation plays a critical role when it comes to discussing what ‘freedom’ means in regards to computer users.

    I do not agree with all of their politics and proclamations, but I see the need for what they do and happily support it.

    However, I view them as a standards organization that must be heard, not as some kind of papal collective.

    Any good (large) program should contain several licenses, one for libraries, one for stuff that you really need to be tit for tat (or idealistic, depending on you), one for stuff that’s basically boilerplate.

    My /dev/hate is a symlink to /dev/null, I have broader things to consider :)

  3. tinkertim
    July 10th, 2008 @ 7:41 pm

    @unwesen

    The allusion really needs to settle down before we can debate what it is , until this happens we only debate what it should_be at a certain point in time.

    All we can do (for now) is just be friendly and leave our options open. Hopefully, my post conveyed that in a mutually agreeable fashion.

  4. unwesen
    July 10th, 2008 @ 9:57 pm

    @tinkertim

    Yes, one thing that I’ve never understood in the license wars is why so few people understand that parts of a program can have different licenses – or that indeed the whole program can be published under multiple licenses.

    Oh, well.

Leave a Reply





  • Monkey Plus Typewriter
  • Stack Overflow

  • Me According To Ohloh

  • Meta