Boost logo

Boost :

Subject: Re: [boost] Legal problem with Stackoverflow contribution under the "Creative Commons Attribution Share Alike 3.0" license
From: Paul A. Bristow (pbristow_at_[hidden])
Date: 2018-02-20 10:14:11


> -----Original Message-----
> From: Boost [mailto:boost-bounces_at_[hidden]] On Behalf Of Niall Douglas via Boost
> Sent: 19 February 2018 23:49
> To: boost_at_[hidden]
> Cc: Niall Douglas
> Subject: Re: [boost] Legal problem with Stackoverflow contribution under the "Creative Commons Attribution Share Alike
> 3.0" license
>
> On 19/02/2018 22:57, Tim Song via Boost wrote:
> > On Mon, Feb 19, 2018 at 3:41 PM, Niall Douglas via Boost
> > <boost_at_[hidden]> wrote:
> >> But it's a non-point. If you follow the full discussion of the reuse of
> >> snippets on stackoverflow, reuse of small pieces of code which are not
> >> self standing programs, or functionality in themselves, is not copyright
> >> infringement in most jurisdictions. cf
> >> https://en.wikipedia.org/wiki/Oracle_America,_Inc._v._Google,_Inc. after
> >> all.
> >
> > In which the courts found copyright infringement over a nine-line
> > literally copied rangeCheck function.
>
> That was the jury's verdict in the first case. The judge overrode that
> in a ruling which can be read at
> http://www.groklaw.net/pdf3/OraGoogle-1202.pdf. In that he lays out the
> many cases where copyright cannot be infringed on a snippet, and the
> importance of originality as far as copyright is concerned.
>
> So, for example, a snippet cannot be original if there is only one way
> of calling a set of system APIs to achieve a goal, and copy-and-paste
> identicality is not important for copyright infringement, but rather it
> is the originality in the sequence of steps. So even if Peter takes that
> snippet and rewrites it, if he duplicates the sequence exactly, it's the
> same snippet as far as US IP law is concerned.
>
> Some code on stackoverflow does not call system APIs, and could have
> originality in its algorithm or design. Those snippets you don't reuse
> without permission. But if it mostly calls system APIs, its originality
> is highly constrained, and it now falls under fair use.
>
> The snippet in question calls a lot of system APIs. It is hard to
> implement very differently without replacing the calls to those system
> APIs with inferior ones. That's fair use so.
>
> > (The district court also later ruled that the jury could have validly
> > found for either side on the fair use defense for the APIs. And the
> > jury's fair-use verdict is still under appeal, so it's hardly
> > "established case law".)
> >
> > This copying seems by far closer to the rangeCheck copying than the APIs.
>
> If you read the court's judgement, you will find that the rangeCheck
> issue stemmed from failure to sufficiently document original source,
> hence the importance of etiquette to comment where you get borrowed code
> from. The same programmer wrote the same code twice in two separate
> situations nothing to do with Android, and due to how open source works,
> one of those copies eventually ended up in Android through no design nor
> intent of anybody. That's why the court found a technical infringement,
> but with no damages, especially as once the infringement had been
> noticed, it was immediately rectified.
>
> This is what I've been saying: you can't make pristine open sourced IP.
> Can't be done. I've spotted on more than one occasion code on SO
> matching that of Boost. I suspect there's plenty of it, and nothing
> anyone can do about it. Even if it were all purged through a herculean
> effort now, a few years from now it would be back to the situation now.
> IP leaks across boundaries, so channel not damn the flow.
>
> Better therefore to attribute sources, cite your references, don't steal
> but instead borrow. Then if an IP claim lands, you've done everything by
> the book. Nobody did anything malicious like take somebody else's code,
> *and hide where they got it from* which is not a technical infringement,
> but a malicious one with intent to deceive.
>
> Everything I said above refers to very small pieces of code where any
> originality is hard to determine. Anything larger, or obviously novel,
> is copyright to its author and is not being referred to above.

+1

(And anyway, it's only honest good manners and helpful to any poor code reader).

Paul


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk