lawgon ([info]lawgon) wrote,
@ 2009-06-30 16:59:00
Previous Entry  Add to memories!  Tell a Friend  Next Entry
the good, the bad and the ugly
A is a good guy. A member of the FSF and a faithful reader of the scriptures. Always falls asleep accompanied by the soothing voice of an RMS lecture. He is also a kickass developer of GUIs and releases his software under the GPL v3.

B is bad - a heretic. Has never read the scriptures and thinks GPL is restrictive of freedom. He is a kickass developer of backends and has no use for GUIs - a real old time Emacs groupie.

C is ugly - an evil proprietary software developer. Knows nothing of of open source and a great believer of software patents. His company markets slick looking proprietary shrink wrapped packages.

B has developed a fantastic application, but has only a CLI. B doesn't care. He has enough takers for his app who use it as a backend for their apps. B licenses it under the new BSD license.

A offers to develop a GUI for B's app and asks B to switch the license to GPL. B declines and asks A to fork it. A forks it, renames it, licenses it under the GPL, and builds a classy looking GUI on it. People flood to download A's app. A, not being a backend guy, periodically pulls code from B's app and updates his app with it.

B of course, cannot take code from A's app so sits and gnashes his teeth but is helpless to do anything else. Being a dutiful programmer, he answers all A's queries on his mailing list. B is happy.

Then C sees B's app and immediatly offers to buy it and employ B at a huge salary. B refuses and tells C to go ahead and use the code as long as he changes the name (in accordance with the new BSD licenses). C does so, spends a few lakhs and builds a slick looking GUI and starts minting money selling the package. Whenever he has problems he posts them on B's mailing list. B is unable to answer many of C's questions because C is reluctant to show him the relevant code snippets. Or if he shows them he obfuscates the code so much that B cannot determine whether it is a typo in the obfuscation or a bug. C in desperation gets into the habit of paste binning his snippets (making sure that the expiry time is very short) and B is able to debug a lot of C's code. C then moves to version 2 of his package and has a brainwave - he donates his version 1 GUI to B's project. B is thrilled because though the GUI is slick looking it is full of bugs, quirks, backdoors and all the other crap that comes with proprietary software. And there is nothing an old time hacker like B likes more than squashing bugs, ironing out quirks and closing backdoors. B has a ball, and so does C and his developers who grab all the changes and apply them to version 2.

A, meanwhile is not happy. B has started integrating his backend more closely with his shiny new frontend - which means A has to work much harder to modify B's new code to his GUI. His app becomes less popular and a lot of his users shift to B's app.

C also finds his sales dropping off and realises that with his wide support network he can make more money supporting B's app than in developing and supporting his version 2. So he calls a press conference and hands over version 2 to B and dedicates a set of his developers to help maintain it. C's business improves, his developers become better programmers as they are exposed to the Open Source methodology and mentored by a kick ass developer. And for his generosity, he is honoured by the local Rotary club too.

Moral: the good go to heaven, but the bad and the ugly flourish on earth.



(5 comments) - (Post a new comment)


[info]inspirethoughts
2009-06-30 03:15 pm UTC (link)
Nice analogy!

Isnt that what people want to...stay longer time on earth...so be bad and ugly...there you go..simple remedy to live here longer!

(Reply to this)

wow
[info]pavithran
2009-08-06 03:45 pm UTC (link)
Wonderfull post never read something like this :)

Hey C sounds like Apple and B sounds like BSD code .

I dunno what A is .. its more like GNOME but GNOME was built mainly aimed at linux kernel ..

Anyways your last sentence says that it is something else :D

(Reply to this) (Thread)

Re: wow
[info]lawgon
2009-08-07 12:42 am UTC (link)
actually I had no one particularly in mind when writing this. But I like to think of myself as 'B' category. A is possibly the hurd team (if it still exists)

(Reply to this) (Parent)

What legal issues should prompt A to have to ask B to switch the license over to GPL ?
[info]dynamicproxy
2009-09-05 04:31 am UTC (link)
In my understanding, the GUI should be able to link to (or call API of) the library developed by B. I feel that this is similar to how KDE works today, where KDE is able to call system libraries of BSD, Solaris (www.belenix.org) as well as Linux kernel based distros.

Since I'm about to write GUI code using a GPL'd library(PyQT) which will call non-GPL'd system libraries, I find myself in a dilemma on what license I need to use for the GUI, and whether that would even be a valid choice or not !

(Reply to this) (Thread)

Re: What legal issues should prompt A to have to ask B to switch the license over to GPL ?
[info]lawgon
2009-09-05 04:44 am UTC (link)
as long as you are not planning to modify QT or PyQT, you are quite safe licensing your code under any license you want - or even keeping it proprietary.

(Reply to this) (Parent)


(5 comments) - (Post a new comment)

Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…