Forkforkforkfork Fork: Why forking means all the world
I was thinking the other day. This generally raises some alarm bells in my colleagues heads. My questionable wisdom aside, it was about forking. A friend of mine was describing how a program he made for Ti-84+ calculators and spread around my school had, somehow in the process, become forked when someone else added in a couple extra features and started spreading it around. This brought my mind to something I hadn't realized before.
The Free Software Freedoms are essentially the Right to Fork.
For those of you who are unaware of the what the four Free Software Foundation Freedoms are, here's an excerpt from the Wikipedia article on Free Software:
* Freedom 0: The freedom to run the program for any purpose.
* Freedom 1: The freedom to study how the program works, and change it to make it do what you wish.
* Freedom 2: The freedom to redistribute copies so you can help your neighbor.
* Freedom 3: The freedom to improve the program, and release your improvements (and modified versions in general) to the public, so that the whole community benefits.
These freedoms are essential for forking. Without Freedom 0, you could easily be barred from forking due to licensing. Freedom 1 through 3 are forking in a nutshell: Taking the source, making your changes, and releasing it to the general public.
Now some of you may ask, "Why is it so important to fork? After all, forking just fractures the community even more and makes it even harder for users to choose what software they need" and that's a very valid point. However, as someone said to me sometime somewhere, it's always easier to disprove then to prove. Let me draw your attention to the the recent situation of OpenOffice.Org.
For those of you who don't know, Sun (the makers of OpenOffice.Org, Java, Solaris, and many open-source projects) was recently bought out my Oracle. I will readily admit I am not to familiar with the company however, I have been lead to believe that whatever they're going to do will damage FOSS projects such as OO.o and OpenSolaris. The OpenOffice community, naturally enough, was very worried. So what did they do?
They forked.
OpenOffice.Org was forked into LibreOffice, saving us from the tyranny of Oracle and the mild annoyance of having to write ".Org" every time we type it. It just recently released its latest version, 3.3, and is already adding new features to the OO.o base such as support for more columns in a spreadsheet.
So please, make your software forkable. License it with a copyleft license such as the GNU GPL, BSD License, or if you're feeling really daring, the Uncopyright license (see above link in header). It just might save a project.



