Free Software

The idea of Free Software is writing software, and allowing other people to modify it at will. The reality of Free Software, for me to date, has been that I can use a large amount of software for gratis. I have been a user, not an author.

By default, copyrighted works have all rights reserved. If I put a piece of software up on my webpage with no specific mention of allowing you to do anything with it, you can only do ‘fair use’ type stuff. You could satire it, you could review it, and you could quote from portions in the course of your research. You couldn’t go and make a bigger and better piece of software based upon my code (you could base it upon my ideas if I hadn’t patented them, but not my code). Just as if I put a novel up on my webpage, you couldn’t write a novel with the same characters in the same fictional universe, nor could you write a sequel, or take my novel, make it a better novel, and publish it, even under joint names.

Anyway, the point of Free Software is giving people a licence to make derivative works based on your code (a better novel, if you will). You can do this to varying degrees. You can tell everyone that they can do what the hell they want with it. You can tell them they can do what the hell they want with it as long as your name is still part of any copyright notices.

A relatively common way of doing things is to use the GNU General Public Licence, which doesn’t really let people do what the hell they want with your code. They can make derivative works, but they must make the source code of their derivative work available if they distribute it, and it too must be GPLed, meaning that people can then make derivative works of their code, and

This doesn’t mean they have to distribute it gratis, just that they must then distribute the source code to anyone who has the product (and the source code must be distributed at cost, not for profit), and because the source code is GPLed, anyone who has it can make derivative works and distribute them, with the modified source.

It’s not really a winning proposition if your business model involves making software and relying on the fact that people can’t make better software from your software. You use the GPL if you want to make sure your work, and improvements on your work, remain Free. If you want to make the lives of programmers everywhere easier without forcing them to distribute modifications, you don’t use the GPL. Your decision.

Which is all well and good, until you suddenly realise that you might be making a derivative work of an existing GPLed piece of code (which means that your product, if you distribute it, must also be GPLed), rather than an original work, as you had intended. As I am considering doing with this weblog.

I rather like the idea of people being able to do what they want with their own intellectual property, produced for some value of time and/or money. If they want to sell it for oodles of money and not allow derivative works, and they can get someone to buy it, so be it. If they want to hand it out on street corners, well that’s generous, well done. The GPL is somewhere in between, and well, if you put the work in to make an original piece of software, and a condition of using it is that derivative works have certain restrictions, well, it was your work.

Now wanting to contribute a few hundred lines of blogging software to the world is not exactly the most serious of contributions. And I was considering using a piece of software in it that is in fact, GPLed, which would mean that this software is a derivative work.

However, I kind of sputtered. I’ve been thinking of it as an original work, you see, and therefore entirely my property to be distributed under such terms as I choose. It seems odd to hook it up to something else, and have it suddenly lose its status as my own work. I’m more accustomed to the idea of the GPL applying when you make little improvements to something big, rather than when you take two rather different pieces of software and link them together at a few points. It feels rather like writing a novel that makes a passing reference to Frodo Baggins and having your novel’s copyright suddenly owned by the Tolkien Estate. The analogy is not fair, but I’m illustrating reactions rather than ethical decisions.

So, at this point, I’m deciding whether or not to re-implement the wheel a little bit for the sake of having an original work, or to eat of the fruits of the GPL. It’s been luxurious being a user of Free Software, since it is generally distributed for rather small sums of money, I wonder if I’ve been fed too well?