<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Michael Jay Lissner</title><link href="https://michaeljaylissner.com/" rel="alternate"></link><link href="https://michaeljaylissner.com/feeds/tag/dmca" rel="self"></link><id>https://michaeljaylissner.com/</id><updated>2010-01-15T10:27:18-08:00</updated><entry><title>How to Protect Your Open Source Code from Theft and a Mercurial Hook to Help</title><link href="https://michaeljaylissner.com/posts/2010/01/15/how-to-protect-your-open-source-code-from-theft-and-a-mercurial-hook-to-help/" rel="alternate"></link><updated>2010-01-15T10:27:18-08:00</updated><author><name>Mike Lissner</name></author><id>tag:michaeljaylissner.com,2010-01-15:posts/2010/01/15/how-to-protect-your-open-source-code-from-theft-and-a-mercurial-hook-to-help/</id><summary type="html">&lt;p&gt;&lt;strong&gt;Updated, 2010-01-24:&lt;/strong&gt; Some edits regarding the Affero license (thanks to
Brian at &lt;a href="http://cyberlawcases.com/"&gt;http://cyberlawcases.com&lt;/a&gt; for the&amp;nbsp;corrections).&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve finally begun doing some of the actual coding for &lt;a href="http://www.ischool.berkeley.edu/programs/masters/projects/2010/judicialnlp"&gt;my final 
project&lt;/a&gt; so the time has come to set up &lt;a href="https://github.com/freelawproject/courtlistener"&gt;a mercurial repository&lt;/a&gt; to 
hold the&amp;nbsp;code.&lt;/p&gt;
&lt;p&gt;Once we complete our project, we will have built a free product that 
competes with some of the core functionality of both LexisNexis and 
Westlaw, so something we wanted to do was make sure they couldn&amp;#8217;t steal our
code, enhance their product and thus moot&amp;nbsp;ours.&lt;/p&gt;
&lt;p&gt;To achieve this, we&amp;#8217;re using the &lt;a href="http://www.gnu.org/licenses/agpl.html"&gt;&lt;span class="caps"&gt;GNU&lt;/span&gt; Affero General Public License 
v3&lt;/a&gt;, which allows people to take our code for free, but requires that they 
publicly share any modifications that they make to the code. The normal &lt;span class="caps"&gt;GNU&lt;/span&gt; 
General Public License allows the code to be used at no cost, 
but only requires that changes to the code be shared with the public if one
distributes the changed version to the public. With a server-based 
project, like ours, one could operate modified versions of the code 
without ever having a need to distribute any of the software to the public. 
This loophole is closed by the Affero&amp;nbsp;license.&lt;/p&gt;
&lt;p&gt;In order to license our work, we must be its copyright holder. This is easy
enough, since we get copyright instantly in the U.S., but, 
as has been demonstrated in &lt;a href="http://en.wikipedia.org/wiki/Jacobsen_v._Katzer"&gt;Jacobsen v. Katzer&lt;/a&gt;, in order to seek remedies 
for copyright violations, we would have to register everything we made with 
the copyright office. This &lt;a href="http://www.copyright.gov/docs/fees.html"&gt;costs $35&lt;/a&gt; per registration, 
and with open source software, it&amp;#8217;s not clear whether each and every 
version needs to be registered or just major releases, or&amp;nbsp;what. &lt;/p&gt;
&lt;p&gt;Since this is too onerous to be practical, an additional approach to 
protecting our works is useful, and in the &lt;span class="caps"&gt;DMCA&lt;/span&gt; (&lt;a href="http://www.copyright.gov/title17/92chap5.html#506"&gt;17 &lt;span class="caps"&gt;U.S.C.&lt;/span&gt;§ 506(d)&lt;/a&gt;), 
remedies are provided for the &amp;#8220;fraudulent removal of copyright notice.&amp;#8221; 
Although these do not (in any way) match the protections provided by normal
copyright registration, they are a useful place to begin. Thus, 
if we place a copyright notice into each file of our code, 
those using our code must either risk violating the &lt;span class="caps"&gt;DMCA&lt;/span&gt; by removing these
notices, or leave our copyright information intact. (Placing such notices
in each file is also &lt;a href="http://www.fsf.org/licensing/licenses/gpl-howto.html"&gt;the recommendation&lt;/a&gt; of the Free Software&amp;nbsp;Foundation.)&lt;/p&gt;
&lt;p&gt;To place our information into each and every file of code that we upload 
publicly, I wrote &lt;a href="https://michaeljaylissner.com/archive/checklicense.py"&gt;a short mercurial hook&lt;/a&gt; that  adds copyright and 
licensing information it to the top of every file that is modified or added 
to the repository. To use the script, simply make it executable, 
place it in the .hg directory of your project, and add the following lines
to&amp;nbsp;.hg/hgrc:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;[hooks]
pretxncommit = .hg/checklicense.py
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;A couple of things I should note about this script is that it currently 
only checks for java and python files, and that it requires files called 
java_license.txt and python_license.txt to be in the root of your 
repository. It should be fairly easy to modify though to fit your own&amp;nbsp;needs.&lt;/p&gt;</summary><category term="mercurial"></category><category term="hook"></category><category term="Final Project"></category><category term="DMCA"></category><category term="copyright"></category><category term="Affero GPLv3"></category><category term="CourtListener"></category></entry><entry><title>Jacobsen v. Katzer Article Posted</title><link href="https://michaeljaylissner.com/posts/2009/10/03/jacobsen-v-katzer-article-posted/" rel="alternate"></link><updated>2009-10-03T21:52:21-07:00</updated><author><name>Mike Lissner</name></author><id>tag:michaeljaylissner.com,2009-10-03:posts/2009/10/03/jacobsen-v-katzer-article-posted/</id><summary type="html">&lt;p&gt;Today I finally finished an article I have been writing for Wikipedia, as part of my &lt;a href="http://people.ischool.berkeley.edu/~bcarver/mediawiki/index.php/INFO_237_Fall_2009_Syllabus"&gt;&lt;span class="caps"&gt;IP&lt;/span&gt; Law class&lt;/a&gt;. The professor for this class is the same as the one that taught the Cyberlaw class I took in the Spring, and once again, he has asked us to work on Wikipedia as part of our&amp;nbsp;classwork.&lt;/p&gt;
&lt;p&gt;We were able to choose an article on Wikipedia that was related to the class, and I chose to work on the article on &lt;a href="http://en.wikipedia.org/wiki/Jacobsen_v._Katzer"&gt;Jacobsen v. Katzer&lt;/a&gt;, which is a very important case as it relates to open source licensing, patent law, copyright, &lt;span class="caps"&gt;DMCA&lt;/span&gt;, and just about every other possible &lt;span class="caps"&gt;IP&lt;/span&gt; law&amp;nbsp;issue.&lt;/p&gt;
&lt;p&gt;Ultimately, it was a very complicated case because Katzer has attempted to throw the book at Jacobsen (and vice versa). The court has not yet resolved all the issues, but from reading through about half of the court documents that &lt;a href="http://jmri.sourceforge.net/k/docket/index.shtml"&gt;Jacobsen has posted&lt;/a&gt;, it appears that Katzer&amp;nbsp;has:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Patented technology that was not his to&amp;nbsp;patent&lt;/li&gt;
&lt;li&gt;Attempted to get licensing fees from Jacobsen for those&amp;nbsp;patents&lt;/li&gt;
&lt;li&gt;Stolen the intellectual property of an open source project, stripped it of its license and then incorporated it into his own commercial&amp;nbsp;project&lt;/li&gt;
&lt;li&gt;Attempted to sue Jacobsen for copyright violation for something - I&amp;#8217;m not even sure&amp;nbsp;what&lt;/li&gt;
&lt;li&gt;And more - see the article for&amp;nbsp;details&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In short, it&amp;#8217;s a nasty, nasty case, but ultimately it should work out for Jacobsen, and he should come out the better (or at least none the worse). At a minimum, he has to prove that the patents are invalid, Katzer stole his &lt;span class="caps"&gt;IP&lt;/span&gt;, and that he didn&amp;#8217;t steal Katzer&amp;#8217;s &lt;span class="caps"&gt;IP&lt;/span&gt; - a walk in the&amp;nbsp;park.&lt;/p&gt;
&lt;p&gt;Clearly, that&amp;#8217;s easier said than done, but he&amp;#8217;s fighting what appears to be the good fight, and it looks like if he keeps at it, he will win in the&amp;nbsp;end.&lt;/p&gt;</summary><category term="patent"></category><category term="paper"></category><category term="open source"></category><category term="Jacobsen v. Katzer"></category><category term="FOIA"></category><category term="DMCA"></category><category term="copyright"></category></entry></feed>