Still no new license -- but draft text available

Grant Griffin g2 at seebelow.org
Wed Aug 16 15:18:55 EDT 2000


In article <39999656.7D442F3 at basho.fc.hp.com>, "John says...
>
>Grant Griffin wrote:
>> 
>> John W. Stevens wrote:
>> > Seems that your dislike is based on a misunderstanding . . . why should
>> > you get mad because the cost of the ticket is to agree to cooperate?
>> 
>> I'm not really "mad" (except in the "Mad Hatter" sense ;-), but the
>> problem is that the cost of the ticket is unreasonably high.  Much of
>> what I do is embedded software development.  In case you don't know,
>
>I do.  I've done a fair amount of embedded software development myself. 
>Using, incidentally, GPL'ed tools . . . precisely because they were
>GPL'ed.

Notwithstanding the concerns of paranoid lawyers in certain Big Corporations, I
have no disagreement with using GPL'ed tools either.  (In fact, I actually use
some of those few GNU tools which will run on native Windows. ;-)

Note, however, that if any of the tool's source code just happened to also be
useful in one's embedded application, one would find oneself having to "just say
no".  And that's a shame--why reinvent the wheel all the time just to make
Stallman happy?

>> To provide users of embedded software with the
>> source code is unreasonably expensive, relative to the economics of the
>> applications.
>
>Which would make a perfect argument for not using GPL'ed code in your
>source.

That's precisely the point: I would rather be able to.  Let me tell you a
story...

I once needed to implement a certain Very Tricky Algorithm (VTA).  Fortunately,
I had received a good implementation as part of a larger package which was
provided to my employer free under a special license.  The VTA is very tricky to
implement, but once having been implemented there is no need to re-invent this
wheel.  So it's a perfect candidate for the concept of free/open software.

Strangely, this VTA implementation (call it "Implementation #1") was marked as
being copyright by the author, and GPL'd--even though the author had very likely
written it on his employer's time, and therefore probably did not own the
copyright--and therefore probably did not have any legal basis to set licensing
terms (of any kind) on it.

Our application was a little black box, and it made no business sense whatsoever
for us to provide all its software as "open source"; that would merely cause us
a lot of practical problems in having to make the code accessible to users (who
only wanted the box, not the code), and it would also open the innards of our
box up to competitors.  (You see, the whole idea of a black box is that nobody
knows what's inside. ;-)  So when one weighs that against the benefit of not
having to write the VTA from scratch, the answer is clear: punt on the GPL'd VTA
implementation.

But thank goodness for the 'net.  I shopped around and found two other good
implementations of the VTA.  One implementation ("Implementation 2") had a
generous "do whatever you want except sue me" license.  However, I also found a
somewhat better implementation, "Implementation 3"; it ran faster, and also had
one additional (and very desirable) feature.  As it turns out, #3 was based on
#2, and even quoted #2's license (which was actually a licensing term of #2). 
But ironically, the very freedom of #2's license allowed the author of #3 _to
restrict that freedom_ by providing #2 (along with his improvements) under terms
of the GPL!  (The author of #3 was a hobbiest who was trying to help The
Community in his own misguided way.)

So what to do?  First, I put in a request to the provider of Implementation 1,
asking them to clarify the licensing terms: "Did the GPL really apply or not?" 
Meanwhile, just in case it did, I set about modifying #2 by incorporating the
advanced features of #3 into it.  (Thank goodness all GPL software is open
source. ;-)

After having done that--and after having made a few improvements of my own, mine
("Implementation 4") was now the best of all.  Now, in an ideal world, #4 would
be "returned to the pool" under the "don't sue me" terms of #2.  However, in The
Big Corporation, there isn't really any good mechanism to do that, and, besides,
The Corporate Lawyers would probably stop us: they would see the legal risks as
outweighing the benefits.  (By nature, lawyers aren't "team players". ;-)

As it turned out, we eventually got clarification that the GPL terms stated in
Implementation 1 didn't really apply, so we then had the freedom to do (or not
do) what we wanted with it.  But now, #4 was better than #1, so we're sticking
with it.

Post mortem: This whole excercise was quite wasteful: to have to get license
clarification, and then--as a risk-mitigation strategy--to have to adopt
advanced features of an alternate GPL'ed implementation back into the "don't sue
me" implementation was basically a lot of work for nothing.  Implementation 4
ultimately is better than #1, but it would have saved a lot of work if we had
either been able to use #1, or #3 without ever having created #4.  But even so,
going through all that was cheaper from a business perspective than the
alternatives--including writing the VTA from scratch, and *especially* having to
open our black box by voluntarily infecting ourselves with GPL software.

You can see then, that in this case, the GPL caused nothing but waste.

in-an-ideal-world,-copyleft-wouldn't-be-needed;-in-a-non-ideal
   -world,-it-doesn't-change-anything-ly y'rs,

=g2

_____________________________________________________________________

Grant R. Griffin                                       g2 at dspguru.com
Publisher of dspGuru                           http://www.dspguru.com
Iowegian International Corporation            http://www.iowegian.com




More information about the Python-list mailing list