<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Copyright</title><link>https://jwheel.org/tags/copyright/</link><description>Homepage of Justin Wheeler, an Open Source contributor and Free Software advocate from Georgia, USA.</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><managingEditor>Justin Wheeler</managingEditor><lastBuildDate>Wed, 28 Oct 2020 00:00:00 +0000</lastBuildDate><atom:link href="https://jwheel.org/rss/tags/copyright/index.xml" rel="self" type="application/rss+xml"/><item><title>Cryptographic Autonomy License (CAL-1.0): My first license review</title><link>https://jwheel.org/blog/2020/10/cryptographic-autonomy-license-cal-1-0/</link><pubDate>Wed, 28 Oct 2020 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2020/10/cryptographic-autonomy-license-cal-1-0/</guid><description><![CDATA[<p>The bookmark was creeping on my browser&rsquo;s toolbar for months. &ldquo;Cryptographic Autonomy License&rdquo; CAL-1.0 on the <a href="https://opensource.org/licenses/CAL-1.0">Open Source Initiative webpage</a>. But today, I decided it was time to do my first amateur license review. This is a fun exercise (for me). Remember, <strong>I am not a lawyer and this does not constitute legal advice</strong>!</p>
<p>The <strong>Cryptographic Autonomy License</strong> is one of newest Open Source licenses on the block. The Open Source Initiative <a href="https://lists.opensource.org/pipermail/license-review_lists.opensource.org/2020-February/004693.html">approved</a> it in February 2020. This license also made ripples when it came through. But the question I had, and <a href="/blog/2020/04/copyleftconf-2020-quick-rewind/">could not find a clear answer to</a>, was <em>why is it so interesting</em>?</p>
<p>This blog post is my attempt to do a casual coffee-table review of the license. If you agree or disagree, I encourage you to leave a comment and share your opinion and <strong>why</strong>!</p>
<p>This short article covers three sections:</p>
<ol>
<li><strong>CAL-1.0 provisions</strong>: What basic Free Software assumptions are present in the license, much like other copyleft licenses.</li>
<li><strong>What&rsquo;s fresh!!</strong>: What is the hype? Ready for the key information? It is covered here.</li>
<li><strong>Personal takeaways</strong>: My personal thoughts on this license and where it might be applicable.</li>
</ol>

<h2 id="cal-10-provisions">CAL-1.0 provisions&nbsp;<a class="hanchor" href="#cal-10-provisions" aria-label="Anchor link for: CAL-1.0 provisions">🔗</a></h2>
<p>I learned there are basic assumptions and expectations that are true for all Open Source licenses, per the <a href="https://opensource.org/osd-annotated">Open Source Definition</a>. Copyleft licenses also have different degrees of rigidity depending on context and use. So, what basic ingredients of a Free Software license are present in the Cryptographic Autonomy License?</p>
<p><em>Note</em>: The number in parentheses before each line is the corresponding section number in the license text.</p>

<h3 id="basic-legal-provisions">Basic legal provisions&nbsp;<a class="hanchor" href="#basic-legal-provisions" aria-label="Anchor link for: Basic legal provisions">🔗</a></h3>
<ul>
<li>(<em>6.0</em>) <strong>Disclaimer of warranty, limit on liability</strong>: If someone uses the software and it causes unexpected disastrous side effects, the Licensor cannot be held responsible.</li>
<li>(<em>2.0</em>) <strong>Receiving a license</strong>: Anyone can receive a CAL-1.0 license. To receive it, you just have to agree to its rules.</li>
<li>(<em>7.4</em>) <strong>Attorney fees</strong>: If a case involving noncompliance with the CAL-1.0 is brought to court, loser pays legal fees for prosecution and defense.</li>
<li>(<em>7.3</em>) <strong>No sub-licensing</strong>: You cannot add another license &ldquo;on top&rdquo; of the CAL-1.0.</li>
<li>(<em>3.0</em>) <strong>Patent clause</strong>: Got patents? This license is equipped to interface with external patent licenses.</li>
</ul>

<h3 id="permissive-provisions">Permissive provisions&nbsp;<a class="hanchor" href="#permissive-provisions" aria-label="Anchor link for: Permissive provisions">🔗</a></h3>
<ul>
<li>(<em>4.1</em>) <strong>Access</strong>: Source code must be made available over a network with this license.</li>
<li>(<em>4.3</em>) <strong>Attribution</strong>: Cite your sources. Retain all licensing, authorship, and/or attribution notices.</li>
</ul>

<h3 id="copyleft-provisions">Copyleft provisions&nbsp;<a class="hanchor" href="#copyleft-provisions" aria-label="Anchor link for: Copyleft provisions">🔗</a></h3>
<ul>
<li>(<em>4.1</em>) <strong>Modified Work</strong>: Changes to the original Work make it a Modified Work. Same license rules apply to a Modified Work.</li>
<li>(<em>5.2</em>) <strong>Reinstatement</strong>: A la GPLv3, for non-compliant derivative works, there is a 60 day grace period to come into compliance before your license is terminated.</li>
<li>(<em>4.5</em>) <strong>Combined Work Exception</strong>: Software in the Larger Work as well as the Larger Work as a whole may be licensed under the terms of your choice.</li>
<li><strong>Network use</strong>: A la AGPL, it also includes a trigger for network use.</li>
</ul>

<h2 id="whats-fresh">What&rsquo;s fresh!!&nbsp;<a class="hanchor" href="#whats-fresh" aria-label="Anchor link for: What&rsquo;s fresh!!">🔗</a></h2>
<p>The fresh take on this license from other licenses is all in <strong>4.2. Maintain User Autonomy</strong>:</p>
<blockquote>
<p>In addition to providing each Recipient the opportunity to have Access to the Source Code, You cannot use the permissions given under this License to interfere with a Recipient’s ability to fully use an independent copy of the Work generated from the Source Code You provide with the Recipient’s own User Data.</p>
<p>Section 4.2 Maintain User Autonomy: intro text</p>
</blockquote>
<p>My non-lawyer take on this is that user data plays a much more prominent role in the terms of this license than other copyleft licenses. Just like the AGPL was a response to the changing world of network services and cloud computing, the CAL-1.0 is a response to the changing world of machine learning and data science.</p>
<p>The CAL-1.0 seems to define &ldquo;user autonomy&rdquo; in the context of actually <em>using</em> the software, versus something more holistic like <a href="https://techautonomy.org/">Digital Autonomy</a>. In other words, if you are running CAL-1.0 software, you cannot interfere with requests for personal user data from your users.</p>
<p>This might not sound so radical, but it really is. It is a radical way to assert users&rsquo; ownership of their data. If you are the end user of a distributed or cloud-based app licensed under CAL-1.0, <strong>you are enabled (to some degree) to request copies of personal user data without interference or obfuscation.</strong></p>

<h3 id="cal-10-and-hatbrim-technologies">CAL-1.0 and Hatbrim Technologies&nbsp;<a class="hanchor" href="#cal-10-and-hatbrim-technologies" aria-label="Anchor link for: CAL-1.0 and Hatbrim Technologies">🔗</a></h3>
<p>To better explain this, consider this made-up example.</p>
<p>I am a product manager at Hatbrim Technologies. Hatbrim develops an integrated calendar application, <strong>Holocal</strong>, to store events, meetings, and reminders. Holocal is an integrated application that includes a front-end component, back-end component, and a machine learning algorithm. The algorithm offers tailored suggestions to reduce my meeting load based on my common meeting patterns with other events or activities I have planned.</p>
<p>Oraculous, a competing company to Hatbrim Technologies, creates a fork of Holocal called <strong>OraCal</strong>. It is almost functionally identical to Holocal except it also adds an integration to other services from Oraculous. However, OraCal also modifies the calendar optimization algorithm. It adds a periodic random event suggestion based on events and activities in your calendar.</p>

<h3 id="meanwhile-at-hatbrim">Meanwhile at Hatbrim…&nbsp;<a class="hanchor" href="#meanwhile-at-hatbrim" aria-label="Anchor link for: Meanwhile at Hatbrim…">🔗</a></h3>
<p>Since I am a product manager at Hatbrim, I turn to my trusty team of developers and ask them to explore the OraCal fork of Holocal. I am curious to know how their calendar optimization method works, since Oraculous must also release OraCal under the Cryptographic Autonomy License (CAL-1.0). My team of developers review the OraCal code, try making changes to Holocal, but we are unable to replicate this feature of OraCal in our environment.</p>
<p>Eventually, one developer runs OraCal internally, but optimized for our data. Still no luck to reproduce the nifty calendar event suggestion feature! Fortunately, the CAL-1.0 offers a protection here. So, the developer sends an email to Oraculous to request her personal user data from OraCal provided to her. Because the CAL-1.0 has provisions to prevent foul play or modifying the data, the developer receives a copy of her data and realizes another Oraculous tool was scrubbing and appending data for calendar predictions before it returned to OraCal.</p>
<p>In this hypothetical scenario, our developer is ultimately able to understand how the Modified Work is changed and how Oraculous adapted the original Work. Under another copyleft license like any GPL variant or the Mozilla Public License, a licensee has no obligation to share any user data with an end user. For any reason. Unless they happen to be nice or because another legal authority or body holds them accountable to share user data.</p>

<h2 id="cal-10-personal-takeaways">CAL-1.0 personal takeaways&nbsp;<a class="hanchor" href="#cal-10-personal-takeaways" aria-label="Anchor link for: CAL-1.0 personal takeaways">🔗</a></h2>
<p>Did I mention I am not a lawyer and this does not constitute legal or financial advice? In case I did not, <strong>I am not a lawyer and this does not constitute legal or financial advice</strong>.</p>
<p>This advice and interpretation of the license is raw and unfiltered. But you only read something for the first time but once. So, with all other contemporary issues in the Free Software world going on, I thought it would be a fun exercise to draft this blog post as I read through the Cryptographic Autonomy License for the first time.</p>
<p>Ultimately, my takeaways after reading and reflecting on the license a few times is this:</p>
<ol>
<li><strong>Lack of transparency in motivation</strong>: <a href="https://holo.host/">Holo</a>, the company behind the license, emphasizes all the good qualities of this license while sneakily dodging the fact that it is a mildly anti-competitive license for their business case.</li>
<li><strong>Precedent-setting</strong>: This is the first approved Open Source license that <a href="https://medium.com/holochain/why-cal-is-important-to-the-end-user-aec58b2ff730">explicitly does anything significant about data</a>. It will be interesting to see if this inspires other licenses that make definitions on data.</li>
<li><strong>Potentially powerful if picked up</strong>: If used more widely or in more popular projects, it has potential to disrupt the status quo of how Open Source thinks about user data and the autonomy of the end user.</li>
<li><strong>No defining moment</strong>: To my knowledge, CAL-1.0 lacks a significant defining moment since its approval. It is unclear what real-world noncompliance litigation looks like. It lacks the battle-testing of other copyleft licenses.</li>
</ol>
<p>I imagine I am not the only one who feels mutually excited and hesitant about the Cryptographic Autonomy License. I am not sure if it makes sense to apply to any of my work or to recommend as a default license to others yet. And licensing is only but one of many pathways in the Free Software legal and policy world. But nonetheless, it is an interesting Free Software development that is still maturing since February 2020.</p>
<hr>
<p><em>Photo by <a href="https://unsplash.com/@markusspiske?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Markus Spiske</a> on <a href="https://unsplash.com/s/photos/access?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a>. Modified by Justin Wheeler.</em></p>]]></description></item><item><title>CopyleftConf 2020: quick rewind</title><link>https://jwheel.org/blog/2020/04/copyleftconf-2020-quick-rewind/</link><pubDate>Thu, 09 Apr 2020 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2020/04/copyleftconf-2020-quick-rewind/</guid><description><![CDATA[<p><strong>CopyleftConf 2020</strong> took place on Monday, 3 February, 2020 in Brussels, Belgium:</p>
<blockquote>
<p>This will be the second annual International Copyleft Conference. Participants from throughout the copyleft world — developers, strategists, enforcement organizations, scholars and critics — will be welcomed for an in-depth, high bandwidth, and expert-level discussion about the day-to-day details of using copyleft licensing, obstacles facing copyleft and the future of copyleft as a strategy to advance and defend software freedom for users and developers around the world.</p>
<p>This event will provide a friendly and safe place for discussion of all aspects of copyleft, including as a key strategy for defending software freedom!</p>
<p><a href="https://2020.copyleftconf.org/">Official conference website</a></p>
</blockquote>
<p>This was my first time attending CopyleftConf. I attended on behalf of <a href="https://fossrit.github.io/librecorps/">RIT LibreCorps</a> to represent the sustainability efforts at the <a href="https://fossrit.github.io/about/">RIT FOSS@MAGIC initiative</a>. However, I also represented myself as an individual in the Free Software movement. For CopyleftConf 2020, I arrived hoping to learn more about where we, as the Free Software community, are going. I also hoped to gain a deeper ethical perspective about our digital society.</p>
<p>
<figure>
  <img src="/blog/2020/04/IMG_20200203_094048593_HDR.jpg" alt="Me excitingly looking up to the main stage, holding my CopyleftConf 2020 schedule, after having bought my ticket earlier that same morning." loading="lazy">
  <figcaption>Me excitingly holding my CopyleftConf 2020 schedule after having bought my ticket earlier that same morning.</figcaption>
</figure>
</p>
<p>Event reports take many forms. Since CopyleftConf 2020 is structured in a unique format, my event report is structured as follows:</p>
<ul>
<li><strong>At a glance: structure and key takeaways</strong>: High-level overview of what CopyleftConf 2020 was like. What the biggest ideas on my mind were at the end of the day.</li>
<li><strong>Copyleft adopt curves: what drove copyright adoption then (or now?)</strong>: Musings on the history of copyleft and movement building.</li>
<li><strong>Free Software, but for kids</strong>: Children and teenagers are already building open source communities. How do we include the next generation?</li>
<li><strong>Where are we going?</strong>: Software ethics and copyleft licensing.</li>
</ul>

<h2 id="at-a-glance-structure-and-key-takeaways">At a glance: structure and key takeaways&nbsp;<a class="hanchor" href="#at-a-glance-structure-and-key-takeaways" aria-label="Anchor link for: At a glance: structure and key takeaways">🔗</a></h2>
<p>If you’re here for the quick overview, this is it.</p>
<p>CopyleftConf 2020 is one of the best conferences I have attended. I bought my ticket the morning of the conference. Karen Sandler and Bradley Kuhn fired me up the day before in their <a href="/blog/2020/03/fosdem-2020-pt-1-play-by-play/">FOSDEM 2020 talk</a>. My initial reluctance to go was because I assumed it was a conference for FOSS lawyers. While it definitely includes that group, it isn&rsquo;t exclusive to that group. CopyleftConf 2020 collected people from a diverse range of experiences and backgrounds in the open source world.</p>
<p>However, I also realized the &ldquo;movers and shakers&rdquo; in the Free Software world have been around a while. Many people there are embedded in this ecosystem for the last 10, 20, or even 30 years. I <em>think</em> I was the youngest person there. I realized Free Software has not done an excellent job of including my generation. This left me with interesting reflections on the future of copyleft and its ability to transfer lessons and values on to the next generation.</p>

<h3 id="structure-dialogue-and-discussion">Structure: Dialogue and discussion&nbsp;<a class="hanchor" href="#structure-dialogue-and-discussion" aria-label="Anchor link for: Structure: Dialogue and discussion">🔗</a></h3>
<p>The best way to describe the format of CopyleftConf 2020 is &ldquo;dialogue and discussion&rdquo;. The first half of the conference started with traditional sessions, with speakers and slide decks. The end of the conference moved towards open panels with stronger audience participation. Most panels centered around topics or ideas addressed in the morning sessions.</p>
<p>I attended these sessions:</p>
<ul>
<li><a href="https://2020.copyleftconf.org/schedule/presentation/20/">Keynote</a> (<em><a href="https://twitter.com/keynote2k">Tony Sebro</a></em>)</li>
<li><a href="https://2020.copyleftconf.org/schedule/presentation/9/">Copyleft adoption curves: what drove adoption then (or now?)</a> (<a href="https://twitter.com/luis_in_brief"><em>Luis Villa</em></a>)</li>
<li><a href="https://2020.copyleftconf.org/schedule/presentation/13/">Copyleft Expansion: What should &ndash; and shouldn&rsquo;t &ndash; be on the table?</a> (<em>Deb Nicholson, Bradley M. Kuhn, Allison Randal, Heather J. Meeker, John Sullivan</em>)</li>
<li><a href="https://2020.copyleftconf.org/schedule/presentation/17/">The Rising Ethical Storm in Open Source</a> (<a href="https://twitter.com/CoralineAda"><em>Coraline Ada Ehmke</em></a>)</li>
<li><a href="https://2020.copyleftconf.org/schedule/presentation/19/">Software Ethics and Copyleft Licensing</a> (<em><a href="https://twitter.com/o0karen0o">Karen Sandler</a></em>)</li>
</ul>
<p>I came up with three key takeaways from CopyleftConf 2020 as a whole (not including the detailed sections further below):</p>

<h3 id="1-open-source-is-in-an-identity-crisis">1. Open source is in an identity crisis.&nbsp;<a class="hanchor" href="#1-open-source-is-in-an-identity-crisis" aria-label="Anchor link for: 1. Open source is in an identity crisis.">🔗</a></h3>
<p>Many people are confused. The confusion is simultaneously indecisive and divisive. I believe the identity crisis stems from that early decision in 1997 about what we call this particularly different way of developing and collaborating on software and technology. Free Software or open source? One is politically charged and historically exclusive, while the other is more neutral and business-friendly, and more inclusive to people who believe in compromise. Today, we are seeing a similar divide emerge between Free/Open Source and Ethical Source.</p>
<p>There are several emotions. It is deeply personal. For some, the promises of free/open source failed our collective humanity. For others, open source is a vastly successful turn of events to make the closed world more open. Yet for others still, it is both. CopyleftConf 2020 took a highlighter to this tension between what we consider right and wrong. It also questioned what the role of Free Software is in all of this.</p>
<p>I don&rsquo;t think anyone has the answer yet. Surely some people left CopyleftConf 2020 with a more clear view if they think licensing is a viable approach or not. But CopyleftConf 2020 did not have this answer. It just made it clear that most of us are still wrestling with this.</p>

<h3 id="2-millennials-are-underrepresented">2. Millennials are underrepresented.&nbsp;<a class="hanchor" href="#2-millennials-are-underrepresented" aria-label="Anchor link for: 2. Millennials are underrepresented.">🔗</a></h3>
<p>Most of the time I was at CopyleftConf 2020, I had massive imposter syndrome. This is no fault of the conference or the great steps the organizers took to make it inclusive, but wow. There were so many people there who I have seen all across Twitter. People who are moving and shaking in different realms of the open source world.</p>
<p>Yet as I looked around the room, I started to wonder what the average age demographic of the room was. Being in my early 20s, I felt like I was in a room of Free Software giants. Many people there have been pushing the conversation forward and definitively fighting for Software Freedom for a decade or more.</p>
<p>And then there was me. I don&rsquo;t know what my role or higher calling is yet in this great big movement we call Free Software. While I was glad to be in the room, I felt sorely underrepresented in age.</p>

<h4 id="born-digital">Born digital&nbsp;<a class="hanchor" href="#born-digital" aria-label="Anchor link for: Born digital">🔗</a></h4>
<p>I couldn&rsquo;t help but find it unusual though. My generation and those after me are the first generations who were born into the digital society, built by those who came before us. When I was four years old, I was privileged to have my own computer. By six, I was connected to the Internet (even if it was dial-up). By fourteen, I was in a Linux command line running my own Minecraft server with thousands of players.</p>
<p>While my perspective is rooted in some privilege, there is something interesting in my experience. I was born into a world where I didn&rsquo;t make the choices of what hardware or software I used. In the beginning, everything was handed to me or provided for me.</p>
<p>For kids and teenagers today, this couldn&rsquo;t be more of a reality. Before COVID-19, when you went out to a restaurant or public place, how often would you see a small kid clutching a tablet, provided by an exhausted parent? Adolescents today grew up in the always-online worlds of Google and Snapchat.</p>
<p>Today&rsquo;s teenagers and young adults I know are often keenly aware that they are the prey in a complex digital world they are already so deeply embedded in. So, why resist at all? To them, there is little point in resisting because all the technology decisions made for them early in life locked them deeper into this &ldquo;predator-prey&rdquo; ecosystem.</p>

<h4 id="is-free-software-ready-for-the-millennials">Is Free Software ready for the millennials?&nbsp;<a class="hanchor" href="#is-free-software-ready-for-the-millennials" aria-label="Anchor link for: Is Free Software ready for the millennials?">🔗</a></h4>
<p>So, I felt like an imposter at this conference of people who are wise to the role of Software Freedom in our new digital society, but never grew up in the kind of world I did. A lot of the people in the room at CopyleftConf 2020 developed their worldview, ethical perspectives, and software preferences as the world changed around them. Me and other people of my generation were born into this world.</p>
<p>It makes the conversation around Software Freedom very different, and also challenging, because the next ten and twenty years of Software Freedom will have to include today&rsquo;s youth to be truly sustainable.</p>

<h3 id="3-the-world-is-changing-will-free-software">3. The world is changing. Will Free Software?&nbsp;<a class="hanchor" href="#3-the-world-is-changing-will-free-software" aria-label="Anchor link for: 3. The world is changing. Will Free Software?">🔗</a></h3>
<p>Related to the identity crisis and under-representation of youth, the theme of change begins to emerge. Stallman and other Free Software leaders in the 1980s and 1990s were ahead of their time to realize the importance of Software Freedom in respecting and protecting user freedom. Some of those same people were also in the room at CopyleftConf 2020.</p>
<p>But today&rsquo;s world is changing. Software became the commodity in the 1970s and 1980s. Free Software was the resistance. Today, data is the new digital commodity. Software is just one piece of a bigger puzzle. Software Freedom may protect one aspect of our digital lives, but it would be nonsensical to assume the digital world would stay the same. Why should Free Software?</p>

<h4 id="the-2020s-will-be-definitive">The 2020s will be definitive&nbsp;<a class="hanchor" href="#the-2020s-will-be-definitive" aria-label="Anchor link for: The 2020s will be definitive">🔗</a></h4>
<p>So, CopyleftConf 2020 made me realize that the next ten years will be definitive. The 2020s will determine whether open source becomes yet another cog in strengthening our capitalist society and enthroning corporations as a great benefactor to technology, or if Software Freedom undergoes some sort of transformation to meet the new demands of freedom in our digital world.</p>
<p>No matter your political leanings, read any news site that isn&rsquo;t a tech journal and tell me honestly that there are not some scary trends in our technology world. COVID-19 is just the latest example, with our data privacy and digital rights being on the sacrificial alter for our &ldquo;safety&rdquo; and &ldquo;protection&rdquo;. This line is all too common. I have heard it as a justification of many things across my life since September 2001.</p>
<p>So, what will Free Software do?</p>

<h2 id="copyleft-adoption-curves-what-drove-copyright-adoption-then-or-now">Copyleft adoption curves: what drove copyright adoption then (or now?)&nbsp;<a class="hanchor" href="#copyleft-adoption-curves-what-drove-copyright-adoption-then-or-now" aria-label="Anchor link for: Copyleft adoption curves: what drove copyright adoption then (or now?)">🔗</a></h2>
<blockquote>
<p>Copyleft adoption has changed significantly over time, for better and for worse. This talk will survey the many factors that drive adoption, with particular focus on GPL v2 and Affero GPL v3. While some factors are obvious and reasonably well-understood (particularly the shift towards SaaS economics) many other nuanced factors play in as well.</p>
<p><a href="https://twitter.com/luis_in_brief">Luis Villa</a></p>
</blockquote>
<p>What I highlighted in my notes from Luis&rsquo;s talk was his history lesson on adoption. While the history of Free Software wasn&rsquo;t new to me, nor most people in the room, Luis took it in a different way. His history lesson was a reflection on &ldquo;why?&rdquo; and not just &ldquo;what?&rdquo;</p>
<p>Whether you think Free Software &ldquo;won&rdquo; or not, open source is here to stay. So, how did we get to where we are today? How did a famous software company go from calling open source an &ldquo;intellectual property cancer&rdquo; in 2001 to investing billions of dollars into open source and open source companies by 2020?</p>

<h3 id="add-more-chairs-to-the-table">Add more chairs to the table&nbsp;<a class="hanchor" href="#add-more-chairs-to-the-table" aria-label="Anchor link for: Add more chairs to the table">🔗</a></h3>
<p>I loved this quote that Luis dropped: &ldquo;<strong>Movement building is the only way to influence political change.</strong>&rdquo; Luis gave examples from the 1990s of how evangelism and education were part of the building blocks of open source. There were &ldquo;leading apps&rdquo; that brought new people to the Free Software (or open source) table. Mozilla was the first browser that brought common lawyers in. A focus on education for lawyers, such as the F.S.F.&rsquo;s 22,000 word F.A.Q., converted a motivation to learn into practical knowledge used for compliance work.</p>
<p>
<figure>
  <img src="/blog/2020/04/IMG_20200203_105508557_HDR.jpg" alt="Luis Villa on copyleft adoption curves. Slide reads: &ldquo;tl;dr (positive version): if you build a movement, maybe you won&rsquo;t need a license!&rdquo;" loading="lazy">
  <figcaption>Luis Villa on copyleft adoption curves.</figcaption>
</figure>
</p>
<p>However, I think Luis&rsquo;s goal was to define, not to prescribe. He implied that building a movement doesn&rsquo;t start with writing a license, based on his personal experiences (he did lead drafting of the Mozilla Public License). My takeaway from Luis is that we need to think about how we build a movement that includes people who aren&rsquo;t at the table today to build a strong foundation for what comes next.</p>

<h2 id="free-software-but-for-kids">Free Software, but for kids&nbsp;<a class="hanchor" href="#free-software-but-for-kids" aria-label="Anchor link for: Free Software, but for kids">🔗</a></h2>
<p>There was a <a href="https://2020.copyleftconf.org/schedule/presentation/13/">panel</a> on copyleft expansion and what should and shouldn&rsquo;t be at the table. At some point, the role of &ldquo;the next generation&rdquo; came up in heralding the values of copyleft licensing forward in light of the popularity of permissive licenses.</p>
<p>This was personal. My first experience in the open source world was as a community member and later a volunteer staff member of the largest open source Minecraft server software project. In my time in that community, I learned a lot. I saw a <a href="/blog/2020/04/open-source-minecraft-bukkit-gpl/">major breakdown of the GPL</a> for a community of hundreds of thousands of young adults, teenagers, and children. So, indeed, how is &ldquo;the next generation&rdquo; going to herald these values of copyleft licensing?</p>

<h3 id="talk-with-us-not-at-us">Talk <em>with</em> us, not <em>at</em> us&nbsp;<a class="hanchor" href="#talk-with-us-not-at-us" aria-label="Anchor link for: Talk with us, not at us">🔗</a></h3>
<p>It is interesting to be present in these conversations about &ldquo;the next generation&rdquo; because it usually feels like people are talking at me instead of with me. It took some reflection time to realize this after CopyleftConf 2020, but I feel like some older folks like to imagine that younger folks will come on board and just start steering the ship in the same course it has always traveled. Some younger folks may be fine with that.</p>
<p>But I also think a lot of younger people will ask more of Free Software because of our collective experiences with Free Software licenses. From my hey-days in the Minecraft community, there is bad blood towards the GPL and copyleft licensing because of the scars it left on the community, even if it was really because the GPL should never have been used in that context.</p>
<p>But the demands for more also stem from the collective treatment by those senior to us in traditional &ldquo;FOSS circles.&rdquo; Even at my university, I also see how students become bitter and frustrated in instances where senior faculty and older community members insist on a Free Software-first, no-compromises approach. As if it were so simple for my generation.</p>
<p>I already explained the perspective of younger folks earlier in this blog post. But the way some senior folks treat us in the proper Free Software world is sometimes exclusionary and off-putting, even if that isn&rsquo;t the intention. It discards great opportunity for guidance and mentorship. There is an innumerable amount of times an older person completely dismissed my decision to use a proprietary or mixed-source platform for a community, yet they lament about not having the patience to troubleshoot the Free Software tools they rely on when they fail (mailing lists and email spam filters, I&rsquo;m looking at you).</p>

<h3 id="teach-early-and-teach-often">Teach early and teach often&nbsp;<a class="hanchor" href="#teach-early-and-teach-often" aria-label="Anchor link for: Teach early and teach often">🔗</a></h3>
<p>But that point aside, let&rsquo;s bring it back to the panel. I think it was Allison Randall and John Sullivan who emphasized the importance of early education around the concepts of Software Freedom. The average middle school student interested in STEM will not comprehend the GPL. However, the Four Freedoms (by design) are easy to comprehend. The freedoms to Read, Run, Remix, and Redistribute are not that difficult to understand. Perhaps part of the answer lies in how we think about messaging to younger folks and keeping foundational concepts like the Four Freedoms at the forefront.</p>
<p>I still lament over the way that Free Software built itself in a technology-centered way instead of a people-centered way, but I digress.</p>

<h2 id="where-are-we-going">Where are we going?&nbsp;<a class="hanchor" href="#where-are-we-going" aria-label="Anchor link for: Where are we going?">🔗</a></h2>
<p>The hottest discussions I participated in were from <a href="https://2020.copyleftconf.org/schedule/presentation/17/">The Rising Ethical Storm in Open Source</a> (<a href="https://twitter.com/CoralineAda">Coraline Ada Ehmke</a>) and <a href="https://2020.copyleftconf.org/schedule/presentation/19/">Software Ethics and Copyleft Licensing</a>, emceed by Karen Sandler. Coraline dropped absolute <strong><em>fire</em></strong> in her talk, even knowing that the essence of her talk would alienate some people. But it was a call-out to us folks in tech who consciously or unconsciously live these values that our Free Software movement is built upon: the freedoms of personal liberty, as it lends itself both for justice and harm.</p>
<p>
<figure>
  <img src="/blog/2020/04/IMG_20200203_140443994_HDR.jpg" alt="Coraline Ada Ehmke on the Rising Ethical Storm in Open Source. Slide reads: &ldquo;Software freedom must not come before human freedom.&rdquo;" loading="lazy">
  <figcaption>Coraline Ada Ehmke on the Rising Ethical Storm in Open Source.</figcaption>
</figure>
</p>
<p>I won&rsquo;t spend a lot of time summarizing these talks and sessions, but one interesting thing to look up that Coraline mentioned was the Parable of the Locksmith.</p>
<p>During Karen&rsquo;s session, I penned what ended up being a short speech in my notebook. When I was eventually passed the mic, I tried to fit too much into too little time, and I was not fully respectful of other folks who also had something to contribute to the discussion. So, instead, I will recap the full essence of what I wanted to say in my blog post.</p>

<h3 id="our-software-freedoms-are-not-enough">Our software freedoms are not enough&nbsp;<a class="hanchor" href="#our-software-freedoms-are-not-enough" aria-label="Anchor link for: Our software freedoms are not enough">🔗</a></h3>
<p>The Four Freedoms, the foundation of all copyleft licenses, is not enough.</p>
<p>On the Saturday before CopyleftConf 2020, I presented at FOSDEM 2020 with my colleague and dear friend Mike Nolan on <a href="https://fosdem.org/2020/schedule/event/ethical_ai/">three new freedoms for AI</a> that go beyond software. In our talk, we analyzed the history of how Free Software began as a social movement. It roughly flowed as follows:</p>
<ol>
<li><strong>GNU Project, 1983</strong>: Establishment of values</li>
<li><strong>Free Software Foundation, 1985</strong>: Establishment of organization to champion the values</li>
<li><strong>GNU Public License, 1989</strong>: Establishment of license to enforce and protect the values</li>
</ol>
<p>In today&rsquo;s complex and changing world, we need more than Free Software&rsquo;s Four Freedoms. This libertarian base was susceptible to the co-opting of its values as &ldquo;open source.&rdquo; It was always inevitable, because Free Software was built from the strengths and biases of those who founded the movement (i.e. Richard Stallman).</p>
<p><strong>Free Software was designed with technology at its center, not people. This is to say, it was poorly designed.</strong></p>
<p>Now, we have an ethical dilemma that was always possible because Freedom means freedom to do as you wish, not the freedom of all people.</p>
<p>Some context for discussing legal issues is key, but we need to push the conversation forward beyond semantics. We need to identify whether unethical uses of our software is something we will tolerate. We can&rsquo;t continue to ignore or delegate social responsibilities for what we do.</p>

<h3 id="so-now-what">So, now what?&nbsp;<a class="hanchor" href="#so-now-what" aria-label="Anchor link for: So, now what?">🔗</a></h3>
<p>On one hand, we need to be ready to have these conversations about real effects and the impact of what we do on people. Look at the <a href="https://www.reuters.com/article/us-myanmar-rohingya-un/myanmar-generals-had-genocidal-intent-against-rohingya-must-face-justice-u-n-idUSKCN1LC0KN">Facebook news feed and the Myanmar genocide</a>. Legal semantics is where we are stuck since we defined the Four Freedoms. But these freedoms are no longer enough.</p>
<p>There is not one answer of where we are going. There are only multilateral answers. We have to be intersectional and inclusive for where we go from here. Free Software needs to turn to its allies not only in law and licenses, but also in labor organizing and regulation authorities.</p>
<p>One direction on my mind is continuing to support D&amp;I initiatives like Outreachy. Outreachy interns do awesome things during their internships, and many continue to do awesome things even when their internships end. Bringing more diverse perspectives to the table, especially from underprivileged groups, is key to giving those perspectives equitable power and influence.</p>

<h3 id="we-do-have-the-power">We <em>do</em> have the power.&nbsp;<a class="hanchor" href="#we-do-have-the-power" aria-label="Anchor link for: We do have the power.">🔗</a></h3>
<p>But everyone in that room at CopyleftConf 2020, and you, the reader, have some power. We all have some room to influence change for good. But we cannot avoid the discomfort. We can not keep turning away our eyes.</p>
<p>So, what will you do?</p>
<p>For me, I am wrestling with that question actively as I continue to make my way out into the world.</p>

<h2 id="thanks-folx">Thanks folx!&nbsp;<a class="hanchor" href="#thanks-folx" aria-label="Anchor link for: Thanks folx!">🔗</a></h2>
<p>To wrap up this CopyleftConf 2020 report, a few thank-yous are in order:</p>
<ul>
<li><strong><a href="https://www.rit.edu/computing/directory/sxjics-stephen-jacobs">Stephen Jacobs</a></strong>: For always being supportive for yet another trip abroad and helping me push my career forward in a number of ways (and footing the bill!)</li>
<li><strong><a href="https://nolski.rocks/">Mike Nolan</a></strong>: My co-conspirator, partner in FOSS, and comrade in arms</li>
<li><strong><a href="https://sfconservancy.org/">Software Freedom Conservancy</a></strong>: For creating and holding this important space.</li>
</ul>
<p>CopyleftConf 2020 continues to give me a lot to think about and consider. I’m fortunate to have attended. I hope this event report gives additional visibility to some of the conversations held in Brussels this year.</p>]]></description></item><item><title>The day open source died: a story about Minecraft, Bukkit, and the GPL</title><link>https://jwheel.org/blog/2020/04/open-source-minecraft-bukkit-gpl/</link><pubDate>Tue, 07 Apr 2020 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2020/04/open-source-minecraft-bukkit-gpl/</guid><description><![CDATA[<p>Once upon a time, when I was a teenager, I volunteered in the Minecraft open source community. I volunteered as a staff member of the largest open source Minecraft server today, called <a href="https://www.spigotmc.org/wiki/about-spigot/">Spigot</a>. Spigot is a fork of the Bukkit project.</p>
<p>This blog post is a story roughly covering 2010 to 2014 on the meaning, values, and promise of open source. This story impacted a community of hundreds of thousands of people, mostly adolescent children, teenagers, and young adults. It is a tale about the simultaneous success and failure of the GNU Public License (GPL).</p>

<h2 id="from-the-beginning-bukkit-minecraft-and-the-gpl">From the beginning: Bukkit, Minecraft, and the GPL&nbsp;<a class="hanchor" href="#from-the-beginning-bukkit-minecraft-and-the-gpl" aria-label="Anchor link for: From the beginning: Bukkit, Minecraft, and the GPL">🔗</a></h2>
<p>In the beginning, in December 2010, there was <strong>Bukkit</strong>.</p>
<p>
<figure>
  <img src="/blog/2020/03/bukkit-logo.png" alt="Bukkit Project logo" loading="lazy">
</figure>
</p>
<blockquote>
<p>Bukkit is an up-and-coming Minecraft Server mod that will completely change how running and modifying a Minecraft server is done - making managing and creating servers easier and providing more flexibility. Learning from the mistakes made by other mods, Bukkit aims to be different and fill the void left by them: built from the ground up we&rsquo;ve focused on performance, ease-of-use, extreme customisability and better communication between the Team and, you, our users. The overall design of Bukkit has been inspired by other mods and our experience as Minecraft players just like yourselves, giving us a unique perspective and advantage going into the creation of the Bukkit Project.</p>
<p><a href="https://web.archive.org/web/20141211115250/https://bukkit.org/pages/about-us/">About Us</a>, Bukkit.org</p>
</blockquote>
<p>Bukkit was an open source server for Minecraft. It provided an API for developers to create plugins that extended Minecraft in unique and fun ways. While Bukkit was not the first open source Minecraft server, it was the first organized project. Bukkit launched with the GNU Public License (GPL) v3 license.</p>
<p>From 2011 to 2014, Bukkit was the de-facto standard for running a Minecraft multiplayer game server. Over time, more Bukkit servers (and derivatives) were used than the official server software distributed by Mojang. Mojang is the company responsible for Minecraft development.</p>

<h3 id="hard-work-on-bukkit-recognized">Hard work on Bukkit recognized&nbsp;<a class="hanchor" href="#hard-work-on-bukkit-recognized" aria-label="Anchor link for: Hard work on Bukkit recognized">🔗</a></h3>
<p>The project&rsquo;s success was also recognized by Mojang too. At the first-ever Minecraft convention in 2011, MINECON, four Bukkit lead developers were hired by Mojang to work on Minecraft. All but one of the hired employees then departed from Bukkit. That one developer who remained active in Bukkit would depart from Mojang mysteriously in 2013.</p>
<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">Had a great time working for Mojang but it&#39;s time for me to pursue other interests. As of yesterday, I am no longer working for Mojang.</p>&mdash; EvilSeph (@EvilSeph) <a href="https://twitter.com/EvilSeph/status/385537792794959872?ref_src=twsrc%5Etfw">October 2, 2013</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


<p>However, there was always one caveat. Bukkit was an open source project licensed under the GPLv3. However, it also reverse-engineered some parts of the Minecraft game code to build its server code and API. This was never a problem for Bukkit or Mojang:</p>
<blockquote>
<p>&ldquo;When we started up Bukkit in December of 2010, we decided we wanted to do things right. Right from the beginning we wanted to be sure we were bringing about a positive change to Minecraft, one that Mojang themselves would approve of. To that end, we set up a meeting with Mojang to get a feel for their opinions on our project and make sure we weren&rsquo;t doing anything they didn&rsquo;t like. The gist of the meeting was that Mojang &ldquo;liked what we were doing&rdquo; but not how we had to go about doing things. Unfortunately, we both knew that we had no alternatives, so we continued along - albeit now with the reassurance that our project would most likely not be shut down any time in the future.&rdquo;</p>
<p>EvilSeph (Warren Loo), &ldquo;<a href="https://web.archive.org/web/20150112163638/https://bukkit.org/threads/bukkit-the-next-chapter.62489/">Bukkit: The Next Chapter</a>&rdquo;</p>
</blockquote>
<p>Nobody ever raised a copyright issue over the reverse-engineered code from Minecraft in Bukkit. Yet, for years, the GPL code released by Bukkit included bits from official Minecraft code.</p>

<h2 id="act-1-the-minecraft-eula">Act 1: The Minecraft EULA&nbsp;<a class="hanchor" href="#act-1-the-minecraft-eula" aria-label="Anchor link for: Act 1: The Minecraft EULA">🔗</a></h2>
<p><em>An alternative perspective on the Minecraft EULA is in this Guardian article. &ldquo;<a href="https://www.theguardian.com/technology/2014/jun/24/minecraft-how-a-change-to-the-rules-is-tearing-the-community-apart">Minecraft: how a change to the rules is tearing the community apart.</a>&rdquo;</em></p>
<hr>
<p>All was fine for a number of years. Bukkit was a volunteer-led project even after some of its core developers were hired to work at Mojang. However, in 2014, unrelated tension started to grow in the Minecraft community.</p>
<p>The tension was about the language used in Minecraft&rsquo;s End User License Agreement (EULA). The EULA used ambiguous language over the monetization of Minecraft multiplayer servers:</p>
<blockquote>
<p>&ldquo;The one major rule is that you must not distribute anything we‘ve made. By “distribute anything we‘ve made” what we mean is “give copies of the game away, make commercial use of, try to make money from, or let other people get access to our game and its parts in a way that is unfair or unreasonable&rdquo;.&quot;</p>
<p>2014: <a href="https://web.archive.org/web/20140706191831/https://account.mojang.com/documents/minecraft_eula">account.mojang.com/documents/minecraft_eula</a></p>
</blockquote>
<p>While many open source projects flourished around Minecraft, a huge game server industry also co-existed in this ecosystem. Multiplayer server owners running Bukkit (or derivative projects, like Spigot) created web stores for their servers. Players paid real money to buy in-game perks for a specific multiplayer server. Using open source plugins, players paid for things like item packages with diamond swords or virtual currency to spend in-game.</p>
<p>This behavior was allowed to flourish for years. However, the EULA was discreetly edited in December 2013. In mid-2014, someone in the community noticed the changed language. They tweeted and tagged a Mojang employee asking if this meant multiplayer servers had to stop selling in-game items for real money. In as much detail that a 2014 tweet with a 140-character limit allowed, the Mojang employee confirmed the EULA language did technically forbid that.</p>

<h3 id="panic-in-the-bukkit-server">Panic! In The Bukkit Server&nbsp;<a class="hanchor" href="#panic-in-the-bukkit-server" aria-label="Anchor link for: Panic! In The Bukkit Server">🔗</a></h3>
<p>&ldquo;<em>Then, everything changed when the Fire Nation attacked.</em>&rdquo;</p>
<p>The community erupted into chaos. Suddenly, a community that had mostly co-existed peacefully was at a virtual war with each other. The situation was understandable from both ends, if for different reasons.</p>
<p>Anyone could start their own multiplayer server. So it was possible for malicious servers to scam players (usually young children) of money. Usually this happened by failing to deliver on the purchases or closing down after a period. Frequently, Mojang was contacted for help (usually by angry parents) about game servers Mojang did not control.</p>
<p>At the same time, many good people built (probably unwise) business models around the permissive nature of Minecraft intellectual property. The open source software made it easy to extend Minecraft in ways Mojang did not intend.</p>

<h2 id="act-2-the-bukkit-cards-are-revealed">Act 2: The Bukkit cards are revealed&nbsp;<a class="hanchor" href="#act-2-the-bukkit-cards-are-revealed" aria-label="Anchor link for: Act 2: The Bukkit cards are revealed">🔗</a></h2>
<p>Tension was already high between the the trinity of business owners, open source developers, and Mojang. By 2014, Mojang was a multi-million dollar company (even before their multi-billion Microsoft buyout). The EULA tension placed a heavy burden on the open source developers, who received pressure from both ends.</p>
<p>Then, the unexpected happened on August 21st, 2014. The Bukkit project lead, Warren Loo (EvilSeph), announced the end of development on the Bukkit project:</p>
<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">.<a href="https://twitter.com/CraftBukkit?ref_src=twsrc%5Etfw">@CraftBukkit</a>: It&#39;s time to say goodbye - <a href="http://t.co/LRG2uiMbDe">http://t.co/LRG2uiMbDe</a></p>&mdash; EvilSeph (@EvilSeph) <a href="https://twitter.com/EvilSeph/status/502360729803317248?ref_src=twsrc%5Etfw">August 21, 2014</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


<blockquote>
<p>Read the <a href="https://web.archive.org/web/20151105173217/https://bukkit.org/threads/bukkit-its-time-to-say.305106/">full announcement</a> from Bukkit team</p>
</blockquote>

<h3 id="bukkit-gets-owned">Bukkit gets &ldquo;owned&rdquo;&nbsp;<a class="hanchor" href="#bukkit-gets-owned" aria-label="Anchor link for: Bukkit gets &ldquo;owned&rdquo;">🔗</a></h3>
<p>This was sad news. But the real shock came an hour later when the lead developer of Minecraft at Mojang shot back on Twitter:</p>
<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">Warren over at bukkit seems to have forgotten that the project was bought by Mojang over two years ago, and isn&#39;t his to discontinue.</p>&mdash; Jens Bergensten (@jeb_) <a href="https://twitter.com/jeb_/status/502380018216206336?ref_src=twsrc%5Etfw">August 21, 2014</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


<p>Two other former Bukkit developers working at Mojang chimed in too:</p>
<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">We took ownership of the Bukkit github repos &amp; project. We&#39;ll see what happens from here.</p>&mdash; Erik Broes (@_grum) <a href="https://twitter.com/_grum/status/502381523241144320?ref_src=twsrc%5Etfw">August 21, 2014</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">To make this clear: Mojang owns Bukkit. I&#39;m personally going to update Bukkit to 1.8 myself. Bukkit IS NOT and WILL NOT BE the official API.</p>&mdash; Nathan Adams (@Dinnerbone) <a href="https://twitter.com/Dinnerbone/status/502389963606867968?ref_src=twsrc%5Etfw">August 21, 2014</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


<p>It was now revealed that the Bukkit open source developers hired by Mojang in 2011 had given up their personal copyright and rights to their open source contributions as part of their employment contracts. The open source developer and business owner communities both learned this abruptly over a 140-character tweet.</p>
<p>The community was confused, upset, and angry.</p>
<blockquote>
<p>&ldquo;The decision to keep the acquisition of the Bukkit codebase a secret was made between Mojang and Curse, which only recently came to light. I was completely unaware that I had spent the last two years of my life as a Bukkit Administrator, and successor to the project lead, under the illusion that the project was independently ran. Had I known back then perhaps my choice would have been different, perhaps not. It’s easy to speculate on what might have been, but unless faced head on with the choice, the decision is not always clear.&rdquo;</p>
<p>TnT, &ldquo;<a href="https://web.archive.org/web/20150215082334/https://bukkit.org/threads/so-long-and-thanks-for-all-the-fish.305350/">So long, and thanks for all the fish</a>&rdquo;</p>
</blockquote>
<p>What is known now was that for about three years, the volunteer-driven open source project was &ldquo;owned&rdquo; by company valued for millions of dollars that did little to support the open source project that helped build a community around the game. The only visible contribution made by Mojang to Bukkit was the explicit permission to continue their endeavor in the legal gray area.</p>

<h2 id="act-3-dmca-take-down-of-bukkit">Act 3: DMCA take-down of Bukkit&nbsp;<a class="hanchor" href="#act-3-dmca-take-down-of-bukkit" aria-label="Anchor link for: Act 3: DMCA take-down of Bukkit">🔗</a></h2>
<p>On September 5th, 2014, a lead developer not hired by Mojang, who had contributed over 15,000 lines of code to the project, invoked a <a href="https://en.wikipedia.org/wiki/Digital_Millennium_Copyright_Act">Digital Millennium Copyright Act</a> (DMCA) take-down on all of <a href="https://github.com/github/dmca/blob/master/2014/2014-09-05-CraftBukkit.md">his personal contributions</a> to the project (and all derivative projects). <strong>In a day, all the source code for a project used ~3x more than Mojang&rsquo;s official server software disappeared from the Internet</strong>.</p>
<p>It is easy to understand why this lead developer did what he did. To find out the last few years of your life spent volunteering on a game project that was secretly owned by a multi-million dollar company is a shattering experience. It&rsquo;s essentially free labor. But at the same time, this was a project used by hundreds of thousands of people around the world. It was more than a project; it was also a community.</p>
<p>One of the lead developers of Bukkit said this of the project in their <a href="https://web.archive.org/web/20161213172659/https://bukkit.org/threads/bukkit-an-autobiography.310083/">resignation letter to the community</a>:</p>
<blockquote>
<p>&ldquo;The Bukkit Project is so much more than CraftBukkit, getting updates out and providing API. It&rsquo;s about giving the community a place where they feel welcomed and can program to their hearts&rsquo; content with the use of our product. The Bukkit API gave people the ability to change the behavior of Minecraft, but it would have meant nothing without the contributions from the plugin developers in the community.&rdquo;</p>
<p><a href="https://bukkit.org/members/feildmaster.82116/">feildmaster</a></p>
</blockquote>
<p>The DMCA take-down wasn&rsquo;t just a take-down of the software; it also was a take-down of a community. The overnight disappearance of Bukkit left a huge power vacuum full of bitterness, personal harassment, and doxing. (Don&rsquo;t forget this was also the era of <a href="https://en.wikipedia.org/wiki/Gamergate_controversy">#GamerGate</a>.)</p>

<h2 id="who-was-this-community">Who was this community?&nbsp;<a class="hanchor" href="#who-was-this-community" aria-label="Anchor link for: Who was this community?">🔗</a></h2>
<p>The project I participated with, Spigot, was a fork of Bukkit created in 2012. Like Bukkit, Spigot was also hit by the DMCA take-down, although the Spigot team worked out a clever legal workaround to continue development.</p>
<p>A huge plugin community and third-party software around Bukkit&rsquo;s API grew around both Bukkit and Spigot. The unusual thing was, with few exceptions, most of the leaders of these communities were young adults in their 20s, teenagers, or even 11 year old kids. Open source wasn&rsquo;t a strongly understood concept in this community. <strong>It was just what everyone did</strong>. The messaging around licensing was <a href="https://www.spigotmc.org/threads/the-most-important-part-of-your-project-might-not-even-be-a-line-of-code.121682/">not always great</a>, but working in the open was the nature of how this gaming community operated.</p>

<h3 id="the-spirit-of-open-source-died">The spirit of open source died&nbsp;<a class="hanchor" href="#the-spirit-of-open-source-died" aria-label="Anchor link for: The spirit of open source died">🔗</a></h3>
<p>For this community, the promise and glory of open source died. For years, the Bukkit developer team shared their belief in open source with the community:</p>
<blockquote>
<p>&ldquo;Bukkit chose to go the open source route with our API for several reasons. Not only is open source awesome, but we knew that there were many talented individuals within the Minecraft community that could help us evolve, mature and grow our project much faster than we could have ever dreamed on our own.&rdquo;</p>
<p>EvilSeph (Warren Loo), &ldquo;<a href="https://web.archive.org/web/20150308122118/https://bukkit.org/threads/bukkit-project-changes-and-improvements.133798/">Bukkit Project Changes and Improvements</a>&rdquo;</p>
</blockquote>
<p>But with the complications of a project doomed to failure under the GPL that never should have been, combined with the hidden secret of ownership and DMCA take-down of open source code, the promise of open source both helped and failed this community.</p>

<h3 id="who-was-right-who-was-wrong">Who was right? Who was wrong?&nbsp;<a class="hanchor" href="#who-was-right-who-was-wrong" aria-label="Anchor link for: Who was right? Who was wrong?">🔗</a></h3>
<p>On one hand, the lead developer who issued the DMCA take-down was able to vent the frustration faced by those who discovered their secret &ldquo;free labor&rdquo; agreement with Mojang (at a great personal cost, as he was harassed, stalked, and received death threats). On the other hand, the collective community faced the end of an era brought about extraordinary circumstances that actually voided the GPL as a valid license:</p>
<blockquote>
<p>&ldquo;A license is a contract. There are many reasons why a contract would be void, and many conditions that make a contract invalid from the get-go. One such condition is being “tricked” into the agreement, which would include agreeing to work on a project under false pretenses. As stated above, an open source project being secretly purchased by a company, in hopes to have that company’s game be improved through it, is as close to a loophole for free labor as you will find. Free labor was outlawed in this country a while ago. We had a whole war about it.&rdquo;</p>
<p>/u/VideoGameAttorney, &ldquo;<a href="https://www.reddit.com/r/Minecraft/comments/2fk5nn/my_response_to_vubui_mojang_and_the_hundreds_yes/">My Response to Vubui, Mojang, and the hundreds (yes, hundreds) of you who asked me to weigh in on this.</a>&rdquo;</p>
</blockquote>
<p>The only conclusion I can muster on this saga is from that same Reddit thread: &ldquo;<em>But at the end of the day, don’t just believe one side is “good” and the other “bad” here. These things are rarely so simple.</em>&rdquo;</p>

<h2 id="why-did-i-write-this">Why did I write this?&nbsp;<a class="hanchor" href="#why-did-i-write-this" aria-label="Anchor link for: Why did I write this?">🔗</a></h2>
<p>Because I keep coming back to this story, across my life. I was writing an event report about a <a href="/blog/2020/04/copyleftconf-2020-quick-rewind/">copyleft licensing conference</a> I went to <a href="/tags/2020-foss-conferences/">in February 2020</a>, when I recapped this same story to someone there in-person. It wasn&rsquo;t the first time I told this story at a conference though. It&rsquo;s such an interesting case study of copyleft licensing.</p>
<p>Because it is in the open source gaming world and the largest demographic of this particular gaming community is under 30 years old, many folks who have been &ldquo;around the block&rdquo; in open source are unaware of this story.</p>
<p>But as my first open source community and also something I invested nearly a whole decade of my life into (as have countless others), this experience shaped my outlook on open source and community in an unusual way. It&rsquo;s an experience I can&rsquo;t forget. Even if I only have an abrupt ending to this story, it&rsquo;s a story that I think deserves to be told, in respect to those who invested far more time, energy, money, and tears in this than I ever have.</p>]]></description></item><item><title>The most important part of your project might not even be a line of code</title><link>https://jwheel.org/blog/2016/02/licensing-most-important-part-of-project-not-code/</link><pubDate>Wed, 10 Feb 2016 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2016/02/licensing-most-important-part-of-project-not-code/</guid><description><![CDATA[<p>
<figure>
  <img src="https://upload.wikimedia.org/wikipedia/commons/thumb/4/4b/Puzzly_sharing_%28from_licensing_tutorial%29.svg/327px-Puzzly_sharing_%28from_licensing_tutorial%29.svg.png" alt="Open-source licensing: how does it affect your work?" loading="lazy">
  <figcaption>Open-source licensing: how does it affect your work?</figcaption>
</figure>
</p>
<p>Today&rsquo;s entry to the blog is sourced from a thread that I posted on the <a href="https://www.spigotmc.org/threads/the-most-important-part-of-your-project-might-not-even-be-a-line-of-code.121682/">SpigotMC Forums</a>. If you wish to join in the discussion about this, feel free to chime in on the thread or leave a comment on my blog. In this post, I covered licensing, licenses, and why your open-source software project should have a license. You can read my original post in this blog entry.</p>
<hr>
<p>I&rsquo;d like to share some personal and real-word advice to many of you contributing open-source resources to Spigot, but also to other open-source software projects you may work on even outside of just Minecraft or Spigot.</p>

<h2 id="licensing">Licensing&nbsp;<a class="hanchor" href="#licensing" aria-label="Anchor link for: Licensing">🔗</a></h2>
<p>What is licensing? Why does it matter? Why should you care? There are many reasons that licensing is an important part of a project you are working on. You are taking the time to write code and share it with the world in an open way, such as publishing it on GitHub, Bitbucket, or any number of other code-hosting services. Anyone might stumble across your code and find it useful.</p>
<p>Licensing is the way that you can control exactly how someone who finds your code can use it and in what ways.</p>

<h2 id="okay-why-does-it-really-matter">Okay, why does it <em>really</em> matter?&nbsp;<a class="hanchor" href="#okay-why-does-it-really-matter" aria-label="Anchor link for: Okay, why does it really matter?">🔗</a></h2>
<p>Maybe you&rsquo;ve been writing code for a really long time and you&rsquo;ve never bothered with licenses and don&rsquo;t feel the need to. I&rsquo;d like to present two hypothetical situations that I see pop up all the time, one in Spigot and one in the greater open-source community.</p>

<h4 id="your-plugin">Your Plugin&nbsp;<a class="hanchor" href="#your-plugin" aria-label="Anchor link for: Your Plugin">🔗</a></h4>
<p>You have spent a lot of time writing an awesome resource and you pushed all of your code on GitHub! Woohoo, project complete! You package it up as a JAR and submit out to the open. Skip ahead a few months, and maybe you no longer have the time to contribute to your project. Or maybe someone has an awesome idea for a totally different plugin that uses similar functionality to what you have written.</p>
<p>A new person finds your code on GitHub and discovers that it has the perfect method or algorithm for his own project. Or maybe they want to continue your project with new, fresh energy! But you have no license for your code. By default, this means <a href="http://choosealicense.com/no-license/">default copyright laws</a> will apply to your code. <strong>This is an extremely limiting type of copyright enforcement and almost defeats the entire purpose of even open-sourcing your code.</strong> A law-abiding programmer might just give up on the project and look elsewhere, or maybe a not-so-law-abiding programmer will secretly copy and paste your code without attributing your work back to you. This helps neither you or the friendly programmer looking at continuing or forking your work.</p>
<p>In many cases, the SpigotMC Staff receive reports about people &ldquo;copying&rdquo; other peoples&rsquo; code. <strong>Having a licensed project makes reviewing these reports 10x easier</strong>. People without licenses or with ambiguous sources makes it extremely difficult to review and make decisions about whether projects are copies.</p>
<p>By licensing your code, you are protecting your own work and writing the rules to how people can use your code. If you are open-sourcing your code, usually the point is to have collaboration with others and give back to the community by allowing others to tinker, modify, or play with what you have created. Make it easier for others to contribute, help, or build new awesome things by choosing a license!</p>

<h4 id="your-project">Your Project&nbsp;<a class="hanchor" href="#your-project" aria-label="Anchor link for: Your Project">🔗</a></h4>
<p>For any open-source software project on the Internet, having a license is very, very important. For example, let&rsquo;s say you write an important library or utility that can be used to make a developer&rsquo;s life easier for making a user interface more friendly. Your program is well-designed and has usefulness outside of what even you intended to write it for.</p>
<p>Perhaps a large company stumbles across your code and also thinks it&rsquo;s very useful for their own project. Maybe their project is proprietary or closed-source. Having a license in a situation like this suddenly becomes very important. Some licenses would permit this company to take the plugin or library, modify it to their own needs, and include it in their own product, while only leaving a small mention to you in the &ldquo;Legal&rdquo; section of their app. Maybe you&rsquo;re okay with that! Maybe you&rsquo;re not.</p>
<p>If you&rsquo;re not, there are licenses that let you define how the code is used in a case like this. With some licenses, if the company decides to modify and use your code, they will have to open-source their changes that made as well. If they don&rsquo;t modify anything, they just have to link back to your original source code. In some more extreme licenses, anything that touches your code also by extension has to be open source.</p>
<p>For a Minecraft example of this, let&rsquo;s say you have a &ldquo;Super Craft Bros.&rdquo; plugin open-sourced on your GitHub. Hypixel stumbles across your code and decides they want to use it for their own servers. Let&rsquo;s say your code is licensed under the <a href="https://www.mozilla.org/en-US/MPL/2.0/">Mozilla Public License 2.0</a>. For this license, if they take your code and make no changes, they only have to give credit back to you. If they take your code and change it, they also have to open-source all of the changes they make to your code.</p>
<p>Now, the changes made by the bigger company can benefit many others instead of just the one company!</p>

<h2 id="what-licenses-are-there">What licenses are there?&nbsp;<a class="hanchor" href="#what-licenses-are-there" aria-label="Anchor link for: What licenses are there?">🔗</a></h2>
<p>If you Google &ldquo;open source licenses&rdquo;, you may be overwhelmed. There are maybe close to the hundreds of different licenses for you to choose from. How can you pick one to settle on?! Fortunately, there are websites that do a great job of summarizing licenses to exactly what others can or cannot do with your code. A very popular site is <a href="https://tldrlegal.com/">tldrlegal.com</a>, which provides bullet-point summaries of different licenses.</p>

<h6 id="tldrlegalcom"><a href="https://tldrlegal.com/">tldrlegal.com</a>&nbsp;<a class="hanchor" href="#tldrlegalcom" aria-label="Anchor link for: tldrlegal.com">🔗</a></h6>
<p>Exploring that site is a great reference for picking a license. However, in this thread, I&rsquo;m going to do a very quick summary of four of the most popular open-source licenses that exist. However, it is important to preface this with a statement: I am not a lawyer and this does not constitute legal advice. It is important for you to look more into a license that feels right for how you want to share your code and determine what others can do with it.</p>

<h4 id="mit-license">MIT License&nbsp;<a class="hanchor" href="#mit-license" aria-label="Anchor link for: MIT License">🔗</a></h4>
<p>
<figure>
  <img src="https://upload.wikimedia.org/wikipedia/commons/c/c3/License_icon-mit.svg" alt="Open-sourcing licensing: the MIT License is the most relaxed" loading="lazy">
  <figcaption>The MIT License may be the most relaxed open-source license available today</figcaption>
</figure>
</p>
<p>The MIT License is almost universally regarded as one of the least strict licenses in open source. You can read more about it <a href="https://tldrlegal.com/license/mit-license">here</a>.</p>
<p>You can:</p>
<ul>
<li>Use the work commercially (think of the big company example said earlier)</li>
<li>Modify the original code</li>
<li>Distribute the original code or distribute your modifications</li>
<li>Sublicense the code (in other words, use it with code that has a different license)</li>
<li>Use the code for private use</li>
</ul>
<p>You cannot:</p>
<ul>
<li>Hold the original author liable for damages
<ul>
<li>So this can&rsquo;t happen: &ldquo;Oh noes! I accidentally exploded my entire server with your code! You must pay me monies to fix this nao!!!&rdquo;</li>
</ul>
</li>
</ul>
<p>You must:</p>
<ul>
<li>Include a copyright notice in all copies or other uses of the work</li>
<li>Include an original copy of the license with the original or modified code
<ul>
<li>You will always be credited for your work!</li>
</ul>
</li>
</ul>

<h4 id="apache-license-20">Apache License 2.0&nbsp;<a class="hanchor" href="#apache-license-20" aria-label="Anchor link for: Apache License 2.0">🔗</a></h4>
<p>
<figure>
  <img src="http://www.apache.org/img/asf_logo.png" alt="Open-source licensing: the Apache License 2.0 offers more than MIT License" loading="lazy">
  <figcaption>Slightly stricter than the MIT License, the Apache License 2.0 offers more protection to the author</figcaption>
</figure>
</p>
<p>The Apache License 2.0 is only slightly more restrictive than the MIT License, but it defines a few more rules than the MIT License. This can be useful if you want to make sure your work is given proper credit back to you and you care a little more about how it&rsquo;s used. You can read more <a href="https://tldrlegal.com/license/apache-license-2.0-%28apache-2.0%29">here</a>.</p>
<p>You can and cannot do the same things mentioned above for the MIT License. So we will just highlight the changes!</p>
<p>You can:</p>
<ul>
<li>Same as MIT License</li>
<li><strong>Use patent claims</strong> (might be advanced for most of you, but can be useful for bigger projects)</li>
<li><strong>Place a warranty</strong> (lets you have a warranty on your code, if desired)</li>
</ul>
<p>You cannot:</p>
<ul>
<li>Same as MIT License</li>
</ul>
<p>You must:</p>
<ul>
<li>Same as MIT License</li>
<li><strong>Openly state changes you make from the original project</strong></li>
<li><strong>Include the NOTICE</strong> (if the project has a NOTICE file, you have to keep it in copies / modified works)</li>
</ul>

<h4 id="mozilla-public-license-20">Mozilla Public License 2.0&nbsp;<a class="hanchor" href="#mozilla-public-license-20" aria-label="Anchor link for: Mozilla Public License 2.0">🔗</a></h4>
<p>
<figure>
  <img src="https://opensource.com/sites/default/files/styles/image-full-size/public/images/law/OSCD_MPL_520x292_FINAL.png?itok=ELAkrGpF" alt="Open-source licensing: Introducing the Mozilla Public License 2.0" loading="lazy">
  <figcaption>Introducing the Mozilla Public License 2.0</figcaption>
</figure>
</p>
<p>The next step up from the Apache License 2.0 is the Mozilla Public License 2.0. This license has the same basic rights as the Apache License 2.0, but it goes a little more in-depth about how the code can be re-used. This is my personal favorite license! You can read more <a href="https://tldrlegal.com/license/mozilla-public-license-2.0-%28mpl-2%29">here</a>.</p>
<p>Most of the things for what you can and cannot do are the same as the Apache License (and thereby, the MIT License). So again, we&rsquo;ll just highlight the changes.</p>
<p>You can:</p>
<ul>
<li>Same as Apache License 2.0</li>
</ul>
<p>You cannot:</p>
<ul>
<li>Same as Apache License 2.0</li>
</ul>
<p>You must:</p>
<ul>
<li>Same as Apache License 2.0</li>
<li><strong>Disclose the source</strong> (any changes made using MPL&rsquo;d code must also be made open under the MPL!)</li>
<li><strong>Include the original</strong> (either the source code or instructions to get the original code must be provided)</li>
</ul>

<h4 id="gnu-public-license-v3">GNU Public License v3&nbsp;<a class="hanchor" href="#gnu-public-license-v3" aria-label="Anchor link for: GNU Public License v3">🔗</a></h4>
<p>
<figure>
  <img src="https://upload.wikimedia.org/wikipedia/commons/9/93/GPLv3_Logo.svg" alt="Open-source licensing: the GNU Public License v3" loading="lazy">
  <figcaption>Open-source licensing: the GNU Public License v3</figcaption>
</figure>
</p>
<p>The GNU Public License v3, also known as the GPLv3, is one of the most well-known and strict licenses in open-source. It has very specific rules for how the code can be used and shared, and leaves a lot of control over to the author. In a sense, it&rsquo;s &ldquo;after&rdquo; the MPL 2.0, but it also has some key differences. You can read more about it <a href="https://tldrlegal.com/license/gnu-general-public-license-v3-%28gpl-3%29">here</a>.</p>
<p>Again, we will highlight the changes from the Mozilla Public License 2.0.</p>
<p>You can:</p>
<ul>
<li>Same as Mozilla Public License 2.0 (<strong>except sublicensing</strong>)</li>
</ul>
<p>You cannot:</p>
<ul>
<li>Same as Mozilla Public License 2.0</li>
<li><strong>Sublicense the code</strong> (this is a big concept worth understanding if you use the GPLv3)</li>
</ul>
<p>You must:</p>
<ul>
<li>Same as Mozilla Public License 2.0</li>
<li><strong>Include original copyright</strong> (must be retained in all copies or modified works)</li>
<li><strong>Include install instructions</strong> (you must document how to install the software)</li>
</ul>

<h2 id="go-forth-and-conquer">Go forth and conquer!&nbsp;<a class="hanchor" href="#go-forth-and-conquer" aria-label="Anchor link for: Go forth and conquer!">🔗</a></h2>
<p>Congratulations! You now know a little bit more about licensing, open-source licenses, and how to use them. Hopefully this will help emphasize why and how licenses are important in open-source software. In many ways, the license you choose to use can even be more important than any lines of code you write. That might sound absurd, but when it comes to deciding how your code can be reused, modified, or distributed, it&rsquo;s something that can be vitally important to your project.</p>
<p>Those of you without a license, please consider choosing one, or talk to other teammates of your projects about what license you all want to use. If you code in the open, make sure you are protecting yourself and paying attention to how you want other people to use your code.</p>]]></description></item></channel></rss>