Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #12163

Re: "Borrowing" code

Path csiph.com!x330-a1.tempe.blueboxinc.net!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!npeer03.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!post01.iad.highwinds-media.com!newsfe13.iad.POSTED!8ad76e89!not-for-mail
From Arved Sandstrom <asandstrom3minus1@eastlink.ca>
User-Agent Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.27) Gecko/20120216 Lightning/1.0b2 Thunderbird/3.1.19
MIME-Version 1.0
Newsgroups comp.lang.java.programmer
Subject Re: "Borrowing" code
References <Xns9FFB971CFBEEEjpnasty@94.75.214.39> <1848237.679.1329425962537.JavaMail.geo-discussion-forums@pbgq3> <Cs2dnY62Arv156DSnZ2dnUVZ_oidnZ2d@earthlink.com> <7l2rj71n2qk6kqf27dpv59tl7qi5tfmc42@4ax.com> <5368336.186.1329470502072.JavaMail.geo-discussion-forums@pbeo1> <tiatj7lnp2id6q3ni6dfin6s56j1ga8t0q@4ax.com> <21955541.159.1329508308005.JavaMail.geo-discussion-forums@pbgq3> <zYz%q.1162$mT1.281@newsfe09.iad> <26067624.0.1329550046782.JavaMail.geo-discussion-forums@pbcpl10>
In-Reply-To <26067624.0.1329550046782.JavaMail.geo-discussion-forums@pbcpl10>
Content-Type text/plain; charset=ISO-8859-1
Content-Transfer-Encoding 7bit
Lines 146
Message-ID <bRQ%q.4528$Pc2.3626@newsfe13.iad> (permalink)
X-Complaints-To abuse@newsgroups-download.com
NNTP-Posting-Date Sat, 18 Feb 2012 17:03:03 UTC
Organization Public Usenet Newsgroup Access
Date Sat, 18 Feb 2012 13:03:03 -0400
X-Received-Bytes 8584
Xref x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:12163

Show key headers only | View raw


On 12-02-18 03:27 AM, Lew wrote:
> On Friday, February 17, 2012 1:50:23 PM UTC-8, Arved Sandstrom wrote:
>> On 12-02-17 03:51 PM, Lew wrote:
>>> Gene Wirchenko wrote:
>>>> Lew wrote:
>>>>> It's too strong a conclusion, "freely" available. A tutorial's code very 
>>>>> reasonably could be licensed only for personal use in service of learning the 
>>>>> material in the tutorial. Presence in a tutorial is not presumptive evidence 
>>>>> that code is licensed freely or in the public domain.
>>>>
>>>>      How would it be licenced without some sort of statement? 
>>>
>>> Exactly so. It wouldn't be.
>>>
>>> Mere presence in a tutorial is not a license.
>>>
>>>> If there is no such statement, then the code is freely available.  
>>>
>>> Wrong. In most jurisdictions, certainly in the U.S., all rights are reserved by 
>>> default. Ergo if there is no statement of license, then the code is completely 
>>> unavailable, outside fair use. 
>> [ SNIP ]
>>
>> What do you do if you can find essentially the same code, except for WS
>> and variable names and such, on dozens of different websites?
>> Acknowledge everyone?
> 
> What?  Huh?  "Essentially the same code, except for" the things that make it 
> different under copyright law? Where's the problem?

Lew, you're not that dense. You know damned well that copyright
infringement doesn't require identical copying. Look up "substantial
similarity".

Some of the points that I somewhat jokingly mentioned in another post,
like changing variable names and adding comments, are actually useless
for material that was accessible on the Internet, because if a
substantial similarity analysis shows that *only* variable names and
whitespace and comments are different, you're still on thin ice.

Where differences like this are more important is for non-public code,
where if access cannot be proved, then any difference has more meaning
in demonstrating that copying probably did not happen.

In copyright infringement cases, including source code, substantial
similarity and access go hand in hand. As evidence for access goes up,
there is less proof required for showing similarity, and vice versa.
Like I mentioned above, for material published on the Internet then
access is provable and obvious, and the bar for showing substantial
similarity is correspondingly less.

The issue certainly is not about "identical" code.

>> I'm not talking about plagiarism either. I'm talking about code snippets
>> that, given a certain situation, really won't deviate from a certain
>> form. Any adequate programmer, confronted with the same problem, would
>> arrive at essentially the same expression. There are numerous examples
>> of this on the Internet or in books or in magazines.
> 
> This is a question of law. What does the law say?

We know what the law says. You do, I do, and most other thinking people
do. You don't need to consult a lawyer for the basics here.

If such a situation were to go legal, let's assume that for each of the
N apparently similar code snippets that we have N known, undisputed
authors. One of them is the plaintiff, and has to prove first the
infringement and then that damages occurred as a result, against one or
more of the other N-1 parties.

The law is also quite clear that the case made by the plaintiff involves
the two factors of substantial similarity and access. In some cases, for
example if the similarity is actually striking, then no proof of access
may be needed.

The point I'm making is about the case where access is provable
(everything is on the Internet) and code snippets *are* substantially
similar, but we are positing that they were in fact independently
produced. The court, IOW, would find for infringement - that is the part
of my point - but in fact there was not any - that is the other part of
my point.

The larger argument I am trying to make here, Lew, is that *Internet*
publishing of source code by all and sundry has created a situation that
copyright law isn't all that good at addressing. For computer code that
does *not* get published - it resides in a company's version control,
and at most the source code might be provided to clients/customers -
then I think existing copyright law is OK.

I also think that there similar problems associated with source code
excerpts in books. Let me give you just one example: in Jason Hunter's
"Java Servlet Programming" books (I am looking at the one that covers
Servlet 2.2, and the 2.3 Draft) he discusses the new-fangled servlet
filters, and provides a LogFilter as an example. This filter prints out
("logs") the before and after times for a request. Even if a Java
programmer has never seen that example, the odds are extremely high that
if they write such a filter that it won't just be substantially similar,
it'll be strikingly similar.

So who wins the copyright battle there? Or do we consider that to be
trivial code? Maybe we do. But there are many situations that result in
lengthier code that will still be substantially similar but
independently developed...time and time and time again.

> AIUI, if you copy the same expression as a copyright work without permission, 
> you have violated the copyright. That's the law. You can play the "how many 
> angels can dance on the head of a pin?" game all you want, but absent the 
> particulars of a given case you're just playing with yourself.
> 
>> Code is not prose or poetry. That's why automatic copyright for source
>> code is a flawed concept. Ideally people should have to explain why they
>> think their code rates copyright. I understand that we shouldn't be
>> flouting the current (broken) system, but we shouldn't be passively
>> accepting it either.
>>
>> I guarantee that each and every one of us writes code routinely,
>> independently and without copy & paste and without reference to others'
>> material, that could be attacked on the basis of copyright, simply
>> because someone published something basic. Are you cool with that?
> 
> You could write a Harry Potter novel without seeing the original work, too. 
> J.K. Rowling could then sue you, as her publishers have done, and you would 
> lose. Are you cool with that?

Different situation. Source code is not the same thing as prose and
poetry, not in real life it's not. In law it is, but law simply reflects
what society wants, and what certain segments of society want; law is
loosely correlated with common sense at times.

> Copyright exists to protect the expression of a work. It has value. It '
> prevents others from profiting from the copyright holder's work without 
> sharing the profit, or at least getting permission. Yes, I'm cool with that.
> 
> You should be, too.
> 
Lew, buddy, if you write code that is original, non-trivial and that I
cannot write myself given my current abilities and domain knowledge, and
that after due diligence (namely research in other documentation) I see
that it is also non-trivial to programmers who are well-versed in the
problem domain, I would be overjoyed to credit you with the work.

AHS
-- 
...wherever the people are well informed they can be trusted with their
own government...
-- Thomas Jefferson, 1789

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

"Borrowing" code Novice <novice@example..com> - 2012-02-16 19:50 +0000
  Re: "Borrowing" code glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-02-16 20:28 +0000
  Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-16 12:59 -0800
    Re: "Borrowing" code Patricia Shanahan <pats@acm.org> - 2012-02-16 13:51 -0800
      Re: "Borrowing" code Gene Wirchenko <genew@ocis.net> - 2012-02-16 15:03 -0800
        Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-17 01:21 -0800
          Re: "Borrowing" code Gene Wirchenko <genew@ocis.net> - 2012-02-17 11:29 -0800
            Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-17 11:51 -0800
              Re: "Borrowing" code Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-02-17 17:50 -0400
                Re: "Borrowing" code glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-02-17 22:36 +0000
                Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-17 23:27 -0800
                Re: "Borrowing" code glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-02-18 15:11 +0000
                Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-18 10:28 -0800
                Re: "Borrowing" code glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-02-18 20:08 +0000
                Re: "Borrowing" code Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-02-18 16:46 -0400
                Re: "Borrowing" code BGB <cr88192@hotmail.com> - 2012-02-20 01:58 -0700
                Re: "Borrowing" code Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-02-18 13:03 -0400
                Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-18 10:31 -0800
                Re: "Borrowing" code glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-02-18 20:15 +0000
                Re: "Borrowing" code Gene Wirchenko <genew@ocis.net> - 2012-02-19 19:46 -0800
                Re: "Borrowing" code Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-02-19 23:08 -0600
                Re: "Borrowing" code Gene Wirchenko <genew@ocis.net> - 2012-02-20 09:17 -0800
                Re: "Borrowing" code Mark <i@dontgetlotsofspamanymore.invalid> - 2012-02-20 09:32 +0000
                Re: "Borrowing" code Lew <noone@lewscanon.com> - 2012-02-20 01:45 -0800
                Re: "Borrowing" code BGB <cr88192@hotmail.com> - 2012-02-20 08:35 -0700
                Re: "Borrowing" code Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-02-20 03:59 -0600
            Re: "Borrowing" code Arne Vajhøj <arne@vajhoej.dk> - 2012-02-17 17:00 -0500
              Re: "Borrowing" code Joshua Cranmer <Pidgeot18@verizon.invalid> - 2012-02-17 16:08 -0600
                Re: "Borrowing" code Arne Vajhøj <arne@vajhoej.dk> - 2012-02-17 17:14 -0500
            Re: "Borrowing" code George Neuner <gneuner2@comcast.net> - 2012-02-17 18:00 -0500
              Re: "Borrowing" code Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-02-17 21:54 -0400
          Re: "Borrowing" code Arne Vajhøj <arne@vajhoej.dk> - 2012-02-17 17:10 -0500
            Re: "Borrowing" code glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-02-17 22:42 +0000
              Re: "Borrowing" code Gene Wirchenko <genew@ocis.net> - 2012-02-17 15:22 -0800
                Re: "Borrowing" code glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-02-18 01:37 +0000
                Re: "Borrowing" code Gene Wirchenko <genew@ocis.net> - 2012-02-19 19:51 -0800
      Re: "Borrowing" code Novice <novice@example..com> - 2012-02-16 23:37 +0000
      Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-17 01:26 -0800
    Re: "Borrowing" code Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-02-16 19:36 -0400
      Re: "Borrowing" code Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-02-16 22:15 -0600
      Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-17 01:41 -0800
    Re: "Borrowing" code Novice <novice@example..com> - 2012-02-16 23:36 +0000
      Re: "Borrowing" code Arne Vajhøj <arne@vajhoej.dk> - 2012-02-16 18:42 -0500
  Re: "Borrowing" code BGB <cr88192@hotmail.com> - 2012-02-16 15:19 -0700
    Re: "Borrowing" code Novice <novice@example..com> - 2012-02-16 23:50 +0000
      Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-17 01:57 -0800
        Re: "Borrowing" code Novice <novice@example..com> - 2012-02-17 17:09 +0000
          Re: "Borrowing" code glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2012-02-17 18:45 +0000
            [OT] Harry Potter copyright claims (Was: "Borrowing" code) Lew <lewbloch@gmail.com> - 2012-02-17 11:00 -0800
              Re: [OT] Harry Potter copyright claims (Was: "Borrowing" code) Gene Wirchenko <genew@ocis.net> - 2012-02-17 11:36 -0800
            Re: "Borrowing" code Mark <i@dontgetlotsofspamanymore.invalid> - 2012-02-20 09:41 +0000
          Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-17 10:34 -0800
          Re: "Borrowing" code Bent C Dalager <bcd@pvv.ntnu.no> - 2012-02-18 00:08 +0000
  Re: "Borrowing" code Jeff Higgins <jeff@invalid.invalid> - 2012-02-16 18:14 -0500
  Re: "Borrowing" code Arne Vajhøj <arne@vajhoej.dk> - 2012-02-16 18:37 -0500
    Re: "Borrowing" code Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-02-16 17:39 -0800
  Re: "Borrowing" code Eric Sosman <esosman@ieee-dot-org.invalid> - 2012-02-16 20:34 -0500
  Re: "Borrowing" code Roedy Green <see_website@mindprod.com.invalid> - 2012-02-16 18:01 -0800
    Re: "Borrowing" code Arne Vajhøj <arne@vajhoej.dk> - 2012-02-16 21:18 -0500
    Re: "Borrowing" code Gene Wirchenko <genew@ocis.net> - 2012-02-16 20:26 -0800
    Re: "Borrowing" code Gene Wirchenko <genew@ocis.net> - 2012-02-16 20:32 -0800
    Re: "Borrowing" code BGB <cr88192@hotmail.com> - 2012-02-17 00:25 -0700
    Re: "Borrowing" code Lew <lewbloch@gmail.com> - 2012-02-17 02:01 -0800
    Re: "Borrowing" code Mark <i@dontgetlotsofspamanymore.invalid> - 2012-02-17 11:36 +0000
  Was: "Borrowing" code -  Links for budding copyright lawyers Jeff Higgins <jeff@invalid.invalid> - 2012-02-17 17:29 -0500
  Re: "Borrowing" code Novice <novice@example..com> - 2012-02-20 19:22 +0000

csiph-web