SHOO's Time code -- conclusion
Steven Schveighoffer
schveiguy at yahoo.com
Thu Jun 10 07:33:13 PDT 2010
I want to first qualify that I represent only myself, nobody from Phobos,
nobody from Tango, not Walter nor Andrei nor Kris nor Lars nor SHOO nor
anyone but me.
Please see this message:
http://lists.puremagic.com/pipermail/phobos/2010-June/000783.html
Quoted here completely for convenience:
Walter Bright wrote:
"Although I do not believe that SHOO's work on the date/time is legally
infringing on Tango's time code, I feel there's been enough bad feeling
about this and that we should not include Tango's time api design in
Phobos.
I apologize to SHOO for this. I know this is unfair to him.
Andrei has given a start to std.gregorian, perhaps SHOO's implementation
work can be transferred to this to help complete it?"
------
So I want to re-stress some points I have made in the past, and respond to
some statements that have been made by others.
First, let's recap what happened. According to SHOO, he was a user of
Tango's time library, and used the online documentation of Tango, and the
existing implementation of Phobos to write a new Phobos-ified time library
that was similar to Tango's api. Having been one of the main authors of
Tango's time package, I examined SHOO's implementation side-by-side with
Tango's, I can say that I believe him. IMO, it's not the same code or
even derived, it just has a similar feel.
Someone from Tango was alerted to this, and considered it to be infringing
to the point where he/she called Walter and told him so. Walter, as
someone who wants nothing to do with controversy and possible legal
issues, refused to accept the code based on this accusation. Note: I was
not a part of this call, so I do not know what was said exactly in it,
these are my interpretations of the posts on the newsgroup.
Lars of Tango wrote a message to the Phobos mailing list indicating that
in his opinion, "claiming a clean room implementation of an API in D is
difficult, if for no other reason that it is (due to imperfect doc
generation etc) somewhat difficult to properly study a D API without at
the same time reading the source (or glimpsing at it). Even if you have
good intentions, as I'm sure Shoo had, it is important to know this, there
may be less forgiving actors out there." You can read the entire message
here: http://lists.puremagic.com/pipermail/phobos/2010-April/000370.html
Coupled with the phone call asking Walter to block the code, at this
point, we could just say that Tango was being careful. But under the
circumstances, it appears to me that Tango is under the impression that
simply admitting one has used Tango, combined with having made a library
inspired by Tango's API, is enough to warrant an accusation of
infringement. I don't even know if anyone from Tango examined the code or
not.
Thus ensued a large discussion (to phrase it politely) in which several
good ideas for resolving the problem came to light. Some of them focused
on getting a boost license for Tango's time code. It was revealed that
one of the authors, John Chapman, was not reachable by the Tango team, and
so it would take some time to get John's permission. After a few days, I
took it upon myself to seek out John and get his input. He responded to
me positively, and indicated he would alert the Tango team. If we count
the four authors listed in the Tango code (I'm somewhat convinced that a
5th author does not exist), that meant that both John and I had agreed to
license the time code under the boost license for Phobos. This left two
authors.
Out of respect for Tango's ownership of the situation, I let it sit for
over a week, expecting at any time that someone from Tango would contact
Walter with good news. Having heard nothing, I decided to push the matter
a little further and post to the newsgroup my success with John. An
indication from Moritz Warning, a Tango user, was that he had spoken with
the remaining two authors: "I have asked Kris Bell and Matti Niemenmaa.
No Problem at all."
This left the infamous 2nd gunma... I mean 5th author. After requests for
who this person was on the newsgroup, I got nothing.
Almost two weeks later, I decided to give up temporarily on the 5th
author, if the other two were OK with it, I could get more leverage to
finding out who that 5th person was. I just wanted to make sure I had a
direct statement from both those authors, as hearsay isn't very good
evidence. After posing the question to Moritz, Matti Niemenmaa posted his
approval of the license change on the newsgroup. (A sincere thank you for
that!)
Which leads us to Kris. Apparently, Kris has no comment. Having no
comment in this issue is equivalent to saying no without sounding like you
are saying no. Because a unanimous 'yes' vote is required to change
things, abstaining means things will stay the way they are. That's an
interesting way to go...
So to answer some questions/comments stated a few months ago:
> have you thought about just asking the authors of the Tango code in
> question?
No, I hadn't, but I did. Kris says no (comment).
> I would imagine they would say that they only see a minor resemblance in
> the api and asking wouldn't even be necessary from their point of view.
I guess your imagination was incorrect. I don't know why, but Kris does
not want a non-infringing reimplementation of Tango's time code in Phobos.
> But since W/Phobos is very copyright sensitive, I'm sure they will give
> the permission.
Nope.
"Even if you have good intentions, as I'm sure Shoo had, it is important
to know this, there may be less forgiving actors out there."
I guess I found one.
------
Draw the conclusions you want. I'll say that Tango developers have every
right to defend their intellectual property, and every right to insist on
their license being unchanged. Walter has every right to decide what code
gets included in Phobos and under what license. I have no say in any of
these matters, I can only observe and provide suggestions/analysis.
To reiterate what someone else said, to me Tango is poison. It appears to
me from SHOO's story that just *using* Tango is poison. I feel like all
the contributions I have made (and the other two authors have made) are
being held hostage for no good reason (I still don't know why). I stand
by my decision to leave that project, and I hope this story has at least
given you an idea of why.
I also extend Tango an invitation to use any of my code from Phobos,
druntime, or dcollections and relicense it under their license. I have no
problem with people using my code, as long as I can also use it as I see
fit.
-Steve
P.S., I will not respond to this thread except to make any
clarifications/corrections. I've said my share.
More information about the Digitalmars-d-announce
mailing list