Fog Creek Software
Discussion Board




Licenses

A recent thread brought up the subject of public licenses. This is a subject that is a sore spot for me and I want to scratch it.

I like to code everything myself. I never use and GPL or LGPL constrained IP. Open source software is OK with me in terms of the products -- my web server is Linux running Apache. And there have been cases where I have fixed bugs in open source applications I use and fold these fixes bagk 'inte the community.'

But I have never been comfortable with the licenses -- certainly not the GPL for obvious reasons, but not even the LGPL.

Another issue is that certain 'elements' within the open-source community are troublesome. This is why I am posting anonymously right now.

In a typical situation, I will be approached by someone within the community to replace some code in one of my products with one of their open-source versions, which are presented as in some way superior to my own code. I will politely decline and this is followed by questions about why not and so forth and I will explain the problems I have with the LGPL. This is followed by statements that my claims are not true, there is nothing to worry about and eventually I have to tell the inquirer that he is not an attorney and can not know these things for sure. Ok, it's true, sometimes I am 'rude ' with them to get them out of my face.

It's usually about this time that the attacks start. My site will get hacked into and defaced, new versions of my products will appear on the crack boards, I will be subjected to denial of service attacks, and my credit card company will call me and ask to confirm a $6000 purchase being made on my card in Lithuania.

Now most people in open-source or OK folks -- honest developers. But there is a certain 'mafioso' element in there that makes it so I absolutely do not want to be affiliated with any of these projects because of the risks.

Has any one else had similar experiences along these lines or is it just me? If so, how do you handle it? I've talked to the local FBI field office and they have told me candidly that they simply don't have time to look into these sorts of things.

Yellow Bellied Anonymous Coward
Tuesday, January 28, 2003

I fought a doomed rearguard action to prevent Mozilla being licenced under the GPL.  The complete disbelief as to the possible consequences of re-licencing was astonishing.

To my knowledge I've never suffered from attacks like that but then I've never been in quite a similar position, it certainly doesn't encourage me to use such a broken licence as the GPL.

Simon Lucy
Tuesday, January 28, 2003

I'm afraid to ask, but I really feel I must.

What are the problems with the GPL? I know its broken, everyone has said so for a decade now, but why is it broken?

Also, if you use the commercial version of a product, are you protected from the GPL? I'm thinking of MySQL having both a commercial and a GPL license available.

Marc
Tuesday, January 28, 2003

The problem with the GPL and somewhat with the LGPL, at least for me, is that if you are starting something you don't want to commit to a license at the start.  I may very well release a GPL version of the source in the future, but in the beginning, it's nice to know that I can chose a license in the end, instead of having the choice made for me.

The nice thing about some of the GPL alternative licenses, ranging from the BSD to even the MPL is that they realize that until there's a software tax or something like that to pay for software in the public interest, closed source projects are a part of life.  Open source development doesn't get really useful until there are more eyeballs -- i.e. other people sharing source code and contributing their changes.  And even closed source projects tend to help out their open source library projects.  If you fix a bug or add a feature, it's much easier to submit it back to the developers and have it included than deal with patching every single updated release with your changes.

The best approach that I've seen is dual licensing.  You can use either GPL or another license that has a different give-and-take relationship that is more corporation friendly so that everybody benefits.

I think that part of the problem is that a geek at work doesn't get much control over much of anything, often to their detrement.  A geek at play therefore wants to control their little geek world and make it perfect.  So geeks can spend endless hours arguing about the best license, the best coding style, etc. for an open source project without getting any real practial work done.

w.h.
Tuesday, January 28, 2003

"The problem with the GPL and somewhat with the LGPL, at least for me, is that if you are starting something you don't want to commit to a license at the start.  I may very well release a GPL version of the source in the future, but in the beginning, it's nice to know that I can chose a license in the end, instead of having the choice made for me."

Remember that a license is between two parties.  The copyright holder isn't bound by his own license.  (If he were, even dual licensing wouldn't be possible--I can't take someone else's GPL-licensed property and dual-license it).

It's perfectly legal for the copyright holder to release v 1.0 as GPL, and then change his mind and release v 2.0 under a different license.  It's just not possible for someone else to do that.

Tim Lesher
Tuesday, January 28, 2003

The GPL donates all rights to whoever uses it, with the proviso that they also maintain that donation with the further proviso that anything that uses the source/document whether it modifies it or not must also be treated in the same way, even if the original author did not intend that.

The obvious advantage is that this is simple and appears to give everyone the same rights.

However, it also stops the original author from using their original work in any form other than licenced under the GPL.  If someone takes the GPL original makes a tiny change the original author cannot then incorporate that change in a commercial form of their own work.  Indeed a commercial form of their own work becomes increasingly difficult.

The GPL not only gives all rights away it enables people to entirely re-badge it, rename all and any files and represent it as a completely separate work.

Even if, as is claimed by GPL proponents, the original author is always free to do what they like with their own code,  identifying a commercial product with a GPL version simply causes trouble.  It can erode the marketing of the commercial version, it can promote piracy rather than stop it and it encourages theft of intellectual property rights.

The worst problem though is that if you work with GPL code and also write proprietary code you have to essentially work in a 'clean room' to avoid infecting the proprietary code with anything GPL'd.  When you're an independant consultant and you're working with client's code at times this is impossible to achieve.

This is because the GPL refers to fragments as well as entire works.  The MPL, on the other hand, is a file based licence, you can combine MPL licenced code with any other licence (subject to that licence's restrictions), so long as it does not cross the boundary of the file.

As for multiple licences being a solution, this is only true if the user of a particular source can show without doubt which version of the licence they are using.  There is, in reality, no such thing as a dual licence, certainly not one where the two (or more) licences are entirely incompatible.

Simon Lucy
Tuesday, January 28, 2003

It's a matter of dogmatism vs. pragmatism.

The GPL license forces any developer incorporating the a GPL'd library or tool to have the entire application be under the GPL (with source available for everything).  This is a significant restriction on how you may use the library.  The reason this license exists is the core belief of Richard Stallman and the Free Software Foundation that all software should be free-- not only theirs but also yours.  While you are free to reject this philosophy (and not use GPLed libraries or software), if the FSF and the GPL fanatics had their way, you would be ostracized from the developer community and no users would buy your software.

Other Open Source licenses (such as the Apache style licenses), treat Open Source as a choice rather than a utopian edict.  Open source developers who distribute with these licenses (some for business reasons, some for the joy of recognition, some just for fun) make their libraries available to be used in your code with only a simple request of recognition (in the form of an included license text file).  These type of licenses recognize that we developers operate within a complex, often commercial environment, and that a lot more use of open source will occur (particularly within the business world) if the developer is not forced to buy in to a radical philosophy simply by using a code base.

Voice of rationality
Tuesday, January 28, 2003

"If someone takes the GPL original makes a tiny change the original author cannot then incorporate that change in a commercial form of their own work. "

You have contributors assign the copyright to you.  Then you hold the copyright, and can produce a commercial version.

The motivation for someone giving it to you is so you'd fold their changes into the main releases.  People don't like maintaining their own branches.  If they refuse to assign the copyright, you don't have to take their changes.  It would take a lot of effort to fork your project away from you.

That's what BerkeleyDB does.  They don't really accept patches unless the copyright can be assigned to them.  BTW, I believe MySQL AB is being misleading about the need to license.

Tj
Tuesday, January 28, 2003

And BTW, do people really want a GPL flamewar?  When anyone can prove that closed-source licenses give you more freedoms than the GPL, then I'm all ears.

BTW, lots of sourcecode can't be relicensed anymore because they used closed-source libraries.  As I understand, this is why you can't get the sourcecode to Genera (the lisp OS) and BeOS.  They'd have to strip out those closed libraries, or hunt down permission, and you'd just have a gutted heap of code.

Yes, there's rabid GNU fanaticism, but same with Microsoft, Apple, etc.  Ad hominem.

Tj
Tuesday, January 28, 2003

Simon -

I am neither affiliated with, nor do I represent the Free Software Foundation in any way whatsoever. I am not a lawyer, barrister, or attorney, however I am confident in my ability to read and comprehend short English documents. That being said...

The current version of the Gnu GPL (at http://www.fsf.org/licenses/gpl.html ) states, in part, "0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License"

As the copyright holder for your own work, you have complete discretion to license your work under the GPL or not. Even if you do release a version which is GPL'd, you are still free to license any of your work (including the same version of the same product) in any fashion you desire, as the GPL does not require exclusivity of license.

The GPL pertains only to copying, modification, and distribution of works, and in no way limits your rights as a copyright holder. If create a modification for a GPL'd program (which is not a derivative work, e.g. a plug-in), you may do whatever you want with that modification.

You cannot distribute works to which you do not hold the copyright without the copyright holder's permission. The GPL simply provides certain terms and conditions under which you can copy, distribute, and modify such licensed works without tracking down the copyright holder(s) and explicity getting his, her, or their permission.

If you want to use GPL'd works in a manner inconsistent with that license, you must find the copyright holder(s) and get permission. If you are the copyright holder, this should not be too difficult. ;-)

Devil's Advocate
Tuesday, January 28, 2003

Tj, this is why I've come to the conclusion that we need a decent amount of code-that-any-coder-shouldn't-be-forced-to-write-for-the-600th-time available under a BSD or similar license.  It's those pieces that really worm their way into your code base forcing you to be forever closed source.

This is why I love Boost and zlib.  This is why I love the wxWindows license that allows the wxWindows lib itself to be free but doesn't place any truly undue restrictions to closed source development.

w.h.
Tuesday, January 28, 2003

This is actually a good question.

I was under the impression that the GPL for MySql (for example) means that I cannot distribute MySql with my product.

However, that in no way effects the fact that I have some application(s), or products of my own that can use MySql, or work with MySql.

In other words, I can’t put MySql on my CD and distribute it. However, I can certainly write software that works with MySql. As long as I am in no way distributing mysql, then I in no way violate the GPL for MySql.

This kind of makes sense to me, other wise the mere act of placing any GPL software on my PC would requite me for forfeit all my personal rights as an individual.

It also means that in no way I am obliged to place or put my software under the GPL also unless I am incorporating actual source code in my own software. As long as my code/product does not incorporate any source from the product, and as long as I don’t distribute ANY part of the GPL product, then I am ok.

Do I have the above right?

Thus, I am totally free to develop a commercial product that works with MySql. The instant I incorporate any source code from MySql, or try and distribute any part of MySql with my application, then I also must GPL my software. It also means that if I attempt to modify the source of MySql, then I also must include that. Of course, to include any of my own changes in MySql would mean that I am now distributing MySql, and again thus have to GPL my software.

It just means I don’t distribute MySql with my software? Can anyone explain why this is such a problem (or even a big deal for that matter?).

I mean, ya, if you start incorporating source code, or parts of the GPL product into yours, it makes sense that you should have to GPL your own product. However, for a large portion of GPL products, there is not need to move, or incorporate the source/binaries into ones own product. This in no way effects me if I want to use the product.

The above seems quite reasonable to me. Perhaps I don’t understand something here?


Albert D. Kallal
Edmonton, Alberta Canada
Kallal@msn.com

Albert D. Kallal
Tuesday, January 28, 2003

Actually, if you read the GPL, you can distribute GPL'ed programs with your non-GPL'ed program. They specifically allow/mention this (otherwide all Linus distributions would violate it since not all the programs are covered by the GPL).

If you have specific questions, it'd be best to ask mySQL AB (the company) about what is and is not allowed. It *is* their software after all and they can control what they want done with it.

jeff
Tuesday, January 28, 2003

Did anyone notice the original poster was talking about attacks due to not using the GPL?  It's like that movie Antitrust, where Microsoft killed opensource coders.

I'd be very interested in knowing if this actually happened to anyone, or if it's a troll.

anon
Tuesday, January 28, 2003

" As the copyright holder for your own work, you have complete discretion to license your work under the GPL or not. Even if you do release a version which is GPL'd, you are still free to license any of your work (including the same version of the same product) in any fashion you desire, as the GPL does not require exclusivity of license."

Yes it does say that, but that isn't the effect of the licence.  You can always attempt to use that which you created, how though do you defend yourself against accusations of breaches of licences at a later date.

You release version 1.0 of your software, you release it under the GPL.  You also have a commercial version which provides some value over and above the GPL version, what that value is doesn't matter.

A bug is discovered, its fixed in the GPL version, its a trivial bug and a trivial fix but someone else manages to fix it before you do.  Now everyone who has the GPL version can of course use the fix, but can you in the commercial version?

Or, more insidiously, you plan a feature upgrade of your commercial release, you decide not to release it under the GPL.  Someone else, quite legitimately, provides the same functionality under the GPL.  Users, developers become confused, is your Commercial version really your own work, or did you amalgamate the GPL version?

The claim that the copyright holder always has the right to do what they like ignores the probability that releasing under the GPL will mean that multiple copyright holders have their own stake. 

This isn't a GPL flame, just a pointing out that licencing issues are rarely as simple as the text of the licence seems to be.

Simon Lucy
Tuesday, January 28, 2003

Albert -

To repeat, I am neither affiliated with, nor do I represent the Free Software Foundation in any way whatsoever. I am not a lawyer, barrister, or attorney, however I am confident in my ability to read and comprehend short English documents. That being said...

[ In other words, I can’t put MySql on my CD and distribute it. However, I can certainly write software that works with MySql. As long as I am in no way distributing mysql, then I in no way violate the GPL for MySql. ]

Actually, the GPL expressly and specifically grants the right to distribute *verbatim* any GPL'd software (Sections 1 and 3 at http://www.fsf.org/licenses/gpl.html)

[ This kind of makes sense to me, other wise the mere act of placing any GPL software on my PC would requite me for forfeit all my personal rights as an individual. ]

The FSF addresses this specifically at http://www.fsf.org/licenses/gpl-faq.html#GPLAndNonfreeOnSameMachine , and by section 2 of the GPL (above link)

[ It also means that in no way I am obliged to place or put my software under the GPL also unless I am incorporating actual source code in my own software. As long as my code/product does not incorporate any source from the product, and as long as I don’t distribute ANY part of the GPL product, then I am ok. ]

The FSF addresses this point at http://www.fsf.org/licenses/gpl-faq.html#MereAggregation . Basically any program including GPL'd software (compiled source code, linked binaries) must be GPL. Programs which merely communicate with other GPL'd programs (in a standard fashion) need not be GPL'd


[ Thus, I am totally free to develop a commercial product that works with MySql. The instant I incorporate any source code from MySql, or try and distribute any part of MySql with my application, then I also must GPL my software. It also means that if I attempt to modify the source of MySql, then I also must include that. Of course, to include any of my own changes in MySql would mean that I am now distributing MySql, and again thus have to GPL my software. ]

As far as I can tell, that is pretty much correct, except that you *are* allowed to distribute GPL'd software *alongside* your commercial software. i.e. I can distribute myCommercialShareware.gz and gzip on the same CD (provided I abide by the GPL terms for gzip) because it is not integrated into any of the software I am distributing.

I can try to discuss the specific MySql licensing terms, but to restate, you probably want to have an actual lawyers advice as I am only providing moderately well-grounded conjecture.

Terms of the MySql license:

[ 1. Free use for those who are 100% GPL ]

The GPL requires that GPL'd software (MySql) be allowed to be integrated into other GPL'd software.

[2. Free use for those who never copy, modify or distribute]

The GPL only covers rights to copy, modify and/or distribute. Thus, this is consistent with the GPL.

[ 3. Commercial use for everyone else ]
...

[ a) If you include the MySQL server in your non Open Source application, you need a commercial licence for the MySQL server ]

If your application uses MySql server (under the GPL) in a fashion not consistent with standard program-to-program communication, it must be GPL'd. If your such application is not GPL'd, you must have a commercial license for MySql server.

[ b) If you include one of the MySQL drivers in your non Open Source application (so that your application can run with MySQL), you need a commercial licence for the driver(s) in question. The MySQL drivers currently include an ODBC driver, a JDBC driver and the C language library.]

The MySql drivers are GPL'd and (must be linked?) to the application. If you use them under the GPL, your application must be GPL'd. If your application is not GPL'd, you must have a commercial license for the relevant driver(s).

[ c) If you use MySQL Software within your organisation and you don't want to risk it falling under the GPL license, you are welcome to purchase a commercial license.]

If someone (accidentally?) distributes your MySql application, and you have no commercial license, it will be assumed to have been distributed under the GPL, and those terms will apply.

[ d) Many users opt for the commercial licence simply because under it MySQL AB takes responsibility for its products. Under the GPL licence, there are no warranties or representations from the developer (i.e. from MySQL AB). ]

This is not a licensing condition

I hope this hasn't been too long-winded, but I find that working through (moderate) legalese almost as interesting as working through a programming challenge.

Devil's Advocate
Tuesday, January 28, 2003

Simon -

I will be the first to admit that I don't have any personal experience dealing with dual licensing of this nature. However, reading your last post caused a few things to spring to mind.

1) For a trivial bug, you could ask the contributor if he or she will allow the use of the patch in a commercial work, or patch it yourself, and without too much effort demonstrate original derivation. It would be annoying, but in the U.S., for example, you might be called to task under similar circumstances for, e.g. patent violations, even if the code is not GPL'd. In a strictly proprietary world, you still would not have any rights to a fix authored by a third party.


2) Even with proprietary software, another party can add a module to a product which supersedes existing development and can confuse users and developers. Or an Operating Systems vendor can elect to include the functionality of your application in its next release.

Thank you for bringing up some interesting points. It looks a little more complicated than I first proposed, but I still think it is far less dire than your posts would indicate.

Devil's Advocate
Tuesday, January 28, 2003

To the original poster:

Are we right in inferring that the intimidations are coming from your direct environment, or do you believe this to be a less isolated problem?

Just me (Sir to you)
Wednesday, January 29, 2003

Let's look at these two examples. You're in a strange town.

a) You need  a meal. You go to the restaurant and pay for it.  That's a commercial license.

b) You need a meal. A neighbour gives you one for free and tells you not to pay for it, but to do the same for somebody else in your situation. That's the GPL licences

There is of course a third possiblity; the guy gives you the meal for free but you don't do anytning to help anybody in return. That is how commercial developers wish to use free software.

The GPL was bought in to counter the third situation. In computing, but also in genetics and may other fields, we find work done by publiic authorities and put in the public domain has formed a significiant part of commercial products which then simply collect the money and give nothing back for all the free research they have profited from.

I do agree however that the situation tends to bolster the dividing line between open source and commericial source software.

However the problems would be the same if the software was commercial. One of the main problems facing developers of graphics programs is that in order for their program to work with a particular format they need to pay a licensing fee. The licensing fee is generally very small, but when you multiply it by the dozens or more of incompatible graphics formats, then you are talking about doubling the retail price of the app just to pay the licensing.

Stephen Jones
Wednesday, January 29, 2003

Then of course there is the fourth option:
You work in the catering field. If you want to take the free meal you can, but then you can never work in catering again. Food must be free! This is how the FSF would like to run the town.

Just balancing out.

Just me (Sir to you)
Wednesday, January 29, 2003

No, the example you've given is the second one.

If you want to take the free meals then you can't charge others.

If you want to work in the industry (to follow your analogy) then pay for the meal.

You can always go from b) to a) or vice-versa, the problem is that the divide between the two will grow ever larger.

Stephen Jones
Wednesday, January 29, 2003

I just thought (2) did not capture the true nature of the transaction. A meal for a meal, no big impact, and dues paid the next day. The GPL is different. It can cost you your entire business, not a happy meal.

Just me (Sir to you)
Wednesday, January 29, 2003

(1) Regarding the GPL.  I believe you can redistribute GPL'd software on the same CD or in the same distribution as your non-GPL software as long as it not statically linked.  But you must redistribute the GPL'd software in agreement with the terms of the license (e.g. provide the source).  Like Devil's Advocate, check the license language

(2) Regarding the "flame war".  I don't think the is a closed-source vs open-source issue.  To me, it's a GPL vs other open source license issue. 

I believe open sourcing your own code base is a valid, often useful way of developing software.  But I want to make that call at my own pace and not be pushed into it by an early design decision.

Incorporating GPL libraries into your code forces you into a particular business model whether you want it or not.  The FSF, a prominent voice for this area, actively advocates a political position that we only using software with such a license.  Other open source licenses, such as those used by Perl or the Apache projects (Apache, Tomcat), do not have this restriction. 

Thus, while I may use GPLed applications (Linux, MySQL) I will never use a GPL library, and (even if I decide to open source) will never put my apps under GPL.

Voice of rationality
Wednesday, January 29, 2003

Just me,

Not sure I understand your question completely but let me try to answer and you can redirect as necessary.

I had started to think this was a 'pattern' and I suppose I was posting as a sort of a reality check. Based on the discussion and the lack of similar experiences, I believe that the troubles I have had are actually some specific problem I am having with some individual or small group of crackers I have apparently offended and who are periodically bothering me using different identities and not part of a larger pattern. Thanks.

Yellow Bellied Anonymous Coward
Wednesday, January 29, 2003

So to bring back to the purpose of the thread...

I'd say that it's a small group of teenage weenies, not a larger pattern.

Coders will fight over licenses and coding standards and whatnot for the rest of eternity, but it's rare that people will actively do defacements and things like that.

Usually a license fight more revolves around redoing it yourself with a license you agree with.  Witness OpenBSD removing ipf (one NAT/packet filtering system) from the code base and replacing it with pf (a OpenBSD-developed NAT/packet filtering system) because of a disagreement.

Oh yeah, and the teenage weenies who do defacements and flooding and whatnot believe that everything should be unquestionably free for them to do whatever they want with it.

w.h.
Wednesday, January 29, 2003

"There is of course a third possiblity; the guy gives you the meal for free but you don't do anytning to help anybody in return. That is how commercial developers wish to use free software."

Stephen, glad you're able to speak for all of them and it's really as cut and dried as you suggest. That really simplifies the issue. Let's see, all Arabs ride camels, all Chinese run laundries, all Indians live in teepees and drink whisky. The world is so simple when we can reduce everything to sweeping generalizations.

Drunk Indian
Wednesday, January 29, 2003

People ought to produce work and get paid for that work. It seems like some kind of self defeating communism for developers to encourage the “Free Software Movement.” I have sold software solutions many times and it has helped pay my rent and feed my children. I cannot imagine why I would want all software to be free. Then I would be out of a job. How would I live?

Although I have used free software, I’ve never used it in a commercial setting, because I don’t want to loose the money that I get for my efforts.

I admit that I don’t understand the GPL or any of the other licenses that have been discussed in this thread. I wish *all* licenses were more simple and plain and that the legal system of my country (the USA) was not designed so that you must have a lawyer to do business. It is plain that not only the GPL but licenses by other very large operating system vendors (names too “sacred” to mention) are too long and complex to really *completely* grasp. I would like a license that was like this:

Commercial
Can’t sell or redistribute or use as a derivative work without the permission of XYZ company.

Free:
It’s Free. You can use it in your commercial work or not. Do whatever. Just remember where you got it.

Communist:
It’s sorta' free(you don't have to pay for it), if you distribute it with your software all your software must be free. Don’t get paid for software development. Find a job as a janitor.

too yaller to give my name
Wednesday, January 29, 2003

>>Free:
You just described the BSD license.

>>Communist:
How about, "I invested my time to produce this software that I'm letting you use and, if you want to use it, you have to let your users have the same rights I give you. If you don't want to use my software, that's fine too."

Also, the GPL *doesn't* say anything about not being able to sell your software. There *are* people selling GPL'd software (besides Linux distributors). See http://www.gnat.com/ for people making good money selling an excellent, and GPL'd, ADA compiler. This is in addition to the normal, "don't sell your software, sell support and consulting" that most Free Software people expouse.

Remember, it's "free as in speach, not free as in beer."

jeff
Wednesday, January 29, 2003

>>if you distribute it with your software all your software must be free.

And, as I said in a different thread, this isn't true. The GPL even states that it's OK to distribute GPL'd software with non-GPL'd software (again, see any Linux distribution, or any *BSD release since they distribute/use the GPL'd gcc). It's only if your software depends on the GPL'd software that you have to use the GPL for yours.

And this (It's only if your software depends on the GPL'd software that you have to use the GPL for yours) makes sense if you look at it as the 'cost' of using someone elses software. No one is forcing you to 'buy' into the GPL like no one if forcing you to use Oracle - it's a business decision.

If you can't live with the GPL, don't write software that uses GPL'd software. It's a simple choice.

jeff
Wednesday, January 29, 2003

>>It's only if your software depends on the GPL'd software that you have to use the GPL for yours

Why would I distirbute software with my software if I didn't need it? I can't imagine. If I build a database front end, I wouldn't ship it with a free software back end, because the front end "needs" a database! So I either develop my own database or let people use MS Jet - which most of my target audience has on thier pc's anyway.

"Here's the web page design software you wanted me to build and hey, guess what? I included a free version of linux!"

too yaller to give my name
Wednesday, January 29, 2003

Hmm.  With Regard to MySQL/GPL, what if your MySQL data provider class module (.so, .dlls) is distributed as GPL.  If clients want to use MySQL, they're free to download that data provider as well as its source code under the GPL.  You should be able to abstract your data access layer/provider to support this functionality anyway.  That way the application and data provider(s) are separate pieces of software.  I don't know...just throwing ideas out there.

GiorgioG
Wednesday, January 29, 2003

There's two things here that amuses me:

People complain that the FSF says all software should/must be free, for the FSF's particular definition of free. They then go on to say all software should use their own preferred license, because a different definition of free is obviously correct.

I'm also amused that people who keep their own code proprietary (and claim that any other option would destroy their business) also argue that other people aren't sufficiently free with their code.

Which side is correct is another question - I'm just pointing out that there tend to be inconsistent arguments when licensing issues are discussed.

andrew m
Wednesday, January 29, 2003

>>>The world is so simple when we can reduce everything to sweeping generalizations. <<<<<

Reducing things helps to grasp the main point. You use that technique all the time when you design software (or at least I hope you do).

Nobody here would complain if the copyright owner of a component fixes a monetary compensation; if it's too expensive they get something cheaper, abandon the project, or charge more for the finished product. So why are you complaining when the copyright holder fixes non-monetary compensation. Just buy something else, or if you can't afford it then it's because in fact most of the value lies in the external component, not your value added job.

Sure it does happen that people give core software away for free for others to make money from, either by mistake, like Xerox, out of altruism, as happened with many of the protocols that make the internet possible, or because they're the smartest money-grabbing guys on the planet, like Microsoft.

But you can't expect it as a right.

Bear in mind that the GPL license was for a reason. Look at the fragmentation that happened to Unix after it became closed source and proprietory.

>>>>>People ought to produce work and get paid for that work. <<<<<<<

Then pay them; buy commericial software and forget about the GPL. It's not like church attendance on a Sunday in the Bible Belt; nobody will burn your house down if you use VB instead of Python.

>>>>>>> I cannot imagine why I would want all software to be free.<<<<<<<

Nobody on this thread is asking for all software to be free. It's just that some think that all software they use should be free but all software they make should be paid for (preferably on an annual leasing agreement).

Stephen Jones
Wednesday, January 29, 2003

"It's not like church attendance on a Sunday in the Bible Belt; nobody will burn your house down if you use VB instead of Python."

Stephen, I have never heard of this happening (house being burned down for church nonattendence) in the bible Belt or elsewhere. Do you have even one reference to such a case or is this just one of those unsubstatiated hate-swipes at people of faith?

"Nobody on this thread is asking for all software to be free. It's just that some think that all software they use should be free but all software they make should be paid for"

Do you mean a person on this thread thinks that all software they use should be free but all software they make should be paid for? Or do you mean someone else who thinks this? Can you give an examples of any person in this thread, on this board, or even on the internet in general who thinks all software they use should be free but all software they make should be paid for?

Just trying to clear up where you are coming from on this.

Drunk Indian
Wednesday, January 29, 2003

Too yaller -

I have not released any software under the GPL myself yet, but I can see some possible advantages.

Basically you get to trade development time and effort for choice of license. For a hobbyist who is not interested in maintaining exclusive use of his or her work this can be attractive.

In a commercial setting, it may be worthwhile to stitch an application out of 90-95% existing GPL'd software in order to win a contract on time or price. You can charge as much as you want for the resulting (GPL'd) application. You can sell support for the software. You just can't prevent your customer from reselling it.

This is certainly a bad model for shrinkwrap software, but it could be an acceptable model for one-off consulting work.

Devil's Advocate
Wednesday, January 29, 2003

Yaller:

>Communist:
>It’s sorta' free(you don't have to pay for it),
>if you distribute it with your software all
>your software must be free. Don’t get
>paid for software development.
>Find a job as a janitor.

I love the "Find a job as a janitor" statement. That's hillarious. You may not understand GPL, but that's funny.

WNC
Wednesday, January 29, 2003

To:  Devil's Advocate

If I write code, I keep it so I can reuse it later. If I put it into a project that’s going to be taken over by the folks at the FSF, I’ll never see my little children again (the code that is).

They ought to require you to distribute their code free and in a separate file, but let you distribute your commercial code with it. That would be the best of both worlds. Their software is still free to all comers, but your software can be commercial. May be some of these other schemes will let you do that.

Some of us have to pay the rent.

But I do see the value of putting things in the public domain.

too yaller to give my name
Wednesday, January 29, 2003

"Just trying to clear up where you are coming from on this. "

OK, drunk Indian, since you are either tetchy with a hangover, or have-become "born again ex-drunk Indian" hoping to gain brownine points with your new suppliers of virtual hooch:-) I will explain my position without recourse to metaphors of any kind.

Everybody is free to use GPL'd software in their consulting work; when a compny puts a job out to tender you can undercut competitiors by putting in a bid that can save tens of thousands of dollars by using a GPL database, server OS, client OS and so on. Your client gains and so do you. It's a customized job so you are getting paid in full for your work from the one customer, and he's not in the business of reselling software either.

If you are in the shrink wrap business and want to sell for a profit, which is a perfectly reasonable thing to do, then you can use commercial libraries or stuff that is in the public domain with no restrictions on its reuse. Sure you can't use GPL for this - it's deliberate.

Now there are plenty of posters in this thread who are complaiining that they can't use code written by other people for free as part of a product they intend to stop letting others use the same way. That's hypocritical.  GPL developers don't count subsidizing the life styles of shrink wrapped commericial software vendors in their agenda.

Now, definite arguments can be made that having public domain software that is free of restrictions on bundling in commercialized products is good for the developing and user community as a whole. But there is no more reason the GPL developer should provide this than you should.

Incidentally dual licensing agreements may be the way to go. For example the leading CALL authoring program is freeware called "Hot Potatoes". If you use it for free you must put all material made with it on the web for everybody to profit from. If you want to keep the material under control (for example tests, or industrial training you don't want the competition to get hold of, or simply a material you want to sell to others) then you pay for the license. As long as it's fine-tuned, the best of both worlds.

Stephen Jones
Thursday, January 30, 2003

Just a couple points to clarify a few things:

>>If you are in the shrink wrap business and want to sell for a profit, which is a perfectly reasonable thing to do, then you can use commercial libraries or stuff that is in the public domain with no restrictions on its reuse. Sure you can't use GPL for this - it's deliberate.

Actually, there is nothing stopping you from selling GPL'd software - the Free Software Foundation does it all the time. The GPL does allow the person who you gave/sold the software to the right to redistribute it (by giving or selling it). Yes, this can (and will) impact sales, depending on your market.

If you're creating GPL'd solutions for clients, you only have to distribute the software to them. If it's a business app that's important to their business, they're unlikely to freely share it with their competitors so it'll probably never get outside of that company.

The GPL *doesn't* require you to distribute/publish your software. The main point is that *if* you give someone a binary, you also have to make the source available to them and you can't restrict who they give the software to. Although the major Linux distributors publish their distributions for free on their websites, the GPL doesn't say they have to (even though some people ignorantly say that they do).

jeff
Thursday, January 30, 2003

Comparing GPL to communism is way off base.  With communism, you don't have any choice; anything you own or earn becomes everybody else's whether you like it or not.  You often don't even have a choice to leave the communist country if you don't like it.

With the GPL, it is a voluntary "share and share alike" system.  You want to use their land without paying, then let them use your land too.  If not, then keep your land to yourself and don't use their land.

The GPL isn't even that demanding of you in most cases, because commercial closed source software can and is being legitimately distributed on top of and alongside GPL software.  There is Suse, Xandros and Libranet who sell Linux distibutions with their own proprietary add-ons.  There is Oracle who sells and supports the Oracle database on Linux. Only particular types of dependencies, i.e. direct modification of the GPL program itself or statically compiled programs, require you to distribute the source of your own work. Even then, you are still free to make any type of modification you want without revealing your source code, as long as you don't distribute it outside of the company you work for.

T. Norman
Friday, January 31, 2003

"GPL developers don't count subsidizing the life styles of shrink wrapped commericial software vendors in their agenda."

Why not:
We all have to support a lot of them (all the students, the governement employees, those on unemployment benefit, those unapprovedly developing this stuff on company time ...) through taxes etc.

Why not:
They do not like the people wanting to make an honest living ou tof coding, but apparently love those overcharging support consultants, system administrators, hardware vendors ...

Just me (Sir to you)
Friday, January 31, 2003

Just to clarify.

My problem with the GPL has nothing to do with wanting to use 'free' code in non free proprietary solutions. 

My problem is in the doubt caused about using my own code, and derivatives of it if that code is also GPL licenced.  If I used GPL code then it would be under GPL terms.  However, using that code might cause me to inadvertently commingle (lovely word) it with a client's or my own code thereby infecting it with the same virus.

Depending on the project I can spend a long time working out whether a library or source can be used depending on the situations.  Where a client is happy to use GPL code and it was the best code to use, I've done so but I've had make sure that any sources I had were labelled properly (and not all GPL sources contain the proper notice) and separated.

Which is why I prefer a whole bunch of other licences, in fact almost every other open source or free licence.

This is not a religious, political or lickspittle view, its just pragmatism.

Simon Lucy
Friday, January 31, 2003

>>>>>>>They do not like the people wanting to make an honest living ou tof coding,<<<<<<

The only people making an honest living out of coding are spies ;)

Stephen Jones
Friday, January 31, 2003

<<<<<<<<My problem is in the doubt caused about using my own code, and derivatives of it if that code is also GPL licenced>>>>>>>>>>

I'm not clear what you mean here? Do you mean that once you have used a piece of your own code in a GPL project that piece of your own code will then inexorably "infect" all other code it comes into contact with.

I would say it has already been explained in the thread that the answer there is no.

If you mean that you are worried that the code snippets you are using may contain parts of somebody else's code that is GPL'd, and therefore you are inadverntently GPL'ing the whole projiect then in theory the answer is yes. You're certainly better to be cautious.

Stephen Jones
Friday, January 31, 2003

*  Recent Topics

*  Fog Creek Home