Open Source and Forking It

Peter Alcibiades palcibiades-first at yahoo.co.uk
Wed Oct 21 02:59:07 EDT 2009


<b>Forking It</b>

Richard asks on another thread (not yet on Nabble, which quite often seems 
to run late) whether there is any way of being Open Source and not having 
forking.

No, definitely not.  As soon as you have any such restriction, you have 
left Open Source.  

And this is fundamental to the idea of Open Source.  What it seeks to do is 
give people power to do whatever modifications they want to the source 
code, as long as they contribute back what they have done.  This is why 
Ballmer made such rude remarks about it.  This is also why it is only about 
the power to do things with the code.  What it runs on or what the 
requirements for running it are, is immaterial.  

The classic example of recent forking occurred with X windows.  Over a 
period of a couple of months, Xorg forked from Xfree86, and secured 
universal adoption by all Linux distributions.  The team simply left and 
took the code with them.  Recently on a matter closer to home, we have seen 
a fork, or an attempted fork, of PythonCard.  If you look on DistroWatch, 
there are north of 350 different distributions of Linux now.  Well, these 
are all forks.  On the other hand, you notice there is only one Python.  
Basically, projects that keep in touch and are responsive do not get 
forked.  Ones that are of no interest do not get forked.  But if you start 
acting, on a project people really are interested in, like an unresponsive 
commercial developer, you definitely will get the project forked.  As 
Xfree86 found.

It can be open source and run on Windows or Mac OS, as long as you get the 
source under a copyright waiver which lets you make any mods of it you want 
as long as you pass them on.

It cannot be open source if anyone can stop you making mods and 
incorporating them into your project, even were it to run on open hardware, 
open cpu, open boot code, open OS.

It cannot be open source if you have the power to modify some of it but not 
the rest of it.  For instance, OSX is not open source, even were it to run 
on an open source kernel.

Something either is or is not open source.  There is no such thing as being 
partly or somewhat open source.

It is because being open source is a feature of the code, and not of what 
it runs on, and because the essence of it is the power to modify and re-use 
it, that the question of proprietary IDE and language is important.  This 
is not a matter of purism or obsession with detail.  It is an essential 
point, though one on which reasonable people can havbe different opinions.

Take a case where the source is released under the GPL, but to work on it 
you need an IDE which costs several tens of thousands, and is itself 
proprietary?  Can this really be open source?  Reasonable people can 
differ.  You could argue that in effect you have the source and the ability 
and the right to recreate it in Python, so it is.  Or you could argue (if 
the code generated by the IDE is totally obfuscated) that this is such a 
barrier to exploiting those rights that it is no longer open source in 
spirit.

This is why the availability of Media is an important consideration in the 
debate.  The case is much stronger, even if the IDE is proprietary, if it 
is free as in beer and freely distributable.

Peter



More information about the use-livecode mailing list