<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Open-Source-Communities</title><link>https://jwheel.org/tags/open-source-communities/</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>Thu, 22 Aug 2024 00:00:00 +0000</lastBuildDate><atom:link href="https://jwheel.org/rss/tags/open-source-communities/index.xml" rel="self" type="application/rss+xml"/><item><title>Infra &amp; Releng Hackfest @ Fedora Flock 2024</title><link>https://jwheel.org/blog/2024/08/infra-amp-releng-hackfest-fedora-flock-2024/</link><pubDate>Thu, 22 Aug 2024 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2024/08/infra-amp-releng-hackfest-fedora-flock-2024/</guid><description><![CDATA[<p>This blog post summarizes the discussions and action items from the Infrastructure and Release Engineering workshop held at Flock 2024 in Rochester, New York, USA.</p>
<p>This post is also an experiment in using AI generated summaries to provide useful, at-a-glance summaries of key Fedora topics. Parts of this content may display inaccurate info, including about people, so double-check with the source material.</p>
<p>Source material: <a href="https://discussion.fedoraproject.org/t/report-from-infra-and-releng-hackfest-at-flock2024/128743">discussion.fedoraproject.org/t/report-from-infra-and-releng-hackfest-at-flock2024/128743</a></p>

<h2 id="key-topics"><strong>Key Topics</strong>&nbsp;<a class="hanchor" href="#key-topics" aria-label="Anchor link for: Key Topics">🔗</a></h2>
<ul>
<li>
<p><strong>Standards for OpenShift app deployments:</strong> There&rsquo;s a need for consistency in deploying applications to OpenShift. The group discussed creating best practices documentation and addressing deployment methods across various applications.</p>
</li>
<li>
<p><strong>Infra SIG packages:</strong> The workshop reviewed the &ldquo;infra-sig&rdquo; package group and identified a need to:</p>
<ul>
<li>
<p>Find owners for orphaned packages.</p>
</li>
<li>
<p>Onboard new maintainers using Packit.</p>
</li>
<li>
<p>Remove inactive members from the group.</p>
</li>
</ul>
</li>
<li>
<p><strong>Release engineering packages:</strong> The group agreed to add a list of release engineering packages to the infra-sig for better management.</p>
</li>
<li>
<p><strong>Proxy network:</strong> Discussion about potentially migrating the proxy network from httpd to nginx or gunicorn remained inconclusive. Further discussion is needed.</p>
</li>
<li>
<p><strong>AWS management with Ansible:</strong> The feasibility of managing AWS infrastructure with Ansible is uncertain due to limitations with the main Amazon account.</p>
</li>
<li>
<p><strong>Onboarding improvements:</strong> The group discussed ways to improve the onboarding process for new contributors, including documentation updates, marketing efforts, and &ldquo;Hello&rdquo; days after each release.</p>
</li>
<li>
<p><strong>OpenShift apps deployment info:</strong> A tutorial on deploying applications to OpenShift was presented and will be incorporated into the documentation.</p>
</li>
<li>
<p><strong>Future considerations:</strong> The group discussed upcoming challenges like GitLab Forge migration, Bugzilla migration, and a new Matrix server.</p>
</li>
<li>
<p><strong>Retiring wiki pages:</strong> The group needs to decide where to migrate user-facing documentation from the wiki. Additionally, someone needs to review and archive/migrate/delete existing wiki pages in the &ldquo;<a href="https://fedoraproject.org/wiki/Category:Infrastructure">Category:Infrastructure</a>&rdquo; section.</p>
</li>
<li>
<p><strong>Datagrepper access for CommOps:</strong> A solution was proposed to provide CommOps with access to community metrics data by setting up a separate database in AWS RDS and populating it with recent Datagrepper dumps.</p>
</li>
<li>
<p><strong>ARA in infrastructure:</strong> While AWX deployment offers similar reporting features, setting up ARA remains an option if someone has the time and interest.</p>
</li>
<li>
<p><strong>AWX deployment:</strong> Roadblocks related to the public/private Ansible repository structure were identified. A proof of concept using AWX will be pursued to determine if repository restructuring is necessary.</p>
</li>
<li>
<p><strong>Zabbix integration:</strong> The group discussed moving forward with Zabbix to replace Nagios. Action items include setting up a bot channel for alerts, adjusting alerts based on comparison with Nagios, and considering an upgrade to the next LTS version.</p>
</li>
</ul>

<h2 id="action-items"><strong>Action Items</strong>&nbsp;<a class="hanchor" href="#action-items" aria-label="Anchor link for: Action Items">🔗</a></h2>
<ul>
<li>
<p>Create comments in each application playbook explaining its deployment method.</p>
</li>
<li>
<p>Move all apps using deploymentconfig to deployment with OpenShift 4.16.</p>
</li>
<li>
<p>Look into deploying Advanced Cluster Security (ACS) for improved visibility into container images.</p>
</li>
<li>
<p>Create a &ldquo;best practices&rdquo; guide for deploying applications in OpenShift clusters.</p>
</li>
<li>
<p>Find individuals interested in helping with orphaned packages and onboarding new maintainers for the infra-sig package group.</p>
</li>
<li>
<p>Create a list of release engineering packages for inclusion in the infra-sig.</p>
</li>
<li>
<p>Continue discussions on migrating the proxy network and managing AWS infrastructure with Ansible.</p>
</li>
<li>
<p>Update onboarding documentation, implement marketing strategies for attracting contributors, and organize &ldquo;Hello&rdquo; days for new members.</p>
</li>
<li>
<p>Archive/migrate/delete wiki pages in the &ldquo;Category:Infrastructure&rdquo; section.</p>
</li>
<li>
<p>Work on tickets to set up a separate database for CommOps Datagrepper access.</p>
</li>
<li>
<p>Investigate the feasibility of setting up ARA in infrastructure.</p>
</li>
<li>
<p>Stand up a proof of concept for AWX deployment and discuss potential repository restructuring.</p>
</li>
<li>
<p>Set up a Zabbix bot channel for alerts, adjust alerts based on comparisons with Nagios, and consider upgrading to the next LTS version.</p>
</li>
</ul>
<p><strong>Overall, the workshop was a success, with productive discussions and a clear list of action items to move forward.</strong></p>
<p><strong>Note:</strong> The workshop lacked remote participation due to network limitations. The source material encourages readers to express interest in helping with the action items.</p>]]></description></item><item><title>Outreachy May 2024: A letter to Fedora applicants</title><link>https://jwheel.org/blog/2024/05/outreachy-may-2024-letter-fedora-applicants/</link><pubDate>Thu, 02 May 2024 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2024/05/outreachy-may-2024-letter-fedora-applicants/</guid><description><![CDATA[<p><em>To all Outreachy May 2024 applicants to the Fedora Project</em>,</p>
<p>Today is May 2nd, 2024. The Outreachy May 2024 round results will be published in a few short hours. This year, the participation in Fedora for Outreachy May 2024 was record-breaking. <a href="https://jwfblog.wpenginepowered.com/category/foss/fedora/">Fedora</a> will fund three internships this year. During the application and contribution phase, over 150 new contributors appeared in our Mentored Project contribution channels. For the project I am mentoring specifically, 38 applicants recorded contributions and 33 applicants submitted final applications. This is my third time mentoring, but this Outreachy May 2024 round has been a record-breaker for all the projects I have mentored until now.</p>
<p>But breaking records is not what this letter is about.</p>
<p>This day can be either enormously exciting and enormously disappointing. It is a tough day for me. There are so many Outreachy applicants who are continuing to contribute after the final applications were due. I see several applicants from my project who are contributing across the Fedora community, and actually leveling up to even bigger contributions than the application period. It is exciting to see people grow in their confidence and capabilities in an <a href="https://jwfblog.wpenginepowered.com/category/foss/">Open Source community</a> like Fedora. Mentoring is a rewarding task for me, and I feel immensely proud of the applicants we have had in the Fedora community this round.</p>
<p>But the truth is difficult. Fedora has funding for three interns, hard and simple. Hard decisions have to be made. If I had unlimited funding, I would have hired so many of our applicants. But funding is not unlimited. Three people will receive great news today, and most people will receive sad news. Throughout this entire experience in the application phase, I wanted to design me and Joseph Gayoso&rsquo;s project so that even folks who were not selected would have an enriching experience. We wanted to <a href="https://jwfblog.wpenginepowered.com/2024/03/win-win-for-all-outreachy/">put something real in the hands of our applicants</a> at the end. We also wanted to boost their confidence in showing up in a community and guide them on how to roll up your sleeves and get started. Looking at the portfolios that applicants to our project submitted, I admire how far our applicants came since the day that projects were announced. Most applicants never participated in an open source community before. And for some, you would never have known that either!</p>
<p>So, if you receive the disappointing news today, remember that it does not reflect badly on you. The Outreachy May 2024 round was incredibly competitive. <em>Literally</em>, record-breaking. We have to say no to many people who <em>have</em> proved that they have what it takes to be a capable Fedora Outreachy intern. I hope you can look at all the things you learned and built over these past few months, and use this as a step-up to the next opportunity awaiting you. Maybe it is an Outreachy internship in a future round, or maybe it is something else. If there is anything I have learned, it is that life takes us on the most unexpected journeys sometimes. And whatever is meant to happen, will happen. I believe that there is a reason for everything, but we may not realize what that reason is until much later in the future.</p>
<p>Thank you to all of the Fedora applicants who put in immense effort over the last several months. I understand if you choose to stop contributing to Fedora. I hope that you will not be discouraged from open source generally though, and that you will keep trying. If you do choose to continue contributing to Fedora, I promise we will find a place for you to continue on. Regardless of your choice in contributing, keep shining and be persistent. Don&rsquo;t give up easily, and remember that what you learned in these past few months can give a leading edge on that next opportunity waiting around the corner for you.</p>
<p>Freedom, Friends, Features, First!</p>
<p>— Justin</p>]]></description></item><item><title>Win-win for all: How to run a non-engineering Outreachy internship</title><link>https://jwheel.org/blog/2024/03/win-win-for-all-outreachy/</link><pubDate>Thu, 28 Mar 2024 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2024/03/win-win-for-all-outreachy/</guid><description><![CDATA[<p>This year, I am mentoring again with the <a href="https://www.outreachy.org/">Outreachy internship program</a>. It is my third time mentoring for Outreachy and my second time with the <a href="https://jwfblog.wpenginepowered.com/category/fedora/">Fedora Project</a>. However, it is my first time mentoring as a <a href="https://jwfblog.wpenginepowered.com/category/red-hat/">Red Hat</a> associate. What also makes this time different from before is that I am mentoring a non-engineering project with Outreachy. Or in other words, my project does not <em>require</em> an applicant to write any code. Evidently, the internship description was a hook. We received an extremely large wave of applicants literally overnight. Between 40-50 new contributors arrived to the Fedora Marketing Team in the first week. Planning tasks and contributions for beginners already took effort. Scaling that planning work overnight for up to 50 people simultaneously is extraordinarily difficult.</p>
<p>During this round, my co-mentor <a href="https://fedoraproject.org/wiki/User:Joseph">Joseph Gayoso</a> and I experimented with new approaches at handling the tsunami wave. There are two competing forces at play. One, you need to provide engagement to top performers so they remain motivated to continue. Two, you need to provide new opportunities for emerging contributors to distinguish themselves. It is easier to do one of these but hard to do both simultaneously. However, Joseph and I agreed on something important. We agreed that all applicants should end the contribution phase with something practically useful. As mentors, we asked ourselves how to prepare applicants to be successful open source contributors beyond this one month.</p>
<p>In this article, you will get some practical takeaways for mentoring with Outreachy. First, I will share our practical approach for structuring and planning an open source project during the Outreachy contribution phase. Second, I will detail the guiding philosophy Joseph and I follow for how we planned the contribution phase.</p>

<h2 id="about-outreachy">About Outreachy&nbsp;<a class="hanchor" href="#about-outreachy" aria-label="Anchor link for: About Outreachy">🔗</a></h2>
<p>This article assumes you already know a thing or two about the Outreachy internship program. If not, Outreachy provides internships in open source and open science. Outreachy provides internships to people subject to systemic bias and impacted by underrepresentation in the technical industry where they live. You can read more <a href="https://www.outreachy.org/">on the Outreachy website</a>.</p>
<p>What makes Outreachy unique is that the internships are remote and often open without geographic or nationality constraints. Applicants from nearly every continent of the world have participated in Outreachy. Also, Outreachy is distinguished by the <strong>contribution phase</strong>. For a one-month period, approved Outreachy applicants are encouraged to participate in the project community as a contributor. Applicants spend the month learning about the project, the community, the mentors, and the work involved for the internship. This provides applicants an opportunity to grow their open source identity. It also gives mentors an opportunity to assess applicants on their skills and communication abilities.</p>
<p>However, this contribution phase can be intimidating as a mentor, especially if you are new to mentoring with Outreachy. A wave of people eager to contribute could suddenly appear overnight at your project&rsquo;s door steps. If you are not prepared, you will have to adapt quickly!</p>

<h2 id="pre-requisite-tasks-raising-the-outreachy-bar">Pre-Requisite Tasks: Raising the Outreachy bar&nbsp;<a class="hanchor" href="#pre-requisite-tasks-raising-the-outreachy-bar" aria-label="Anchor link for: Pre-Requisite Tasks: Raising the Outreachy bar">🔗</a></h2>
<p>My co-mentor and I knew that a wave of applicants was coming. However, we didn&rsquo;t expect the wave to be as big as it was. After the first week of the contribution phase, we knew we needed a better way to scale ourselves. We were limited in our person-power. The approach we took to addressing the mental overload was defining pre-requisite tasks.</p>
<p>We defined <strong>pre-requisite tasks</strong> as tasks that any applicant <em>MUST</em> complete in order to be considered eligible for our internship. Without completing these tasks, we explained that final applications would <em>not</em> be accepted by mentors. The defining characteristics of these pre-requisite tasks were that they were personalized, repeatable, and measurable. We came up with five pre-requisite tasks that all applicants were required to complete beyond the initial qualification for Outreachy:</p>
<ol>
<li>
<p><a href="https://gitlab.com/fedora/marketing/marketing-planning/-/issues/153">Set up your Fedora Account System (FAS) account</a></p>
</li>
<li>
<p><a href="https://gitlab.com/fedora/marketing/marketing-planning/-/issues/154">Set up a personal blog</a></p>
</li>
<li>
<p><a href="https://gitlab.com/fedora/marketing/marketing-planning/-/issues/155">Write a blog post that introduces the Fedora community to your audience</a></p>
</li>
<li>
<p><a href="https://gitlab.com/fedora/marketing/marketing-planning/-/issues/156">Promote your intro blog post on social media</a></p>
</li>
<li>
<p><a href="https://gitlab.com/fedora/marketing/marketing-planning/-/issues/157">Write an onboarding guide for Outreachy 2025 applicants</a></p>
</li>
</ol>

<h3 id="how-were-initial-contributions-personalized">How were initial contributions personalized?&nbsp;<a class="hanchor" href="#how-were-initial-contributions-personalized" aria-label="Anchor link for: How were initial contributions personalized?">🔗</a></h3>
<p>Each of these tasks were personalized to each applicant. They each have a unique account profile, with their pictures, time zones, and chat system usernames. The personal blog is a personal space on the Internet for each applicant to start writing new posts. The blog post prompts encouraged applicants to start filling up their blogs with Fedora content. The social media post helped applicants promote themselves as budding open source enthusiasts in their existing web spaces.</p>
<p>This approach had two benefits. First, it provided clear guidance to all newcomers and early-stage applicants on how to get started with contributing to Fedora for the Outreachy internship. This took a burden off of mentors answering the same questions about getting started. It also gave new applicants something to start on right away. Joseph and I were able to put more time into reviewing incoming contributions and brainstorming new tasks.</p>

<h2 id="portfolio-driven-submissions-for-outreachy">Portfolio-driven submissions for Outreachy&nbsp;<a class="hanchor" href="#portfolio-driven-submissions-for-outreachy" aria-label="Anchor link for: Portfolio-driven submissions for Outreachy">🔗</a></h2>
<p>Toward the third week, many applicants had completed the pre-requisite tasks and were ready for more advanced tasks. Many had already taken on advanced projects already, beyond the pre-requisite tasks. Although the pre-requisite tasks did reduce the applicant pool, there were still between 20-30 people who completed them all. Again, the approach had to adapt as our ability to keep up with new contributions slowed down.</p>
<p>From here, we encouraged applicants to build personal portfolio pages that described their contributions with Fedora. This encouraged applicants to use the blog they built in the previous tasks, although they are not required to use their blog to host their portfolio. The only requirement we added was that it should be publicly visible on the Internet without a paywall. So, no Google Docs. Most applicants have ended up using their blog for this purpose though.</p>

<h3 id="how-did-a-portfolio-help">How did a portfolio help?&nbsp;<a class="hanchor" href="#how-did-a-portfolio-help" aria-label="Anchor link for: How did a portfolio help?">🔗</a></h3>
<p>Building a portfolio solved multiple challenges for our Outreachy project at once. First, the portfolios will simplify how the project mentors review final applications after the deadline on April 2nd, 2024. It will be streamlined because we will have a single place we can refer to that describes the applicant&rsquo;s achievements. It gives us a quick, easily shareable place to review and share with other stakeholders.</p>
<p>Second, it ends up being something useful to the applicant as well. The portfolio page captures a month&rsquo;s worth of contributions to open source. For many applicants, this is their first time ever interacting with an open source community online. So, it is a big deal to block out a month of time to volunteer on a project in a competitive environment for a paid, remote internship opportunity. Writing a portfolio page gives applicants the confidence to represent their contributions to Fedora, regardless of whether they are selected for the Fedora internship. It becomes a milestone marker for themselves and for their professional careers.</p>

<h2 id="our-philosophy-you-win-we-win">Our philosophy: You win, we win.&nbsp;<a class="hanchor" href="#our-philosophy-you-win-we-win" aria-label="Anchor link for: Our philosophy: You win, we win.">🔗</a></h2>
<p>This idea of applicants building something that is useful for themselves underpins the approach that Joseph and I took on structuring our non-engineering Outreachy internship. If I had to summarize the philosophy in one sentence, it might be like this:</p>
<blockquote>
<p>Everyone who participants as an Outreachy applicant to Fedora should finish the contribution phase with more than they had at the start of the contribution phase.</p>
<p>myself</p>
</blockquote>
<p>Our philosophy can be applied to engineering and non-engineering internships. However, applying the philosophy to our non-engineering project required improvisation as we went. There are examples of design-centered Outreachy internships, but I have not seen a marketing or community manager internship before. This was a challenge because there were not great models to follow. But it also left us room to innovate and try ideas that we have never tried before.</p>
<p>Adopting this philosophy served as helpful guidance on planning what we directed applicants to do during the contribution phase. It allowed us to think through ways that applicants could make real, recognizable contributions to Fedora. It also enables applicants to achieve a few important outcomes:</p>
<ol>
<li>
<p>Get real experience in a real project.</p>
</li>
<li>
<p>Build their own brand as open source contributors.</p>
</li>
<li>
<p>Gain confidence at collaborating in a community.</p>
</li>
</ol>
<p>The contribution phase is not yet over. So, we will continue to follow this philosophy and see where it guides us into the end of this phase!</p>

<h2 id="share-your-outreachy-mentoring-experience">Share your Outreachy mentoring experience!&nbsp;<a class="hanchor" href="#share-your-outreachy-mentoring-experience" aria-label="Anchor link for: Share your Outreachy mentoring experience!">🔗</a></h2>
<p>Have you experienced or seen a marketing or community manager internship in Outreachy before? Know a project or a person who has done this? Or is this totally new to you? Drop a comment below with your thoughts. Don&rsquo;t forget to share with someone else if you found this advice useful.</p>]]></description></item><item><title>"I am the wilderness": On trust &amp; community</title><link>https://jwheel.org/blog/2023/05/trust-and-community/</link><pubDate>Tue, 09 May 2023 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2023/05/trust-and-community/</guid><description><![CDATA[<p>Trust is a word and a concept that is on my mind lately. Trust is an idea that permeates all levels of our waking consciousness, and impacts how we build connections and relationships with other human beings. It is something impossible to ignore, yet it is ironically hard to define and pin down. Beyond what is written in a dictionary, what <em>is</em> trust? What does trust look like? What does trust feel like? Anyone who works in &ldquo;community work&rdquo; knows that trust is often the fundamental tie between <a href="https://jwfblog.wpenginepowered.com/tag/community-management/">community leadership</a> and community members. A leader wants to be trusted by the people whom they represent, and a person wants to trust their leaders to represent them fairly and accurately.</p>
<p>While I was pondering this reflection, my employer announced layoffs a couple weeks ago. While there is a lot that could be said about that, what I will say is that a certain root was pulled; the foundation of trust built between leadership and employee was shaken. Only further action and time will show the full impact on the company and my remaining colleagues. Nonetheless, a very recent negative experience with regard to trust also expanded my perspective of how trust is defined and what its role is in a community.</p>

<h2 id="brené-brown-on-trust">Brené Brown on trust&nbsp;<a class="hanchor" href="#bren%c3%a9-brown-on-trust" aria-label="Anchor link for: Brené Brown on trust">🔗</a></h2>
<p>Later, I came across a sound bite of an <a href="https://www.youtube.com/watch?v=6qfbpBzqitA">interview with Brené Brown</a> about trust (and more). Toward the end of the interview, she talks about her book, <em><a href="https://brenebrown.com/book/braving-the-wilderness/">Braving the Wilderness</a></em> (which I haven&rsquo;t read, but seems interesting). She explained what the wilderness is and a tool that we can keep with us (&ldquo;BRAVING&rdquo;) to stay grounded in ourselves and also what trust means.</p>
<p>She also had a powerful definition of belonging, which put forward the idea that <a href="https://jwfblog.wpenginepowered.com/tag/dei/">belonging</a> is internal to ourselves and even is a spiritual practice; belonging is not defined externally or given to and taken from us by others.</p>
<p>Below is my summary of &ldquo;BRAVING&rdquo; and the wilderness, together with notes and thoughts about how community leaders can act honestly and authentically, both when times are good and when times are hard.</p>
<hr>

<h2 id="trust-remember-braving">Trust: Remember &ldquo;BRAVING&rdquo;&nbsp;<a class="hanchor" href="#trust-remember-braving" aria-label="Anchor link for: Trust: Remember &ldquo;BRAVING&rdquo;">🔗</a></h2>
<p>There are seven elements to building, developing, and measuring trust. Each of these seven elements are a resource for being honest, authentic, and genuine in both easy and hard times. You can remember these seven elements as an acronym: &ldquo;BRAVING&rdquo;.</p>

<h3 id="b-boundaries">B: Boundaries&nbsp;<a class="hanchor" href="#b-boundaries" aria-label="Anchor link for: B: Boundaries">🔗</a></h3>
<p><em>You set boundaries. When you don&rsquo;t know what they are, you ask. You are clear about what is okay and what is not.</em></p>

<h3 id="r-reliability">R: Reliability&nbsp;<a class="hanchor" href="#r-reliability" aria-label="Anchor link for: R: Reliability">🔗</a></h3>
<p><em>You do what you say and you say what you do. The hard thing is that you are not hustling for worthiness, so you are not completely over committing and not delivering.</em></p>

<h3 id="a-accountability">A: Accountability&nbsp;<a class="hanchor" href="#a-accountability" aria-label="Anchor link for: A: Accountability">🔗</a></h3>
<p><em>You don&rsquo;t back channel and blame. You hold people accountable in a straightforward way.</em></p>

<h3 id="v-vault">V: &ldquo;Vault&rdquo;&nbsp;<a class="hanchor" href="#v-vault" aria-label="Anchor link for: V: &ldquo;Vault&rdquo;">🔗</a></h3>
<p><em>You do not use stories that are not yours as social currency. You keep them in &ldquo;the vault.&rdquo; Using others&rsquo; stories as a bid for connection causes others to trust you less. This is the other side of confidentiality.</em></p>

<h3 id="i-integrity">I: Integrity&nbsp;<a class="hanchor" href="#i-integrity" aria-label="Anchor link for: I: Integrity">🔗</a></h3>
<p><em>You choose courage over comfort and practice your values. You choose what is right over what is fun, fast, and easy. Your accomplishments stand out when you operate from a place of discomfort, or outside of your comfort zone.</em></p>

<h3 id="n-non-judgment">N: Non-judgment&nbsp;<a class="hanchor" href="#n-non-judgment" aria-label="Anchor link for: N: Non-judgment">🔗</a></h3>
<p><em>You can ask for help without feeling judged. I can ask for help without judging myself.</em></p>

<h3 id="g-generosity">G: Generosity&nbsp;<a class="hanchor" href="#g-generosity" aria-label="Anchor link for: G: Generosity">🔗</a></h3>
<p><em>When something happens, you assume positive intent. Give someone a chance, or the benefit of the doubt, before launching into anger.</em></p>

<h2 id="braving-the-wilderness">Braving the wilderness&nbsp;<a class="hanchor" href="#braving-the-wilderness" aria-label="Anchor link for: Braving the wilderness">🔗</a></h2>
<p><em>What is the wilderness? It is those times when we stand alone, the times when we go out on a limb, the times we walk away from what we know in our ideological bunkers and beliefs.</em></p>
<p><em>&ldquo;BRAVING&rdquo; is a tool to help us manage the wilderness. There will be times when standing alone feels too hard, too scary, and we&rsquo;ll doubt our ability to make our way through the uncertainty. Someone, somewhere, will say, &ldquo;Don&rsquo;t do it. You don&rsquo;t have what it takes to survive the wilderness.&rdquo; This is when you reach deep into your wild heart and remind yourself, &ldquo;I am the wilderness.&rdquo;</em></p>
<hr>
<p><em>Photo by <a href="https://unsplash.com/@sapegin?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Artem Sapegin</a> on <a href="https://unsplash.com/images/nature?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a>. Modified by Justin Wheeler.</em></p>
]]></description></item><item><title>Three great examples of open source product roadmaps</title><link>https://jwheel.org/blog/2022/12/open-source-product-roadmaps/</link><pubDate>Tue, 06 Dec 2022 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2022/12/open-source-product-roadmaps/</guid><description><![CDATA[<p>In my daily reading, I came across three product roadmaps from <a href="https://proton.me/about">Proton</a>, developers of several open source, privacy-centered products. These include products like Proton Mail, Proton VPN, and Proton Drive. The product roadmaps shared by Proton play a tactical role. They inform consumers and engaged customers about exciting changes yet to come. It gets people excited about the product&rsquo;s future. Additionally, it builds an engaged user base that is more willing to experiment and try new features.</p>
<p>Product roadmaps are something many projects struggle with. It fits into the communications and outreach umbrella, which unfortunately is typically an underresourced part of many open source products. They are one small part of a larger strategy around openness and transparency. If customers and stakeholders know what to expect, they gain more confidence in the product and company mission. For instance, this is especially true when the company continuously delivers on its roadmaps and meets its ambitions. As a result, delivering on those ambitions leaves a strong impression.</p>

<h2 id="highlights-from-proton-product-roadmaps">Highlights from Proton product roadmaps&nbsp;<a class="hanchor" href="#highlights-from-proton-product-roadmaps" aria-label="Anchor link for: Highlights from Proton product roadmaps">🔗</a></h2>
<p>Of particular note, these product roadmaps do the following things well from a messaging point-of-view:</p>
<ol>
<li>
<p>Builds context with previous work delivered in the last year for the product.</p>
</li>
<li>
<p>Several clearly-defined goals and ambitions for each product are defined and explained. The aspirations for the coming year are spelled out and users can begin to form realistic expectations about what new features to anticipate.</p>
<ul>
<li>Some highly-motivated individuals may use this as an opportunity to make their first contribution to the product, whether in the form of feedback or code.</li>
</ul>
</li>
<li>
<p>Strong call-to-action at the end of each article, where Proton defines how people can participate and engage with feedback about the products.</p>
</li>
</ol>
<p>Check out each of the three product roadmaps below and let me know what you think about them in a comment on this post.</p>
<hr>

<h2 id="proton-mail--proton-calendar">Proton Mail &amp; Proton Calendar&nbsp;<a class="hanchor" href="#proton-mail--proton-calendar" aria-label="Anchor link for: Proton Mail &amp; Proton Calendar">🔗</a></h2>
<blockquote>
<p>[…] we want to <a href="https://proton.me/blog/2022-roadmap">provide an update</a> on what’s coming next for <a href="https://proton.me/mail">Proton Mail</a> and <a href="https://proton.me/calendar">Proton Calendar</a>. As 2022 wraps up and we look into the new year, we want to develop stronger protections against technologies that invade your privacy, improve your reading experience, and make your day more productive through deeper integrations between our products. </p>
<p><a href="https://proton.me/blog/proton-mail-calendar-roadmap">proton.me/blog/proton-mail-calendar-roadmap</a></p>
</blockquote>

<h2 id="proton-vpn">Proton VPN&nbsp;<a class="hanchor" href="#proton-vpn" aria-label="Anchor link for: Proton VPN">🔗</a></h2>
<blockquote>
<p>In March, we shared our <a href="https://proton.me/blog/2022-roadmap">2022 roadmap</a> for Proton, including Proton VPN. Now that we’ve reached November, we feel it’s a good time to revisit our progress this year and explain what you can expect from Proton VPN in the near future.</p>
<p><a href="https://protonvpn.com/blog/proton-vpn-roadmap-spring-2023/">protonvpn.com/blog/proton-vpn-roadmap-spring-2023/</a></p>
</blockquote>

<h2 id="proton-drive">Proton Drive&nbsp;<a class="hanchor" href="#proton-drive" aria-label="Anchor link for: Proton Drive">🔗</a></h2>
<blockquote>
<p>In September 2022, we were excited to <a href="https://proton.me/blog/proton-drive-launch">launch Proton Drive</a> and introduce the first standalone <a href="https://proton.me/drive/pricing">Proton Drive paid plans</a>. As with all the services we’ve rolled out over the years, we know the launch is just the first step. The real work is in the continual improvements, advancements, and added features that follow. Building an <a href="https://proton.me/drive">encrypted file storage service</a> is not easy, particularly one that uses <a href="https://proton.me/drive/security">end-to-end encryption</a> on both your files and file metadata like Proton Drive.</p>
<p>Many of you have asked us what is next for Proton Drive, and today, we wanted to share with you a short-term roadmap of what you can expect in the coming quarters. Of course, we also have longer-term roadmaps. We look forward to sharing those and keeping you updated on the latest developments as Proton Drive progresses.</p>
<p><a href="https://proton.me/blog/proton-drive-roadmap">proton.me/blog/proton-drive-roadmap</a></p>
</blockquote>
<hr>
<p><em>Photo by <a href="https://unsplash.com/@slidebean?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Slidebean</a> on <a href="https://unsplash.com/s/photos/roadmap?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a>. Modified by Justin Wheeler.</em></p>]]></description></item><item><title>Scrub gently: On data scrubbing in a community survey.</title><link>https://jwheel.org/blog/2022/11/scrub-gently-community-survey/</link><pubDate>Tue, 15 Nov 2022 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2022/11/scrub-gently-community-survey/</guid><description><![CDATA[<p>Recently, my team with the <a href="https://chaoss.community/">CHAOSS Project</a> had a data concern emerge when I was working on a project to run a community survey. This community had never run a survey before, and it was the first notable event where the project made an explicit, structured ask for feedback from the community. As a result, this first experience was also a calibration event, so we could guide this kind of work in future years.</p>

<h2 id="survey-says-what">Survey says: What?&nbsp;<a class="hanchor" href="#survey-says-what" aria-label="Anchor link for: Survey says: What?">🔗</a></h2>
<p>At some point, after we opened the survey, a question emerged about how to handle an unruly response. In the ongoing responses, our data manager noticed one response that was objectively harmful. The person was strongly against the D.E.I. initiative that organized the survey. The response was written in a hostile tone, made insulting and derogatory comments about groups of people, and was entirely opposed to the project spending any time and resources on diversity, equity, and inclusion. The question asked to our group was whether we would include this response in the published data, or whether we would omit it.</p>
<p>There were two perspectives. Some elected to remove this response from the final report and any published data. Others felt it was important to wait and see if this response would become a pattern as we ran the survey. I found myself in the second group that felt it was important to wait and see first. I want to unpack this rationale, both for future me and perhaps someone else reading.</p>

<h2 id="on-discarding-the-survey-response">On discarding the survey response&nbsp;<a class="hanchor" href="#on-discarding-the-survey-response" aria-label="Anchor link for: On discarding the survey response">🔗</a></h2>
<p>There were good points about removing the harmful response.</p>
<p>Firstly, the response used harmful language and was likely triggering. This particular response included angry rhetoric that was reflective, to a degree, of the social and political &ldquo;climate&rdquo; of our world today. Including the response in our final reporting could also be giving it a platform, which would arguably be a harmful act. It would validate that input as acceptable input. Our group was not in disagreement that the response was harmful and not behavior the community should tolerate.</p>
<p>Second, the response did not provide actionable insight or useful asks to the project and community. It was written in an aggressive, angry tone towards the reader and did not offer workable suggestions other than ending and divesting from all D.E.I. work immediately. Given this was not an acceptable option, there wasn&rsquo;t much there for us to learn or understand about CHAOSS from this individual response. So, why include or save this response?</p>
<p>There is an option to ignore feedback by intentionally discarding it, but what if the individual feedback represents a larger trend?</p>

<h2 id="what-is-community-culture">What is community culture?&nbsp;<a class="hanchor" href="#what-is-community-culture" aria-label="Anchor link for: What is community culture?">🔗</a></h2>
<p>It is important to be aware of threats to community culture. What is community culture? My improvised definition is any organizational culture oriented towards the care, well-being, and thriving of others (including the self) within a single, shared community environment. Regardless of other values and goals in a project, the shared culture of the project can either lean towards a collective, communal-oriented approach or an independent, individual-oriented approach. The communal approach that prioritizes the well-being of all instead of a privileged view could also be considered as community culture. Many traditional &ldquo;Open&rdquo; projects skew toward a strong community culture.</p>

<h2 id="on-monitoring-survey-responses-for-a-pattern">On monitoring survey responses for a pattern&nbsp;<a class="hanchor" href="#on-monitoring-survey-responses-for-a-pattern" aria-label="Anchor link for: On monitoring survey responses for a pattern">🔗</a></h2>
<p>Coming back to the survey response, what if omitting the data leaves holes in the story of your community? If there is not just one, but several of these kinds of responses, what comments does that make about the community culture? Is there already a strong community culture, or is there resistance and challenges to building a more cooperative, caring environment? There is real work to do at both ends of the spectrum, but what that work might look like depends on which side you are on.</p>
<p>I posit that omitting the &ldquo;unhappy&rdquo; or harmful responses can create a dangerous blind spot to toxicity within a community culture. When it comes to direct, interpersonal interactions with others (e.g. meetings, emails, chats, etc.), stewards of the community culture need to take direct action against visible challenges and threats to the community culture. If someone starts swearing out at someone in a meeting, that is a hard-to-miss action. It is visible, and anyone could observe it or even record it.</p>
<p>In anonymous surveys, you might find a more subtle layer of the community culture than what is shown by the actions of a small few. There can be greater trust that someone&rsquo;s comments will not be tied back to their identity, so some responders may feel emboldened with their words and true opinions.</p>

<h2 id="dont-discard-a-blind-spot">Don&rsquo;t discard a blind spot.&nbsp;<a class="hanchor" href="#dont-discard-a-blind-spot" aria-label="Anchor link for: Don&rsquo;t discard a blind spot.">🔗</a></h2>
<p>The point of this is that especially in larger communities, it is worth noting negative and harmful responses and not totally ignoring them. Communities that organize in more decentralized ways will always have supporters, users, and contributors from both the core and the periphery. The core project membership may not interact or engage often with the periphery often, so there can be a blind spot to parts of the project that identify with the community but are a few degrees removed from the inner ring of the project community.</p>
<p>Noting whether something is indicative of a larger pattern is important. If your community has a ton of jerks, you need to know that your community is full of jerks so that you don&rsquo;t waste time persuading people otherwise, when the lived experience is very different.</p>
<p>In the original conversation with the CHAOSS Project team, this data scrubbing question emerged in the process of running the survey instead of <em>after</em> the data collection concluded. The survey later closed and our data manager confirmed that the flagged response from earlier was the only one of its kind. As a group, we then felt more confident in discarding that one outlier as an anomaly since the survey was open to the general public.</p>
<hr>
<p><em>Feature photo by <a href="https://unsplash.com/@jeshoots?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">JESHOOTS.COM</a> on <a href="https://unsplash.com/s/photos/cleaning?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a>. Modified by Justin Wheeler.</em></p>]]></description></item><item><title>CHAOSS DEI Review: Midyear reflection</title><link>https://jwheel.org/blog/2022/10/chaoss-dei-review-reflection/</link><pubDate>Tue, 25 Oct 2022 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2022/10/chaoss-dei-review-reflection/</guid><description><![CDATA[<p>Since February 2021, the CHAOSS Project is conducting a funded, long-term review of its governance, practices, and processes in a diversity, equity, and inclusion (D.E.I.) &ldquo;audit.&rdquo; I originally joined as an internal community liaison and initially helped to identify a team of D.E.I. practitioners external to the CHAOSS Project to support this work. Thanks to the support of the Ford Foundation, we are slowly approaching the two-year anniversary of when this work began.</p>
<p>My brief readout is a guided reflection using questions shared by Matt Germonprez. This reflects my review of our work as a team to date and also shares some of my hopeful outlooks for what our amazing team can accomplish together. This readout will cover <strong>(1)</strong> our accomplishments as a team, <strong>(2)</strong> what was expected and surprising, and <strong>(3)</strong> what we could change in the next year.</p>

<h2 id="chaoss-accomplishments--learnings">CHAOSS accomplishments &amp; learnings&nbsp;<a class="hanchor" href="#chaoss-accomplishments--learnings" aria-label="Anchor link for: CHAOSS accomplishments &amp; learnings">🔗</a></h2>
<p>Three achievements and aspirations stand out over the past year:</p>
<ol>
<li>Established process management and a team workflow.</li>
<li>Created a small but active Community of Practice (CoP).</li>
<li>Sharing our results with CHAOSS and the Open ecosystem.</li>
</ol>

<h3 id="processes--workflow">Processes &amp; workflow&nbsp;<a class="hanchor" href="#processes--workflow" aria-label="Anchor link for: Processes &amp; workflow">🔗</a></h3>
<p>
<figure>
  <img src="/blog/2022/10/jonny-gios-4AT3mZMuFuI-unsplash.jpg" alt="A metalworker is working at an anvil. A red-hot iron rod is on the anvil, and a person uses a hammer to shape and mold the hot iron into a hooked shape." loading="lazy">
  <figcaption>We had to forge our own practices that worked best for our group. Photo by Jonny Gios (<a href="https://unsplash.com/@supergios?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText" class="bare">https://unsplash.com/@supergios?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText</a>) on Unsplash (<a href="https://unsplash.com/s/photos/forge?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText" class="bare">https://unsplash.com/s/photos/forge?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText</a>).</figcaption>
</figure>
</p>
<p>For direct participants of the team, the Ford Foundation funding did not come with strict requirements or success metrics. As we assembled our team, we were given the discretion of how to conduct a D.E.I. review for the project and determine the best course of doing that. This allowed for creative freedom to figure out what would work best for CHAOSS. Additionally, I could not identify a straightforward way to discover other Open communities and projects doing our kind of work. Since there were also not many other known successful models to follow, we combined our shared experiences across multiple Open communities to build our team, identify main areas of focus, and engage the community around our efforts.</p>
<p>This is an achievement because we collectively created an active group that makes incremental, positive changes to CHAOSS. This is a model we could share with other projects so that others can learn from our experiences.</p>

<h3 id="community-of-practice">Community of Practice&nbsp;<a class="hanchor" href="#community-of-practice" aria-label="Anchor link for: Community of Practice">🔗</a></h3>
<p>Our team is a small but engaged group of D.E.I. practitioners. We share a connection through our ongoing review of the CHAOSS Project, but we also give and take from our own personal experiences outside of CHAOSS. Our group regularly meets and discusses complex, difficult issues that are both (a) not easy to discuss openly and (b) applicable to many communities beyond only CHAOSS. Our team meetings are a safe space that promotes honest and constructive discussion centered on diversity, equity, and inclusion. In addition to our recommendations and direct efforts with CHAOSS, I often reflect on our conversations as a team when working with other Open communities. An example of this is how we built a list of questions to get a &ldquo;pulse&rdquo; from the community on their feelings about CHAOSS.</p>

<h3 id="sharing-results-with-chaoss-and-beyond">Sharing results with CHAOSS and beyond&nbsp;<a class="hanchor" href="#sharing-results-with-chaoss-and-beyond" aria-label="Anchor link for: Sharing results with CHAOSS and beyond">🔗</a></h3>
<p>This is aspirational and not yet fully realized. Our team has collected a solid portfolio of stories and experiences that other communities would stand to benefit learning from. I consider this a current achievement because while our work does specifically look at CHAOSS, we also often reflect from a general perspective and how a topic of interest might look in other communities. When the time comes to package our findings, I believe we are setting ourselves up for easier messaging and outreach opportunities in the future.</p>

<h2 id="according-to-expectations">According to expectations&nbsp;<a class="hanchor" href="#according-to-expectations" aria-label="Anchor link for: According to expectations">🔗</a></h2>
<p>While I have worked in Open Source D.E.I. communities since 2015, I have never conducted an applied research review for community D.E.I. before. I did not come into this with strong immediate expectations because it would inevitably reflect the backgrounds and strengths of the team we would assemble. However, I did have specific hopes or things I hoped would be realized by this work.</p>

<h3 id="as-expected">As expected&nbsp;<a class="hanchor" href="#as-expected" aria-label="Anchor link for: As expected">🔗</a></h3>
<ul>
<li><strong>Data-driven approach</strong>: We began this work without a strong representation of the state of CHAOSS. What do contributors think about the project? While data is not a universal panacea, we gravitated to a community survey early on because we needed to understand the community experience better first before making serious suggestions.</li>
<li><strong>Time zones are hard</strong>: Our team was spread out across North America, Africa, LATAM, and Europe. Additionally, the work with CHAOSS was also a part-time venture for most of us, in addition to primary employment. Calendars and schedules are hard to get right. Since our team&rsquo;s organization was ad-hoc, momentum would occasionally slow for some periods.</li>
<li><strong>We have an amazing team!</strong> I expected great things once we identified our roster. We have also had more amazing people join us over time and add new passion and insight to our focus as a group.</li>
</ul>

<h3 id="surprises">Surprises&nbsp;<a class="hanchor" href="#surprises" aria-label="Anchor link for: Surprises">🔗</a></h3>
<ul>
<li><strong>Documenting our impact is not always intuitive</strong>: While we have done internal storytelling work within the CHAOSS Project, we do not have a good record of our achievements to date. Our linear progression does not lend itself easily to self-reflection and recalibration. Although much of our focus is on the CHAOSS community survey and CHAOSS Africa, we also facilitated several other notable achievements in the project in the last year. See the following examples:
<ul>
<li>Supporting the establishment of a Code of Conduct Committee.</li>
<li>Community office hours for newcomers.</li>
<li>Improved, peer-to-peer onboarding experience in CHAOSS.</li>
<li>Increased efforts in CHAOSS mentored projects (e.g. Outreachy and GSoC).</li>
<li>Recommending changes to the project and community, like broader localization to Chinese &amp; Spanish and establishing a D.E.I. council.</li>
</ul>
</li>
<li><strong>Losing and regaining steam on the survey</strong>: Although the community pulse survey was one of the earliest tasks identified in our work, launching a first survey proved to take a lot of resources from the team. We briefly stalled out on the survey effort while focused on other areas (like listed above). While our team was able to achieve many smaller victories for CHAOSS with low-hanging fruits, it took a sustained focus and slowdown on new topics to achieve larger contributions like the community pulse survey.</li>
</ul>

<h2 id="changes-for-the-chaoss-team-next-year">Changes for the CHAOSS team next year&nbsp;<a class="hanchor" href="#changes-for-the-chaoss-team-next-year" aria-label="Anchor link for: Changes for the CHAOSS team next year">🔗</a></h2>
<p>Looking ahead to 2023, I hope to strengthen our efforts as a team in these areas:</p>
<ol>
<li>Packaging our work</li>
<li>Dissemination of our work</li>
</ol>
<p>
<figure>
  <img src="/blog/2022/10/christophe-rollando-uOi-nHgMR5o-unsplash.jpg" alt="Large, gold-colored balloons spell out 2023. Several other silver-colored objects surround the gold letters, like star-shaped balloons, tree ornaments, and card-stock stars." loading="lazy">
  <figcaption>Photo by Christophe Rollando (<a href="https://unsplash.com/@chrisrolls?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText" class="bare">https://unsplash.com/@chrisrolls?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText</a>) on Unsplash (<a href="https://unsplash.com/s/photos/2023?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText" class="bare">https://unsplash.com/s/photos/2023?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText</a>).</figcaption>
</figure>
</p>

<h3 id="packaging">Packaging&nbsp;<a class="hanchor" href="#packaging" aria-label="Anchor link for: Packaging">🔗</a></h3>
<p>Our work stream was linearly ordered and we took a forward-looking approach. Now is a good time to look back and reflect on our results to date. What are our key findings and observations? What suggestions will we make to CHAOSS? How could other communities learn from our experience running this review? One task for us as a team is to identify key messages and themes so that dissemination into broader domains is possible.</p>

<h3 id="dissemination">Dissemination&nbsp;<a class="hanchor" href="#dissemination" aria-label="Anchor link for: Dissemination">🔗</a></h3>
<p>Once we package our work, notes, and reflections, we should take an active approach to disseminating and sharing our work. This includes both the CHAOSS Project and a more general audience. For the CHAOSS Project, this could be a written report, presentations to the CHAOSS board, speaking at <a href="https://jwfblog.wpenginepowered.com/tag/chaosscon/">CHAOSScon</a>, and outreach to the multiple Working Groups. For a general audience, this could include speaking at industry conferences, sharing our work with other Communities of Practice, social media, or other ways of promoting our deliverables.</p>]]></description></item><item><title>XPOST: Spurring new Digital Public Goods</title><link>https://jwheel.org/blog/2022/10/new-digital-public-goods/</link><pubDate>Thu, 06 Oct 2022 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2022/10/new-digital-public-goods/</guid><description><![CDATA[<p><a href="https://www.unicef.org/innovation/stories/spurring-new-digital-public-goods"><em>Originally published on 27 September 2022 via unicef.org</em>.</a></p>
<hr>
<p>This year, the <a href="https://www.unicefinnovationfund.org/">UNICEF Venture Fund</a> celebrates <a href="https://www.unicef.org/innovation/venturefund/blockchain-financial-inclusion-graduation">five graduating companies</a> from a recent investment round. For the first time, many of these companies are exiting from the Venture Fund having already earned recognition as <a href="https://digitalpublicgoods.net/registry/">Digital Public Goods (DPGs)</a>. With the support of a cross-sectional team of mentors, these graduating companies worked to achieve compliance with the <a href="https://digitalpublicgoods.net/standard/">DPG Standard</a>.</p>
<p>The <a href="https://digitalpublicgoods.net/standard/">Digital Public Good Standard</a> offers a nine-point baseline for evaluation and recognition of Open Source software, content, data, and standards that adhere to privacy and other applicable laws and best practices, do no harm by design, and help attain the Sustainable Development Goals (SDGs). Once a solution is recognised as a digital public good it is discoverable on the <a href="https://digitalpublicgoods.net/registry/">DPG Registry</a>.</p>
<p>This recognition acknowledges their use of vetted Open Source licenses, useful documentation, and adherence to relevant best practices and local data protection laws. What makes this achievement a first for the Venture Fund is that these recognitions were achieved by the companies during the investment round. Typically, companies that go on from the Venture Fund achieve recognition after a year or more of graduation. This new shift is made possible by the growing investment in Technical Assistance at the Venture Fund and the leadership of a robust team of mentors.</p>
<p>This article introduces the Technical Assistance mentoring programmes offered by the UNICEF Venture Fund, the addition of new mentors in the last year, the shift of mentor focus around the DPG Standard, and the results achieved to date from the latest graduating Venture Fund cohort.</p>

<h1 id="origins-of-technical-assistance-at-the-venture-fund">Origins of Technical Assistance at the Venture Fund&nbsp;<a class="hanchor" href="#origins-of-technical-assistance-at-the-venture-fund" aria-label="Anchor link for: Origins of Technical Assistance at the Venture Fund">🔗</a></h1>
<p>The Venture Fund offers different areas of Technical Assistance to start-up companies who apply and are selected to receive early-stage seed investment by UNICEF. Originally starting in 2018, the Technical Assistance programmes only included Business Development and Open Source. Over the years, we have piloted and pivoted mentorship models with input from our portfolio of startups. Today, the Technical Assistance programmes cover a range of topics across an experienced team of mentors, depending on the relevance to the start-up companies:</p>
<ul>
<li>Blockchain with Arun Maharajan and Alex Sherbuck (former)</li>
<li>Business Development with Jamil Wyne and Philippa Martinelli (former)</li>
<li>Evidence of Impact with Milena Bacalja Perianes and Jennifer Sawyer</li>
<li>Data Privacy &amp; Security with Lydia Kwong</li>
<li>Data Science &amp; A.I. with Daniel Alvarez</li>
<li>Open Source with Justin Wheeler, Abigail Cabunoc Mayes (former), and Vipul Siddharth</li>
<li>Software Development with Iván Perdomo</li>
</ul>
<p>The mentors work closely with the experienced team of portfolio managers (Meghan Warner, Kennedy Kitheka, and Madison Marks) to guide and coach Venture Fund companies to achieve their targets and success indicators during the investment round.</p>
<p>Starting in 2021, the Venture Fund broadened the Technical Assistance programmes to include Software Development, Data Science &amp; A.I., Data Privacy &amp; Security, and Evidence of Impact. This was a marked change in growing the support and expertise made available to start-up companies during their investment round. However, as the team of mentors and Technical Assistance offerings expanded, there was a growing need to bring a common rallying point across all programmes. How could the mentors ensure their Technical Assistance programmes complemented one another without duplicating topics or repeating conversations?</p>
<p>Further complementing the core Technical Assistance programme, <a href="https://www.unicefinnovationfund.org/broadcast/expert-posts/unicef-innovation-fund-blockchain-cohort-onboarding-workshops">specialized workshops</a> were held by like-minded institutions outside the Venture Fund’s core team of mentors , along with personalized mentorship sessions. The recent Blockchain Cohort, for example, benefitted from targeted mentorship from AW3L, a blockchain consulting firm that share many of UNICEF&rsquo;s values around leveraging blockchain for social impact.</p>
<blockquote>
<p>“Blockchain has immense potential, but it remains just a tool and its impact is dependent on what we do with it. That&rsquo;s why it is crucial to have local entrepreneurs on the ground building use-cases that solve real problems unique to their geography. We are therefore extremely happy and proud to support UNICEF and its portfolio companies to tackle real-world problems in emerging markets by utilizing blockchain technology.”</p>
<p>Martijn van de Weerdt, Founder, AW3L</p>
</blockquote>

<h1 id="how-the-dpg-standard-unified-the-mentoring-streams">How the DPG Standard unified the mentoring streams&nbsp;<a class="hanchor" href="#how-the-dpg-standard-unified-the-mentoring-streams" aria-label="Anchor link for: How the DPG Standard unified the mentoring streams">🔗</a></h1>
<p>The DPG Standard became a common rallying point for the UNICEF Technical Assistance programmes. As our mentoring programmes increased and topic areas broadened, we needed coordination and a synchronized stream of Technical Assistance programmes. In the last year, the Venture Fund reviewed its workplan development and strategy to enable more solutions to achieve recognition as a digital public good at or near the graduation point for a Venture Fund portfolio. The most recent graduating cohort, the <a href="https://www.unicef.org/innovation/venturefund/blockchain-financial-inclusion-graduation">2021 Blockchain cohort</a>, represents this improved alignment, with 4 of 5 companies receiving recognition of their products as digital public goods by their graduation this year.</p>
<p>How does recognition of an open solution as a Digital Public Good help Venture Fund startups? It is an acknowledgment by the Digital Public Goods Alliance of a commitment and adherence to best practices and steps taken to protect data privacy and do no harm. Additionally, recognition as a DPG unlocks stronger potential for adoption and deployment of the solution by global stakeholders by providing greater visibility in a public roster of open solutions that adhere to best practices and standards. The recognition of 80% of an off-boarding Venture Fund portfolio speaks to both the intrinsic capabilities of the companies and the value of the Technical Assistance programmes and mentorship provided to them by the Venture Fund.</p>
<p>While past Venture Fund companies have received recognition as digital public goods before, this is the first time that a company achieved the recognition at the time of their graduation from the Venture Fund. Aligning the Technical Assistance programmes around the DPG Standard provided common frameworks and mental models for the diverse team of mentors to support the companies and help them achieve the Standard as an important part of their product development lifecycle.</p>
<blockquote>
<p>“As an early-stage startup, we struggled with a clear business model. Especially in the last six months of the investment, support from the mentor network helped in building clear business growth and impact metric plans. Also a year ago, we were very heavy on the tech side but lacked considerable planning on network and visibility growth. We have developed a customer persona and a pricing model, and now have a clearer vision of our Total Available Market, Serviceable Available Market, and Serviceable Obtainable Market (TAM, SAM, and SOM) models.”</p>
<p>Rumee Singh, Co-Founder, Rumsan</p>
</blockquote>

<h1 id="further-farther-together">Further, farther, together&nbsp;<a class="hanchor" href="#further-farther-together" aria-label="Anchor link for: Further, farther, together">🔗</a></h1>
<p>What comes next? The Technical Assistance programmes at the UNICEF Venture Fund are gearing up for additional cohorts benefiting from our seed-stage investment: a <a href="https://www.unicef.org/innovation/innovationfund/ai-ds-learning-health-2022">Data Science &amp; A.I. cohort</a> and an upcoming Blockchain cohort. These early-stage companies undergo a technical assistance programme involving a technical and strategic workshop series and monthly mentorship meetings. Graduates of our seed-stage investment that  have received additional capital through our <a href="https://www.unicef.org/innovation/growth-funding">Growth Funding</a> to take their solution to the next level of impact also benefit from customized mentorship to support their evolution from good prototype developments to solutions that can be implemented and scaled, with sustainable business models and proven pilots.</p>
<p>Additionally, mentors are developing digital toolkits to enable Venture Fund companies and anyone to read up and study best practices for building and sustaining digital public goods. Most of these toolkits will be released digitally online under Open Source licenses. You can find three of these toolkits below:</p>
<ul>
<li><a href="https://unicef.github.io/ooi-toolkit-ds/">Data Science &amp; A.I.</a></li>
<li><a href="https://unicef.github.io/drone-4sdgtoolkit/">Drones</a></li>
<li><a href="https://unicef.github.io/inventory/">Open Source</a></li>
</ul>
<p>Since the first Technical Assistance programmes were launched in 2018, the Venture Fund has seen improved results that correlate with the Technical Assistance programmes. In the <a href="https://www.unicef.org/innovation/venturefund/blockchain-financial-inclusion-graduation">most recent Blockchain 2021 cohort</a>, across 500+ hours of mentoring, the cohort collectively reached over 700,000 beneficiaries, raised $4M in follow-on funding, and 4 of 5 graduating companies were recognized as a digital public good before graduation. This also marked a new record of external contributors, with a total of 39 people who contributed to repositories across all portfolio companies. The expert guidance and coaching provided by the team of UNICEF mentors aids the start-ups in achieving new record heights.</p>
<blockquote>
<p>“UNICEF’s support helped Xcapit build value, with a premium put on discovery, iteration, survey, and experimentation with the end user. The guidance at the right time is priceless. It prevented us from facing a major problem in the future when our blockchain UNICEF mentor guided us when we were deciding the technology to create our wallet. Changing our mindset to become a fully open source company was also challenging. We had the best guidance we could ask, and we successfully overcame the difficulties and doubts, understanding the benefits of open collaboration.”</p>
<p>Antonella Perrone, COO, Xcapit</p>
</blockquote>

<h1 id="contribute-to-technical-assistance-knowledge-and-mentoring">Contribute to Technical Assistance knowledge and mentoring&nbsp;<a class="hanchor" href="#contribute-to-technical-assistance-knowledge-and-mentoring" aria-label="Anchor link for: Contribute to Technical Assistance knowledge and mentoring">🔗</a></h1>
<p>The UNICEF mentor toolkits are open source and you can also participate. The toolkits are currently accepting contributions for UI/UX and front-end development, as well as content curation and authorship. Get involved with the toolkits by participating via GitHub:</p>
<ul>
<li><a href="https://github.com/unicef/inventory-hugo-theme">UNICEF Inventory theme</a> (see “<a href="https://github.com/unicef/inventory-hugo-theme/issues?q=is%3Aissue&#43;is%3Aopen&#43;label%3A%22I%3A&#43;good&#43;first&#43;issue%22&#43;no%3Aassignee">good first issues</a>”)</li>
<li><a href="https://github.com/unicef/inventory">UNICEF Open Source Inventory</a></li>
<li><a href="https://github.com/unicef/ooi-toolkit-ds">UNICEF Data Science &amp; A.I. toolkit</a></li>
</ul>
<p>With the Digital Public Goods Alliance, we built upon our learnings and successes from portfolio companies and created the <a href="https://unicef.github.io/publicgoods-accelerator-guide/">DPG Accelerator Guide</a> as a collection of resources for accelerators to also support local ventures in developing digital public goods, setting them up for scale and impact.</p>
]]></description></item><item><title>On Free Software, Red Hat, and Iran</title><link>https://jwheel.org/blog/2021/10/red-hat-iran/</link><pubDate>Tue, 26 Oct 2021 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2021/10/red-hat-iran/</guid><description><![CDATA[<p>I was visiting the Fedora Council ticket tracker when I noticed <a href="https://pagure.io/Fedora-Council/tickets/issue/377">this ticket</a> up for discussion. The ticket&rsquo;s purpose is minor and appears inconsequential. It involves adding some legal text to the Fedora Accounts system. The change is related to <a href="https://docs.microsoft.com/en-us/compliance/regulatory/offering-ear">Export Administration Regulations</a> (the &ldquo;EAR&rdquo;) as maintained by the United States Department of Commerce. And the change is not actually a change, but a clarification of a policy that has always been in effect.</p>
<p>I am opposed to the impact of Export Administration Regulations by the United States as it pertains to free and open source software. I am a strong believer that the impact of these regulations are most harmful to all free &amp; open source software communities at an individual, human level. When I saw this discussion at the Fedora Council level, it offered me an opportunity to reflect on my own feelings about these regulations, and also to share an opinion on how I believe Fedora Linux could truly live up to its <a href="https://digitalpublicgoods.net/registry/fedora-linux.html">certification</a> as a Digital Public Good to ensure a more equitable world.</p>
<p>Here is <a href="https://pagure.io/Fedora-Council/tickets/issue/377#comment-759232">what I wrote</a> to the Fedora Council, and perhaps also to anyone reading from Red Hat&rsquo;s legal team:</p>
<hr>
<p>Hi, I would like to add a counter-opinion, of course one that holds no weight as an official vote.</p>
<p>As Fedora Linux is forced to this decision by its relationship to its legal sponsor, Red Hat, <strong>I therefore believe it is also the responsibility of Red Hat to seek a solution that does not deny an individual their right to realize the <a href="https://fsfe.org/freesoftware/">Four Freedoms</a> of Free Software on the basis of geography or citizenship</strong>.</p>
<p>I recognize no policy is being changed here. It is a deliberate clarification of rules that were always in effect. Yet this ticket opens the context behind the policy for greater scrutiny, and I posit the context is harmful both to the Fedora Project and to Red Hat.</p>
<p>This policy is harmful for diversity and inclusion, and compromises Fedora&rsquo;s position to be an innovative platform built by a global community. The U.S. laws and regulations driving this decision exist within a specific context, but that context is grossly incompatible with the dynamics of inclusive Free &amp; Open Source communities. In practice, these laws and regulations deny individuals (really, other human beings) of their ability to be a beneficiary of the open licenses we employ for creating our work, collaborating on it together, and sharing it with others.</p>
<p>I see two outcomes of accepting this as an unchangeable norm.</p>
<p>Firstly, it creates confusion, doubt, and feelings of ill intent. These laws and regulations are meant to impact governments and nation-states. In a Free &amp; Open Source community such as ours, these regulations impact individual people. Not governments or nation-states. As an example, a Fedora community member, Ahmad Haghighi, was recently <a href="https://ahmadhaghighi.com/blog/2021/us-restricted-free-software/">permanently removed</a> from the Fedora Community. In a few quick clicks, Ahmad&rsquo;s legacy in the project was <a href="https://web.archive.org/web/20210813014952/https://fedoraproject.org/wiki/User:Haghighi">erased</a>. As a precedent, even if someone&rsquo;s contributions were not &ldquo;supposed&rdquo; to be accepted in the first place, it does not sit well with me that any one person&rsquo;s legacy of contributions can so easily be removed from project records.</p>
<p>Secondly, it challenges the vision and foundations of the Fedora Project. Particularly our vision statement and the <em>Friends</em> Foundation. When I contribute to the Fedora Project, I do not see people as a citizen of this-country or that-country. I see them as my peers and fellow Fedorans, helping meet that shared vision of creating &ldquo;<em>a world where everyone benefits from free and open source software built by inclusive, welcoming, and open-minded communities</em>.&rdquo; As an American citizen, I know my country makes such discriminations about large groups of people based only on their nationality, but as a contributor to Free &amp; Open Source communities, I see people by their individual character and intention to be a part of our shared vision. But how can we truly aspire to this vision if we are consciously making deliberate exclusions, even if they make little to no sense in our own context? This geographic restriction policy sits in contrast to the vision and purpose we spell out &ldquo;on paper&rdquo;.</p>
<p>I understand why Fedora leadership is taking this action due to Fedora&rsquo;s legal and sociopolitical relationship to Red Hat, an American incorporation subject to American laws and regulations. To an extent, the hand of Fedora is forced.</p>
<p>But I believe this is a great opportunity for Red Hat to be an enabler of Fedora&rsquo;s <em>First</em> Foundation. Previously, Microsoft <a href="https://github.blog/2021-01-05-advancing-developer-freedom-github-is-fully-available-in-iran/">stood up</a> for Iranian developers and successfully set a precedent about how the United States Office of Foreign Assets Control (OFAC) treats such cases. I found this excerpt from Nat Friedman&rsquo;s announcement to resonate:</p>
<blockquote>
<p>Over the course of two years, we were able to demonstrate how developer use of GitHub advances human progress, international communication, and the enduring US foreign policy of promoting free speech and the free flow of information. We are grateful to OFAC for the engagement which has led to this great result for developers.</p>
<p><em><a href="https://github.blog/2021-01-05-advancing-developer-freedom-github-is-fully-available-in-iran/">Advancing developer freedom: GitHub is fully available in Iran</a> - github.blog</em></p>
</blockquote>
<p><strong>I believe Red Hat&rsquo;s legal team should take a stand for individuals in embargoed countries to remain a beneficiary of the free and open source licenses that enable a community Linux distribution like Fedora to exist in the first place.</strong></p>
<p>After all, in Fedora, we are well-known for being <a href="https://docs.fedoraproject.org/en-US/project/#_first">first</a> in the Open Source space for innovative new ideas and approaches. We know Fedora Linux is a <a href="https://digitalpublicgoods.net/registry/fedora-linux.html">digital public good</a> that should be accessible to all and everyone. But to make this a reality, the Fedora Project cannot be first here on its own. We need our friendly primary sponsor, Red Hat, to help us clear this burden, which is brought on by our connection to Red Hat in the first place.</p>
<p>I&rsquo;ll close this counter-opinion with an excerpt from our First Foundation:</p>
<blockquote>
<p>&ldquo;However, the Fedora Project’s goal of advancing free software dictates that the Fedora Project itself pursue a strategy that preserves the forward momentum of our technical, collateral, and community-building progress. Fedora always aims to provide the future, first.&rdquo;</p>
<p><em>From <a href="https://docs.fedoraproject.org/en-US/project/#_first">What is Fedora all about?</a></em></p>
</blockquote>
<p>Here is a chance to be clear on the future we want to provide and for whom.</p>
<hr>
<p><em>Background photo by <a href="https://unsplash.com/@omidarmin?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Omid Armin</a> on <a href="https://unsplash.com/?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a>.</em></p>]]></description></item><item><title>2020/2021 in Open Source at UNICEF Innovation Fund</title><link>https://jwheel.org/blog/2021/09/2020-2021-in-open-source-at-unicef-innovation-fund/</link><pubDate>Tue, 07 Sep 2021 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2021/09/2020-2021-in-open-source-at-unicef-innovation-fund/</guid><description><![CDATA[<p>Open Source is a means to collaborate and solve common problems; during the COVID-19 pandemic, open data and tools <a href="https://www.dlapiper.com/en/us/insights/publications/2021/07/techlaw-podcast-sesg-venture-capital-for-good-and-software-solutions-with-a-purpose">proved useful</a> in quickly tailoring and deploying life-saving services. How has the <a href="https://www.unicef.org/innovation/">UNICEF Innovation Fund</a> kept up with latest Open Source innovations?</p>
<p>The UNICEF Innovation Fund invests exclusively in Open Source technology – with today’s rapidly evolving innovation landscape, Open Source software, hardware, data, and content not only create value and generate revenue, but also ensure greater collaboration and impact. This reflection is a look back at Open Source activity and participation stemming from the <a href="https://www.unicef.org/innovation/ventures">UNICEF Ventures Team</a> from June 2020 to date (July 2021).</p>
<p>By the end of this article, you will have a better understanding of the evolving and forward-thinking approach to Open Source taken by the UNICEF Office of Innovation.</p>
<p>This article looks at a few aspects of Open Source engagement at the Innovation Fund:</p>
<ol>
<li>Support models
<ol>
<li>Legal &amp; policy</li>
<li>Building and leveraging from the community</li>
</ol>
</li>
<li>Case study: Cloudline and upstream engagement</li>
</ol>

<h2 id="new-to-open-source-at-unicef">New to Open Source at UNICEF?&nbsp;<a class="hanchor" href="#new-to-open-source-at-unicef" aria-label="Anchor link for: New to Open Source at UNICEF?">🔗</a></h2>
<p>If you are hearing about the <a href="https://unicef.github.io/inventory/meta/overview/">UNICEF Open Source Mentorship programme</a> for the first time, check out this introduction post to get important context behind why UNICEF invests in <a href="https://jwfblog.wpenginepowered.com/2021/07/unicef-open-source-mentorship/">Open Source mentorship and support</a> for Innovation Fund portfolio teams:</p>
<p><a href="https://jwfblog.wpenginepowered.com/2021/07/unicef-open-source-mentorship/">https://jwfblog.wpenginepowered.com/2021/07/unicef-open-source-mentorship/</a></p>

<h2 id="innovation-fund-support-models">Innovation Fund support models&nbsp;<a class="hanchor" href="#innovation-fund-support-models" aria-label="Anchor link for: Innovation Fund support models">🔗</a></h2>
<p>Start-ups receive both funding and customized mentorship during their 12-month investment period with the UNICEF Innovation Fund. Since the Innovation Fund launched in 2016, the Innovation Fund team noted the impact of hands-on guidance to help start-ups understand how to work open and lead open. Start-ups receiving Open Source support were better equipped to develop sustainable business models that made Open Source intellectual property work with them instead of against them.</p>
<p>By the end of the 12-month investment cycle, graduating companies achieve the following milestones in place with their projects:</p>
<ul>
<li>Solid understanding of Open Source licenses and different business models depending on a permissive or copyleft strategy.</li>
<li>Laying foundations for growing or participating in friendly, inclusive communities.</li>
<li>Documentation site to showcase their Open Source work, and how to get involved.</li>
<li>Continuous Integration pipeline to test new changes in the code-base before they are added, and avoid common human errors.</li>
</ul>
<p>Across these milestones, three themes of support have emerged as as most essential in the past year: <strong>legal &amp; policy, building and leveraging from the community, and building in the open</strong>.</p>

<h3 id="legal--policy">Legal &amp; policy&nbsp;<a class="hanchor" href="#legal--policy" aria-label="Anchor link for: Legal &amp; policy">🔗</a></h3>
<p>The UNICEF Innovation Fund is unique in Venture Capital on its open-first investment strategy. Start-ups receiving UNICEF funding are obligated to either create their own Open Source works or contribute to existing Open Source works. This leads start-up teams to ask more questions: how does this work in a legal sense? How do you establish a sustainable business model with Open Source dependencies and the different types of license models that exist (e.g. permissive and copyleft)? These are the questions that start-ups receive tailored guidance on from the Open Source Mentorship programme.</p>
<p>How did the Open Source Mentorship programme support both start-ups and UNICEF Country Offices receiving funding from the <a href="https://www.unicefinnovationfund.org/about">UNICEF Innovation Fund</a>? The programme improved business and legal resources and referrals for managing Open Source intellectual property. This was primarily done by creating a self-serve knowledgebase of legal, governance, and tech policy: the <a href="https://unicef.github.io/inventory/">UNICEF Open Source Inventory</a>. The Inventory was created in close consultation with start-ups receiving UNICEF funding, leading industry experts in areas such as Open Hardware and open design, and other existing Open Source communities of practice.</p>

<h3 id="building-and-leveraging-from-the-community">Building and leveraging from the community&nbsp;<a class="hanchor" href="#building-and-leveraging-from-the-community" aria-label="Anchor link for: Building and leveraging from the community">🔗</a></h3>
<p>Over the past year, we also saw more upstream collaboration. UNICEF Innovation Fund start-ups collaborated on existing projects like the PX4 Drone auto-pilot software instead of reinventing the wheel themselves. This enabled the work done with UNICEF funding to go further and impact the wider ecosystem, instead of an individual project with highly-specific use cases.</p>
<p>Furthermore, as the Innovation Fund portfolio continues to grow, new inductees in the Open Source Mentorship programme are able to build on top of work done by previous portfolio companies. This accelerates the rate of development for the new inductees and gives them a model of success to look towards during their engagement with UNICEF.</p>
<p>For example, two companies from the <a href="https://www.unicef.org/innovation/innovationfund/dronescohortgraduation2021">2019 Drones cohort</a> created documentation websites that were used as models for the 2020 <a href="https://www.generationunlimited.org/">Generation Unlimited</a> cohort. <a href="https://qaira.github.io/">qAIRa</a> from Perú and <a href="https://rentadronecl.github.io/">Rentadrone</a> from Chile created documentation websites using the popular toolchain <a href="https://docusaurus.io/">Docusaurus</a>, created by Facebook&rsquo;s Open Source Program Office. The work of qAIRa and Rentadrone was leveraged as models by <a href="https://vrapeutic.github.io/">VRapeutic</a> and <a href="https://i-stem.github.io/">I-STEM</a> in the 2020 Generation Unlimited cohort. Using graduated companies as models accelerated both technical and content development for the new teams when they had relatable models to use in building their own Open Source documentation websites.</p>

<h2 id="innovation-fund-case-study-cloudline-and-upstream-engagement">Innovation Fund case study: Cloudline and upstream engagement&nbsp;<a class="hanchor" href="#innovation-fund-case-study-cloudline-and-upstream-engagement" aria-label="Anchor link for: Innovation Fund case study: Cloudline and upstream engagement">🔗</a></h2>
<p><a href="http://bit.ly/venturefundcloudline">Cloudline Africa</a> (South Africa) operates small-scale autonomous airships that have longer endurance and range than current commercial drones; their solution will help deliver medical supplies to hard-to-reach communities and reduce operational costs in the last-mile.</p>
<p>Four highlights from Cloudline&rsquo;s period with the Innovation Fund are below:</p>
<ul>
<li>The team launched the airship with a payload capacity of 10 kgs with a 50 km range.  </li>
<li>Full endurance capability (40km/h) along with automated waypoint flying. </li>
<li>Contributed flight control software to the PX4 upstream community by introducing a new mode of aircraft to the community in the form of airships.  </li>
<li>Cloudline received the <a href="https://www.fastcompany.co.za/business/cloudline-floats-to-the-top-at-fast-companys-most-innovative-companies-awards-44250613">Fast Company South Africa Most Innovative Company Award</a> </li>
</ul>
<div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
      <iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube-nocookie.com/embed/MlldnwmWvIc?autoplay=0&amp;controls=1&amp;end=0&amp;loop=0&amp;mute=0&amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"></iframe>
    </div>

<blockquote>
<p>&ldquo;Our greatest triumph of the year was the flight of our pre-production airship. Capable of a 10kg useful payload and a 50km range, this aircraft is ideally suited to medical logistics and other high-value scheduled deliveries.&rdquo;
— <em>Spencer Horne, Co-Founder</em></p>
</blockquote>

<h3 id="going-upstream">Going upstream&nbsp;<a class="hanchor" href="#going-upstream" aria-label="Anchor link for: Going upstream">🔗</a></h3>
<p>Contributions made to another popular upstream community was another major highlight of the Open Source Mentorship programme. Furthermore, the contributions were not casual <a href="https://archive.org/details/ato2017-drivethru">&ldquo;drive-through&rdquo; contributions</a>; they were consistent and focused broadly around the ecosystem instead of a single repository of source code.</p>
<p>
<figure>
  <img src="/blog/2021/08/cloudline-team-fastcompany.jpg" alt="UNICEF Innovation Fund graduate company Cloudline is pictured accepting an award from Fast Company South Africa for Most Innovative Company of the year." loading="lazy">
  <figcaption>Autonomous airship logistics company, Cloudline, took top honours last night at the inaugural Fast Company SA Most Innovative Companies Awards held in Cape Town. — fastcompany.co.za (<a href="https://www.fastcompany.co.za/business/cloudline-floats-to-the-top-at-fast-companys-most-innovative-companies-awards" class="bare">https://www.fastcompany.co.za/business/cloudline-floats-to-the-top-at-fast-companys-most-innovative-companies-awards</a>)</figcaption>
</figure>
</p>
<p>During the mentorship programme, Cloudline added 61 commits across four repositories. The summary of their contributions were adding a new vehicle type to the PX4 auto-pilot software: <strong>airships</strong>. The team first <a href="https://discuss.px4.io/t/new-vehicle-type-airship/16514">opened a discussion</a> on the PX4 community forum. After getting feedback from a developer, they proceeded to <a href="https://github.com/PX4/PX4-Autopilot/issues/14792">add the Cloudline airship</a> into the upstream software. This was followed by documentation additions with <a href="https://github.com/PX4/PX4-Devguide/pull/1065">controller diagrams</a> and <a href="https://github.com/PX4/PX4-Devguide/pull/1077">simulation instructions</a>. <strong>Through their contributions, a wider network of developers can simulate and interact with airships similar to the one created by Cloudline</strong>.</p>
<p>But the contributions did not stop at code. Cloudline developer Anton Erasmus <a href="https://px4developersummitvirtual2020.sched.com/event/cjOm/an-in-depth-look-at-the-multicopter-control-system-architecture">delivered a deep dive presentation</a> at the PX4 2020 virtual contributor summit. He explained to other developers about how to leverage the multicopter control system, as used in the Cloudline airships and other popular drone devices. This outreach step is important in growing awareness in the existing community for new introductions to the common software, and how both Cloudline and the PX4 community could help each other in achieving their similar yet different goals.</p>

<h2 id="what-is-next-for-the-innovation-fund">What is next for the Innovation Fund?&nbsp;<a class="hanchor" href="#what-is-next-for-the-innovation-fund" aria-label="Anchor link for: What is next for the Innovation Fund?">🔗</a></h2>
<p>What does the next year ahead look like for UNICEF&rsquo;s Open Source Mentorship programme? Stay tuned for the final post in this series, which will explore on-going work to standardize the mentorship curriculum, detail how Innovation Fund companies are being coached in becoming <a href="https://digitalpublicgoods.net/">Digital Public Goods</a>, and the research and development for an Open Source Program Office at the UNICEF Office of Innovation in 2022.</p>
<hr>
<p><em>Special thanks for content and data collected in this post</em>: <strong>Sanna Bedi, Zenani Orengo</strong></p>]]></description></item><item><title>Committee risk: A governance challenge for Open Source</title><link>https://jwheel.org/blog/2021/08/committees-open-source/</link><pubDate>Thu, 26 Aug 2021 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2021/08/committees-open-source/</guid><description><![CDATA[<p>Community participation and engagement in corporate Open Source projects is valuable, yet difficult to foster. Many companies supporting popular Open Source projects develop diverse communities across different employers, nationalities, genders, educational backgrounds, and more. Increased diversity brings perspective about who finds a product useful. It also gives you the opportunity to help your product be more useful for that audience. But if you&rsquo;re building a diverse community around your enterprise project, where do you begin?</p>
<p>Many have started on this same path before. Several communities form a <strong>committee</strong> as a governance model for important decision-making. Usually committee membership is chosen through an election process. Paid employees, or sometimes, members of the community comprise the elected committee membership. This meritocratic approach is believed to bring in diverse representation and participation of highly-engaged people. After all, who better to represent contributors of a project than a committee of folks elected by their own peers?</p>
<p>Sometimes, committees do accomplish this lofty goal. My argument is that sometimes they don&rsquo;t – especially if your committees are designed in a way to <em>disable</em> participation.</p>

<h2 id="context-brief-what-is-a-committee">Context brief: what is a committee?&nbsp;<a class="hanchor" href="#context-brief-what-is-a-committee" aria-label="Anchor link for: Context brief: what is a committee?">🔗</a></h2>
<p>Frequently in this post, I refer to committees. But what are committees? I see a committee as a I see a committee as holding the following characteristics:</p>
<ul>
<li><em>Fixed</em> group of individuals charged with important decision-making privileges</li>
<li>Appointed or elected members with fixed term periods (i.e. an end date)</li>
<li>May perform their work in a public and transparent way</li>
</ul>

<h2 id="challenges-of-a-committee">Challenges of a committee&nbsp;<a class="hanchor" href="#challenges-of-a-committee" aria-label="Anchor link for: Challenges of a committee">🔗</a></h2>
<p>If designing a community for participation and engagement, a committee can do the opposite by pushing people away. It can be difficult for non-members to participate in important decisions. When building the foundation of a community on volunteerism, expecting others to give time in huge quantities is a false expectation. An active, long-term commitment as a committee member may be a big ask. Yet even if an individual wants to contribute, their company may not support such policy. So, this person is unable to contribute fully in the committee. Therefore, the opportunity is lost to include their voice as a representative of a larger community.</p>
<p>Furthermore, a committee depends on the engagement of its members to be effective. Committees are limited by the amount of time individual members actively contribute. Committees lose their effectiveness when:</p>
<ol>
<li>Individual committee members practice poor time management, <em>or</em> are simply overloaded with too many responsibilities</li>
<li>Inclusion of others with valuable perspectives have no pathway to being heard or represented, <em>unless</em> they are on the committee</li>
</ol>
<p>Committee members participate for a fixed amount of time as regular participants. This can be good for a healthy turnover rate, but it becomes bad when the same people are running over and over again. Often described as burnout!</p>

<h2 id="what-is-a-better-design-for-community-engagement">What is a better design for community engagement?&nbsp;<a class="hanchor" href="#what-is-a-better-design-for-community-engagement" aria-label="Anchor link for: What is a better design for community engagement?">🔗</a></h2>
<p>A fatal flaw in community management is being too hands-off or too hands-on from a corporate context. I look back at 2018 in the difference of roles in <a href="https://docs.fedoraproject.org/en-US/mindshare-committee/">Fedora Mindshare</a> vs. <a href="https://docs.fedoraproject.org/en-US/commops/">Fedora CommOps</a>. Red Hat strives for participation beyond paid Red Hat employees, yet the volunteer-driven community struggles at times for participation of any Red Hat employee.</p>
<p>The Mindshare Committee is the community body that leverages power in the community. These are tasks that could have been designed by CommOps too. I think the format and spirit of CommOps encourages collaboration and invitation to contribute. On the other hand, if you are not an elected or appointed member of the Mindshare Committee, there is not much in the ways of contributing. Even if that is more a belief than a fixed rule.</p>]]></description></item><item><title>What if Open Source dependencies weren't software?</title><link>https://jwheel.org/blog/2021/08/open-source-dependencies/</link><pubDate>Tue, 10 Aug 2021 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2021/08/open-source-dependencies/</guid><description><![CDATA[<p>I often wonder how to best measure and communicate Open Source value. The collective focus of the industry goes into quantifying dependencies; that is, how one software relies on other software in order to complete its primary function. The vocabulary to measure dependency usually includes words like &ldquo;imports,&rdquo; &ldquo;licenses,&rdquo; &ldquo;bugs fixed to bugs open,&rdquo; and other machine-oriented terms. Yet the unique value proposition of <em>innovative</em> Open Source involves a community of people around a software. This led me on to the next question: <strong>why do we bias towards machine-oriented terms instead of human-oriented or community-oriented terms to describe Open Source communities and division of labor?</strong></p>
<p>However, this question only led to more questions. Much of the existing Open Source discourse on sustainability centers on defining, tracking, and understanding &ldquo;dependencies.&rdquo; Yet when we say dependencies, people typically mean source code, software packages, and license compatibility. So, <strong>how do we describe the value proposition of people and the impact of cross-pollinated communities?</strong></p>
<p>So, what if Open Source dependencies weren&rsquo;t <em>just</em> software? Furthermore, what if Open Source dependencies could mean people… or simply, human beings? In this blog post, we&rsquo;ll walk through this thought experiment.</p>

<h2 id="open-source-dependencies-are-people">Open Source dependencies are people.&nbsp;<a class="hanchor" href="#open-source-dependencies-are-people" aria-label="Anchor link for: Open Source dependencies are people.">🔗</a></h2>
<p>My purpose is to augment the idea of &ldquo;dependencies&rdquo; from exclusively source code to be more inclusive of its authors as well. We typically center software in our Open Source conversations, so I want to deliberately center people. There are many ways to cover this, but I will offer three ways we could think of Open Source dependencies as more than source code:</p>
<ol>
<li>Community inheritance</li>
<li>Legacies</li>
<li>Love</li>
</ol>

<h2 id="dependencies-community-inheritance">Dependencies: Community inheritance&nbsp;<a class="hanchor" href="#dependencies-community-inheritance" aria-label="Anchor link for: Dependencies: Community inheritance">🔗</a></h2>
<p>New, smaller projects sometimes form up underneath or within an existing larger project. Sometimes a new project is created to support the existing project. Sometimes it is a passion project led by a few that aligns with the motivations and values of a wider community. But these new projects begin with an added advantage of inheriting the collaborative ecosystem surrounding the existing project, instead of being tasked to create this from scratch themselves.</p>

<h3 id="why-measure-this">Why measure this?&nbsp;<a class="hanchor" href="#why-measure-this" aria-label="Anchor link for: Why measure this?">🔗</a></h3>
<p>Ask anyone responsible for building an Open Source community from scratch. The approach at this stage is experimental:</p>
<ul>
<li>Will using this feature encourage new contributors to participate?</li>
<li>Does someone in a related field discover our project on a casual whim looking at GitHub?</li>
<li>How do we make our project more accessible for contributors we do not yet have?</li>
</ul>
<p><strong>Many times, it is about forming a hypothesis and then testing it.</strong></p>
<p>However…</p>
<p>If you exist within the dynamic of an existing community, you benefit from resources, people, and infrastructure that would be unavailable if you started independently. Finding communities with compatible values and motives exposes you to a wider network, and thus more visibility in a world where there is already <em>too much</em> information. Working within an existing community can cut light-years off of time-to-market or improving product sustainability and community resiliency (in the context of other variables).</p>

<h3 id="example-of-community-inheritance">Example of community inheritance&nbsp;<a class="hanchor" href="#example-of-community-inheritance" aria-label="Anchor link for: Example of community inheritance">🔗</a></h3>
<p>The <a href="https://docs.fedoraproject.org/en-US/project/">Fedora Project</a> produces Fedora Linux. <a href="https://getfedora.org/">Fedora Linux</a> is a Free and Open Source operating system derived from the open source Linux kernel. The Fedora Project also creates other software in order to facilitate the production, creation, and updates of Fedora Linux. Examples of this are asynchronous <a href="https://github.com/fedora-infra/mote">meeting minute note managers</a>, <a href="https://github.com/fedora-infra/fedocal">community calendars</a>, <a href="https://badges.fedoraproject.org/about">gamified badges</a>, <a href="https://pagure.io/koji">software package distribution tools</a>, and more.</p>
<p>While none of these smaller software projects are the ultimate purpose and goal of the Fedora Project, they are supplementary to the overall goal of <strong>producing Fedora Linux</strong>. The sustainability of these smaller parts ensure a healthier ecosystem around the larger project.</p>
<p>Another way to see this is as a planet with several orbiting moons, where the planet is an existing project and each moon represents another smaller project orbiting around the existing one. Each moon is different, yet each is still connected to the gravitational force and motions of the planet.</p>

<h2 id="dependencies-legacies">Dependencies: Legacies&nbsp;<a class="hanchor" href="#dependencies-legacies" aria-label="Anchor link for: Dependencies: Legacies">🔗</a></h2>
<p>Open Source projects are more than source code. Human beings are social creatures, and Open Source is a social activity. An individual or groups of individuals may influence the hearts and minds of others in the movement. To win hearts and minds is to merge the intentions of the individual with the intentions of the wider community. The power to change minds is the power to move mountains.</p>

<h3 id="why-measure-this-1">Why measure this?&nbsp;<a class="hanchor" href="#why-measure-this-1" aria-label="Anchor link for: Why measure this?">🔗</a></h3>
<p>Open Source is a social activity. It has both a written and oral story-telling tradition. There is a rich history from the movement that first took root in the 1980s. We use stories to expand our imagination, or to see a perspective in a way we might not have before. So, it is important to note the value these historical stories play in shaping our movement and creating leaders.</p>
<p>Legacies of kindness and love result in thriving communities where contributors look out for each other. People are not motivated by the will to survive; they are motivated by the will to thrive with a community. Legacies of discrimination and hate result in divided, splintered communities who are focused on counting their differences instead of seeing how alike we are.</p>

<h3 id="example-of-legacies">Example of legacies&nbsp;<a class="hanchor" href="#example-of-legacies" aria-label="Anchor link for: Example of legacies">🔗</a></h3>
<p><a href="https://jwfblog.wpenginepowered.com/2018/11/fedora-appreciation-week-tribute-to-a-legacy/">Seth Vidal</a> wrote the Yellowdog Update Manager (Y.U.M.), and he contributed to Fedora. <a href="https://communityblog.fedoraproject.org/remembering-matthew-williams/">Matthew Williams</a> helped others learn about Linux and Open Source, and he contributed to Fedora. <a href="https://communityblog.fedoraproject.org/remembering-thomas-gilliard-satellit/">Thomas Gilliaird</a> helped me with using Fedora Linux in IRC as a teenager, and he contributed to Fedora. The ways we help other humans while on our own journey is how we create a legacy with wider wings. The impact of a few kind people is enough to inspire more to follow.</p>
<p>To ignore the impact of legacies in social activities surrounding Open Source is to deny the impact of charismatic leaders who lead in styles of either unity or division.</p>

<h2 id="dependencies-love">Dependencies: Love&nbsp;<a class="hanchor" href="#dependencies-love" aria-label="Anchor link for: Dependencies: Love">🔗</a></h2>
<blockquote>
<p>Power at its best is <strong>love implementing the demands of justice</strong>. Justice at its best is <strong>love correcting everything that stands against love</strong>.</p>
<p><a href="https://en.wikipedia.org/wiki/Martin_Luther_King_Jr.">Dr. Martin Luther King, Jr.</a></p>
</blockquote>
<p>The act of existence can be political. We cannot escape the sociopolitical environment of our world, no matter how much we wish to push it aside. If we choose to ignore it, there are others who choose to manipulate common ignorance, to the exploit of their own unbounded wealth. We must embrace and acknowledge the political atmosphere permeates our world; it does not disappear and hide away when it makes us uncomfortable.</p>
<p>
<figure>
  <img src="/blog/2021/04/Get_out_of_jail_free.jpg" alt="A Get Out of Jail Free card from the board game Monopoly" loading="lazy">
  <figcaption>From Wikipedia (<a href="https://en.wikipedia.org/wiki/File:Get_out_of_jail_free.jpg" class="bare">https://en.wikipedia.org/wiki/File:Get_out_of_jail_free.jpg</a>).</figcaption>
</figure>
</p>

<h3 id="why-measure-this-2">Why measure this?&nbsp;<a class="hanchor" href="#why-measure-this-2" aria-label="Anchor link for: Why measure this?">🔗</a></h3>
<p>Open Source does not get a <a href="https://en.wikipedia.org/wiki/Get_Out_of_Jail_Free_card">&ldquo;get out of jail free&rdquo; card</a>.</p>
<p>Open Source is political. Its roots in the Free Software movement were firmly rooted in politics, even if they were narrowly confined to a few key issues. The real question is, how do we wield our own political agency and expediency? We should act from our hearts and move to inspired action to correct everything that stands against love.</p>

<h3 id="example-of-love">Example of love&nbsp;<a class="hanchor" href="#example-of-love" aria-label="Anchor link for: Example of love">🔗</a></h3>
<p>This blog post. These words are a radical act of love. Acknowledging it and choosing to embrace it is the first step in using our Open Source power responsibly.</p>
<hr>
<p><em>Featured image arranged by Justin Wheeler. Original photograph by <a href="https://unsplash.com/@goian?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Ian Schneider</a> on <a href="https://unsplash.com/s/photos/community?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a>.</em></p>]]></description></item><item><title>Introducing UNICEF Open Source Mentorship</title><link>https://jwheel.org/blog/2021/07/unicef-open-source-mentorship/</link><pubDate>Tue, 06 Jul 2021 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2021/07/unicef-open-source-mentorship/</guid><description><![CDATA[<p><em>This post was co-published <a href="https://www.unicefinnovationfund.org/broadcast/expert-posts/introducing-unicef-open-source-mentorship">on the UNICEF Innovation Fund blog</a>.</em></p>
<p>2020 saw the launch of a formalized Open Source Mentorship programme for the <a href="https://www.unicefinnovationfund.org/">UNICEF Innovation Fund</a>, built up on two years of work from <a href="https://fossrit.github.io/librecorps/">RIT LibreCorps</a> expertise and consulting.</p>
<p>The <a href="https://unicef.github.io/inventory/meta/overview/">Open Source Mentorship programme</a> includes <a href="https://unicef.github.io/inventory/meta/modules/#offered">five modules</a> about Open Source intellectual property and communities delivered <a href="https://unicef.github.io/inventory/meta/modules/#program">across twelve months</a>. UNICEF grantees are matched with an experienced Open Source Mentor to guide them through the modules. The mentorship takes an interactive, guided approach to understanding the unique context that each team and product exist within. The assigned Open Source Mentor provides specialized advice and training:</p>
<ul>
<li>Tailored feedback based on business models</li>
<li>Existing local user communities</li>
<li>Best practices for collaborating together with others on similar challenges.</li>
</ul>
<p>The geographic diversity in the UNICEF Open Source Mentorship programme is unusual for technology incubators or accelerator programs. All funded projects come from UNICEF programme countries. The UNICEF Innovation Fund provides equity-free funding for Open Source solutions from local innovators and entrepreneurs solving local problems. To date, the Innovation Fund has invested in teams from over 57 countries. Argentina, India, Iran, Kenya, Mexico, Nepal, and Rwanda represent the most recent incoming cohort in July 2021.</p>
<p>But why does this kind of work matter to UNICEF or the United Nations?</p>

<h2 id="un-roadmap-for-digital-cooperation">UN Roadmap for Digital Cooperation&nbsp;<a class="hanchor" href="#un-roadmap-for-digital-cooperation" aria-label="Anchor link for: UN Roadmap for Digital Cooperation">🔗</a></h2>
<p>In June 2020, the United Nations Secretary-General released the <a href="https://www.un.org/en/content/digital-cooperation-roadmap/assets/pdf/Roadmap_for_Digital_Cooperation_EN.pdf">UN Roadmap for Digital Cooperation</a>, a call for action and a vision with several key considerations:</p>
<ul>
<li>An Inclusive Digital Economy and Society</li>
<li>Human and Institutional Capacity</li>
<li>Human Rights and Human Agency</li>
<li>Trust, Security and Stability</li>
<li>Global Digital Cooperation</li>
</ul>
<p>The report explores the impact technology has in each key area:</p>
<blockquote>
<p>&ldquo;Digital technology does not exist in a vacuum – it has enormous potential for positive change, but can also reinforce and magnify existing fault lines and worsen economic and other inequalities. In 2019, close to 87 per cent of individuals in developed countries used the Internet, compared with only 19 per cent in the least developed countries.&rdquo;</p>
<p><a href="https://www.un.org/en/content/digital-cooperation-roadmap/assets/pdf/Roadmap_for_Digital_Cooperation_EN.pdf">UN Roadmap for Digital Cooperation</a>, June 2020</p>
</blockquote>

<h3 id="open-source-mentorship-enables-digital-cooperation">Open Source Mentorship enables digital cooperation.&nbsp;<a class="hanchor" href="#open-source-mentorship-enables-digital-cooperation" aria-label="Anchor link for: Open Source Mentorship enables digital cooperation.">🔗</a></h3>
<p>Therefore, the conception and development of Open Source Mentorship is inspired by the Roadmap, in four key aspects:</p>
<ol>
<li><strong>Digital Public Goods</strong>: To encourage knowledge transfer and collaboration on practical, everyday advice on building technology projects in line with the <a href="https://digitalpublicgoods.net/standard/">Digital Public Good Standard</a>.</li>
<li><strong>Digital Capacity-Building</strong>: Empowering others with the <a href="https://jwfblog.wpenginepowered.com/2020/11/open-source-archetypes-unicef-open-source/">skills and information</a> they need to be bringers of Open Source change and innovation in a disruptive and competitive Venture Capital ecosystem.</li>
<li><strong>Digital Trust and Security</strong>: Providing a holistic view of Open Source intellectual property that is influenced by, but not bound by, quarterly earnings reports and share prices. Understanding the commitments of Open Source licenses and technology, and how trust is earned and lost in Open Source products and communities.</li>
<li><strong>Global Digital Cooperation</strong>: Designing and structuring communities to be healthy and collaborative in nature, united in resolving common challenges and problems.</li>
</ol>]]></description></item><item><title>2021 OSI Board of Directors statement of intent</title><link>https://jwheel.org/blog/2021/04/2021-osi-board-of-directors-statement-of-intent/</link><pubDate>Tue, 13 Apr 2021 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2021/04/2021-osi-board-of-directors-statement-of-intent/</guid><description><![CDATA[<p><em>This first appeared <a href="https://wiki.opensource.org/bin/Main/OSI%20Board%20of%20Directors/Board%20Member%20Elections/2021%20Individual%20and%20Affiliate%20Elections/Flory2021/">on the Open Source Initiative Wiki</a>. In light of the <a href="https://opensource.org/election_update">election update this year</a>, I am republishing my statement of intent on my personal blog.</em></p>
<hr>
<blockquote>
<p>No culture can live if it attempts to be exclusive.</p>
<p>Mahatma Gandhi</p>
</blockquote>
<p>I believe in the value of upholding the Open Source Definition as a mature and dependable legal framework while recognizing the OSI needs to work better with works that are not Open Source. My ambition as a candidate is to support existing work to enable a more responsive, more agile Open Source Initiative.</p>
<p><strong>Twitter:</strong> <a href="https://twitter.com/jwf_foss"><strong>@jwf_foss</strong></a></p>

<h2 id="why-should-you-vote-for-me">Why should you vote for me?&nbsp;<a class="hanchor" href="#why-should-you-vote-for-me" aria-label="Anchor link for: Why should you vote for me?">🔗</a></h2>
<p>I bring a <a href="https://jwheel.org/#unicef">public sector perspective</a> to a conversation where it seems missing, despite the dependent relationship of the public sector to Free and Open Source works. In my work, I provide Open Source mentorship and coaching to humanitarian-driven start-ups hailing from 57 countries. I am an excellent communicator, I understand a subset of challenges faced by Open Source communities, and I have a collaborative nature.</p>
<p>I am also a millennial. The GPL was first drafted before I was born. My lived experience with Free Software and Open Source gives me a vantage point not well-represented in Open Source legal and policy work. My personal experience with Free and Open Source software is impacted by years of untangling my own digital life from technology decisions made for me, not by me. With that in mind, I realize not everyone can afford to be a Free Software purist, but we can still uphold the values of Open Source even if we do not use it exclusively.</p>

<h2 id="who-am-i">Who am I?&nbsp;<a class="hanchor" href="#who-am-i" aria-label="Anchor link for: Who am I?">🔗</a></h2>
<p>I work as an Open Source Technical Advisor at UNICEF in the <a href="https://www.unicef.org/innovation/">Office of Innovation</a>. I manage and support an <a href="https://unicefinnovationfund.org/">Open Source Mentorship programme</a> for start-up investments and teams building Open Source products and communities from more than 57 countries. I also provide Open Source support to other UNICEF colleagues and recently coordinated UNICEF Innovation&rsquo;s participation in the [on-going, at publication time] Outreachy round.</p>
<p>Outside of work, I have contributed to the <a href="https://docs.fedoraproject.org/en-US/project/">Fedora Project</a> for almost six years. I am soon ending a year-long term as the <a href="https://docs.fedoraproject.org/en-US/diversity-inclusion/roles/council-advisor/">Diversity &amp; Inclusion Advisor</a> to the Fedora Council. I am a founding member of the Fedora <a href="https://docs.fedoraproject.org/en-US/commops/">Community Operations</a> and <a href="https://docs.fedoraproject.org/en-US/diversity-inclusion/">Diversity &amp; Inclusion</a> teams. </p>

<h2 id="what-are-my-qualifications">What are my qualifications?&nbsp;<a class="hanchor" href="#what-are-my-qualifications" aria-label="Anchor link for: What are my qualifications?">🔗</a></h2>
<p>I first contributed to Open Source as a teenager. I was a community moderator and staff member of the open source <a href="https://jwheel.org/#spigotmc">SpigotMC project</a>. There, I handled user reports for a community forum with over 400,000 registered members. This is one of the most unique communities I have worked in, as the Spigot Community is a population of hundreds of thousands with an age demographic concentrated between ages 13-25.</p>
<p>Additionally, I am on the <a href="https://jwheel.org/#open-rit">advisory board of Open @ RIT</a>, the Open Source Programs Office for the <a href="https://www.rit.edu/">Rochester Institute of Technology</a> in Rochester, New York. This enables me to work more closely with academia, which has a growing interest in the growing ecosystem of academic Open Source Program Offices.</p>
<p>Finally, I regularly work with teams building Open Source solutions in support of children and UNICEF’s core work. I have lived experience of coaching teams on Open Source best practices across six continents. I have seen where Open Source worked well and where it didn’t. I bring this background and perspective into the work I would do as a member and representative elected by the Open Source Initiative constituency.</p>
<p>In summary, my lived experiences in Open Source, my connection to academic Open Source, and the humanitarian focus of my work make me a uniquely-qualified candidate for the OSI Board.</p>
<hr>

<h2 id="interview-responses">Interview responses&nbsp;<a class="hanchor" href="#interview-responses" aria-label="Anchor link for: Interview responses">🔗</a></h2>
<p>Luis Villa published <a href="https://opensource.com/article/21/3/board-elections-osi">four interview questions</a> for OSI Board candidates on Opensource.com. I originally <a href="https://twitter.com/jwf_foss/status/1370064424229216258">tweeted my response</a>, but I copied it here for wider visibility too.</p>

<h3 id="q1-what-should-osi-do">Q1: What should OSI do…&nbsp;<a class="hanchor" href="#q1-what-should-osi-do" aria-label="Anchor link for: Q1: What should OSI do…">🔗</a></h3>
<p>“…<em>about the tens of millions of people who regularly collaborate to build software online (often calling that activity, colloquially, open source) but have literally no idea what OSI is or what it does?”</em></p>
<p>I am excited at the opportunity to contribute here. The UNICEF Office of Innovation (and my own Open Source Mentorship programme) rely on the Open Source Definition to guide our international Open Source work, even if we are still learning how to do it best. But without the OSD as a guiding light, our work is much harder. My team is well-positioned to be an advocate and voice of support for the Open Source Definition in policy environments where Open Source is not. This relates to on-going <a href="https://gigaconnect.org/">Giga connectivity work</a> to connect schools worldwide to the Internet for equitable education opportunities for children.</p>
<p>So to directly answer the question, we have a conversation. Avoid anger when others choose software that is not Open Source. Avoid exasperated frustration when people pick licenses that are not Open Source. But the first step is always to teach &amp; educate on the stories, values and history of the Free/Open Source community.</p>

<h3 id="q2-if-an-ethical-software-initiative-sprung-up-tomorrow-what-should-osis-relationship-to-it-be">Q2: If an Ethical Software Initiative sprung up tomorrow, what should OSI&rsquo;s relationship to it be?&nbsp;<a class="hanchor" href="#q2-if-an-ethical-software-initiative-sprung-up-tomorrow-what-should-osis-relationship-to-it-be" aria-label="Anchor link for: Q2: If an Ethical Software Initiative sprung up tomorrow, what should OSI&rsquo;s relationship to it be?">🔗</a></h3>
<p>The good folks behind the Ethical Source movement have done so. The OSI needs to be open to collaborate and engage with other orgs who steward legal works that do not adhere to the OSD.</p>
<p>I want to invite the Ethical Source folks into the conversation. How can we better partner together? If elected, I would commit myself to organizing a public town hall or community discussion with the Ethical Source folks. Coraline Ada Ehmke, Tobie Langel, and many other folks are doing great work in this space. So, let&rsquo;s collaborate and work together.</p>

<h3 id="q3-when-a-license-decision-involves-a-topic">Q3: When a license decision involves a topic…&nbsp;<a class="hanchor" href="#q3-when-a-license-decision-involves-a-topic" aria-label="Anchor link for: Q3: When a license decision involves a topic…">🔗</a></h3>
<p>“…<em>on which the Open Source Definition is vague or otherwise unhelpful, what should the board do?”</em></p>
<p>The OSI needs to improve at saying what it is not. We are more clear on what the OSD <strong><em>is</em></strong> than we were even last year. As a candidate, I don&rsquo;t have crazy ideas for the Definition. But there are things that are not Open Source. The world is changing.</p>
<p>We need to adapt. We must be nimble in changing with the world, or the values and motives of the original Free/Open Source movement are at risk of volatility. As a candidate, if presented with an unclear situation, I would take one of two options:</p>
<ol>
<li>If the proposed work stands against a principle of the OSD, it should not be approved as such, or the OSD becomes meaningless; OR</li>
<li>Take an interpretive, &ldquo;living document&rdquo; view of the OSD for new copyleft innovations where the OSD is not clear or ambiguous.</li>
</ol>
<p>For context, I am a copyleft believer. Promoting and advocating for the stability and integrity of Open Source licenses is a fundamental part of my interest as a candidate for the Board.</p>

<h3 id="q4-what-role-should-the-new-staff-play-in-license-evaluation-or-the-osd-more-generally">Q4: What role should the new staff play in license evaluation (or the OSD more generally)?&nbsp;<a class="hanchor" href="#q4-what-role-should-the-new-staff-play-in-license-evaluation-or-the-osd-more-generally" aria-label="Anchor link for: Q4: What role should the new staff play in license evaluation (or the OSD more generally)?">🔗</a></h3>
<p>I don&rsquo;t have an answer to this one. Foundations are mostly new to me. I would defer to expertise and listen to what others with more years have to say. I want to better understand the capacity and ambition of the OSI to take on new work with a steady staff.</p>
<p>I am a collaborator by nature and a team player. So, I want to enable the work for the OSI to be more agile and responsive in what I see as core, critical work.</p>
<hr>
<p>That&rsquo;s it. If you have specific questions, you are welcome to get in touch with me on Twitter or add a comment below.</p>]]></description></item><item><title>What is Freedom?</title><link>https://jwheel.org/blog/2021/04/what-is-freedom/</link><pubDate>Mon, 12 Apr 2021 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2021/04/what-is-freedom/</guid><description><![CDATA[<p>When I first saw the letter asking for Richard Stallman and the FSF Board of Directors resignations with merely five signatures, I knew I had to sign. Not because I knew it would be the popular thing to do. But because it was what was true in my heart. Only in a sense of deep empathy could I understand the reasons why <em>it had finally come to this</em>. I signed the letter because as much as I have personally benefited indirectly by the legacy of Mr. Stallman in my life, I feel his continued presence is harmful and more damaging at the forefront of the movement.</p>
<p>I don&rsquo;t say that casually either. I have involuntarily found Open Source as my calling. Or my people. I contribute to Open Source because I love to collaborate and work together with other people. This challenges me. It humbles me in a way that I know I can always learn something new from someone else. For this, Open Source and Free Software have enriched my life. They have also given me, again involuntarily, an odd but productive way of coping with my own mental health issues, anxiety, and depression.</p>
<p>So how do I make sense of the emotions and feelings I have now? How do I untangle this complicated web of events and reactions by other people? To ignore it doesn&rsquo;t seem possible. If I remove emotion, I am left with a purely rational motive to involve myself in this contemporary issue. My work, profession, and career goals are directly affected by however this discussion goes. There is no way out for me. It&rsquo;s my job, so I have to care. But if you add emotions back in, to stand still and remain idle is heartbreaking. To do nothing is to commit to defeat. Resignation. The darkness.</p>
<p>Yet what is there to do? The only thing Stallman ever directly gave to me in life was an email explaining elegantly how there was nothing he could do for the Minecraft GPL community fiasco. At a time when I was so personally lost as I saw <a href="https://jwfblog.wpenginepowered.com/2020/04/open-source-minecraft-bukkit-gpl/">a community I love tear itself apart</a>, he stood by idly as the so-called steward of these licenses that I was just too naïve to believe in. That experience to me now is amplified in the light of the much more egregious things he is accused of.</p>
<p>So, the Free Software Foundation welcomes Richard Matthew Stallman back to its board. Wonderful. Congratulations Mr. Stallman. I am going to pause for a moment of sadness and hurt as I contemplate the impact of this moment on our fragile movement, which has much bigger enemies today than it has in its 40 year legacy. But then…</p>
<p>I will move on. Because we have to. The only way is forward.</p>]]></description></item><item><title>How Mozilla Open Source Archetypes influence UNICEF Open Source Mentorship</title><link>https://jwheel.org/blog/2020/11/open-source-archetypes-unicef-open-source/</link><pubDate>Tue, 10 Nov 2020 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2020/11/open-source-archetypes-unicef-open-source/</guid><description><![CDATA[<p>In May 2018, Mozilla and Open Tech Strategies released a 40-page report titled, &ldquo;<em>Open Source Archetypes</em>&rdquo;. This blog post is a recap of how this report influences the Open Source Mentorship programme I lead at the UNICEF Innovation Fund.</p>
<p>I joined the UNICEF Innovation team in June 2020, although this is <a href="https://jwfblog.wpenginepowered.com/2018/02/unicef-internship/">not the first time</a> I have worked with UNICEF Innovation. I have had <a href="https://www.unicef.org/innovation/stories/unicefs-open-source-approach-innovation">some opportunity</a> to write about Open Source, but my personal blog has been quiet! So, this felt like the right opportunity to talk about what I am up to these days.</p>
<p>The <em>Open Source Archetypes</em> report (<em>below</em>) provides nine archetypes common among Open Source projects and communities. These archetypes provide a common language and perspective to think about how to capture the most value of Open Source in various contexts.</p>
<p><a href="/docs/Open-Source-Archetypes-Mozilla-Open-Tech-Strategies-May-2018.pdf">Open Source Archetypes (May 2018)</a><a href="/docs/Open-Source-Archetypes-Mozilla-Open-Tech-Strategies-May-2018.pdf">Download</a></p>
<p>This article covers the following topics:</p>
<ol>
<li>How <em>Open Source Archetypes</em> align with my experience</li>
<li>How I use <em>Open Source Archetypes</em> at UNICEF</li>
<li>Unanswered questions</li>
</ol>

<h2 id="how-open-source-archetypes-align-with-my-experience">How <em>Open Source Archetypes</em> align with my experience&nbsp;<a class="hanchor" href="#how-open-source-archetypes-align-with-my-experience" aria-label="Anchor link for: How Open Source Archetypes align with my experience">🔗</a></h2>
<p>The <em>Open Source Archetypes</em> report is useful to me because it aligns with my own experiences and encounters with common Free and Open Source Software projects. An advantage of taking my alma mater&rsquo;s <a href="https://www.rit.edu/study/free-and-open-source-software-and-free-culture-minor">Free and Open Source Software and Free Culture Minor</a> is experiencing what real Open Source projects are like long before I entered the industry. The projects and organizations I contributed to and interacted with all ran their projects in one of the nine models identified in the report.</p>
<p>The <em>Open Source Archetypes</em> report speaks to my personal experience either using or contributing to projects like <a href="https://jwheel.org/#fedora">Fedora</a>, <a href="https://github.com/kubernetes/minikube/commits?author=justwheel">Kubernetes</a>, <a href="https://www.spigotmc.org/threads/its-been-an-amazing-three-years.185023/">SpigotMC</a>, <a href="https://musicbrainz.org/user/jflory/edits">MusicBrainz</a>, and various independent projects. <strong>The value of Open Source for any project is in meeting the goals of the intended audience.</strong> By itself, &ldquo;Open Source&rdquo; is a broad term, even if it does have a <a href="https://opensource.org/osd-annotated">legal definition</a>. My experiences taught me the importance of how different Open Source projects meet the needs of different audiences, or even different combinations and balances of audiences. The <em>Open Source Archetypes</em> report creates language for something I previously only understood through direct experience.</p>
<p>When I first read the report earlier in 2020, I knew it was relevant to my work. But how could I begin to integrate it into the Open Source Mentorship programme I manage for the UNICEF Innovation Fund?</p>

<h2 id="how-i-use-open-source-archetypes-at-unicef">How I use <em>Open Source Archetypes</em> at UNICEF&nbsp;<a class="hanchor" href="#how-i-use-open-source-archetypes-at-unicef" aria-label="Anchor link for: How I use Open Source Archetypes at UNICEF">🔗</a></h2>
<p>The <a href="https://unicefinnovationfund.org/">UNICEF Innovation Fund</a> provides early stage funding and support to frontier technology solutions that benefit children and the world. Most teams in the Innovation Fund are from countries where UNICEF has an <a href="https://www.unicef.org/about/execboard/files/CPDs_ending_in_2021-EN-2020.10.05.pdf">ongoing country programme</a>.</p>
<p>A requirement for solutions we fund is that they must be Open Source. I have seen many different types of projects and business models since I started working as a <a href="https://jwheel.org/#librecorps">part-time consultant</a> for UNICEF in 2018. As exciting as this is, it was challenging to understand the best way of supporting each team and their Open Source projects. Each team and project had differences unrelated to their source code, but closely tied to their business models and impact they wanted to have through their work.</p>
<p>So, the <em>Open Source Archetypes</em> report have me language. It gave me examples and explanations of how Open Source can work to teams who had little to no prior experience of Working Open. I take the unique context and details I understand about each team I work with, and contextualize what they are doing compared to the different models in the report.</p>
<p>The feedback I received so far on the report with the 15+ teams I currently work with is mostly positive. Some teams exclaimed this report was what they wish could have read months before because it resolved many of their doubts. Others were more overwhelmed, and needed extra time to read and review.</p>
<p>For my role as a mentor, the Open Source Archetypes report gives me cues for how to best support and direct each team I work with. The task of building an Open Source community or participating in an existing one is not a small task. Whether it is documentation, project management, quality assurance and testing, or community engagement, I have yet to see any small team accomplish all of these things at once. So, identifying which archetype a team best identifies with gives me a cue to guide the teams on their path forward. It gives me context for how to make Open Source something that works for them instead of against them.</p>

<h2 id="unanswered-questions">Unanswered questions&nbsp;<a class="hanchor" href="#unanswered-questions" aria-label="Anchor link for: Unanswered questions">🔗</a></h2>
<p>I have great appreciation and gratitude for the folks at Mozilla and Open Tech Strategies who compiled this report. But it was written over two years ago, and like all things in life, things can change. So, while I look comfortably from the position of hindsight, there are some critiques and missing components to the Open Source Archetypes reports.</p>
<p>My unanswered questions are below.</p>

<h3 id="does-the-linux-kernel-and-subsequently-linux-distributions-represent-another-unwritten-archetype">Does the Linux kernel (and subsequently, Linux distributions) represent another unwritten archetype?&nbsp;<a class="hanchor" href="#does-the-linux-kernel-and-subsequently-linux-distributions-represent-another-unwritten-archetype" aria-label="Anchor link for: Does the Linux kernel (and subsequently, Linux distributions) represent another unwritten archetype?">🔗</a></h3>
<p>The report explicitly avoided using the Linux kernel as the basis for any archetype:</p>
<blockquote>
<p>In some ways the Linux kernel project could be considered “Wide Open”. However, both technically and culturally, Linux kernel development is sui generis and we have deliberately avoided using it as the basis for any archetype.</p>
<p><em>Open Source Archetypes</em>, Page 17</p>
</blockquote>
<p>Contextualizing a project like Linux is hard. There is a lot of history to a project that first launched over email in 1991. There are many &ldquo;yes, but&quot;s about decisions made 10 or even 25 years ago that would not replay the same way in 2020.</p>
<p>Yet this is important work. Linux represents not just the kernel, but also large, decentralized sub-units of other systems that integrate the kernel in order to make it useful (e.g. Ubuntu, Fedora, Debian, Arch Linux, you name it). These sub-communities include large entities and corporations, spanning multiple countries and organizations of various sizes.</p>
<p>The Linux kernel communities are worthy of a deeper look, possibly in order to define a new archetype.</p>

<h3 id="how-can-open-source-archetypes-better-fit-the-socialhumanitarian-sector">How can Open Source Archetypes better fit the social/humanitarian sector?&nbsp;<a class="hanchor" href="#how-can-open-source-archetypes-better-fit-the-socialhumanitarian-sector" aria-label="Anchor link for: How can Open Source Archetypes better fit the social/humanitarian sector?">🔗</a></h3>
<p>The archetypes shared in the report largely focus on business sustainability. In other words, the report is biased towards Mozilla&rsquo;s interest in funding the research in order to better understand how to support a commercially-successful Open Source project. To me, there seems like a gap in models that often work for Open Source projects perhaps like <a href="https://ureport.in/about/">U-Report</a> and <a href="https://www.ushahidi.com/about">Ushahidi</a>.</p>
<p>This is an area of interest to me, and likely others in the UN and NGO space. The report could do more to address these kinds of projects.</p>

<h2 id="how-would-you-teach-open-source">How would you teach Open Source?&nbsp;<a class="hanchor" href="#how-would-you-teach-open-source" aria-label="Anchor link for: How would you teach Open Source?">🔗</a></h2>
<p>To conclude, the Open Source Archetypes report is an invaluable tool that provides me language and context for teaching others about Free and Open Source Software.</p>
<p>How would you teach Open Source? What models, research, or tools would you use to inform an Open Source mentorship or education programme? Share your thoughts below in the comments!</p>]]></description></item><item><title>Hacktoberfest 2020 with TeleIRC</title><link>https://jwheel.org/blog/2020/10/hacktoberfest-2020-with-teleirc/</link><pubDate>Mon, 12 Oct 2020 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2020/10/hacktoberfest-2020-with-teleirc/</guid><description><![CDATA[<p>October is here! If you contribute to Open Source projects, you might know that October is the month of Hacktoberfest. <a href="https://hacktoberfest.digitalocean.com/">DigitalOcean teams up</a> with different partners each year to send a t-shirt (or plant a tree on your behalf) for anyone who makes four GitHub Pull Requests in October. And guess what? TeleIRC is a participating project for you to get your Hacktoberfest t-shirt or tree!</p>
<p>This post identifies specific tasks the TeleIRC team identified as &ldquo;good first issues&rdquo; for Hacktoberfest hackers. They are in order of least difficult to most difficult. Golang developers especially are encouraged to participate!</p>

<h2 id="why-work-on-teleirc-for-hacktoberfest">Why work on TeleIRC for Hacktoberfest?&nbsp;<a class="hanchor" href="#why-work-on-teleirc-for-hacktoberfest" aria-label="Anchor link for: Why work on TeleIRC for Hacktoberfest?">🔗</a></h2>
<p>Before sharing how you can contribute for Hacktoberfest, what about <em>why</em> you should contribute?</p>
<p>TeleIRC originally launched in 2016. Since then, we have <a href="https://jwfblog.wpenginepowered.com/tag/teleirc/">built up a community of users</a> around the world. TeleIRC is also used in other larger Open Source projects like the Fedora Project and LibreOffice! Of course, it is still used in the Rochester Institute of Technology community where it was first developed.</p>
<p>Working on TeleIRC means you can contribute to a project that is actually used in the real world. Hundreds of user communities, some even the size of thousands of people, use TeleIRC. Your improvements and changes will help the many downstream users of our project. (P.S. – See the full list of <a href="https://docs.teleirc.com/en/latest/about/who-uses-teleirc/">who uses TeleIRC</a> in our docs!)</p>
<p>With that out of the way… let&rsquo;s talk about what there is to do!</p>

<h2 id="1-large-messages-go-to-a-pastebin">#1: Large messages go to a pastebin&nbsp;<a class="hanchor" href="#1-large-messages-go-to-a-pastebin" aria-label="Anchor link for: #1: Large messages go to a pastebin">🔗</a></h2>
<p>This corresponds to <a href="https://github.com/RITlug/teleirc/issues/56">RITlug/teleirc#56</a>.</p>
<ul>
<li><strong>Goal</strong>: When a Telegram user writes a single line that exceeds the maximum number of characters for an IRC message (512 characters, per <a href="https://www.rfc-editor.org/rfc/rfc1459.html#section-2.3">RFC 1459, section 2.3</a>), send the string to a pastebin service.</li>
<li><strong>Success criteria</strong>: Any line greater than 512 characters is sent to a pastebin-like service.</li>
<li><strong>What we think</strong>: Note the difference between &ldquo;lines&rdquo; and &ldquo;messages&rdquo;. Telegram users can add line breaks to messages. TeleIRC should respect those line breaks as new IRC messages. So, only a single line that exceeds the maximum should go to a pastebin-like service.</li>
</ul>

<h2 id="2-telegram-poll-handler">#2: Telegram Poll handler&nbsp;<a class="hanchor" href="#2-telegram-poll-handler" aria-label="Anchor link for: #2: Telegram Poll handler">🔗</a></h2>
<p>This corresponds to <a href="https://github.com/RITlug/teleirc/issues/267">RITlug/teleirc#267</a>.</p>
<ul>
<li><strong>Goal</strong>: Send text representations of Telegram Polls to IRC. Currently, Polls are ignored by TeleIRC and do not appear in any way on IRC.</li>
<li><strong>Success criteria</strong>: If a Telegram user sends a Poll to a group, a text representation should appear in IRC.</li>
<li><strong>What we think</strong>: IRC users will not be able to participate in Polls. This is a platform limitation. However, IRC users should get some context about what a Poll includes, e.g. what the question is and what answer choices are available.</li>
</ul>

<h2 id="3-support-more-encoding-types-eg-cp1251">#3: Support more encoding types (e.g. CP1251)&nbsp;<a class="hanchor" href="#3-support-more-encoding-types-eg-cp1251" aria-label="Anchor link for: #3: Support more encoding types (e.g. CP1251)">🔗</a></h2>
<p>This corresponds to <a href="https://github.com/RITlug/teleirc/issues/332">RITlug/teleirc#332</a>.</p>
<ul>
<li><strong>Goal</strong>: Support more string encoding types than UTF-8.</li>
<li><strong>Success criteria</strong>: If a Telegram user writes a message in Cyrillic script, it should appear in Cyrillic script on IRC (if the server supports it, e.g. CP1251).</li>
<li><strong>What we think</strong>: This is one of the toughest issues we have and requires knowledge about string encoding methods. The current core developers are native English speakers and we do not use other languages that have non-Latin script. The GitHub issue has more info, but it will need additional research or knowledge about string encoding.</li>
</ul>

<h2 id="need-hacktoberfest-help-come-talk-to-us">Need Hacktoberfest help? Come talk to us!&nbsp;<a class="hanchor" href="#need-hacktoberfest-help-come-talk-to-us" aria-label="Anchor link for: Need Hacktoberfest help? Come talk to us!">🔗</a></h2>
<p><strong>Want to work on any of these?</strong> Add a new comment to the GitHub Issue and let us know you are interested in working on it.</p>
<p><strong>Have questions about the project or getting started?</strong> Come talk with the TeleIRC team! Of course, you can find us both on IRC (<code>#rit-lug-teleirc</code> on Freenode IRC) and Telegram (<a href="https://t.me/teleirc">@teleirc</a>).</p>
<p>Additionally, the TeleIRC team meets virtually <strong>every Sunday at 11:00 U.S. EDT / 15:00 UTC</strong>. Ask us for a calendar invite in our team chat if you would like one!</p>]]></description></item><item><title>Facilitation, collaboration, and webcams: A story about Principles of Authentic Participation</title><link>https://jwheel.org/blog/2020/06/facilitation-collaboration-principles-authentic-participation/</link><pubDate>Fri, 12 Jun 2020 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2020/06/facilitation-collaboration-principles-authentic-participation/</guid><description><![CDATA[<p>This is the story about the facilitation of the <a href="https://authentic-participation.readthedocs.io/">Principles of Authentic Participation</a>.</p>
<p>This post does not describe what the Principles are (click that link to learn more about them). This post describes the story behind the Principles, and how our <a href="https://sustainoss.org/working-groups/authentic-participation/">Sustain Working Group</a> worked together over three months of virtual facilitation during the COVID–19 crisis to build these Principles.</p>

<h2 id="overview">Overview&nbsp;<a class="hanchor" href="#overview" aria-label="Anchor link for: Overview">🔗</a></h2>
<p>This blog post is a story, or perhaps open source lore. So, here is the abridged summary:</p>
<ol>
<li><strong>The Sticky Idea</strong>: How did a discussion topic at a one-day open source sustainability conference evolve into a three-month extended collaboration?</li>
<li><strong>Facilitation, Roosevelt-style</strong>: The people are here. How do you facilitate a conversation with no scope and few bounds?</li>
<li><strong>Is there a next chapter to this story?</strong>: The Working Group is winding down. What happens to the Principles next?</li>
</ol>
<p>If you are hooked, read on.</p>

<h2 id="the-sticky-idea">The Sticky Idea&nbsp;<a class="hanchor" href="#the-sticky-idea" aria-label="Anchor link for: The Sticky Idea">🔗</a></h2>
<p>How does a discussion topic at a one-day conference evolve into an inter-organizational, international collaboration that spans three months?</p>
<p>When the accountability and transparency discussion groups formed at <a href="https://jwfblog.wpenginepowered.com/2020/02/sustain-oss-2020-quick-rewind/">Sustain Summit 2020</a>, none of us knew what would come after the event. Not to mention, there were several different sustainability topics explored at the Summit.</p>
<p>So, the conversation about corporate accountability was about the same as every other conversation during that morning: <strong>someone was motivated enough to step up and say, &ldquo;I&rsquo;ll do it – I&rsquo;ll facilitate this conversation!&rdquo;</strong></p>

<h3 id="open-source-accountability-goals">Open Source Accountability Goals&nbsp;<a class="hanchor" href="#open-source-accountability-goals" aria-label="Anchor link for: Open Source Accountability Goals">🔗</a></h3>
<p>Duane O&rsquo;Brien volunteered to lead facilitation on defining goals for open source accountability. Duane proposed four goals to iterate on in the Summit break-out groups:</p>
<ol>
<li>Set and publish a goal for open source contribution relative to value capture</li>
<li>Adhere to principles of authentic participation</li>
<li>Publish documentation of open source policies, processes, and project governance</li>
<li>Well defined reporting process that is publicly available</li>
</ol>
<p>The morning discussions broadly focused on these goals. After the ice was broken and conversation was flowing, themes and patterns emerged in the stories we shared with each other. Later that day, <a href="https://aspirationtech.org/about/people">Allen Gunn</a> asked me if I would lead an afternoon discussion session. The second goal, these principles of authentic participation, were personally interesting to me, and the morning group was engaged too. So I said, &ldquo;Yes, I&rsquo;ll do it!&rdquo; Even though I did not really have any idea what I was going to do yet.</p>

<h3 id="facilitation-of-authentic-participation-discussion">Facilitation of Authentic Participation discussion&nbsp;<a class="hanchor" href="#facilitation-of-authentic-participation-discussion" aria-label="Anchor link for: Facilitation of Authentic Participation discussion">🔗</a></h3>
<p>After lunch, I gathered folks for the discussion group to discuss what authentic participation means. If we could propose a basic set of principles that we agree on, could this be a useful tool for the pain points of stories shared in the morning session?</p>
<p>The afternoon discussion was insightful, but lacked firm conclusions. We had great ideas and lots of stories, but nothing to tie them together. I collected email addresses of folks who wanted to continue engaging on the Principles of Authentic Participation. However, I wasn&rsquo;t sure what the next step would be at the time.</p>
<p>At the Summit, I committed to facilitation of a public Discourse forum discussion, but some attendees voiced that Discourse was not accessible for them. To compromise without exhausting myself across <em>too</em> many platforms, I promised to host a few online discussions for folks to gather and talk about these things again later.</p>
<p>The embers were hot on this discussion at the Sustain Summit. But it was still just embers. How do we get these embers to &ldquo;spark&rdquo; into something bigger? Enter the <strong>Fireside Chats</strong>.</p>

<h2 id="facilitation-roosevelt-style">Facilitation, Roosevelt-style&nbsp;<a class="hanchor" href="#facilitation-roosevelt-style" aria-label="Anchor link for: Facilitation, Roosevelt-style">🔗</a></h2>
<p>So, skip ahead a couple weeks. I was ready to push the conversation forward. The time was right for the first follow-up email to the discussion group participants. As promised, I opened a Discourse discussion that summarized our notes from the conference and asked open-ended questions. Later on, I announced the first of four Fireside Chats. The <strong>Fireside Chats</strong> became the primary vehicle of collaboration for the working group.</p>
<p>Text-based communications are my preference. But video?? I would have to swallow my introverted shyness if I was going to lead this. I never facilitated an online discussion group before. There were also not many public examples to learn from either. The style I took to the Fireside Chats was mostly my own. I relied on my past experience of facilitating open source project meetings and development to drive these Fireside Chats. And I borrowed a little inspiration from former American president Franklin D. <a href="https://en.wikipedia.org/wiki/Fireside_chats">Roosevelt&rsquo;s fireside chats</a> during the 1930s/1940s.</p>
<p>For the first Fireside Chat on 2020 February 28th, I had no idea what I was doing. I <a href="https://discourse.sustainoss.org/t/principles-of-authentic-participation-continuing-the-sustain-conversation/284/2?u=jwf">prepared a loose agenda</a>, but I left it broad so people could bring their own interests and passions into the conversation. I figured doing this would allow people to bring their own needs, desires, and wants to the conversation. It was unrealistic to expect a collaboration driven by my own motivations.</p>
<p>A successful collaboration requires all participants to have an opportunity to satisfy their own personal motivations for showing up in the first place. So, my approach centered our collaborative work on the group and not just myself, to avoid a high initial interest that dwindles down over time.</p>

<h3 id="how-did-facilitation-start">How did facilitation start?&nbsp;<a class="hanchor" href="#how-did-facilitation-start" aria-label="Anchor link for: How did facilitation start?">🔗</a></h3>
<p>The first Fireside Chat was exploratory. It was our first time talking about the Principles since the Sustain Summit. We caught back up on where we left off, detailed what we wanted to get out of this collaboration, and began scoping out what we thought we could accomplish together.</p>
<p>Although the first chat was mostly unstructured, it was essential to to identify themes and ideas that led to more focused, structured discussions for the next three Fireside Chats. The Discourse thread was also useful as an accessory for the Fireside Chats. I published notes from each Fireside Chat on the Discourse thread, and there was some asynchronous discussion between Fireside Chats.</p>
<p>Beyond the first Fireside Chat, the agendas became easier for me to write and the feedback became more focused. Fortunately, most of this work happened in public on the Discourse thread. So, if you are curious for more details on how the final three Fireside Chats went, take a look at the <a href="https://discourse.sustainoss.org/t/principles-of-authentic-participation-continuing-the-sustain-conversation/284">discussion thread</a>.</p>

<h2 id="is-there-a-next-chapter-to-this-story">Is there a next chapter to this story?&nbsp;<a class="hanchor" href="#is-there-a-next-chapter-to-this-story" aria-label="Anchor link for: Is there a next chapter to this story?">🔗</a></h2>
<p>For now, the Principles of Authentic Participation Working Group is going dormant. We met our original goal of drafting some basic principles.</p>
<p>So, now what happens? So, let&rsquo;s try to predict the future! (That can&rsquo;t be <em>that</em> hard, right?)</p>
<p>My hope is that the Principles of Authentic Participation leads to more story-telling about what it means to authentically contribute to open source, whether you are an individual or an organization. To help curate the stories, I created a <a href="https://authentic-participation.readthedocs.io/meta/contribute-story/">template</a> to encourage folks to share them with us. The template provides question that makes it easy for a maintainer to copy and paste the story into our published <a href="https://authentic-participation.readthedocs.io/advocate-kit/stories/">Principles of Authentic Participation website</a>.</p>
<p>Whether this hope comes true or not, we will see. But the Principles have a life of their own now. It doesn&rsquo;t mean the Working Group will never meet again, or that we won&rsquo;t revisit these ideas over time. But these Principles are now the &ldquo;property&rdquo; of the community to continue building. I will continue to participate where I can to curate stories about the Principles.</p>

<h2 id="closing-thoughts">Closing thoughts&nbsp;<a class="hanchor" href="#closing-thoughts" aria-label="Anchor link for: Closing thoughts">🔗</a></h2>
<p>My hope in sharing this story is to help other facilitators and activists in the open source world approach digital-only organizing. Digital facilitation and organization is a skill we are all learning, for better or worse, in a COVID-19 world. But it isn&rsquo;t a new skill. Lots of folks have been doing this for a long time, especially in the digital-first world of open source.</p>
<p>So, I hope this paints a picture of how we pulled off the Principles of Authentic Participation and how others can take what we did and improve on our processes.</p>
<p>It is possible to work collaboratively with new people on digital initiatives across different backgrounds and sectors. Remote facilitation is someone being brave enough to step up and lead, even if they have no idea what they are doing. After all… isn&rsquo;t that what many other white American men like me do anyways? So can you.</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="https://jwfblog.wpenginepowered.com/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="https://jwfblog.wpenginepowered.com/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="https://jwfblog.wpenginepowered.com/2020/04/copyleftconf-2020-quick-rewind/">copyleft licensing conference</a> I went to <a href="https://jwfblog.wpenginepowered.com/tag/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>CHAOSScon EU 2020: play by play</title><link>https://jwheel.org/blog/2020/02/chaosscon-eu-2020-play-by-play/</link><pubDate>Tue, 25 Feb 2020 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2020/02/chaosscon-eu-2020-play-by-play/</guid><description><![CDATA[<p>CHAOSScon EU 2020 took place on Friday, 31 January, 2020 in Brussels, Belgium (the day after <a href="https://jwfblog.wpenginepowered.com/2020/02/sustain-oss-2020-quick-rewind/">Sustain OSS 2020</a>):</p>
<blockquote>
<p>Learn about open source project health metrics and tools used by open source projects, communities, and engineering teams to track and analyze their community work. This conference will provide a venue for discussing open source project health, CHAOSS updates, use cases, and hands-on workshops for developers, community managers, project managers, and anyone interested in measuring open source project health. We will also share insights from the CHAOSS working groups on Diversity and Inclusion, Evolution, Risk, Value, and Common Metrics.</p>
<p><a href="https://web.archive.org/web/20200219170041/https://chaoss.community/chaosscon-2020-eu/">chaoss.community/chaosscon-2020-eu/</a></p>
</blockquote>
<p>This is my second time attending CHAOSScon. I attended on behalf of <a href="https://fossrit.github.io/librecorps/">RIT LibreCorps</a> to represent our engagement with the <a href="https://www.unicef.org/innovation/">UNICEF Office of Innovation</a> and the <a href="https://unicefinnovationfund.org/">Innovation Fund</a>. For CHAOSScon EU 2020, I arrived hoping to learn more about effective metric collection strategies for open source communities and also get a deeper understanding of the technology behind <a href="https://chaoss.github.io/grimoirelab/">GrimoireLab</a>.</p>

<h2 id="sessions-play-by-play">Sessions: Play-by-play&nbsp;<a class="hanchor" href="#sessions-play-by-play" aria-label="Anchor link for: Sessions: Play-by-play">🔗</a></h2>
<p>Event reports take many forms. My form is an expanded version of my session notes along with key takeaways. Said another way, my event report is biased towards what is interesting to me. You can also skim the headings to find what interests you.</p>
<p>Also, I live-tweeted several sessions of CHAOSScon EU 2020, so some sections include tweet excerpts with pictures.</p>

<h3 id="ethics-what-you-know--what-you-dont-know">Ethics: What You Know &amp; What You Don&rsquo;t Know&nbsp;<a class="hanchor" href="#ethics-what-you-know--what-you-dont-know" aria-label="Anchor link for: Ethics: What You Know &amp; What You Don&rsquo;t Know">🔗</a></h3>
<blockquote>
<p>Metrics give us a lot of insight into what&rsquo;s going on with our projects &ndash; but only if we have enough context. The catch is that personal biases and pre-conceptions are extremely hard to filter for so no one person can see everything. Those gaps means that even the most well-meaning of us could end up doing more harm than good. In this talk, I&rsquo;ll share a few examples of the ways human brains make assumptions, some of our typical blind spots and how incomplete data can cause harm when deployed without any checks. For folks who collect, analyze and ultimately make mission critical decisions with metrics, the challenge is to constantly maintain a bit of healthy skepticism of what the numbers seem to be telling us.</p>
<p><a href="https://chaoss.community/chaosscon-2020-eu/#user-content-deb-nicholson">Deb Nicholson</a></p>
</blockquote>
<p>Deb&rsquo;s session was a great opener to a day focused on metrics and automated reporting. Her talk underscored unconscious bias and the ways poorly-designed metrics fail us. We should take an active approach to questioning our perspectives and take suggestions with grace.</p>
<p>During Q&amp;A, my colleague <a href="https://nolski.rocks/">Mike</a> asked for advice on pushing back on management when they ask for bad metrics. Deb suggested a clever strategy to respond in these situations:</p>
<ol>
<li>Provide the metric asked for</li>
<li>Provide a metric that contradicts what was asked for</li>
<li>Provide the metric they should have asked for</li>
</ol>

<h3 id="heat-light-and-love-telling-twitters-open-source-program-offices-story">Heat, Light, and Love: Telling Twitter&rsquo;s Open Source Program Office&rsquo;s Story&nbsp;<a class="hanchor" href="#heat-light-and-love-telling-twitters-open-source-program-offices-story" aria-label="Anchor link for: Heat, Light, and Love: Telling Twitter&rsquo;s Open Source Program Office&rsquo;s Story">🔗</a></h3>
<blockquote>
<p>Making it simple to trust, ship, and grow open source at Twitter demanded visibility into contribution trends that were not readily available. Twitter&rsquo;s open source program office and the Augur project collaborated with CHAOSS using student interns from Google&rsquo;s Summer of Code, Twitter&rsquo;s intern program and the University of Missouri. First, this talk describes Twitter&rsquo;s engaging interface design and its fit to the needs of Open Source stakeholders within Twitter, but also outside the open source program office. Second, we describe how an open API and data collection tool, Augur, evolved in close collaboration with Twitter.</p>
<p><a href="https://chaoss.community/chaosscon-2020-eu/#user-content-sean-goggins">Sean Goggins</a> &amp; <a href="https://chaoss.community/chaosscon-2020-eu/#user-content-remy-decausemaker">Remy DeCausemaker</a></p>
</blockquote>
<p>This one inspired me. It represented a dream of mine for many open source communities. Sean and Remy presented on three years of building an <a href="https://twitter.github.io/year-in-review">automated metrics visualization site</a> with <a href="https://chaoss.github.io/grimoirelab/">GrimoireLab</a> and <a href="https://github.com/chaoss/augur">Augur</a>. The visualization was powerful to communicate the value of open source engagement, participation, and investment to internal and external stakeholders.</p>
<p>The work was based on a philosophy familiar to me from working with Remy years ago in the Fedora Project community:</p>
<p>
<figure>
  <img src="/blog/2020/02/Screenshot_2020-02-21-Twitter-Open-Source.png" alt="From CHAOSScon EU 2020: Twitter&rsquo;s open source philosophy: heat, light, and love" loading="lazy">
  <figcaption>Twitter’s open source philosophy: heat, light, and love</figcaption>
</figure>
</p>
<p>If we are speaking in metaphors, one way to extend Remy&rsquo;s &ldquo;light&rdquo; metaphor is tying in a theatrical concept: <strong>stage lights and backstage lights</strong>.</p>
<p>Stage lights are the metrics and insights to present out to the world. They are front and center! These insights validate your mission to an external audience.</p>
<p>Backstage lights are for an internal audience. These metrics and insights illuminate the inside of an organization and build understanding of who and what is there. These are useful to validate work and efforts to funders, or perhaps your CFO.</p>
<p>This talk served as inspiration for something I hope to explore later in 2020.</p>

<h3 id="measuring-culture">Measuring Culture&nbsp;<a class="hanchor" href="#measuring-culture" aria-label="Anchor link for: Measuring Culture">🔗</a></h3>
<blockquote>
<p>They say you can’t be certain of anything unless it can be measured – so what about culture? We know it exists and can be passed on to others, so there must be a way to measure it. Using Apache Kibble we attempt to look for cultural indicators at the Apache Software Foundation, set a cultural benchmark then match real Apache projects against it. In theory we would expect a perfect match but as the results show, culture isn’t that simple.</p>
<p><a href="https://chaoss.community/chaosscon-2020-eu/#user-content-sharan-foga">Sharan Foga</a></p>
</blockquote>

<blockquote>
<p>Sharan introduced five factors to measure culture: <strong>bus factor, contributor experience, contributor retention, sentiment analysis, and key phrase extraction</strong>.</p>
</blockquote>
<p>Sharan defined culture as what we believe <em>and</em> what we do. So, she introduced five indicators for open source communities to measure culture. These came from learnings at the <a href="https://apache.org/foundation/">Apache Software Foundation</a>&rsquo;s <a href="https://kibble.apache.org/">Kibble project</a>:</p>
<ul>
<li><strong>Pony (&ldquo;bus&rdquo;) factor</strong>:
<ul>
<li>&ldquo;Committership&rdquo;</li>
<li>Authorship</li>
<li>Meta factor (# of organizations involved)</li>
</ul>
</li>
<li><strong>Contributor experience / contributor retention</strong>:
<ul>
<li>People who (re)joined</li>
<li>People who quit (why?)</li>
<li>People retained</li>
<li>Active contributors</li>
<li>Cross the above over time (e.g. # of months/years involved)</li>
</ul>
</li>
<li><strong>Mood, or sentiment analysis</strong>: Look for these moods…
<ul>
<li>Trust</li>
<li>Surprise</li>
<li>Neutrality</li>
<li>Sadness</li>
<li>Positivity</li>
<li>Anger</li>
<li>Negativity</li>
<li>Joy</li>
<li>Anticipation</li>
<li>Disgust</li>
<li>Fear</li>
</ul>
</li>
<li><strong>Key phrase analysis</strong>: Understand community jargon (e.g. if &ldquo;+1&rdquo; is used to indicate agreement)</li>
</ul>
<p>I had two key takeaways. First, <strong>nothing matches completely</strong>, so don&rsquo;t over-rely on one factor or metric. Second, <strong>identify <em>your</em> baseline indicators and iterate</strong> on those. For the above indicators, maybe these are specific to Apache projects. Maybe they apply to your projects too… or maybe they don&rsquo;t!</p>

<h3 id="meet-cauldron-your-saas-software-development-analytics-solution">Meet Cauldron! Your SaaS Software Development Analytics solution&nbsp;<a class="hanchor" href="#meet-cauldron-your-saas-software-development-analytics-solution" aria-label="Anchor link for: Meet Cauldron! Your SaaS Software Development Analytics solution">🔗</a></h3>
<blockquote>
<p>Cauldron is a brand-new free <strong>open source SaaS</strong> able to analyze software development community and processes. It relies on <a href="https://chaoss.github.io/grimoirelab">CHAOSS GrimoireLab</a> to collect and process data from different tools used in software development such as git, GitLab, GitHub and/or social platforms like Meetup, and <a href="https://opendistro.github.io/for-elasticsearch/"><strong>Open Distro for ElasticSearch</strong></a> to store and to display the project data. The talk shows how Cauldron can be easily put into action to analyze the software projects that matter to the attendees, and to get some CHAOSS metrics about them.</p>
<p><a href="https://chaoss.community/chaosscon-2020-eu/#user-content-jose-manrique-lopez-de-la-fuente">Jose Manrique Lopez de la Fuente</a></p>
</blockquote>

<p>I had no written notes other than &ldquo;wow!&rdquo;</p>
<p><em>Finally</em>, Bitergia built a hosted GrimoireLab service, called <a href="https://cauldron.io/"><strong>Cauldron</strong></a>. Cauldron takes the pain out of hosting your own GrimoireLab infrastructure. It is in early alpha and does not support all the data sources available in GrimoireLab yet, but it is promising.</p>
<p>In the <a href="https://fossrit.github.io/about/">FOSS@MAGIC community</a>, we want GrimoireLab to understand our open source community at the <a href="https://www.rit.edu/">Rochester Institute of Technology</a>, home of the <a href="https://www.rit.edu/study/free-and-open-source-software-and-free-culture-minor">first academic minor</a> in free/open source. But as I go deeper, I realize GrimoireLab is very complex. Since my contract with RIT ends in a month, I want to leave something sustainable for my successors. Cauldron seems like a valid option.</p>
<p>I have some homework to do!</p>

<h3 id="language-barriers-for-open-source-contributors">Language barriers for open source contributors&nbsp;<a class="hanchor" href="#language-barriers-for-open-source-contributors" aria-label="Anchor link for: Language barriers for open source contributors">🔗</a></h3>
<blockquote>
<p>While open source development is common across the world, projects from countries outside North America and Europe, such as China, have difficulties attracting international contributors. One major reason for this is language differences. The presentation provides an overview of the diversity of non-native English speakers in different open source ecosystems. Furthermore, we will provide results about whether or not those contributors face a language barrier when contributing to open source projects. The presentation concludes with a discussion on how we can create metrics to assess the spoken language diversity in open source communities and how to include those people in the community more easily.</p>
<p><a href="https://chaoss.community/chaosscon-2020-eu/#user-content-isabella-vieira-ferreira">Isabella Vieira Ferreira</a></p>
</blockquote>


<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">Fascinating work from <a href="https://twitter.com/isaferreira_57?ref_src=twsrc%5Etfw">@isaferreira_57</a> on language barrier in <a href="https://twitter.com/hashtag/opensource?src=hash&amp;ref_src=twsrc%5Etfw">#opensource</a>. <a href="https://twitter.com/hashtag/choasscon?src=hash&amp;ref_src=twsrc%5Etfw">#choasscon</a><br><br>Contributing + participating in a project operating in a language (technical too!) that&#39;s not one&#39;s first always require more effort– a useful reminder to be kind and empathetic 💖💖 <a href="https://t.co/3cJ6qWWSsH">https://t.co/3cJ6qWWSsH</a></p>&mdash; Emmy Tsang (@emmy_ft) <a href="https://twitter.com/emmy_ft/status/1223240475395678208?ref_src=twsrc%5Etfw">January 31, 2020</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


<p>Isabella&rsquo;s talk was insightful and challenged my unconscious bias. An interesting insight from two case studies was translators did not transition over time to software development contributions.</p>
<p>I believe a bias exists in open source projects with active localization communities. I have seen project leaders invest in localization efforts as one way to bring new people into a community. While it does bring new people in, there is a subtle implication that &ldquo;bringing new people in&rdquo; means bringing software contributions. That&rsquo;s not always the case. Instead, the value of translation work needs to be quantified beyond just software contributions.</p>
<p>This is especially true for supporting grassroots advocacy communities. Localization may not build your developer community, but it can support stronger local communities in regions where English is not the first language.</p>

<h3 id="metrics-are-more-than-the-sum-of-their-parts">Metrics are more than the sum of their parts&nbsp;<a class="hanchor" href="#metrics-are-more-than-the-sum-of-their-parts" aria-label="Anchor link for: Metrics are more than the sum of their parts">🔗</a></h3>
<blockquote>
<p>We are in a state of Community building that maps success to metrics like lines of code and GitHub stars. I would like us to explore where these metrics fall short on capturing the most significant value of a community, and how we can use other metrics to show the much larger impact Community organizations like Developer Relations (DevRel) can have on a business. This improved process begins with mapping value to business need, pairing it with a community need, and back to the business opportunities. There will be practical advice on how to pitch and position Community, whether you’re a Community Manager, Developer Advocate, or other Developer Relations professional.</p>
<p><a href="https://chaoss.community/chaosscon-2020-eu/#user-content-matt-broberg">Matt Broberg</a></p>
</blockquote>


<p>Matt&rsquo;s CHAOSScon EU 2020 session pitched strategy on communicating the value of developer relations to our organizations. He covered a lot of material and left me many thoughts to reflect on. I look forward to seeing the video recording of this talk to reflect further on integrating his ideas into my day-to-day. The themes of Matt&rsquo;s talk struck a chord with me for challenging advocacy work ahead for me in 2020.</p>

<h3 id="emerging-tech-open-source-scoring-system-etoss">Emerging Tech Open-Source Scoring System (ETOSS)&nbsp;<a class="hanchor" href="#emerging-tech-open-source-scoring-system-etoss" aria-label="Anchor link for: Emerging Tech Open-Source Scoring System (ETOSS)">🔗</a></h3>
<blockquote>
<p>This is a framework used by the UNICEF Innovation Fund, to evaluate and track the strategic position and growth potential of the early stage startups in its portfolio. The focus is on startups building open source frontier tech: Blockchain, Data Science, Artificial Intelligence and Extended Reality. It classifies the startups into four quadrants, based on two dimensions: the software developed (technology), and the financial sustainability of the project (business sustainability).</p>
<p><a href="https://chaoss.community/chaosscon-2020-eu/#user-content-cecilia-chapiro">Cecilia Chapiro</a> &amp; <a href="https://chaoss.community/chaosscon-2020-eu/#user-content-justin-w-flory">Justin Wheeler</a></p>
</blockquote>
<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">.@jflory7: The UNICEF tech KPIs are quite similar to <a href="https://twitter.com/CHAOSSproj?ref_src=twsrc%5Etfw">@CHAOSSproj</a> metrics - there are also business sustainability metric to measure, placing organisations / tech projects on a sustainable and tech scale... <a href="https://twitter.com/hashtag/CHAOSScon?src=hash&amp;ref_src=twsrc%5Etfw">#CHAOSScon</a> <a href="https://t.co/e3M440FMS4">pic.twitter.com/e3M440FMS4</a></p>&mdash; yo yehudi stays away from humans! 🏳️‍🌈 (@yoyehudi) <a href="https://twitter.com/yoyehudi/status/1223246459602194433?ref_src=twsrc%5Etfw">January 31, 2020</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">Interested in getting involved? Contact details for @jflory7 and <a href="https://twitter.com/ceciliachapiro?ref_src=twsrc%5Etfw">@ceciliachapiro</a> here! <a href="https://twitter.com/hashtag/CHAOSScon?src=hash&amp;ref_src=twsrc%5Etfw">#CHAOSScon</a> <a href="https://t.co/jMsfiCK9Rg">pic.twitter.com/jMsfiCK9Rg</a></p>&mdash; yo yehudi stays away from humans! 🏳️‍🌈 (@yoyehudi) <a href="https://twitter.com/yoyehudi/status/1223246907163758599?ref_src=twsrc%5Etfw">January 31, 2020</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">@jflory7 thanks for the great talk, great to hear <a href="https://twitter.com/UNICEFinnovate?ref_src=twsrc%5Etfw">@UNICEFinnovate</a> is actively funding OSS for the greater-good! <a href="https://twitter.com/hashtag/CHAOSScon?src=hash&amp;ref_src=twsrc%5Etfw">#CHAOSScon</a> <a href="https://t.co/g81koSI4Ov">pic.twitter.com/g81koSI4Ov</a></p>&mdash; Farbod Saraf (@farbodsaraf) <a href="https://twitter.com/farbodsaraf/status/1223247589317009409?ref_src=twsrc%5Etfw">January 31, 2020</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"><a href="https://twitter.com/hashtag/opensource?src=hash&amp;ref_src=twsrc%5Etfw">#opensource</a> rubric mentioned by @jflory7 at <a href="https://twitter.com/hashtag/CHAOSScon?src=hash&amp;ref_src=twsrc%5Etfw">#CHAOSScon</a> <a href="https://t.co/U2pIZsgrMz">https://t.co/U2pIZsgrMz</a><br><br>It helped me evaluate the last proposal we received at <a href="https://twitter.com/eLifeInnovation?ref_src=twsrc%5Etfw">@eLifeInnovation</a> 🙌🙌</p>&mdash; Emmy Tsang (@emmy_ft) <a href="https://twitter.com/emmy_ft/status/1223249000058540032?ref_src=twsrc%5Etfw">January 31, 2020</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


<p>Hey, it&rsquo;s me!</p>
<p>My colleague <strong><a href="https://twitter.com/ceciliachapiro">Cecilia Chapiro</a></strong> proposed a session for CHAOSScon EU 2020 on how the <a href="https://unicefinnovationfund.org/">UNICEF Innovation Fund</a> evaluates the health and success of funded open source projects. However, due to travel complications, she was unable to attend. I presented her slides and work on her behalf at CHAOSScon EU 2020.</p>
<p>Many people were excited, if not also surprised, to hear that UNICEF funds humanitarian open source. In Cecilia&rsquo;s evaluation framework, there are two key areas: <strong>business sustainability indicators</strong> and <strong>technology indicators</strong>. There were good questions about how UNICEF measures on business sustainability. I hope to further explore GrimoireLab/Cauldron to better automate how we measure sustainability with industry-standard tools from the open source ecosystem.</p>
<p>I also gave a shout-out to <a href="https://fossrit.github.io/librecorps/">RIT LibreCorps</a> and the <a href="https://opensource.com/article/19/12/humanitarian-startups-open-source">resources we maintain</a> to help UNICEF and the Innovation Fund cohorts build and support sustainable open source projects.</p>
<div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
      <iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube-nocookie.com/embed/t2Lyv6G_fvU?autoplay=0&amp;controls=1&amp;end=0&amp;loop=0&amp;mute=0&amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"></iframe>
    </div>


<h3 id="open-and-reproducible-research-with-community-driven-research-software-metrics">Open and Reproducible Research with Community-driven Research Software Metrics&nbsp;<a class="hanchor" href="#open-and-reproducible-research-with-community-driven-research-software-metrics" aria-label="Anchor link for: Open and Reproducible Research with Community-driven Research Software Metrics">🔗</a></h3>
<blockquote>
<p>What do artificial neural networks, images of the black hole, and SETI@home all have in common? They all trace their roots to research software. In this session, we hope to explore metrics and best practices for evaluating open research software. Research software engineers are evaluated largely based on the numbers of publications and citations. However, metrics based on the number of publications encourage re-creating ‘new’ things or re-implementations instead of reuse, and there are huge variations in existing practices to cite software, meaning software isn&rsquo;t always cited or citations aren’t always captured. Better metrics that reflect the health of research software is crucial to avoid gamification, incentivizing research software engineers to follow best software development practices by recognizing and rewarding their effort appropriately, and ultimately advancing open science and improving the reproducibility of research.</p>
<p><a href="https://chaoss.community/chaosscon-2020-eu/#user-content-yo-yehudi">Yo Yehudi</a></p>
</blockquote>

<p>Yo teamed up with <a href="https://twitter.com/emmy_ft">Emmy Tsang</a> and <a href="https://twitter.com/matkuzak">Mateusz Kuzak</a> to deliver this session. I appreciated the audience participation in the second half, which was a creative idea for a session later in the day. It helped revive the conference energy!</p>
<p>Yo and the team captured <a href="https://discourse.sustainoss.org/t/blog-post-that-mentions-sustain-summit-academic-session/286">excellent notes from their time across Brussels</a>, so look there for a deeper dive if this is interesting to you.</p>

<h3 id="diversity--inclusion-badging-program">Diversity &amp; Inclusion Badging Program&nbsp;<a class="hanchor" href="#diversity--inclusion-badging-program" aria-label="Anchor link for: Diversity &amp; Inclusion Badging Program">🔗</a></h3>
<blockquote>
<p>Within IT, open source software exhibits some of the worst D&amp;I. The open source survey run by GitHub states that only 3% of contributors to open source software are female (GitHub, 2017). While open source has made strides in some aspects of D&amp;I, such as event inclusivity (Irwin, 2017) and community engagement to support organizational diversity (Alexander, 2019), work remains. The proposed is aimed at contributing to this positive growth through the development of a D&amp;I badging system. In open source, badges are available for community leaders to publicly display, providing a way for projects to signal their attention to such things as community health and software security. We can draw from this badging work to improve D&amp;I in open source. In this talk, I will discuss complexities associated with D&amp;I metrics and propose a D&amp;I badging system that provides open source communities the ability to make diversity and inclusion within open source projects more transparent.</p>
<p><a href="https://chaoss.community/chaosscon-2020-eu/#user-content-matt-germonprez">Matt Germonprez</a></p>
</blockquote>

<p>First, I must pay my full respect and gratitude to Matt for digging into this topic. It is hard. It is tricky. Nobody I know of is working on this. So, my feedback comes from a place of love because this is an important topic to me too, and I appreciate Matt&rsquo;s work! <strong>Thank you Matt and the <a href="https://chaoss.community/diversity-and-inclusion/">CHAOSS D&amp;I Working Group</a></strong>.</p>

<h4 id="critique-is-a-badging-system-how-to-do-this"><em>Critique</em>: Is a badging system how to do this?&nbsp;<a class="hanchor" href="#critique-is-a-badging-system-how-to-do-this" aria-label="Anchor link for: Critique: Is a badging system how to do this?">🔗</a></h4>
<p>Matt presented a strategy to incentivize organizations and projects to follow best practices for diversity and inclusion (D&amp;I) through a badging system. Organizations embed a badge on their project website or README when following best practices. This provides an easy way for new contributors to understand if a project community is inclusive and values equality before contributing. Since best practices are defined not by a single organization, there is a way to measure if an organization is living up to their commitment to D&amp;I.</p>
<p>However, a badging system seems like a difficult way to practically measure an organization&rsquo;s commitment to D&amp;I. There is a risk for <strong>manipulating trust of the system</strong> at the expense of open source novices. Novices have the least context and direct experience to see through an unauthentic commitment. Also, <strong>ongoing compliance seems difficult to enforce over time</strong> with a badging system. Maybe initially an organization or project is &ldquo;checked off&rdquo; for D&amp;I best practices. But if project leadership or management changes, community culture can also shift. How do you account for change?</p>
<p>Instead of badges, perhaps a <strong>central, inter-organizational certification body</strong> makes more sense to achieve this goal. A certification body acts as a central authority for validating accountability. They also have an authority to assign (or revoke) public recognition of organizations and projects with authentic, ongoing commitments to diversity and inclusion.</p>
<p>There is potential here, but I don&rsquo;t think gamifying D&amp;I best practices with a badging system is the way. We need a long-term, <em><strong>human</strong></em>-centered process in evaluating D&amp;I. We need to build in human-centered evaluation as a &ldquo;feature&rdquo; to truly hold projects accountable to their commitments.</p>

<h4 id="addendum-events-and-inclusivity"><em>Addendum</em>: Events and inclusivity&nbsp;<a class="hanchor" href="#addendum-events-and-inclusivity" aria-label="Anchor link for: Addendum: Events and inclusivity">🔗</a></h4>
<p>There are a few things I&rsquo;m genuinely proud to have contributed to open source. Most of them aren&rsquo;t code. <strong>International candy swaps</strong> at conferences are one of those things.</p>
<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">Time for the international candy swap! There are so many things to love about <a href="https://twitter.com/hashtag/DevConf_CZ?src=hash&amp;ref_src=twsrc%5Etfw">#DevConf_CZ</a> but the geographic diversity of attendees might be my favorite part. Thank you for organizing, <a href="https://twitter.com/jonatoni?ref_src=twsrc%5Etfw">@jonatoni</a> &amp; @jflory7! <a href="https://t.co/rU1ETp5aTa">pic.twitter.com/rU1ETp5aTa</a></p>&mdash; Mary Thengvall (she/her); mary-grace.bsky.social (@mary_grace) <a href="https://twitter.com/mary_grace/status/1221075300584448000?ref_src=twsrc%5Etfw">January 25, 2020</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


<blockquote>
<p>DevConf CZ 2020 candy swap, mentioned in a <a href="https://jwfblog.wpenginepowered.com/2020/02/devconf-cz-2020-play-by-play/">previous blog post</a></p>
</blockquote>
<p>Candy swaps are fun, informal events hosted during a conference. Attendees bring local candies, sweets, or snacks from their hometowns to the conference. For an hour or so, folks gather together to swap candies. Before sampling the sweets, everyone introduces themselves, where they are from, and anything special about what they brought with them. When everyone introduces themselves and their candies, the floor is open to sample from the collected assortment.</p>
<p>This is a fun and engaging way to get to know other attendees beyond the conference&rsquo;s context. Conferences collect people around a specific context: be it technology, metrics, design, engineering, or something else. But beyond that specific context, we are also people! We have families, we have friends, and we eat food. We have things we miss about home when we travel hundreds or even thousands of miles from home. Events like candy swaps help us connect to other people not just as conference attendees, but as people. You learn something new about each other, and if you&rsquo;re bold, you try something new too.</p>
<p>While it is not a metric in itself, it would be cool to see things like this included as practical examples of how to evaluate &ldquo;family friendliness&rdquo; or inclusivity at events.</p>

<h3 id="true-confessions-the-seven-deadly-sins-of-open-source-communities">True Confessions: The Seven Deadly Sins of Open Source Communities&nbsp;<a class="hanchor" href="#true-confessions-the-seven-deadly-sins-of-open-source-communities" aria-label="Anchor link for: True Confessions: The Seven Deadly Sins of Open Source Communities">🔗</a></h3>
<blockquote>
<p>This talk would take a humorous approach to explaining what really no one should do when managing and measuring open source community best practices, with the primary goal of instilling positive open source development practices to the audience. Such &ldquo;&ldquo;don&rsquo;ts&rdquo;&rdquo; include not documenting anything, establishing no clear paths to success, and not bothering to communicate.</p>
<p><a href="https://chaoss.community/chaosscon-2020-eu/#user-content-brian-proffitt">Brian Proffitt</a></p>
</blockquote>

<p>Brian explained what to avoid in building healthy open source communities. While I was already familiar with most of them, the most interesting &ldquo;sin&rdquo; for me was the last one: &ldquo;<em><strong>not seeing ourselves in others</strong></em>.&rdquo;</p>
<p>Brian offered mitigation strategies and metrics for the first six sins, but he acknowledged &ldquo;not seeing yourself in others&rdquo; is hard to mitigate and measure. However, I think things like candy swaps (explained above) are one possible way to do this. They connect us to others in an authentically human way, beyond the specific context of a conference we traveled for.</p>
<p>This is more challenging when interaction is virtual. Virtual systems often take away communication cues that make us human! I&rsquo;m still thinking on how to mitigate &ldquo;not seeing ourselves in others&rdquo; if interaction is mostly virtual. (For what it is worth, I don&rsquo;t think running open source project meetings in V.R. is the answer either.)</p>

<h2 id="beyond-chaosscon-eu-2020">Beyond CHAOSScon EU 2020&nbsp;<a class="hanchor" href="#beyond-chaosscon-eu-2020" aria-label="Anchor link for: Beyond CHAOSScon EU 2020">🔗</a></h2>
<p>An event report wouldn&rsquo;t be complete without mentioning the hallway track. It was great to see familiar faces and also meet new folks at CHAOSScon EU 2020.</p>
<p>I had a great lunch conversation with <a href="https://fsfe.org/about/albers/albers">Erik Albers</a> from Free Software Foundation Europe. It was cool to meet a facilitator of the <em><a href="https://publiccode.eu/">Public Money? Public Code!</a></em> campaign. Hopefully there are future opportunities to collaborate with <a href="https://fossrit.github.io/librecorps/">RIT LibreCorps</a> and <a href="https://fosdem.org/2020/schedule/event/ethical_ai/">AI freedoms</a>.</p>
<p>As always, face time with <a href="https://nolski.rocks/">Mike Nolan</a> and an OG mentor of mine, <a href="https://twitter.com/Remy_D">Remy DeCausemaker</a>, is appreciated and fulfilling. I wish I could get more of it around the year.</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 CHAOSScon EU 2020 report, a few thank-yous are in order:</p>
<ul>
<li><strong><a href="https://twitter.com/ceciliachapiro">Cecilia Chapiro</a></strong>: Thanks for putting your work forward to the wider open source community!</li>
<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>
</ul>
<p>I hope to continue conversations started here later into 2020 and keep talking with folks doing great things for the ecosystem. Until next time!</p>]]></description></item><item><title>Sustain OSS 2020: quick rewind</title><link>https://jwheel.org/blog/2020/02/sustain-oss-2020-quick-rewind/</link><pubDate>Thu, 20 Feb 2020 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2020/02/sustain-oss-2020-quick-rewind/</guid><description><![CDATA[<p>The <strong>2020 Sustain Open Source Summit</strong> took place on Thursday, 30 January, 2020 in Brussels, Belgium:</p>
<blockquote>
<p>Sustain Summit events are led by a facilitator. There are no keynotes, talks, or sponsor demos. Your undivided attention is required. Phones and laptops should not be used throughout the day and you will be asked to put devices away if they are a distraction to you or anyone else.</p>
<p>When we talk about sustainability, we are talking both and equally about the sustainability of resources and the sustainability of its people. We hope you can join us for the conversation.</p>
<p><a href="https://web.archive.org/web/20200218215832/https://sustainoss.org/summit-2020/">sustainoss.org/summit-2020/</a></p>
</blockquote>
<p>This is my second time attending Sustain OSS (see my <a href="https://jwfblog.wpenginepowered.com/2018/11/sustain-oss-2018-quick-rewind/">2018 event report</a>). 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>, but also to represent myself as an individual and sustainer in the open source movement. For Sustain OSS 2020, I arrived hoping to learn more about community-first governance models. I left with a lot of notes and the first blueprints for <em>Principles of Authentic Participation</em>.</p>
<p>Event reports take many forms. Since Sustain 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 the conference is like and the biggest ideas on my mind at the end of the day</li>
<li><strong>Community-first governance</strong>: I came ready to explore this idea, and had a unique conversation about citizen assemblies</li>
<li><strong>Principles of Authentic Participation</strong>: Impromptu session I facilitated, and thus spent most of my time focused on</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&rsquo;re here for the quick overview, this is it.</p>
<p>I loved Sustain OSS 2020 because it is a unique collection of people from various backgrounds in the Free/Open Source movement. Both old and new folks, software engineers and designers, open source program office folks and the FOSS lawyers, all together in one room. Perhaps the best part for me is leaving with a sense of empowerment and connection to a bigger movement of people.</p>


<h3 id="speed-breakout-sessions">Speed breakout sessions&nbsp;<a class="hanchor" href="#speed-breakout-sessions" aria-label="Anchor link for: Speed breakout sessions">🔗</a></h3>
<p>The first half of Sustain 2020 started with speed breakout sessions led by many facilitators. There were around twelve small discussion groups focused on specific topics. You could spend 4-5 minutes at six topic groups. Choosing was hard! These speed sessions are primers on what to spend the second half of the day focused on, in a more detailed discussion.</p>
<p>I attended these sessions:</p>
<ol>
<li>Diversity and inclusion</li>
<li>Open source movement in Africa</li>
<li>Minimum Viable Product: Good governance models</li>
<li>Documentation</li>
<li>20 years of sustainability</li>
<li>Models for corporate accountability as open source community members / what does it mean to be a corporate member of open source communities?</li>
</ol>

<h3 id="key-takeaways">Key takeaways&nbsp;<a class="hanchor" href="#key-takeaways" aria-label="Anchor link for: Key takeaways">🔗</a></h3>
<p>I came up with four key takeaways from Sustain OSS 2020 as a whole (not including the detailed sections further below):</p>

<h4 id="inclusion-is-local">Inclusion is local&nbsp;<a class="hanchor" href="#inclusion-is-local" aria-label="Anchor link for: Inclusion is local">🔗</a></h4>
<p>When reaching out to new areas and demographics, include local community leaders. This is to say, if you are organizing communities in Asia or Africa, the success of your outreach campaign depends on your ability to enable and include existing community leaders in these regions. <strong>Local perspective is required</strong> for authentic grassroots success.</p>

<h4 id="rules-for-revising-rules">Rules for revising rules&nbsp;<a class="hanchor" href="#rules-for-revising-rules" aria-label="Anchor link for: Rules for revising rules">🔗</a></h4>
<p>When defining community governance or policy, expect change. So, <strong>include ways to change the rules later</strong> when the world changes around your governance or policy.</p>

<h4 id="generalists-transition-to-specialists">Generalists transition to specialists&nbsp;<a class="hanchor" href="#generalists-transition-to-specialists" aria-label="Anchor link for: Generalists transition to specialists">🔗</a></h4>
<p>In the early phases of an organization or project, community members are often generalists. Fewer people wear many &ldquo;hats.&rdquo; But context-switching has a cost. As the organization/project grows, defined roles become more important. Defined roles avoid everyone doing everything.</p>
<p>Designers focus first on design. Developers focus first on code. By specializing, you <strong>maximize the potentialities of what your team brings</strong> to the table.</p>

<h4 id="we-got-the-power"><a href="https://www.youtube.com/watch?v=HSivlaSVk1k">We got the power</a>&nbsp;<a class="hanchor" href="#we-got-the-power" aria-label="Anchor link for: We got the power">🔗</a></h4>
<p>There was a breakout group about ethics in Free Software. Two emerging themes were creating <strong>ethics review boards</strong> at organizations and the power of <strong>labor organizing</strong>. Some suggested normalizing ethics training in employee on-boarding.</p>
<p>Most notably, there was a highlighted need for safer spaces for labor organizing discussions. Labor organizing comes at a high personal cost for many.</p>

<h2 id="community-first-governance-models">Community-first governance models&nbsp;<a class="hanchor" href="#community-first-governance-models" aria-label="Anchor link for: Community-first governance models">🔗</a></h2>
<p>I came to Sustain OSS 2020 ready to explore community-first governance models. In December, I <a href="https://jwfblog.wpenginepowered.com/2019/12/why-foss-is-still-not-on-activist-agendas/">published a blog post</a> on why Free Software is still not on activists&rsquo; agendas. Free Software outreach often emphasizes technology, not people or ethics. We focus on technology so much, we forget why this movement began in the first place. So, in a world where corporate interests in a project often conflict with interests of grassroots communities, I wanted to know what &ldquo;community-first governance&rdquo; really means.</p>
<p>For context, I consult with humanitarian organizations and non-profits that want to build community around their open source projects. But from personal experience, I realize community stakeholders need input to decision-making if the community is going to stick around.</p>

<h3 id="citizen-assemblies-in-open-source">Citizen assemblies in open source?&nbsp;<a class="hanchor" href="#citizen-assemblies-in-open-source" aria-label="Anchor link for: Citizen assemblies in open source?">🔗</a></h3>
<p>While I didn&rsquo;t explore this in a session, I did have an interesting conversation with Xavier about <strong>citizen assemblies</strong> and how open source communities might be modeled after them. Xavier explained citizen assemblies to me as a form of hyper-local representation in policy-making in regional governments. For example, U.S. citizens are obligated to serve on jury duty, or a jury with your peers on a court hearing. Similarly for citizen assemblies, individuals are selected at random based on different demographic factors. Those selected serve a period of time on a local legislative body.</p>
<p>In open source projects divided across different contexts, think about the demographics represented in our communities. What might the demographic factors look like?</p>
<ul>
<li>In internationally-dispersed communities, it might be approximate region or nationality.</li>
<li>In corporate-focused projects, it might be diversity of employers.</li>
</ul>
<p>Citizen assemblies in open source could mean a group of contributors are selected at random to serve on the executive decision-making body of a community. The decision to serve is always optional. If a selected person declines, another person is selected.</p>
<p>I think this is a crafty way to address a cultural divide often present in Global South communities. Many contributors subconsciously look for an <strong>invitation to contribute</strong>. Being explicit by selecting an eligible, qualified candidate actively includes perspectives not commonly represented. It could also be a way to get around imposter syndrome and self-(non)selection in communities that use committee governance models.</p>
<p>I am still sitting with this idea. But I think Xavier&rsquo;s idea of applying citizen assemblies to open source communities is valid. I&rsquo;m interested in exploring what this model could look like in practice when the opportunity for experimentation presents itself.</p>

<h2 id="principles-of-authentic-participation">Principles of Authentic Participation&nbsp;<a class="hanchor" href="#principles-of-authentic-participation" aria-label="Anchor link for: Principles of Authentic Participation">🔗</a></h2>
<p>I attended a session about corporate accountability in open source contributions. It evolved into a longer discussion about Principles of Authentic Participation. This week, I <a href="https://discourse.sustainoss.org/t/principles-of-authentic-participation-continuing-the-sustain-conversation/284">launched a wider discussion</a> about this on the Sustain OSS Discourse forums, so instead of repeating myself in this post, read the Discourse thread and leave your thoughts there.</p>
<p>However, for the reader&rsquo;s convenience, the six principles we drafted are below:</p>

<h3 id="authentic-participation-starts-early">Authentic Participation Starts Early.&nbsp;<a class="hanchor" href="#authentic-participation-starts-early" aria-label="Anchor link for: Authentic Participation Starts Early.">🔗</a></h3>
<p>This came out of discussions about organizations showing up with mature, fully-baked contributions over which the community had no input.</p>

<h3 id="authentic-participation-puts-the-community-first">Authentic Participation Puts The Community First.&nbsp;<a class="hanchor" href="#authentic-participation-puts-the-community-first" aria-label="Anchor link for: Authentic Participation Puts The Community First.">🔗</a></h3>
<p>This reflected the general consensus that when an organization and the community want different things, the community needs to come first.</p>

<h3 id="authentic-participation-starts-with-listening">Authentic Participation Starts With Listening.&nbsp;<a class="hanchor" href="#authentic-participation-starts-with-listening" aria-label="Anchor link for: Authentic Participation Starts With Listening.">🔗</a></h3>
<p>This was <a href="https://www.linkedin.com/in/duaneobrien/">Duane</a>’s reflection of some comments about folks showing up to projects with no historical context and telling them everything they were doing wrong.</p>

<h3 id="authentic-participation-has-transparent-motivations">Authentic Participation Has Transparent Motivations.&nbsp;<a class="hanchor" href="#authentic-participation-has-transparent-motivations" aria-label="Anchor link for: Authentic Participation Has Transparent Motivations.">🔗</a></h3>
<p>Without a shared understanding of the motivations, it’s impossible to resolve differences of opinion effectively. No hidden motives.</p>

<h3 id="authentic-participation-enforces-respectful-behavior">Authentic Participation Enforces Respectful Behavior.&nbsp;<a class="hanchor" href="#authentic-participation-enforces-respectful-behavior" aria-label="Anchor link for: Authentic Participation Enforces Respectful Behavior.">🔗</a></h3>
<p>This is about organizations taking responsibility for the behavior of their representatives.</p>

<h3 id="authentic-participation-ends-gracefully">Authentic Participation Ends Gracefully.&nbsp;<a class="hanchor" href="#authentic-participation-ends-gracefully" aria-label="Anchor link for: Authentic Participation Ends Gracefully.">🔗</a></h3>
<p>No sudden withdrawal of resources without notification and an exit plan. Clear documentation that would allow the community to pick up projects when a company decides to withdraw support.</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 Sustain OSS 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>The <em>Principles of Authentic Participation</em> group</strong>: I didn&rsquo;t plan to facilitate at Sustain and I was nervous about it, but you all were wonderful. We had a fruitful discussion and I&rsquo;m looking forward to the follow-up.</li>
</ul>
<p>Sustain OSS 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>DevConf CZ 2020: play by play</title><link>https://jwheel.org/blog/2020/02/devconf-cz-2020-play-by-play/</link><pubDate>Thu, 13 Feb 2020 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2020/02/devconf-cz-2020-play-by-play/</guid><description><![CDATA[<p>DevConf CZ 2020 took place from Friday, January 24th to Sunday January 27th in Brno, Czech Republic:</p>
<blockquote>
<p>DevConf.CZ 2020 is the 12th annual, free, Red Hat sponsored community conference for developers, admins, DevOps engineers, testers, documentation writers and other contributors to open source technologies. The conference includes topics on Linux, Middleware, Virtualization, Storage, Cloud and mobile. At DevConf.CZ, FLOSS communities sync, share, and hack on upstream projects together in the beautiful city of Brno, Czech Republic.</p>
<p><a href="https://www.devconf.info/cz/">devconf.info/cz/</a></p>
</blockquote>
<p>This is my third time attending DevConf CZ. I attended on behalf of <a href="https://fossrit.github.io/librecorps/">RIT LibreCorps</a> for professional development, before a week of work-related travel. DevConf CZ is also a great opportunity to meet friends and colleagues from across time zones. This year, I arrived hoping to better understand the future of Red Hat&rsquo;s technology, see how others are approaching complex problems in emerging technology and open source, and of course, to have yummy candy.</p>

<h2 id="sessions-play-by-play">Sessions: Play-by-play&nbsp;<a class="hanchor" href="#sessions-play-by-play" aria-label="Anchor link for: Sessions: Play-by-play">🔗</a></h2>
<p>Event reports take many forms. My form is an expanded version of my session notes along with key takeaways. Said another way, my event report is biased towards what is interesting to me. You can also skim the headings to find what interests you.</p>

<h3 id="diversity-and-inclusion-meet-up">Diversity and inclusion meet-up&nbsp;<a class="hanchor" href="#diversity-and-inclusion-meet-up" aria-label="Anchor link for: Diversity and inclusion meet-up">🔗</a></h3>
<blockquote>
<p>Would you like to meet other attendees who stand under the umbrella of &ldquo;Diversity and Inclusion&rdquo; or would you like a introduction into what Diversity and inclusion is and why it&rsquo;s a good thing? this is the session for you! All are welcome!</p>
<p><a href="https://devconfcz2020a.sched.com/event/YS2w/diversity-and-inclusion-meet-up">Imo Flood-Murphy</a></p>
</blockquote>
<p>This was a short, informal session ran by Imo to network and get a high-level introduction to diversity and inclusion in open source. Everyone in the room introduced themselves and gave a short explanation of who they were or what projects they represent. I appreciated the opportunity to meet others and better understand how Red Hat approaches diversity and inclusion.</p>
<p>A suggestion for next time is to allow more unstructured time for conversations. I think fun icebreakers get folks comfortable in a short amount of time to help make connections for the rest of the weekend.</p>

<h3 id="lessons-learned-from-testing-over-200000-lines-of-infrastructure-code">Lessons learned from testing over 200,000 lines of Infrastructure Code&nbsp;<a class="hanchor" href="#lessons-learned-from-testing-over-200000-lines-of-infrastructure-code" aria-label="Anchor link for: Lessons learned from testing over 200,000 lines of Infrastructure Code">🔗</a></h3>
<blockquote>
<p>If we are talking that infrastructure is code, then we should reuse practices from development for infrastructure, i.e.</p>
<p>1. S.O.L.I.D. for Ansible.</p>
<p>2.Pair devops-ing as part of XP practices.</p>
<p>3. Infrastructure Testing Pyramid: static/unit/integration/e2e tests.</p>
<p><a href="https://devconfcz2020a.sched.com/event/YS73/lessons-learned-from-testing-over-200000-lines-of-infrastructure-code">Lev Goncharov</a></p>
</blockquote>
<p>Lev shared best practices on building sustainable, tested infrastructure. Infrastructure-as-Code (IaC) was important to how T-Systems scaled their infrastructure over time.</p>
<p>My key takeaways:</p>
<ol>
<li>Smaller components:
<ol>
<li>More sustainable</li>
<li>Easier to maintain</li>
<li>Easier to test</li>
</ol>
</li>
<li>Ansible Roles encourage best use practices for Ansible</li>
<li>Spreading knowledge is essential (if nobody understands it, the code is broken)</li>
<li>Code review creates accountability</li>
<li>Use static analysis tools (<a href="https://github.com/koalaman/shellcheck">Shellcheck</a>, <a href="https://www.pylint.org/">Pylint</a>, <a href="https://docs.ansible.com/ansible-lint/">Ansible Lint</a>)</li>
<li>Write unit tests (<a href="https://github.com/kward/shunit2">shUnit2</a>, <a href="https://rspec.info/">Rspec</a>, <a href="https://docs.pytest.org/en/latest/">Pytest</a>, <a href="https://testinfra.readthedocs.io/en/latest/">Testinfra</a>, <a href="https://molecule.readthedocs.io/en/latest/">Ansible Molecule</a>)</li>
</ol>

<h3 id="content-as-code-technical-writers-as-developers">Content as code, technical writers as developers&nbsp;<a class="hanchor" href="#content-as-code-technical-writers-as-developers" aria-label="Anchor link for: Content as code, technical writers as developers">🔗</a></h3>
<blockquote>
<p>In the open-source project <a href="http://kyma-project.io">Kyma</a>, documentation is an integral part of code delivery. We, the project&rsquo;s Information Developers, believe that using the same tools and methodology as your good old code developers, we can create comprehensive and accurate documentation. During our talk, we’ll share the whys and hows of our approach, showing you that the &ldquo;developer&rdquo; in &ldquo;Information Developer&rdquo; isn&rsquo;t there just because it sounds cool. We&rsquo;ll prove that creating documentation goes beyond linguistic shenanigans and salvaging whatever information there is from a trainwreck that is the developer&rsquo;s notes. Testing solutions, finding our way around Kubernetes, tweaking the website, engaging with the community are just a few examples of what keeps us busy every day.</p>
<p><a href="https://devconfcz2020a.sched.com/event/YOvj/content-as-code-technical-writers-as-developers">Barbara Czyz, Tomasz Papiernik</a></p>
</blockquote>
<p>&ldquo;Information Developers&rdquo; is a cool phrase I learned. Barbara and Tomasz explained the value of technical writing and asserted documentation should live close to project code.</p>
<p>My key takeaways:</p>
<ol>
<li>Documenting processes like release notes enables others to join with less barriers</li>
<li><strong>Docs-as-Code (DaC)</strong>: Visibility of docs across development process is important
<ol>
<li>Placing docs with code encourages feedback loops and avoids silos</li>
</ol>
</li>
<li>Put links to docs in visible places (e.g. API messages, console messages)</li>
<li>Management aside: Emphasize/incentivize value of technical writing in your team</li>
<li>Remember bridges across skill areas is possible (technical writers can also be community-oriented people too)</li>
</ol>

<h3 id="uncharted-waters-documenting-emerging-technology">Uncharted waters: Documenting emerging technology&nbsp;<a class="hanchor" href="#uncharted-waters-documenting-emerging-technology" aria-label="Anchor link for: Uncharted waters: Documenting emerging technology">🔗</a></h3>
<blockquote>
<p>We can&rsquo;t help but feel the lure towards the hot new thing, especially when it comes to technology. Part of that lure is the breaking of ground, venturing into the unknown, and working on solutions to new problems. But a lot of the same things that make emerging technology fun and exciting to work on are exactly why it can be difficult to document. These challenges are quite different to those associated with mature products.</p>
<p>This talk is for anyone working on new products and emerging technology, or just interested in learning about fast-moving documentation. It is for the developer as much as it is for the writer, since it usually falls to them to write the early docs before a writer is added to the team.</p>
<p><a href="https://devconfcz2020a.sched.com/event/YOyU/uncharted-waters-documenting-emerging-technology">Andrew Burden</a></p>
</blockquote>
<p>This was the talk I didn&rsquo;t know I <strong><em>needed</em></strong> to go to.</p>
<p>Lately I work with &ldquo;emerging technology,&rdquo; which means different things to different people. Regardless of what emerging tech means to you, Andrew focused on how to write documentation in a fast-paced environment with &ldquo;pre-release&rdquo; technology, where things change fast and suddenly. Normally this is an excuse to <em>not</em> write docs, but Andrew showed, <em>yes</em>! It is possible to write good docs, even when context changes fast and often.</p>

<h4 id="key-considerations-of-fast-paced-technical-writers">Key considerations of fast-paced technical writers&nbsp;<a class="hanchor" href="#key-considerations-of-fast-paced-technical-writers" aria-label="Anchor link for: Key considerations of fast-paced technical writers">🔗</a></h4>
<p>An even balance of these considerations helps get into a user&rsquo;s mindset:</p>
<ol>
<li>Scope / scale of release</li>
<li>Release schedule</li>
<li>Developer meetings / face-time</li>
<li>Exposure with <code>$TECHNOLOGY</code></li>
<li>Deployment experience with <code>$TECHNOLOGY</code></li>
</ol>

<h4 id="surviving-the-information-wall">Surviving the information wall&nbsp;<a class="hanchor" href="#surviving-the-information-wall" aria-label="Anchor link for: Surviving the information wall">🔗</a></h4>
<p>The &ldquo;information wall&rdquo; is the endless wall of information and things to know about a project. If information is endless, how do technical writers survive?</p>
<ul>
<li>Take notes: Be like a scientist</li>
<li>Take notes about your notes</li>
<li>Be organized with your notes</li>
</ul>
<p>Obviously Andrew was getting at the value of note-taking. Practicing note-taking skills is critical to keep up with the pace of change.</p>

<h4 id="multi-version-syndrome">&ldquo;Multi-Version Syndrome&rdquo;&nbsp;<a class="hanchor" href="#multi-version-syndrome" aria-label="Anchor link for: &ldquo;Multi-Version Syndrome&rdquo;">🔗</a></h4>
<p>Sometimes you are writing features for things that will not be released in the next release. There is a risk of losing information across multiple releases (e.g. publishing the wrong thing too soon, or the right thing too late). Clarify the release schedule as you go. A good safeguard against losing information is to rigorously understand release cycle cadence and priority.</p>
<p>If your product isn&rsquo;t mature yet, anticipate change instead of avoiding it.</p>

<h4 id="access-to-technology-is-critical">Access to technology is critical&nbsp;<a class="hanchor" href="#access-to-technology-is-critical" aria-label="Anchor link for: Access to technology is critical">🔗</a></h4>
<p>Technical writers are often User 0. To understand the technology, you need access. There are interactive and non-interactive ways of getting access. Interactive ways are preferred because they are always reproducible.</p>
<ul>
<li>Interactive
<ul>
<li>Deploy your own</li>
<li>Get someone else to deploy it for you (but lose install context)</li>
</ul>
</li>
<li>Non-interactive
<ul>
<li>Live demos</li>
<li>Demo videos</li>
<li><a href="https://asciinema.org/">Asciicinema</a> (CLI-oriented)</li>
</ul>
</li>
</ul>

<h4 id="other-takeaways">Other takeaways&nbsp;<a class="hanchor" href="#other-takeaways" aria-label="Anchor link for: Other takeaways">🔗</a></h4>
<ul>
<li>Screenshots have high maintainability cost; avoid if possible
<ul>
<li>Sometimes good stop-gaps until something more maintainable</li>
</ul>
</li>
<li>Where to begin? Make a table-of-contents for the Minimum Viable Product
<ul>
<li>Never underestimate outlines (<em>ahem, like how I wrote this blog post…</em>)</li>
</ul>
</li>
<li>Avoid documentation scramble near release day:
<ul>
<li>Make lists / check-lists</li>
<li>Take more notes</li>
<li>Pre-release checklist</li>
<li>Think now, and for the future</li>
</ul>
</li>
<li>Audit your docs: On-boarding new people is a powerful opportunity to test out your docs</li>
</ul>
<p>Thanks Andrew for a deep dive on this narrow but important topic.</p>

<h3 id="community-management-not-less-than-a-curry">Community management: not less than a curry&nbsp;<a class="hanchor" href="#community-management-not-less-than-a-curry" aria-label="Anchor link for: Community management: not less than a curry">🔗</a></h3>
<blockquote>
<p>Every volunteer joins an Open Source community for a reason. The reasons could range from technical gains to finding his/her/their passion. This community of diverse volunteers require a leader who can not just mentor them with their interests but also a manager managing the community activities in terms of community engagement and planning. A community manager is not less than a candle of light and in this presentation, I would be highlighting my learnings and experiences about starting a community from scratch around a project and maintaining a healthy community management practices.</p>
<p><a href="https://devconfcz2020a.sched.com/event/YOpX/community-management-not-less-than-a-curry">Prathamesh Chavan</a></p>
</blockquote>
<p>Prathamesh designed an activity to help the audience understand community management. My key takeaway was community management is about connecting and understanding others as their authentic self.</p>
<p>In the activity, Prathamesh passed papers and pens to the audience. His session had three steps. Between each step, all attendees traded papers with another attendee:</p>
<ol>
<li>Define a project idea (why, how, what)</li>
<li>Identify challenges to idea (i.e. questions)</li>
<li>Answer challenges</li>
</ol>
<p>It reminded me of a similar workshop I attended before. This inspired me to work on <a href="https://github.com/justwheel/logbook/blob/master/notes/identity/question-burst-better-questioners.adoc">my own workshop idea</a> for a future conference.</p>

<h3 id="cognitive-biases-blind-spots-and-inclusion">Cognitive biases, blind spots, and inclusion&nbsp;<a class="hanchor" href="#cognitive-biases-blind-spots-and-inclusion" aria-label="Anchor link for: Cognitive biases, blind spots, and inclusion">🔗</a></h3>
<blockquote>
<p>Open source thrives on diversity. The last couple of years has seen huge strides in that aspect with codes of conduct and initiatives like the Contributor Covenant. While these advancements are crucial, they are not enough. In order to truly be inclusive, it’s not enough for the community members to be welcoming and unbiased, the communities’ processes and procedures really support inclusiveness by not only making marginalized members welcome, but allowing them to fully participate.</p>
<p><a href="https://devconfcz2020a.sched.com/event/YOoH/cognitive-biases-blindspots-and-inclusion">Allon Mureinik</a></p>
</blockquote>
<p>Allon recognizes the importance of diversity, but asking for improved diversity is one side of the coin. A friend recently shared a powerful quote with me: &ldquo;If diversity is being invited to the party, inclusion is being invited <em>to</em> dance.&rdquo; Allon&rsquo;s message was to dig deeper on including marginalized people in our project communities.</p>
<p>He identified ways we accidentally make our communities less inclusive because of our cognitive/unconscious biases. Everyone has blind spots! Allon suggested ways to be more conscious about inclusion in open source:</p>
<ul>
<li><strong>Knowledge barriers</strong>
<ul>
<li>Procedural knowledge, not just technical
<ul>
<li>How do you submit code? File a bug? Make meaningful contributions? These need to be documented</li>
</ul>
</li>
<li>Documentation fosters inclusivity</li>
</ul>
</li>
<li><strong>Language barriers</strong>
<ul>
<li>Working proficiency in English not universal</li>
<li>Conversations have extra barriers (e.g. communicating complex ideas, understanding advanced words)</li>
</ul>
</li>
<li><strong>Time barriers</strong>
<ul>
<li>Work schedules no longer 9 to 5</li>
<li>Remember other folks in different time zones</li>
<li>On giving feedback: Fast is not a metric! Be smart
<ul>
<li>Merging PRs while others are away, or shortly after opening it</li>
<li>Allow time for input on non-trivial changes</li>
</ul>
</li>
</ul>
</li>
<li><strong>Transparency barriers</strong>
<ul>
<li>If not in the open, it didn&rsquo;t open</li>
<li>Negative example: Contributor makes a PR, reviewer has face-to-face conversation with contributor, reviewer merges PR without public context</li>
<li>Default to open: in many ways
<ul>
<li>If you can&rsquo;t be open, at least be transparent</li>
</ul>
</li>
</ul>
</li>
</ul>

<h3 id="diversity-in-open-source-show-me-the-data">Diversity in open source: show me the data!&nbsp;<a class="hanchor" href="#diversity-in-open-source-show-me-the-data" aria-label="Anchor link for: Diversity in open source: show me the data!">🔗</a></h3>
<blockquote>
<p>How diverse is your work environment? Diverse communities are more effective, they allow us to share the strengths of the individuals who make up the community. Have you ever looked around and noticed that most of our Open Source communities are predominantly male? Why do you think that is? We’ll use gender diversity as a case study and share some intriguing data points. Let us convince you why it’s so important.</p>
<p>Regardless of your gender, we would love for you to join us! We will also give you some tips on how you can make a difference.</p>
<p><a href="https://devconfcz2020a.sched.com/event/YOtn/diversity-in-opensource-show-me-the-data">Serena Chechile Nichols, Denise Dumas</a></p>
</blockquote>
<p>Serena and Denise divided the talk into two sections: metrics and action. The way they presented, they brought the audience on the same page by visiting a variety of metrics and then transitioned to an empowering discussion about changing trends we see.</p>
<p>Next time, I hope to see expanded messaging by defining diversity beyond only women. Diversity was frequently tied to gender participation metrics in open source. While women are underrepresented, there are additional aspects of identity that can compound discrimination. Race, socioeconomic status, nationality, sexual orientation, and more also play a part in understanding challenges collectively faced in inclusion work.</p>

<h4 id="the-data">The data&nbsp;<a class="hanchor" href="#the-data" aria-label="Anchor link for: The data">🔗</a></h4>
<ul>
<li><strong>Gender differences by # of contributors</strong>:
<ul>
<li>GSoC 2018: 11.6% female-identifying contributors</li>
<li>OpenStack: 10.4% female-identifying contributors</li>
<li>Linux kernel: 9.9% female-identifying contributors</li>
</ul>
</li>
<li><strong>U.S. Dept. of Labor: 22.2% of technical roles filled by women</strong>
<ul>
<li>2014-2019: More women entering tech jobs at companies like Apple, Microsoft, Google, etc.</li>
</ul>
</li>
<li><strong>Years of experience by gender (&lt;9 years)</strong>:
<ul>
<li>66.2% female</li>
<li>52.9% non-binary/queer</li>
<li>50.1% male</li>
</ul>
</li>
<li><strong>GitHub user and developer survey</strong>:
<ul>
<li>95% male</li>
<li>3% female</li>
<li>1% non-binary</li>
</ul>
</li>
</ul>

<h4 id="lets-make-things-better">Let&rsquo;s make things better&nbsp;<a class="hanchor" href="#lets-make-things-better" aria-label="Anchor link for: Let&rsquo;s make things better">🔗</a></h4>
<p>Serena and Denise asserted diversity creates change. All changes come with challenges. Diversity can increase the friction in the process, but that is okay. They emphasized the need for multiple perspectives see past our initial biases (conveniently covered by Allon in the previous talk).</p>
<p>This transitioned to questions, comments, and thoughts from the audience. One interesting point was using the phrase, &ldquo;<a href="http://www.thagomizer.com/blog/2017/09/29/we-don-t-do-that-here.html">we don&rsquo;t do that here</a>&rdquo; to create and set norms. I gave a suggestion to look at projects you already participate in and see if there is a diversity and inclusion effort there already. If there is, see if there are ways to help and get involved. If not, consider starting one (or network with the <a href="https://discourse.opensourcediversity.org/">Open Source Diversity community</a>).</p>
<p>To wrap up, one recurring theme of Serena and Denise&rsquo;s talk is to make time to step back and evaluate the bigger picture. Questioning our biases is an important skill to practice. We need the space and time to recompute!</p>

<h3 id="candy-swap">Candy Swap&nbsp;<a class="hanchor" href="#candy-swap" aria-label="Anchor link for: Candy Swap">🔗</a></h3>
<blockquote>
<p>Do you have a unique sweet dessert or candy from your country or hometown? Do you love to try new and exciting foods from around the world? Spend an hour with fellows as we share stories and candies from the world with each other. Participants are invited to bring a unique confectionary or candy from their country or city to share with multiple other people. Before going around to try yummy things, all participants explain what item they bring and any story about its origins or where it is normally used. After sharing, everyone who brought something rotates around to try candies brought by others. After all participants have had a chance to sample, the rest of the community is invited to come and try anything remaining.</p>
<p><a href="https://devconfcz2020a.sched.com/event/YS6U/candy-swap">Jona Azizaj, Justin Wheeler</a></p>
</blockquote>
<p>I <em>am</em> biased when I say this is one of my favorite parts of conferences I go to. Jona originally proposed the candy swap for DevConf CZ. After unexpectedly adding DevConf CZ to my travel list for 2020, we teamed up to share the sweet tradition from Fedora Flock to DevConf CZ! This is one of my favorite conference traditions because I get to know other attendees in a context outside of technology. And food is always an easy way to win me over.</p>
<p>Instead of listening to me, see what other people have to say about it:</p>
<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">Time for the international candy swap! There are so many things to love about <a href="https://twitter.com/hashtag/DevConf_CZ?src=hash&amp;ref_src=twsrc%5Etfw">#DevConf_CZ</a> but the geographic diversity of attendees might be my favorite part. Thank you for organizing, <a href="https://twitter.com/jonatoni?ref_src=twsrc%5Etfw">@jonatoni</a> &amp; @jflory7! <a href="https://t.co/rU1ETp5aTa">pic.twitter.com/rU1ETp5aTa</a></p>&mdash; Mary Thengvall (she/her); mary-grace.bsky.social (@mary_grace) <a href="https://twitter.com/mary_grace/status/1221075300584448000?ref_src=twsrc%5Etfw">January 25, 2020</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">The &quot;sweetest&quot; activity of <a href="https://twitter.com/hashtag/devconf_cz?src=hash&amp;ref_src=twsrc%5Etfw">#devconf_cz</a>: Today at 3 PM! 🍬🍫<br>Join Candy Swap, share candies, sweets and stories with others from around the world! <a href="https://t.co/OlfdmgGa3a">https://t.co/OlfdmgGa3a</a> <a href="https://t.co/Jnlqi3lsaq">pic.twitter.com/Jnlqi3lsaq</a></p>&mdash; DevConf.CZ (@devconf_cz) <a href="https://twitter.com/devconf_cz/status/1221026710969298947?ref_src=twsrc%5Etfw">January 25, 2020</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">Candy Swap time at <a href="https://twitter.com/hashtag/DevConf_CZ?src=hash&amp;ref_src=twsrc%5Etfw">#DevConf_CZ</a> 😍 <a href="https://t.co/zFCNnXZoJf">pic.twitter.com/zFCNnXZoJf</a></p>&mdash; Jona Azizaj👩🏻‍💻 🥑 @jonatoni@mastodon.social (@jonatoni) <a href="https://twitter.com/jonatoni/status/1221076375081062400?ref_src=twsrc%5Etfw">January 25, 2020</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">Well I experienced this for the <a href="https://twitter.com/hashtag/Flock?src=hash&amp;ref_src=twsrc%5Etfw">#Flock</a> 2019. It&#39;s a great opportunity to know the tastebuds of diverse people and enjoy! :D</p>&mdash; Aal (Alisha)🌻 (@withloveaal) <a href="https://twitter.com/withloveaal/status/1221366223381778434?ref_src=twsrc%5Etfw">January 26, 2020</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>



<h3 id="from-outreachy-to-cancer-research">From Outreachy to cancer research&nbsp;<a class="hanchor" href="#from-outreachy-to-cancer-research" aria-label="Anchor link for: From Outreachy to cancer research">🔗</a></h3>
<blockquote>
<p>Outreachy program is helping women and other underrepresented people to make first steps in tech career. Picking a project, making first open source contributions, working on assigned project and learning from advanced people. But what happens when this three months are over? Can Outreachy be a lifechanging experience?</p>
<p>I will share my story of conversion from a chemist and full time parent into a Fedora Outreachy intern and how I found my place as a junior software developer in cancer genomics research at IRB Barcelona.</p>
<p><a href="https://devconfcz2020a.sched.com/event/YOwh/from-outreachy-to-cancer-research">Lenka Segura</a></p>
</blockquote>
<p>This was a favorite of the weekend. &ldquo;Fedora Outreachy intern Lenka Segura on how Outreachy opened the door for her career to cancer research at IRB Barcelona!&rdquo;</p>
<p>I put effort into live-tweeting a Twitter thread. Get the full scoop there!</p>


<h3 id="connect-and-grow-your-community-through-meetups">Connect and grow your community through meetups&nbsp;<a class="hanchor" href="#connect-and-grow-your-community-through-meetups" aria-label="Anchor link for: Connect and grow your community through meetups">🔗</a></h3>
<blockquote>
<p>Open source communities collaborate in a multitude of ways - chatting on irc, submitting issues and contributing code on GitHub, discussing and sharing ideas on reddit and other social channels. Face to face gatherings add another dimension to that, where community members can learn and share their experiences. Local meetups provide a venue for people with similar interests to socialize and connect. However, organizing meetups is not trivial. How do we encourage and motivate the community to arrange meetups, and to keep the momentum? In my one year with the Ansible community, we have doubled the number of active meetups in Europe. These meetups are community driven, rather than Red Hat. Find out how we use metrics to analyze the situation and needs, and the steps we are taking to reach our goals of connecting with even more community members. Learn from our mistakes and challenges (100 RSVPs and only 20 turned up?), plus some tips to make your meetups more inclusive.</p>
<p><a href="https://devconfcz2020a.sched.com/event/YOr2/connect-and-grow-your-community-through-meetups">Carol Chen</a></p>
</blockquote>
<p>Carol explained the role of local meet-ups around the world in building communities around software projects. She emphasized that single metrics are not always useful, so it is more helpful to evaluate on multiple areas. The most useful takeaway for me was the 5 W&rsquo;s: why, who, what, when, where.</p>
<ul>
<li><strong>Why?</strong> Common curiosity (noticing something new in your community)</li>
<li><strong>Who?</strong> Connections and networking</li>
<li><strong>What?</strong> Concise, compelling content
<ul>
<li>Consider venue travel (how to make it worth their while?)</li>
<li>Provide alternatives to git-based submissions</li>
<li>All talks don&rsquo;t have to be technical! Diversify to appeal to wider audiences
<ul>
<li>Announcements for future events, work-life talks</li>
<li>We are more than just the technology we work with</li>
</ul>
</li>
</ul>
</li>
<li><strong>When?</strong> Consistency
<ul>
<li>Helps with venue scheduling</li>
<li>Helps retain attendee focus and build habits</li>
</ul>
</li>
</ul>
<p>Carol also gave suggestions for common points to think about for improved inclusion. All of these need active, not passive inclusion.</p>
<ul>
<li>Special needs / disabilities</li>
<li>Food allergies</li>
<li>Beverage preference (often alcohol/non-alcoholic)</li>
<li>Language</li>
<li>Traffic-light communication stickers</li>
<li>Photography lanyards</li>
<li>Gender pronouns</li>
</ul>

<h2 id="beyond-devconf-cz">Beyond DevConf CZ&nbsp;<a class="hanchor" href="#beyond-devconf-cz" aria-label="Anchor link for: Beyond DevConf CZ">🔗</a></h2>
<p>While the sessions are excellent and fulfilling (and sometimes frustrating when you miss a good talk with a full room), DevConf is also more than the sessions. It&rsquo;s also the people and conversations that happen in the &ldquo;hallway track.&rdquo; It was nice to see many old friends and make new ones.</p>
<p>I spent a few extra days before and after DevConf CZ in Brno. In some of that time, my colleague <a href="https://nolski.rocks/">Mike Nolan</a> and I rehearsed in-person for our FOSDEM talk the following weekend (to come in a future blog post). I also enjoyed coffee and waffles with Marie, Sumantro, and Misc!</p>
<p>
<figure>
  <img src="/blog/2020/02/IMG_20200124_212601881_HDR-scaled.jpg" alt="" loading="lazy">
</figure>
</p>
<p>
<figure>
  <img src="/blog/2020/02/IMG_20200124_212616232-rotated.jpg" alt="" loading="lazy">
</figure>
</p>
<p>
<figure>
  <img src="/blog/2020/02/IMG_20200129_105148632_HDR-scaled.jpg" alt="" loading="lazy">
</figure>
</p>
<p>
<figure>
  <img src="/blog/2020/02/IMG_20200129_124253219.jpg" alt="" loading="lazy">
</figure>
</p>
<blockquote>
<p>A few memories of a great week in Brno</p>
</blockquote>

<h2 id="until-next-time">Until next time!&nbsp;<a class="hanchor" href="#until-next-time" aria-label="Anchor link for: Until next time!">🔗</a></h2>
<p>I learn a lot and have a lot of fun at DevConf CZ. I&rsquo;m happy to return for a third year. Hats-off to the organizers and volunteers who pulled it all off. Each year, DevConf gradually makes improvements. It&rsquo;s nice to see inclusion prioritized across the board.</p>
<p>Thanks also goes out to <a href="https://fossrit.github.io/librecorps/">RIT LibreCorps</a> for sponsoring my trip. Extra thanks to Jona Azizaj!</p>]]></description></item><item><title>Why FOSS is still not on activist agendas</title><link>https://jwheel.org/blog/2019/12/why-foss-is-still-not-on-activist-agendas/</link><pubDate>Fri, 13 Dec 2019 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2019/12/why-foss-is-still-not-on-activist-agendas/</guid><description><![CDATA[<p>On December 13th, 2006, author <a href="https://en.wikipedia.org/wiki/Bruce_Byfield">Bruce Byfield</a> reflected on why he thought Free and Open Source Software (F.O.S.S.) was <a href="https://web.archive.org/web/20191130172436/https://www.linux.com/news/why-foss-isnt-activist-agendas/">not on activist agendas</a>. My interpretation of his views are that a knowledge barrier about technology makes FOSS less accessible, the insular nature of activism makes collaboration difficult, and FOSS activists reaching out to other activists with shared values should be encouraged. On December 13th, 2019, is FOSS on activist agendas? The answer is not black or white, but a gray somewhere in the middle. This is my response to Byfield&rsquo;s article, thirteen years later, on what he got right but also what he left out.</p>

<h2 id="where-byfield-was-accurate">Where Byfield was accurate&nbsp;<a class="hanchor" href="#where-byfield-was-accurate" aria-label="Anchor link for: Where Byfield was accurate">🔗</a></h2>
<p>While I don&rsquo;t agree with all of Byfield&rsquo;s sentiments, he identified some key challenges that still hold truth today: <strong>a predisposition to focus on differences and not similarities, an outreach approach centered on ethics and not software, and the importance of opportunities for intersectional interaction</strong>.</p>

<h3 id="predisposition-towards-difference">Predisposition towards difference&nbsp;<a class="hanchor" href="#predisposition-towards-difference" aria-label="Anchor link for: Predisposition towards difference">🔗</a></h3>
<p><em>First</em>, Byfield notes the differing age groups of the activist communities and the tendency for viewing others by their differences first, not their similarities. He seems to attribute the tendency to view others by differences first as a characteristic of older generations; however, this is not necessarily the full truth.</p>
<p>As a member of the young activist community, this explanation is too simplistic of the underlying cause. There is also a political motivation by established power to sow division among the population of a nation-state. It makes community organizing more difficult and presents diversity as an issue to &ldquo;solve&rdquo; instead of a source of greater unity and common strength.</p>
<p>This is exemplified by the social media algorithms of today that reward sensational content (judged on likes, views, clicks, or other user feedback) and share it widely across a huge platform. In 2006, it was difficult to imagine the relationship social media would have in the lives of an everyday person; today, a great deal of social power is granted to those who understand how to leverage social media, either for good (e.g. social activism) or harm (e.g. deceptively persuading large parts of a nation-state&rsquo;s population leading up to a national election).</p>
<p>The politics of division are within the fabric of our political systems; this is a challenge for modern-day activism and community organizing to overcome. In identifying this as a challenge, Byfield is correct that a differences-first approach makes it harder to share and spread the importance of FOSS in other activism circles, especially as technology becomes an increasingly relevant way of how we experience our lives and how our systems of law and justice are enforced.</p>

<h3 id="outreach-on-ethics-not-software">Outreach on ethics, not software&nbsp;<a class="hanchor" href="#outreach-on-ethics-not-software" aria-label="Anchor link for: Outreach on ethics, not software">🔗</a></h3>
<p><em>Second</em>, Byfield suggests an ethics-based approach to outreach is more effective than a software-based approach. This is also correctly noted, even if perhaps overemphasized. The jargon and language of the technology world is not accessible to the large majority of the global population. While some degree of technology literacy might be expected in some populations, much of the existing FOSS community is deeply rooted in technology. Sometimes this limited perspective is counterproductive.</p>
<p>This revisits the rebranding of &ldquo;Free Software&rdquo; as &ldquo;open source&rdquo; in 1997. For many subsets of the wider open source community in 2019, the default approach to open source software is merely a secondary thought for how to collaboratively work on technology. This is part of the outcome of the Open Source Initiative&rsquo;s gamble in 1997 by beginning to emphasize the business sensibility and practicality of open source, and de-emphasize the social roots of Free Software (or rather, try and position itself as some sort of translator between these two &ldquo;worlds&rdquo;, as if they cannot be spoken of together in the same room).</p>
<p>As such, those who work on open source software projects are not necessarily predisposed to assume the role of an activist. Truly if <em>Free</em> Software is to take root outside of technology, then those who see the ethical values of Free Software need to better organize and promote the values of FOSS externally. This will contribute to the diversity of Free Software activism by helping non-technology activists add FOSS as a tool to their existing work.</p>

<h3 id="intersectional-movement-building-is-the-future">Intersectional movement building is the future&nbsp;<a class="hanchor" href="#intersectional-movement-building-is-the-future" aria-label="Anchor link for: Intersectional movement building is the future">🔗</a></h3>
<p><em>Thirdly</em> and finally, and perhaps most importantly, Byfield suggests the importance of intersectional interactions between Free Software communities and other activist communities. This is a fundamental requirement for the growth of Free Software as a social movement. Those of us in Free Software see the world around us informed by a background informed by technology; this background is emphasized in a world that is generating new, advanced technology at an unprecedented rate. However, while software and technology are important parts of the world around us, they are not <em>the</em> world around us. They are one part of a greater picture of fighting for a common good and welfare for all people. There are others in similar niches who have a deep understanding of their problem space and how they want to approach a challenge.</p>
<blockquote>
<p>“One group may be working against child poverty, another for recycling, but the people in these organizations can almost be transferred from one to the next.”</p>
<p><a href="https://en.wikipedia.org/wiki/Peter_T._Brown">Peter T. Brown</a>, Free Software Foundation Executive Director (2006)</p>
</blockquote>
<p>Just like a healthy garden, cross-pollination of these niches is vital to help others understand how we can help each other in accomplishing our mutual goals (this also feeds into why the politics of division explained above is so pervasive and difficult). Bringing Free Software technologists to activist communities where there is not an overwhelming Free Software background (and vice versa) is vital to building an intersectional social movement that strengthens the social impact of Free Software, not just open source.</p>

<h2 id="where-byfield-didnt-go-far-enough">Where Byfield didn&rsquo;t go far enough&nbsp;<a class="hanchor" href="#where-byfield-didnt-go-far-enough" aria-label="Anchor link for: Where Byfield didn&rsquo;t go far enough">🔗</a></h2>
<p>Byfield made one assumption on how activists have &ldquo;their own share of insularity&rdquo; and that the presence of connections between two movements does not mean they could immediately connect their existing beliefs with new ones. Fioretti&rsquo;s challenge was in others understanding why they should listen to him; there was a lack of foundational knowledge of open source and technology that is normally assumed of someone who works as a software engineer.</p>
<p>Indeed, attention is a currency in the world of an activist. It is not enough for a FOSS advocate to expect others to listen to you on an appeal of technology. Part of the work in sharing is understanding who you are sharing with; if FOSS wants to take deeper roots in the activist community, it needs to understand the backgrounds of activist communities and be creative in how to appeal the mission of FOSS to the mission of their work. Where you can build in-roads together with others through common initiatives is the beginning of grassroots community organizing. So, while Byfield is right that there is an almost competitive nature of ideas in activism, it is not enough to write insularity off as a fixed aspect of nature. To not acknowledge this is to deny the influence of capitalist power structures in the humanitarian sector as they pertain to sustainable funding.</p>

<h2 id="what-are-todays-challenges">What are today&rsquo;s challenges?&nbsp;<a class="hanchor" href="#what-are-todays-challenges" aria-label="Anchor link for: What are today&rsquo;s challenges?">🔗</a></h2>
<p>Some of today&rsquo;s challenges are about inclusion and power.</p>

<h3 id="inclusion-builds-power">Inclusion builds power&nbsp;<a class="hanchor" href="#inclusion-builds-power" aria-label="Anchor link for: Inclusion builds power">🔗</a></h3>
<p>Diversity and inclusion (D&amp;I) are important but poorly understood; not only are D&amp;I about including people of different identities in technology, but also people with backgrounds outside of technology. FOSS stands to benefit by including more people who do not necessarily have a strong technology or engineering background. The goal is to inspire different perspectives to contribute in meaningful ways to build sustainable technology.</p>
<p>Instead of seeing diversity and inclusion initiatives as problematic or unneeded, D&amp;I groups in FOSS communities stand to be the most effective people at building community and influence.</p>

<h3 id="power-and-governance">Power and governance&nbsp;<a class="hanchor" href="#power-and-governance" aria-label="Anchor link for: Power and governance">🔗</a></h3>
<p>In the activist / humanitarian / non-profit world, there is a power struggle for sustainability as it pertains to funding. Funding models in non-profit work (usually sustained by grants, sponsors, and donors) encourage solutions that get funded, not necessarily solve problems the most effective way. Many organizations struggle with how to achieve sustainable funding without being so dependent on the expiration date of a grant&rsquo;s funding.</p>
<p>We need more representative governance models in open source communities that reflect the interests of the communities around them, not necessarily an individual, a company, or group of companies. Building governance models that empower people within a community to make decisions and reduce the corrosive influence of money from humanitarian work.</p>

<h2 id="where-do-we-go-from-here">Where do we go from here?&nbsp;<a class="hanchor" href="#where-do-we-go-from-here" aria-label="Anchor link for: Where do we go from here?">🔗</a></h2>
<p>This blog post is an active reflection of my own thoughts and perspectives of Free Software, activism, and humanitarian work. If you are interested in pushing this conversation further, find me in Brussels, Belgium for any of the following three conferences and let&rsquo;s chat further:</p>
<ul>
<li>30 January 2020: <a href="https://sustainoss.org/"><strong>Sustain Summit</strong></a></li>
<li>31 January 2020: <a href="https://chaoss.community/chaosscon-2020-eu/"><strong>CHAOSScon</strong></a></li>
<li>1-2 February 2020: <a href="https://fosdem.org/2020/"><strong>FOSDEM</strong></a></li>
</ul>
<p>If you want to discuss this further, you can also drop a line in our online discussion community, <em><a href="https://fossrit.community/">fossrit.community</a></em>.</p>
<hr>
<p><em>Photo by <a href="https://unsplash.com/@bazingraphy?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Walid Berrazeg</a> on <a href="https://unsplash.com/s/photos/black-lives-matter?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></em></p>]]></description></item><item><title>HPC workloads in containers: Comparison of container run-times</title><link>https://jwheel.org/blog/2019/08/hpc-workloads-containers/</link><pubDate>Tue, 20 Aug 2019 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2019/08/hpc-workloads-containers/</guid><description><![CDATA[<p>Recently, I worked on an interesting project to evaluate different container run-times for high-performance computing (HPC) clusters. HPC clusters are what we once knew as <a href="https://en.wikipedia.org/wiki/Supercomputer">supercomputers</a>. Today, instead of giant mainframes, they are hundreds, thousands, or tens of thousands of <a href="https://en.wikipedia.org/wiki/Massively_parallel">massively parallel</a> systems. Since performance is critical, virtualization with tools like virtual machines or Docker containers was not realistic. The overhead was too much compared to bare metal.</p>
<p>However, the times are a-changing! <a href="https://jwfblog.wpenginepowered.com/tag/containers/">Containers</a> are entering as real players in the HPC space. Previously, containers were brushed off as incompatible with most HPC workflows. Now, several open source projects are emerging with unique approaches to enabling containers for HPC workloads. This blog post evaluates four container run-times in an HPC context, as they stand in July 2019:</p>
<ul>
<li>Charliecloud</li>
<li>Shifter</li>
<li>Singularity</li>
<li>Podman</li>
</ul>

<h2 id="research-requirements">Research requirements&nbsp;<a class="hanchor" href="#research-requirements" aria-label="Anchor link for: Research requirements">🔗</a></h2>
<p>My research focused around a specific set of requirements. To receive a favorable review, a container run-time needed to meet three basic requirements:</p>
<ul>
<li>Support CentOS/RHEL 7.5+</li>
<li>Compatibility with <a href="https://en.wikipedia.org/wiki/Univa_Grid_Engine">Univa GridEngine</a></li>
<li>Support for very large numbers of users</li>
</ul>
<p>Obviously there are security concerns with the third requirement. This is one reason containers have not made a strong showing in the HPC world yet. With the Docker security model, root access is a requirement to build and run containers. In a production HPC environment where users do not trust other users, this is a hard blocker.</p>
<p>Other HPC environments may differ. If you are an HPC administrator and also considering containers in your environment, consider my requirements. My research was exclusively framed through these three requirements.</p>

<h2 id="charliecloud">Charliecloud&nbsp;<a class="hanchor" href="#charliecloud" aria-label="Anchor link for: Charliecloud">🔗</a></h2>
<p><a href="https://github.com/hpc/charliecloud">Charliecloud</a> is an open source project based on a user-defined software stack (UDSS). Like most container implementations, it uses Linux user namespaces to run unprivileged containers. It is designed to be as minimal and lightweight as possible, to the point of not adding features that could conflict with any specific use cases. This can be a positive or a negative, depending on how complex your environment is.</p>
<p>However, I abandoned my research on Charliecloud early on after reading this <a href="https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0177459">PLOS research paper</a>:</p>
<blockquote>
<p>The software makes use of kernel namespaces that are not deemed stable by multiple prominent distributions of Linux (e.g. <strong>no versions of Red Hat Enterprise Linux or compatibles support it</strong>), and may not be included in these distributions for the foreseeable future.</p>
<p>The software is emphasized for its simplicity and being less than 500 lines of code, and this is an indication of having a lack of user-driven features. The containers are not truly portable because they must be extracted from Docker and configured by an external C executable before running, and even after this step, all file ownership and permissions are dependent on the user running the workflow.</p>
<p><a href="https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0177459">Singularity: Scientific containers for mobility of compute</a>, May 2017 (Gregory M. Kurtzer, Vanessa Sochat, Michael W. Bauer)</p>
</blockquote>
<p>However, it is worth noting this paper was written in support of Singularity. It was also written by the Singularity project lead and others from the Singularity open source community. If you are conducting your own independent research, consider looking closer at Charliecloud, since at the time of writing it is still actively developed. The research paper was written in May 2017.</p>
<p><em>Edit</em>: This situation already changed and Charliecloud is probably worth a deeper look:</p>
<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">This is a fantastic write up, one thing to mention is that abandoning the CharlieCloud research based solely on lack of support of the user kernel namespace is no longer a blocker. For example, PodMan now uses the same technology and it was released in RHEL8.</p>&mdash; Apptainer (formerly Singularity) (@SingularityApp) <a href="https://twitter.com/SingularityApp/status/1163846727700344834?ref_src=twsrc%5Etfw">August 20, 2019</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>



<h2 id="shifter">Shifter&nbsp;<a class="hanchor" href="#shifter" aria-label="Anchor link for: Shifter">🔗</a></h2>
<p><a href="https://github.com/NERSC/shifter">Shifter</a> is another container run-time implementation focused on HPC users. At time of writing, it is almost exclusively backed by the <a href="https://www.nersc.gov/">National Energy Research Scientific Computing Center</a> and <a href="https://www.cray.com/">Cray</a>. Most documented use cases use <a href="https://slurm.schedmd.com/">Slurm</a> for cluster management / job scheduling. Instead of a Docker/OCI format, it uses its own Shifter-specific format, but this is reverse-compatible with Docker container images. It requires hosting a registry service and a <strong>Shifter Image Gateway</strong>.</p>
<p>The Shifter Image Gateway is a REST interface implemented with <a href="https://palletsprojects.com/p/flask/">Python Flask</a>. It pulls images from the registry service and converts them to the Shifter image format. MPI integration is supported but its implementation is MPICH-centric.</p>
<p>The downside to Shifter is lack of community. There are not many other organizations other than NERSC and Cray that appear to support Shifter. <a href="https://github.com/NERSC/shifter/tree/master/doc">Documentation exists</a>, but at writing time (July 2019), the last significant contribution was April 2018. Some bugs and feature requests are triaged, but there is not much of a maintainer presence in these issues. Most follow-up discussion to new issues are from a handful of outside contributors without commit access.</p>
<p>Additionally, there are several signs of stagnant development, such as <a href="https://github.com/NERSC/shifter/pull/172">NERSC/shifter#172</a> to add better MPI integration. However, the PR stalled out since it was first opened in April 2017. Furthermore, there is a high bus factor: most contributions and pull requests come from the same two developers, indicating low engagement from the wider HPC community. Code is <a href="https://travis-ci.org/NERSC/shifter">regularly tested</a>, but integration tests <a href="https://travis-ci.org/NERSC/shifter/jobs/541868408#L880-L969">only exist for Slurm</a>. For more details, check out the <a href="https://github.com/NERSC/shifter/pulse">GitHub project pulse</a>.</p>
<p>A detail worth noting is Shifter was one of the first real container run-times for HPC. A former Shifter collaborator branched off from Shifter to start Singularity (and eventually, a for-profit company to support it, Sylabs). It invites room for personal biases when evaluating Shifter and Singularity, specifically if you are not a newcomer in the HPC community.</p>

<h2 id="singularity">Singularity&nbsp;<a class="hanchor" href="#singularity" aria-label="Anchor link for: Singularity">🔗</a></h2>
<p><a href="https://sylabs.io/singularity/">Singularity</a> is the third and last HPC-specific player in the container run-time world. The vendor is <a href="https://sylabs.io/about-us/mission">Sylabs Inc</a>. There are a few different factors that make Singularity interesting, and in my opinion, the most promising HPC container implementation.</p>

<h3 id="general-overview">General overview&nbsp;<a class="hanchor" href="#general-overview" aria-label="Anchor link for: General overview">🔗</a></h3>
<p>Singularity v3.x.x is written almost entirely in Golang. It supports two image formats: Docker/OCI and Singularity&rsquo;s native Single Image Format (SIF). As of September 2018, there are an estimated 25,000+ systems running Singularity, including users like <a href="https://www.tacc.utexas.edu/">TACC</a>, <a href="https://www.sdsc.edu/">San Diego Supercomputer Center</a>, and <a href="https://www.ornl.gov/">Oak Ridge National Laboratory</a>. Additionally, Univa <a href="http://www.univa.com/about/news/press_2018/07312018.php">announced a partnership</a> with Sylabs in July 2018 to bring Singularity workflows to Univa GridEngine.</p>
<p>Sylabs offers Singularity (free and open source) and SingularityPRO (paid and proprietary). The commercial version comes with a support contract and long-term support for some releases (among other things).</p>
<p>Admin/root access is not required to run Singularity containers and it requires no additional configuration to do this out of the box. Containers are run under the Linux user ID that launches them (see <em><a href="https://sylabs.io/guides/2.6/user-guide/introduction.html#security-and-privilege-escalation">Security and privilege escalation</a></em>).</p>
<p>At a quick glance, Sylabs developers appear to be <a href="https://github.com/sylabs">actively engaged</a> in the Kubernetes development community, particularly around Red Hat technology. They also seem to keep their promises: in early 2018, blog posts show ambitious feature promises for the then-upcoming v3.0.0 release at the end of the year. Near the end of 2018, the release was delivered on-time with most/all of the promised functionality.</p>

<h3 id="image-formats">Image formats&nbsp;<a class="hanchor" href="#image-formats" aria-label="Anchor link for: Image formats">🔗</a></h3>
<p>The Singularity Image Format (SIF) is a single-image format (i.e. no layers involved). This was a design decision specifically for HPC workloads. SIFs are treated like a binary executable by a Linux user. Additionally, it is possible to create SIFs using the <a href="https://sylabs.io/guides/3.3/user-guide/definition_files.html#sections">Definition File</a> spec.</p>
<p>However, Singularity is also compatible with Docker/OCI images and OCI is given <a href="https://github.com/sylabs/singularity/labels/OCI">active development focus</a> by upstream Singularity. Docker/OCI images are converted on-the-fly to a SIF. Docker/OCI images can be used locally or pulled from a remote registry like Docker Hub or <a href="https://www.openshift.com/products/quay">Quay</a>. To the user, if using a Docker/OCI image, the conversion is seamless and does not require additional configuration to use.</p>
<p>See <a href="https://web.archive.org/web/20190726223349/https://archive.sylabs.io/2018/03/sif-containing-your-containers/">this Sylabs blog post</a> for a deeper dive on how SIFs were designed.</p>

<h3 id="flexible-configuration">Flexible configuration&nbsp;<a class="hanchor" href="#flexible-configuration" aria-label="Anchor link for: Flexible configuration">🔗</a></h3>
<p>Singularity (uniquely?) offers advanced configuration options for HPC administrators. Some highlights are detailed here:</p>
<ul>
<li><strong>Controlling bind mounts</strong>:
<ul>
<li><code>mount dev = minimal</code>: Only binds <code>null</code>, <code>zero</code>, <code>random</code>, <code>urandom</code>, and <code>shm</code> into container</li>
<li><code>mount home = {yes,no}</code>, <code>mount tmp = {yes,no}</code>: Choose to enable or disable these bind mounts globally</li>
<li><code>bind path = &quot;&quot;</code>: Bind specific paths into containers by default</li>
<li><code>user bind control = {yes,no}</code>: Allow users to include their own bind mount paths or limit it to an admin-approved set of paths (above)</li>
</ul>
</li>
<li><strong>Controlling containers</strong>:
<ul>
<li><code>limit container paths =</code>: Possible to limit SIFs provided at a specific path and nowhere else</li>
</ul>
</li>
</ul>

<h3 id="hpc-community-engagement">HPC community engagement&nbsp;<a class="hanchor" href="#hpc-community-engagement" aria-label="Anchor link for: HPC community engagement">🔗</a></h3>
<p>These notes only apply to Singularity free, not the proprietary SingularityPRO product.</p>
<p>The signals from their open source community engagement are positive and strong. They appear authentic and genuine to an <a href="https://sylabs.io/resources/community">open source commitment</a> (i.e. not <a href="https://blogs.gnome.org/bolsh/2010/07/19/rotten-to-the-open-core/">open-core business model</a>). This is demonstrated in a few ways:</p>
<p>First, they have <a href="https://sylabs.io/guides/3.3/user-guide/">thorough user documentation</a>, intended for end-users in HPC environments using Singularity. They have a less thorough but still useful <a href="https://sylabs.io/guides/3.2/admin-guide/">admin documentation</a>.</p>
<p>Second, all issues are triaged quickly and get feedback from core developers or outside contributors at a consistent pace. Pull requests don&rsquo;t stagnate either: the oldest PR is less than six months old.</p>
<p>Third, code is regularly tested (<a href="https://travis-ci.org/sylabs/singularity">1</a>, <a href="https://circleci.com/gh/sylabs/singularity/tree/master">2</a>). The code generally follows <a href="https://goreportcard.com/report/github.com/sylabs/singularity">best practices</a> (i.e. it is not atrocious to work with).</p>
<p>Fourth, there are also a handful of active contributors (both developers and in the community support channels) who come from outside of Sylabs, which indicates more engagement by a wider audience of people.</p>
<p>For more statistics, check out the <a href="https://github.com/sylabs/singularity/pulse">GitHub project pulse</a>.</p>

<h2 id="podman">Podman&nbsp;<a class="hanchor" href="#podman" aria-label="Anchor link for: Podman">🔗</a></h2>
<p><em>tl;dr</em>: Podman is an underdog that shows promise, but likely needs another one or two years of time for most HPC use cases.</p>
<p><a href="https://podman.io/">Podman</a> is a container run-time developed by Red Hat. Its primary goal is to be a drop-in replacement for Docker. While it is not explicitly designed with HPC use cases in mind, it intends to be a lightweight &ldquo;wrapper&rdquo; to run containers without the overhead of the full Docker daemon. Furthermore, the Podman development team is recently looking into better support for HPC use cases.</p>
<p>Podman is currently lacking for a HPC use case for some of these reasons:</p>
<ol>
<li><a href="https://github.com/containers/libpod/issues/3478">Missing support for parallel filesystems</a> (e.g. <a href="https://en.wikipedia.org/wiki/IBM_Spectrum_Scale">IBM Spectrum Scale</a>)</li>
<li>Rootless Podman was designed to <a href="https://github.com/containers/libpod/blob/master/rootless.md">use kernel user namespaces</a> which is <a href="https://github.com/containers/libpod/issues/3561">not compatible with most parallel filesystems</a> (might change in a year or two)</li>
<li><a href="https://github.com/containers/libpod/issues/3587">Not yet possible to set system site policy defaults</a></li>
<li><a href="https://github.com/containers/libpod/issues/3589">Pulling Docker/OCI images requires multiple subuids/subgids</a> (might change in a year or two)</li>
</ol>
<p>Where Podman does shine is providing a way to run <strong><em>and</em></strong> build containers without root access or <code>setuid</code>.</p>
<p>The same challenges and problems required for Podman to run OCI containers in an HPC environment are the same problems faced by Singularity to build SIF images without root in the HPC environment: <strong>mapping UIDs to subuids/subgids on the compute nodes</strong>. More interestingly, <strong><a href="https://buildah.io/">Buildah</a></strong> offers a promising way to enable users to build container images as Docker/OCI images all without root. It is plausible to use Buildah as the container image delivery mechanism and swap out the container run-time implementation (Podman vs. Singularity) depending on specific needs and requirements.</p>

<h2 id="what-do-you-think">What do you think?&nbsp;<a class="hanchor" href="#what-do-you-think" aria-label="Anchor link for: What do you think?">🔗</a></h2>
<p>I hope other folks out there in the HPC world find this preliminary research useful. Do you agree or disagree with any parts of this write-up? Is something out-of-date? Drop a comment down below.</p>]]></description></item><item><title>TeleIRC v1.3.1 released with quality-of-life improvements</title><link>https://jwheel.org/blog/2019/04/teleirc-v1-3-1-released/</link><pubDate>Mon, 22 Apr 2019 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2019/04/teleirc-v1-3-1-released/</guid><description><![CDATA[<p>On April 20th, 2019, the TeleIRC development team <a href="https://github.com/RITlug/teleirc/releases/tag/v1.3.1">released TeleIRC v1.3.1</a>, the latest version after the final development sprint for the university semester. This release introduces minor improvements in order to accommodate heavier work-balance loads on our volunteer contributors. However, it gave us an opportunity to reduce technical debt. This blog post explains what&rsquo;s new in TeleIRC v1.3.1 and also offers a retrospective into how this last sprint went.</p>
<p>Special thanks and appreciation goes to <a href="https://www.linkedin.com/in/tim-zabel/">Tim Zabel</a> and <a href="https://github.com/nic-hartley">Nic Hartley</a> for their contributions this release cycle.</p>

<h2 id="whats-new">What&rsquo;s new&nbsp;<a class="hanchor" href="#whats-new" aria-label="Anchor link for: What&rsquo;s new">🔗</a></h2>
<ul>
<li>Bold usernames in message prefixes (<a href="https://github.com/RITlug/teleirc/pull/134">#134</a>, <a href="https://github.com/nic-hartley">Nic Hartley</a>)</li>
<li>Include filetype in IRC string when a document is uploaded on Telegram (<a href="https://github.com/RITlug/teleirc/pull/139">#139</a>, <a href="https://github.com/Tjzabel">Tim Zabel</a>)</li>
<li>Include zero-width space in username for join/part messages to group (<a href="https://github.com/RITlug/teleirc/pull/139">#139</a>, <a href="https://github.com/Tjzabel">Tim Zabel</a>)</li>
</ul>
<p>Additionally, contributor documentation improved. I added <a href="https://github.com/RITlug/teleirc/blob/master/.github/CONTRIBUTING.md">contributor guidelines</a> and instructions to set up a development environment. Also, our friends at <a href="https://ura.design/">Ura Design</a> designed our new project logo. Thanks to Ura, we have an awesome project logo and stickers in time for <a href="https://www.rit.edu/imagine/">Imagine RIT 2019</a> later this month!</p>
<blockquote class="twitter-tweet" data-dnt="true"><p lang="en" dir="ltr">They&#39;re here! Check out our new @uracreative logo and stickers for the <a href="https://twitter.com/hashtag/TeleIRC?src=hash&amp;ref_src=twsrc%5Etfw">#TeleIRC</a> project. Grab some stickers at the <a href="https://twitter.com/RITlug?ref_src=twsrc%5Etfw">@RITlug</a> <a href="https://twitter.com/Imagine_RIT?ref_src=twsrc%5Etfw">@Imagine_RIT</a> festival on April 27! <a href="https://t.co/KGjT4F0qdY">pic.twitter.com/KGjT4F0qdY</a></p>&mdash; RIT Linux Users Group (@RITlug) <a href="https://twitter.com/RITlug/status/1118641571291901952?ref_src=twsrc%5Etfw">April 17, 2019</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>



<h2 id="teleirc-v131-sprint-retrospective">TeleIRC v1.3.1: sprint retrospective&nbsp;<a class="hanchor" href="#teleirc-v131-sprint-retrospective" aria-label="Anchor link for: TeleIRC v1.3.1: sprint retrospective">🔗</a></h2>
<p>Originally, we <a href="https://jwfblog.wpenginepowered.com/2019/03/teleirc-roadmap-v1-4/">planned to release v1.4</a> at the end of this sprint. For a number of reasons, this did not happen. We decided to reduce our scope and finish strong with a bugfix release instead of the originally-planned feature release. This retrospective summarizes &ldquo;lessons learned&rdquo; for future project sprints with a team of university students.</p>

<h3 id="extended-holidays-are-sprint-bookends">Extended holidays are sprint bookends&nbsp;<a class="hanchor" href="#extended-holidays-are-sprint-bookends" aria-label="Anchor link for: Extended holidays are sprint bookends">🔗</a></h3>
<p>In the last sprint, our university had a week-long break from classes. Most students use this time to visit family or travel outside of Rochester. Originally, we agreed to pause the sprint and resume when we returned. In retrospect, it didn&rsquo;t work out like that.</p>
<p>It was harder to start again when we returned from the break. Instead of an extended holiday acting as a pause in an ongoing sprint, extended holiday breaks should divide two separate sprints. The breaks from classes are personal time; working on projects is not possible for everyone. The interruption caused by a break impacts productivity of the team. Therefore, future sprint planning will take the <a href="https://www.rit.edu/calendar">university calendar</a> into consideration.</p>

<h3 id="adjustable-sprint-length-to-semester">Adjustable sprint length to semester&nbsp;<a class="hanchor" href="#adjustable-sprint-length-to-semester" aria-label="Anchor link for: Adjustable sprint length to semester">🔗</a></h3>
<p>Sprint lengths should have an adjustable length depending on what part of the academic semester the sprint is. For example, earlier this semester, we released v1.3 in a two-week sprint. For this v1.3.1 release, it was over a month. What happened? Should sprints have a variable length?</p>
<p>When working with an academic crowd, variable sprint lengths are worth considering. The first half of a semester typically has less assigned coursework. Final projects are not at play. Therefore, usually team members have more time to invest in the project at the start of a semester. Towards the end of the semester, coursework and class projects pile on and make it difficult to find bandwidth to work on side projects like TeleIRC.</p>
<p>The compromise is keeping our sprints short at the start of a semester and stretching them out as a semester goes on. This gives students more flexibility to work at a pace that encourages quality work but isn&rsquo;t overwhelming with other responsibilities of being a student. Going forward, we will try variable-length sprints in the Fall 2019 semester.</p>

<h2 id="get-involved-with-teleirc">Get involved with TeleIRC!&nbsp;<a class="hanchor" href="#get-involved-with-teleirc" aria-label="Anchor link for: Get involved with TeleIRC!">🔗</a></h2>
<p>More opportunities are coming to participate with TeleIRC! The team is happy for new people to join us. Opportunities are available for short-term and long-term contributions.</p>
<p>Come say hello in our developer chat rooms, either on <a href="https://webchat.freenode.net/?channels=ritlug-teleirc">IRC</a> or in <a href="https://t.me/teleirc">Telegram</a>! Watch for <a href="https://jwfblog.wpenginepowered.com/tag/teleirc/">TeleIRC development reports</a> on my blog for more announcements.</p>
<hr>
<p><em><a href="https://unsplash.com/photos/guiQYiRxkZY">Background photo</a> by <a href="https://unsplash.com/@epicantus">Daria Nepriakhina</a> on <a href="https://unsplash.com/">Unsplash</a>.</em></p>]]></description></item><item><title>Roadmap for TeleIRC v1.4</title><link>https://jwheel.org/blog/2019/03/teleirc-roadmap-v1-4/</link><pubDate>Sat, 23 Mar 2019 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2019/03/teleirc-roadmap-v1-4/</guid><description><![CDATA[<p>The <a href="https://ritlug.com/">RITlug</a> TeleIRC developer team celebrated the <a href="https://github.com/RITlug/teleirc/releases/tag/v1.3">v1.3 release</a> on March 3rd, 2019. Looking ahead, the team is mapping out next steps for quality-of-life improvements in v1.4.</p>

<h2 id="whats-coming-in-teleirc-v14">What&rsquo;s coming in TeleIRC v1.4&nbsp;<a class="hanchor" href="#whats-coming-in-teleirc-v14" aria-label="Anchor link for: What&rsquo;s coming in TeleIRC v1.4">🔗</a></h2>
<p><a href="https://github.com/RITlug/teleirc/milestone/6">TeleIRC v1.4</a> is the next feature release of TeleIRC. The targeted release date for v1.4 is by the end of April 2019 (i.e. the end of the academic semester for students involved with the project). Following v1.4, the project will likely enter brief hibernation until Fall 2019 when the <a href="https://www.rit.edu/">RIT</a> academic semester begins again.</p>
<p>At the developer meeting on March 23rd, we discussed the scope of this sprint and what we felt is realistic for project maintainers to work on:</p>

<h3 id="primary-goals">Primary goals&nbsp;<a class="hanchor" href="#primary-goals" aria-label="Anchor link for: Primary goals">🔗</a></h3>
<ul>
<li>Include limited characters from Telegram replies in relayed IRC message (<a href="https://github.com/RITlug/teleirc/issues/51">RITlug/teleirc#51</a>)</li>
<li>Create doc page on development environment (<a href="https://github.com/RITlug/teleirc/issues/77">RITlug/teleirc#77</a>)</li>
<li>QoL Improvements: show file-type of documents in IRC, insert ZWP character in join/leave messages (<a href="https://github.com/RITlug/teleirc/issues/130">RITlug/teleirc#130</a>)</li>
<li>Allow user to configure more variables for IRC server connection (e.g. port, SSL certs, etc.) (<a href="https://github.com/RITlug/teleirc/issues/113">RITlug/teleirc#113</a>)</li>
</ul>

<h3 id="secondary-goals">Secondary goals&nbsp;<a class="hanchor" href="#secondary-goals" aria-label="Anchor link for: Secondary goals">🔗</a></h3>
<ul>
<li>Add Telegram-side highlighting for IRC messages prefixed with username (<a href="https://github.com/RITlug/teleirc/issues/44">RITlug/teleirc#44</a>)</li>
<li>Bold usernames on Telegram and IRC (<a href="https://github.com/RITlug/teleirc/issues/19">RITlug/teleirc#19</a>)</li>
</ul>

<h2 id="recap-of-teleirc-v13-sprint">Recap of TeleIRC v1.3 sprint&nbsp;<a class="hanchor" href="#recap-of-teleirc-v13-sprint" aria-label="Anchor link for: Recap of TeleIRC v1.3 sprint">🔗</a></h2>
<p>The <a href="https://jwfblog.wpenginepowered.com/2019/02/teleirc-v1-3-next-release/">TeleIRC v1.3 release</a> follows the v1.2.2 release on December 8th, 2018. This release is a significant change in how project development is done. For the first time, a special interest group inside of <a href="https://ritlug.com/">RITlug</a> exists around the project. The team shifted to an agile-like development practice to fit inside of the <a href="https://www.rit.edu/">RIT</a> student academic schedule.</p>
<p>A special shout-out is earned by <a href="https://twitter.com/Tjzabel21">Tim Zabel</a> for his support and participation as a core contributor during the v1.3 sprint.</p>

<h2 id="get-involved-with-teleirc">Get involved with TeleIRC!&nbsp;<a class="hanchor" href="#get-involved-with-teleirc" aria-label="Anchor link for: Get involved with TeleIRC!">🔗</a></h2>
<p>More opportunities are coming to participate with TeleIRC! We would love to have more people get involved and participate in the project. There is no formal commitment to contributing, although we ask for participation through a single sprint cycle.</p>
<p>Soon, we will have better new contributor on-boarding docs. Our weekly developer meetings are now happening over public audio/video call each Saturday at 15:00 US EDT, so anyone can join and participate.</p>
<p>Come say hello in our developer chat rooms, either on <a href="https://webchat.freenode.net/?channels=ritlug-teleirc">IRC</a> or in <a href="https://t.me/teleirc">Telegram</a>!</p>
<hr>
<p><em><a href="https://unsplash.com/photos/guiQYiRxkZY">Background photo</a> by <a href="https://unsplash.com/@epicantus">Daria Nepriakhina</a> on <a href="https://unsplash.com/">Unsplash</a>.</em></p>]]></description></item><item><title>TeleIRC v1.3: Developers map out next release</title><link>https://jwheel.org/blog/2019/02/teleirc-v1-3-next-release/</link><pubDate>Sun, 03 Feb 2019 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2019/02/teleirc-v1-3-next-release/</guid><description><![CDATA[<p>On Saturday, February 2nd, 2019, the <a href="https://github.com/RITlug/teleirc">TeleIRC</a> community in Rochester, NY held the first developers&rsquo; meeting. Starting this month, weekly meetings are held to discuss blocking issues and plan ahead for the future of the project. Current project lead <a href="https://jwheel.org/">Justin Wheeler</a> met with <a href="https://github.com/Tjzabel">Tim Zabel</a> and <a href="https://github.com/nic-hartley/">Nic Hartley</a> to finish planning the v1.3 milestone for TeleIRC. Notably, this marks the next feature-release of TeleIRC since v1.2 in October 2018.</p>
<p>Read on to learn more about what&rsquo;s coming in TeleIRC v1.3.</p>

<h2 id="whats-coming-in-teleirc-v13">What&rsquo;s coming in TeleIRC v1.3?&nbsp;<a class="hanchor" href="#whats-coming-in-teleirc-v13" aria-label="Anchor link for: What&rsquo;s coming in TeleIRC v1.3?">🔗</a></h2>
<p>The developers&rsquo; meeting focused on identifying critical tasks to work on for the next sprint. The following open issues were identified as essential for v1.3:</p>
<ul>
<li><strong><a href="https://github.com/RITlug/teleirc/issues/41">#41</a></strong>: Sending an image with a caption in telegram then editing the caption causes the image to get sent again</li>
<li><strong><a href="https://github.com/RITlug/teleirc/issues/44">#44</a></strong>: Add Telegram-side highlighting for IRC messages prefixed with username</li>
<li><strong><a href="https://github.com/RITlug/teleirc/issues/53">#53</a></strong>: multi-line messages should have each lined prefixed with the userid</li>
<li><strong><a href="https://github.com/RITlug/teleirc/pull/102">#102</a></strong>: Splitting of messages sent to IRC, prepending TG username to each one</li>
<li><strong><a href="https://github.com/RITlug/teleirc/issues/112">#112</a></strong>: Insert zero-width space in Telegram usernames sent to IRC</li>
<li><strong><a href="https://github.com/RITlug/teleirc/issues/115">#115</a></strong>: Image url reveals bot&rsquo;s token</li>
<li><strong><a href="https://github.com/RITlug/teleirc/issues/118">#118</a></strong>: Refactor documentation into smaller pages (to make it more readable)</li>
</ul>
<p>Of these, #53 and #102 will be closed by <a href="https://github.com/RITlug/teleirc/pull/102">pull request #102</a>. <a href="https://github.com/michalrud">Michał Rudowicz</a> contributed #102 and it should be merged during this sprint window. (<em>Thanks Michał!</em>)</p>
<p>Keep up with more development news by watching the <a href="https://github.com/RITlug/teleirc/milestone/5">v1.3 milestone</a> on GitHub.</p>

<h2 id="when-is-teleirc-v13-coming">When is TeleIRC v1.3 coming?&nbsp;<a class="hanchor" href="#when-is-teleirc-v13-coming" aria-label="Anchor link for: When is TeleIRC v1.3 coming?">🔗</a></h2>
<p>TeleIRC v1.3 is projected for <strong>Saturday, March 2nd</strong>. For the selected issues, we felt four weeks was sufficient to accomplish and meet all existing goals. If we move faster than expected, we may move items from the <a href="https://github.com/RITlug/teleirc/milestone/6">v1.4 milestone</a> up to this release.</p>

<h2 id="how-can-i-participate">How can I participate?&nbsp;<a class="hanchor" href="#how-can-i-participate" aria-label="Anchor link for: How can I participate?">🔗</a></h2>
<p>Want to help out or get involved with TeleIRC? We are happy to welcome you! Past contributors have come from all around the world.</p>
<p>Say hello in our Freenode IRC channel, <a href="https://webchat.freenode.net/?channels=ritlug-teleirc">#ritlug-teleirc</a>, or <a href="https://t.me/teleirc">join the Telegram group</a>. You can also look through our &ldquo;<a href="https://github.com/RITlug/teleirc/issues?q=is%3Aopen&#43;is%3Aissue&#43;label%3A%22good&#43;first&#43;issue%22&#43;no%3Aassignee">good first issue</a>&rdquo; tickets in GitHub. If something looks interesting, leave a comment of interest in the GitHub issue and a committer can offer more guidance.</p>
<p>If you are a user and want to share feedback or thoughts with the team, leave a comment on this blog post and they will be shared with the team.</p>
<hr>
<p><em><a href="https://unsplash.com/photos/guiQYiRxkZY">Background photo</a> by <a href="https://unsplash.com/@epicantus">Daria Nepriakhina</a> on <a href="https://unsplash.com/">Unsplash</a>.</em></p>]]></description></item><item><title>Why did Fedora Modularity fail in 2017? A brief reflection</title><link>https://jwheel.org/blog/2019/01/why-did-fedora-modularity-fail/</link><pubDate>Mon, 21 Jan 2019 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2019/01/why-did-fedora-modularity-fail/</guid><description><![CDATA[<p>For the ISTE-430 Information Requirements Modelling course at the <a href="https://www.rit.edu/">Rochester Institute of Technology</a>, students are asked to analyze an example of a failed software project and write a short summary on why it failed. For the assignment, I evaluated the <a href="https://communityblog.fedoraproject.org/modularity-dead-long-live-modularity/">December 2017 announcement</a> on <a href="https://docs.pagure.org/modularity/">Fedora Modularity</a>. I thought it was an interesting example of a project that experienced initial difficulty but re-calibrated and succeeded in the end. And it is a project I am biased towards, as a Fedora user and sysadmin.</p>
<p>I thought sharing it on my blog might be interesting for others. Don&rsquo;t read into this too much – it was a quick analysis from a single primary source and a few secondary references.</p>

<h2 id="what-is-fedora-modularity">What is Fedora Modularity?&nbsp;<a class="hanchor" href="#what-is-fedora-modularity" aria-label="Anchor link for: What is Fedora Modularity?">🔗</a></h2>
<p>The <a href="https://getfedora.org/">Fedora Project</a> is a common Linux operating system which ships software in &ldquo;packages&rdquo;. <a href="https://fedoraproject.org/wiki/Objectives/Fedora_Modularization,_Requirements_Phase">Since June 2015</a>, project members built a pipeline to ship modular versions of existing packages, known as Modularity. <a href="https://docs.pagure.org/modularity/">Modularity</a> allows someone to use different versions of the same software (e.g. a programming library) on the same system without dependency conflicts.</p>
<p>In a way, Fedora Modularity shifts some responsibility from the Linux distribution (as a provider of known, good combinations of co-dependent packages) to the sysadmin (as a decision-maker to use different combinations of software versions in their environment). It&rsquo;s more flexible for a variety of deployment requirements. I see it as a net-positive win for the sysadmin experience since its final release.</p>

<h2 id="why-did-modularity-fail-in-2017">Why did Modularity fail in 2017?&nbsp;<a class="hanchor" href="#why-did-modularity-fail-in-2017" aria-label="Anchor link for: Why did Modularity fail in 2017?">🔗</a></h2>
<p>However, in <a href="https://communityblog.fedoraproject.org/modularity-dead-long-live-modularity/">this post-mortem</a> from December 2017, a project lead (Stephen Gallagher) announced Fedora Modularity efforts are scrapped for a total redesign. Even though it was not a final release, it was regarded as a failure because of the late status of the project, since its proposal in mid-2015. The post-mortem explained the amount of effort required by all software packagers was significant and also noted the wide amount of engagement necessary from different stakeholders. New requirements and steps to packaging guidelines were not understood by the community of software packagers, and project milestones were not met because of low participation in the packager community.</p>
<p>Their report reveals the amount of moving parts Fedora Modularity must account for. It demonstrated a flawed understanding of user and developer needs during initial feedback from the beta&rsquo;s implementation. In other words, the level of complexity for the project exceeded the amount of employee resources available to accomplish the project. The redesigned model (proposed in the reflection) pivoted by utilizing existing tools and infrastructure to support the new features, which required less changes for new software package updates. Thus, the packager community was better able to participate in providing new functionality in existing packages.</p>
<p>Additionally, sufficient documentation of new guidelines was unavailable to users, stemming from lack of engagement and feedback by existing users. This was later remedied with user experience testing through events like Test Days, which allowed any community member to try out new features and functionality with their own packaging workflows.</p>
<p>Since the project was finally implemented in late 2018, it was better received in the community than the failed launch in December 2017. Most success since the first failure came by simplifying project requirements (e.g. by leveraging how existing infrastructure was designed instead of reinventing the pipeline) and getting more user feedback on a regular basis (e.g. with community outreach events like Test Days and classroom sessions hosted live on YouTube).</p>
<hr>
<p>Gallagher, S. (2017). Modularity is Dead, Long Live Modularity! <em>Fedora Community Blog</em>. Retrieved from <a href="https://communityblog.fedoraproject.org/modularity-dead-long-live-modularity/">https://communityblog.fedoraproject.org/modularity-dead-long-live-modularity/</a></p>]]></description></item><item><title>Sustain OSS 2018: quick rewind</title><link>https://jwheel.org/blog/2018/11/sustain-oss-2018-quick-rewind/</link><pubDate>Tue, 13 Nov 2018 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2018/11/sustain-oss-2018-quick-rewind/</guid><description><![CDATA[<p>This year, I attended the second edition of the <a href="https://sustainoss.org/">Sustain Open Source Summit</a> (a.k.a. Sustain OSS) on October 25th, 2018 in London. Sustain OSS is a one-day discussion on various topics about sustainability in open source ecosystems. It&rsquo;s also a collection of diverse roles across the world of open source. From small project maintainers to open source program managers at the largest tech companies in the world, designers to government employees, there is a mix of backgrounds in the room. Yet there is a shared context around the most systemic problems faced by open source projects, communities, and people around the world.</p>
<p>The shared context is the most valuable piece of the conference. As a first-time attendee, I was blown away by the depth and range of topics covered by attendees. This blog post covers a narrow perspective of Sustain OSS through the sessions I participated and co-facilitated in.</p>

<h2 id="speed-breakout-groups">Speed breakout groups&nbsp;<a class="hanchor" href="#speed-breakout-groups" aria-label="Anchor link for: Speed breakout groups">🔗</a></h2>
<p>The morning started with speed breakout groups of between six to twelve people. Several attendees acted as facilitators for discussion on special topics. Every attendee could about half of all groups. I took extensive notes in the following groups:</p>
<ul>
<li>Charitable participation in open source</li>
<li>Diversity and inclusion</li>
<li>Turning open source projects into sustainable projects / companies</li>
<li>Design in open source</li>
<li>Open source financial sustainability models</li>
</ul>

<h3 id="sustain-oss-high-level-takeaways">Sustain OSS: High-level takeaways&nbsp;<a class="hanchor" href="#sustain-oss-high-level-takeaways" aria-label="Anchor link for: Sustain OSS: High-level takeaways">🔗</a></h3>
<p>To save you time, these are my high-level takeaways across all breakout groups I participated in:</p>
<ul>
<li>
<p>Open source isn&rsquo;t something just done in people&rsquo;s free time</p>
</li>
<li>
<p>Complex systems can enable systemic bias in terms of what &ldquo;open source&rdquo; means</p>
</li>
<li>
<p>Sustainability as topic of first priority / consideration, not an afterthought</p>
</li>
<li>
<p>There is no &ldquo;silver bullet&rdquo; solution to any of these challenges; they all require adaption to work across communities, projects, and organizations</p>
</li>
</ul>

<h3 id="charitable-participation-in-open-source">Charitable participation in open source&nbsp;<a class="hanchor" href="#charitable-participation-in-open-source" aria-label="Anchor link for: Charitable participation in open source">🔗</a></h3>
<p>This breakout group focused on the connection between charitable organizations and free software projects. It was facilitated by the esteemed <a href="https://twitter.com/o0karen0o">Karen Sandler</a> of the <a href="https://sfconservancy.org/">Software Freedom Conservancy</a>.</p>
<p>Overall, the conversation was split among creating ethical software, finding sustainable funding models, and balancing how much control to relinquish as a managing organization of an open source project. Some felt pride and ideology were strong drivers for contributors to ideological projects (which also mirrors my experience at <a href="http://unicefstories.org/magicbox/">UNICEF</a>). These could be key motivations to understand for contributors. Additionally, the challenge around sustainable funding models was common across charitable foundations focused on free software. Grant funding is a common strategy employed by charitable organizations, but the short-term nature of grants puts additional strain on resources to continue searching for new funding. Lastly, for charitable organizations overseeing or supporting free software projects, there was uncertainty over how much control should be left to projects. Attendees generally expressed a desire to let projects do what they want, but it sometimes came at the risk of additional overhead for the organization when everyone does something of everything. The concern over toxic communities came up, and how some issues remain buried until farther along in a relationship with a project. One successful solution employed was to hold monthly meetings among all member projects of an organization to address difficulties.</p>
<p>One interesting detail that captured my attention: one attendee noted how extensive effort into fundraising campaigns targeted to members of a foundation actually increased member engagement with the foundation.</p>

<h3 id="diversity-and-inclusion">Diversity and inclusion&nbsp;<a class="hanchor" href="#diversity-and-inclusion" aria-label="Anchor link for: Diversity and inclusion">🔗</a></h3>
<p>My biggest takeaway from this session was the danger in thinking of open source as something we do in our free time. This can be exclusive to different genders, races, and socioeconomic statuses. Some &ldquo;free time&rdquo; is more equal than others. The actionable piece for me is to be more conscious in building and growing communities to support different levels of contribution in a community.</p>
<p>The question I wanted to explore after reflecting is to ask of those who feel disadvantaged:</p>
<ul>
<li>What factors makes a project more or less inviting for you?</li>
<li>What can we do better when designing for participation in our communities?</li>
</ul>

<h3 id="turning-open-source-projects-into-sustainable-ones">Turning open source projects into sustainable ones&nbsp;<a class="hanchor" href="#turning-open-source-projects-into-sustainable-ones" aria-label="Anchor link for: Turning open source projects into sustainable ones">🔗</a></h3>
<p>My notes weren&rsquo;t thorough on this session, but there was an interesting point on trademark that came up during discussion of the <a href="https://commonsclause.com/">Commons Clause</a>. One participant was pursuing trademark law to enforce commercial protections and sustainability. They gave an example of a large corporation advertising support with a major open source project (e.g. a major software/hardware vendor supporting a specific NodeJS version). They wanted to use this as a way to create a more financially sustainable model for some projects.</p>

<h3 id="design-in-open-source">Design in open source&nbsp;<a class="hanchor" href="#design-in-open-source" aria-label="Anchor link for: Design in open source">🔗</a></h3>
<p>This breakout group focused on sustainable design and design practices in open source communities. The role of designers in technical projects was also discussed and how we can build technical communities to be more inclusive for designers. It was facilitated by <a href="https://elioqoshi.me/about-me/">Elio Qoshi</a>.</p>
<p>My takeaways from this breakout were that established ways of working can be unfriendly to designers and there is a need to emphasize diversity across different roles in a project or organization. Certain tools, platforms, or other mechanisms for contributing have poor user interfaces. They can push people away because of barriers to contributing with a frustrating user experience. Next, the need for diversity in roles was noted, with an example of engineers leading project management. Sometimes bias or oversights afforded as an engineer accidentally excludes others like designers or writers from contributing to our project. We should endeavor for people to spend more time on their preferred and most effective methods of contribution.</p>

<h3 id="financial-sustainability-models">Financial sustainability models&nbsp;<a class="hanchor" href="#financial-sustainability-models" aria-label="Anchor link for: Financial sustainability models">🔗</a></h3>
<p>This breakout session focused on the traditional sense of sustainability: in finances and resources. Attendees discussed different models used to fund open source projects and foundations. The session was facilitated by the founder of the <a href="https://musicbrainz.org/doc/About">MusicBrainz</a> project, <a href="https://twitter.com/MayhemBCN">Robert Kaye</a>.</p>
<p>The model used by <a href="https://metabrainz.org/about">MetaBrainz</a> essentially as a data broker was interesting and unique. MetaBrainz offers commercial data usage at a cost, and companies using their data have a strong need for the data and see value in it. Through other parts of their model since changing three years ago, they had significant gains in their revenue and were able to increase paid staff working on the projects.</p>
<p>The Amazon invoice cake is also an amusing story, but you should ask Robert directly about it.</p>


<h2 id="hour-breakout-sessions">Hour breakout sessions&nbsp;<a class="hanchor" href="#hour-breakout-sessions" aria-label="Anchor link for: Hour breakout sessions">🔗</a></h2>
<p>After lunch, attendees participated in two hour-long breakout sessions to explore specific topics in greater detail.</p>

<h3 id="human-aspect-of-governance">Human aspect of governance&nbsp;<a class="hanchor" href="#human-aspect-of-governance" aria-label="Anchor link for: Human aspect of governance">🔗</a></h3>
<p>Longer form notes are available below. I won&rsquo;t go into detail since it has its own document with notes and highlights.</p>
<p><a href="/docs/Open-source-human-governance-Sustain-OSS-London-2018.pdf">Human aspects of open source governance - Sustain OSS London 2018</a><a href="/docs/Open-source-human-governance-Sustain-OSS-London-2018.pdf">Download</a></p>

<h3 id="university-engagement">University engagement&nbsp;<a class="hanchor" href="#university-engagement" aria-label="Anchor link for: University engagement">🔗</a></h3>
<p>Together with <a href="https://twitter.com/epistemographer">Josh Greenberg</a> of the <a href="https://sloan.org/">Alfred P. Sloan Foundation</a>, we co-facilitated a spontaneous session on how universities can engage with open source communities and vice versa.</p>
<p>In our session, two major topics were discussed:</p>
<ul>
<li>
<p>Education (e.g. curriculum, institutions, programs, etc.)</p>
</li>
<li>
<p>Research</p>
</li>
</ul>
<p>We asked all participants why they decided to participate and what questions they had, even though we weren&rsquo;t able to answer all of them:</p>
<ol>
<li>How do we get the word out?</li>
<li>What research is most valuable for open source?</li>
<li>How to long-term sustain projects?</li>
<li>How to actually do and support research?</li>
<li>How to engage both students and faculty?</li>
<li>How to harness / enable institutions to make positive contributions to ecosystem?</li>
</ol>
<p>For education, we agreed that introducing and teaching open source in curriculum better serves students and the institution (both financially and in career satisfaction). Many technology companies today are participating in open source and it is an important skill to have for students entering the workforce. For research, students are already doing research and proposing topics, so better student engagement in open source is better for research.</p>
<p>Our takeaways were to better engage with existing organizations working on these problems for years already (e.g. <a href="http://teachingopensource.org/POSSE/">POSSE</a>), shifting the perspective of universities to be stewards of FOSS, and using collegiate hackathons as a way to better engage with undergraduate students.</p>
<p>One additional point that stood out to me was the emphasis across all breakout participants for a need of good communication skills to be successful. In many cases, the companies hiring top tech talent (from our breakout attendees) listed this as most desirable skill. Technology and new skills can be learned, but teaching good communication skills and how to work collaboratively are not easily learned.</p>

<h2 id="other-takeaways">Other takeaways&nbsp;<a class="hanchor" href="#other-takeaways" aria-label="Anchor link for: Other takeaways">🔗</a></h2>
<p>One takeaway I couldn&rsquo;t fit elsewhere was my changed perspective on &ldquo;technical&rdquo; vs. &ldquo;non-technical&rdquo; work. The phrase &ldquo;non-technical work&rdquo; implies an &ldquo;other space where development does not occur&rdquo;. Does the phrase place unequal priority on technical work? One action item is to avoid using &ldquo;non-technical work&rdquo; as an umbrella term, and instead call these areas by what they are: design, documentation, writing, marketing, community building, etc.</p>
<p>For me, I still want an umbrella term for these things, but I&rsquo;m open-minded for better alternatives to non-technical.</p>

<h3 id="skill-share-conflict-resolution">Skill share: conflict resolution&nbsp;<a class="hanchor" href="#skill-share-conflict-resolution" aria-label="Anchor link for: Skill share: conflict resolution">🔗</a></h3>
<p>The last event of Sustain OSS was a 1x1 skill share. Roughly half of the attendees identified a &ldquo;skill&rdquo; they could teach someone else in the room. The other half of attendees paired with someone teaching a skill they wanted to learn more about. I paired with <a href="https://www.jonobacon.com/about/bio/">Jono Bacon</a> on a short breakout on conflict resolution.</p>
<p>Jono detailed steps of working through and resolving conflict, including how to identify root problems, how to make steps to resolve them, and some personal philosophy of how we build and maintain relationships with others.</p>
<p>An important first step is to identify the critical point: this could be an ongoing crisis, dealing with interpersonal conflict, or dealing with burnout. When someone is explaining a problem, listen fully to them and understand what they are saying. Let them get it off their chest. Is there something else causing this behavior? Tap into the cloud of ranting and determine what the root cause is.</p>
<p>Once common ground is established, make a plan to resolve it. Jono&rsquo;s advice was to create written next steps and be explicit about expectations. This way, everyone is on the same page of what the next steps are and everyone involved has signed off on these next steps (this creates a sense of commitment and the next steps become written as &ldquo;law&rdquo;). Encourage others to restate the goals of conflict resolution in their own words. Once you have written goals and expectations, the crucial next step is follow-up. Check in on a regular basis with the person or people involved. Try to be neutral and unbiased when listening to others in these conversations. Go in with an open mind.</p>
<p>Lastly, we contextualized conflict resolution in personal philosophy of how we build and maintain relationships with others – both in and out of our open source projects. Sometimes the best way to address difficult interpersonal problems is to stop avoiding them and simply address them. Much easier said than done, but otherwise there is no escaping the perpetuated cycle of conflict if someone doesn&rsquo;t make a first step.</p>
<p>It&rsquo;s not just about code.</p>

<h2 id="thank-you">Thank you&nbsp;<a class="hanchor" href="#thank-you" aria-label="Anchor link for: Thank you">🔗</a></h2>
<p>To wrap up this Sustain OSS report, a few obligatory thank-yous are needed:</p>
<ul>
<li>
<p><strong><a href="https://sloan.org/">Sloan Foundation</a> / <a href="https://www.fordfoundation.org/">Ford Foundation</a></strong>: For the financial support I needed to attend and participate in the event – this is never something I take for granted and I am happy to have received a scholarship to attend and participate</p>
</li>
<li>
<p><strong><a href="https://twitter.com/epistemographer">Josh Greenberg</a> @ <a href="https://sloan.org/">Sloan Foundation</a></strong>: For helping me get over some imposter syndrome and co-facilitate the university engagement breakout session with me – thanks for the gentle push</p>
</li>
<li>
<p><strong><a href="https://twitter.com/MayhemBCN">Robert Kaye</a> @ <a href="https://metabrainz.org/">MetaBrainz</a></strong>: For being generally awesome and finally giving me someone to nerd out about all these crazy ideas of how free culture and music can actually be related!</p>
</li>
<li>
<p><strong><a href="https://www.rit.edu/gccis/stephen-jacobs">Stephen Jacobs</a></strong>: For always being supportive for yet another trip abroad and helping me map a strategy to get the most out of Sustain OSS</p>
</li>
</ul>
<p>Sustain OSS gave me a lot to think about and consider. I&rsquo;m glad and fortunate to have attended. I hope this event report gives additional visibility to some of the conversations held in London this year.</p>]]></description></item><item><title>Inside Facebook's open source program at RIT</title><link>https://jwheel.org/blog/2018/02/facebook-open-source-program/</link><pubDate>Mon, 26 Feb 2018 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2018/02/facebook-open-source-program/</guid><description><![CDATA[<p><a href="https://opensource.com/article/18/1/inside-facebooks-open-source-program"><em>Originally published on Opensource.com.</em></a></p>
<hr>
<p>Open source becomes more common every year, where it appears at <a href="https://opensource.com/article/17/8/tirana-government-chooses-open-source">government municipalities</a> to <a href="https://opensource.com/article/16/12/2016-election-night-hackathon">universities</a>. More companies turn to open source software too. However, some companies try to take it a step further, and instead of only using the software, they also support projects financially or with developers. Facebook&rsquo;s open source program encourages others in Facebook to release their code as open source. They also work and engage with the community to support the projects too.</p>
<p><a href="https://twitter.com/abernathyca">Christine Abernathy</a>, a Facebook developer advocate and member of the open source team, visited the Rochester Institute of Technology on November 15, 2017. She gave the <a href="https://www.eventbrite.com/e/fossmagic-talks-open-source-facebook-with-christine-abernathy-tickets-38955037566">November edition</a> of the FOSS Talks speaker series. Her talk explained how Facebook approaches open source and why it&rsquo;s an important part of the work they do.</p>

<h2 id="facebook-and-open-source">Facebook and open source&nbsp;<a class="hanchor" href="#facebook-and-open-source" aria-label="Anchor link for: Facebook and open source">🔗</a></h2>
<p>
<figure>
  <img src="/blog/2017/12/blog-article-facebook-open-source-projects.png" alt="Some of the projects released as open source by Facebook, including React, GraphQL, Caffe2, and more" loading="lazy">
  <figcaption>Some of the projects released as open source by Facebook, including React (<a href="https://reactjs.org/" class="bare">https://reactjs.org/</a>), GraphQL (<a href="http://graphql.org/" class="bare">http://graphql.org/</a>), Caffe2 (<a href="https://caffe2.ai/" class="bare">https://caffe2.ai/</a>), and more</figcaption>
</figure>
</p>
<p>Abernathy explained that open source plays a fundamental role in Facebook&rsquo;s mission to create community and bring the world closer together. The ideological match was a motivational reason for Facebook&rsquo;s participation in open source.</p>
<p>Additionally, Facebook has unique problems and challenges to solve for their infrastructure and development. Open source provides a platform to share those challenges and help others avoid similar mistakes.</p>
<p>Open source also provided a way to accelerate innovation and create better software. It helped engineering teams produce better software and work more transparently. Today, Facebook&rsquo;s 443 projects on GitHub have 122,000 forks, 292,000 commits, and 732,000 followers.</p>

<h2 id="lessons-learned">Lessons learned&nbsp;<a class="hanchor" href="#lessons-learned" aria-label="Anchor link for: Lessons learned">🔗</a></h2>
<p>Abernathy emphasized that Facebook has learned many lessons from the open source community and hopes to learn many more. She identified the three most important lessons that Facebook took from open source:</p>
<ol>
<li>Share what&rsquo;s useful</li>
<li>Highlight your heroes</li>
<li>Fix common pain points</li>
</ol>
<p><a href="https://twitter.com/abernathyca">Christine Abernathy</a> visited RIT as part of the FOSS Talks speaker series. Every month, a guest speaker from the open source world shares wisdom, insight, and advice about the open source world with students interested in free and open source software. The <a href="http://foss.rit.edu/">FOSS @ MAGIC</a> community is thankful to have Abernathy attend as a speaker!</p>]]></description></item><item><title>Humanitarian open source work: My internship at UNICEF</title><link>https://jwheel.org/blog/2018/02/unicef-internship/</link><pubDate>Thu, 22 Feb 2018 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2018/02/unicef-internship/</guid><description><![CDATA[<p>In December, I received the happy news of an offer for a internship position at <a href="https://www.unicef.org/what-we-do">UNICEF</a> in the Office of Innovation. The <a href="http://unicefstories.org/about/">Office of Innovation</a> drives rapid technological innovation by rapid prototyping of new ideas and building full-stack products to make a positive impact in the lives of children. This is a simple answer, but a more detailed description is <a href="http://unicefstories.org/about/">on our website</a>.</p>
<p>My internship at UNICEF is unique: I support open source community engagement and research as my primary task for the <a href="http://unicefstories.org/magicbox/">MagicBox project</a>. For years, I&rsquo;ve done this in open source communities in my free time (namely <a href="https://www.spigotmc.org/wiki/about-spigot/">SpigotMC</a> and <a href="https://docs.fedoraproject.org/fedora-project/project/fedora-overview.html">Fedora</a>), but never in a professional role. As I navigate my way through this exciting opportunity, I plan to document some of the experience as I go through blogging. My intent is that my observations and notes will be useful to someone else in the humanitarian open source space (or maybe to a future me).</p>
<p>But first, what does &ldquo;open source community engagement and research&rdquo; <em>really</em> mean?</p>

<h2 id="what-am-i-actually-doing">What am I actually doing?&nbsp;<a class="hanchor" href="#what-am-i-actually-doing" aria-label="Anchor link for: What am I actually doing?">🔗</a></h2>
<p>&ldquo;Community engagement&rdquo; is a buzzword phrase for the open source movement in the 2010s. Often, we hear about &ldquo;community engagement&rdquo; or the work of those &ldquo;leading communities&rdquo;, but it&rsquo;s an abstract concept. In other words, building communities of humans and people is hard. There is no one-size-fits-all solution for any community. Every community has its own unique needs and goals. This means different methods of management and communication work better for some communities than others. My job is to help light the way for what this pathway means for the MagicBox team.</p>
<p>Since I started in January, a lot of my time so far was spent learning. What is MagicBox? What are we trying to deliver to our stakeholders? To the open source community? How does our data pipeline piece together? All these questions and more, I&rsquo;ve tried to answer to different levels of success.</p>

<h2 id="whats-next">What&rsquo;s next?&nbsp;<a class="hanchor" href="#whats-next" aria-label="Anchor link for: What&rsquo;s next?">🔗</a></h2>
<p>Now, I&rsquo;m beginning to take a more hands-on role with the work, with a clear vision of what I want to do. The next few posts to come will dive deeper into what I&rsquo;m up to.</p>
<p>If you have questions or are interested in keeping up with what&rsquo;s going on, feel free to leave a comment here or subscribe to my blog to automatically receive future updates.</p>
<hr>
<p><em>Opinions and views in my blog are my own and do not reflect the views of my employer.</em></p>]]></description></item><item><title>2017 - My Year in Review</title><link>https://jwheel.org/blog/2018/02/2017-year-review/</link><pubDate>Mon, 12 Feb 2018 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2018/02/2017-year-review/</guid><description><![CDATA[<p>I can&rsquo;t remember how <a href="https://jwfblog.wpenginepowered.com/tag/year-in-review/">writing an annual reflection</a> became a tradition, but after writing them for the last two years, it is now a habit. Every time I look back on all that the last year brought into my life, it is surreal. Many things that happened, I could never have expected one or two years ago. And perhaps now, I see that life is defined by the unexpected moments: the things that surprise us, warm our hearts, sadden us, and remind us of our humanity. Thus, I present my year in review of 2017.</p>

<h2 id="home-is-a-suitcase">Home is a suitcase&nbsp;<a class="hanchor" href="#home-is-a-suitcase" aria-label="Anchor link for: Home is a suitcase">🔗</a></h2>
<p>I began the third year of my degree and moved for the fifth time in two years when I made it back to Rochester in August. This time, I found somewhere to ideally live longer than only a few months of the year. I moved into a house with a few other roommates with more space than I&rsquo;ve had before. For the first time in a while, it&rsquo;s somewhere I&rsquo;ve made to feel like home.</p>
<p>This move came months after I ended a semester of a study abroad program and lived in a city for an internship. Most of 2017 made my suitcase feel like a home, but it afforded many unique experiences.</p>

<h2 id="croatia-study-abroad">Croatia: Study abroad&nbsp;<a class="hanchor" href="#croatia-study-abroad" aria-label="Anchor link for: Croatia: Study abroad">🔗</a></h2>
<p>
<figure>
  <img src="/blog/2018/02/photo_2017-01-17_19-09-11.jpg" alt="Saying goodbye to my mom and sister at the airport before flying to Dubrovnik" loading="lazy">
  <figcaption>Saying goodbye to my mom and sister at the airport before flying to Dubrovnik</figcaption>
</figure>
</p>
<p>From January to May 2017, I participated in a study abroad program with my university to <a href="https://en.wikipedia.org/wiki/Dubrovnik">Dubrovnik, Croatia</a>. RIT has full campuses in both Zagreb and Dubrovnik. This made planning the semester abroad easy, but also encouraged me to go somewhere I might not have gone otherwise.</p>
<p>My choice to study in Croatia was well-rewarded. On paper, I earned 12 credit hours, but I took away more than what I learned in class. My most important lessons came in the form of midnight bus rides to Albania, photograph exhibits capturing genocide in Sarajevo, and hugs from normally faraway friends in Czechia. My time abroad began a process in finding myself that has continued since my time in Europe.</p>

<h4 id="devconf-2017--fedora-diversity-fad">DevConf 2017 / Fedora Diversity FAD&nbsp;<a class="hanchor" href="#devconf-2017--fedora-diversity-fad" aria-label="Anchor link for: DevConf 2017 / Fedora Diversity FAD">🔗</a></h4>
<p>At the beginning of the year, the Fedora <a href="https://fedoraproject.org/wiki/Diversity">Diversity Team</a> held a &ldquo;Fedora Activity Day&rdquo; (FAD) event in Brno, Czechia. If you&rsquo;re outside of the Fedora community, think of a FAD as a focused, in-person team sprint. Together with our team in-person and remote, we mapped out our goals and plans for 2017 and set out to continue the work we began nearly three years ago.</p>
<p>
<figure>
  <img src="/blog/2018/02/DSC_0031.jpg" alt="" loading="lazy">
  <figcaption>Diversity Team group photo at our team sprint in Brno, Czechia</figcaption>
</figure>
</p>
<p>In addition to the work we accomplished together, it was fulfilling for me to see my teammates that span three continents. I spent a week with not only my teammates but also my friends. The days we get to spend together are a privileged few in the year, and it was fulfilling and motivating for me to spend some of our time together in a way that wasn&rsquo;t Pagure tickets or IRC meetings.</p>
<p>Read more about our team sprint in this event report:</p>
<p><a href="https://communityblog.fedoraproject.org/fedora-diversity-fad-2017/">https://communityblog.fedoraproject.org/fedora-diversity-fad-2017/</a></p>

<h4 id="fosdem-2017">FOSDEM 2017&nbsp;<a class="hanchor" href="#fosdem-2017" aria-label="Anchor link for: FOSDEM 2017">🔗</a></h4>
<p>
<figure>
  <img src="/blog/2018/02/MwwPknD.jpg" alt="I didn&rsquo;t get many photos during FOSDEM, but this one seemed fitting enough." loading="lazy">
  <figcaption>I didn’t get many photos during FOSDEM, but this one seemed fitting enough. Photo: Bhagyashree Padalkar</figcaption>
</figure>
</p>
<p>In February, I attended the Free and Open Source Software Developers European Meeting (FOSDEM) for the first time. <a href="https://fosdem.org">FOSDEM</a> is the largest open source conference in Europe, bringing together over 8,000 open source enthusiasts, contributors, and leaders from around the globe.</p>
<p>I had the privilege to attend as a member of the Fedora community, so my time was between the Fedora booth to meet the community and catching interesting talks. I also gave a talk of my own on the main track, <a href="https://archive.fosdem.org/2017/schedule/event/storytelling/"><em>What open source and J.K. Rowling have in common</em></a>! I gave this talk to a smaller audience at DevConf, but the FOSDEM audience was considerably larger.</p>
<p>In retrospect, my original talk topic is relevant but I have ideas on how I could have delivered my message more effectively. Regardless, it was a learning experience for me to present in front of a new audience. Public speaking opportunities filled my youth, both in theater and in presentations, but I had never presented to a technical audience before (let alone on a non-technical topic). The experience at FOSDEM helped build my understanding and I hope to return with a new topic someday in the future.</p>

<h4 id="exploring-the-balkans">Exploring the Balkans&nbsp;<a class="hanchor" href="#exploring-the-balkans" aria-label="Anchor link for: Exploring the Balkans">🔗</a></h4>
<p>Outside of open source and Fedora, my time in Croatia included a lot of time outside of Croatia. When many of my roommates went to explore the wonders of Western Europe, I lost my heart in the shadows of the Balkan mountains. My spring break was a solo trip split between Sarajevo, Bosnia and Hercegovina and Tirana, Albania.</p>

<h6 id="sarajevo">Sarajevo&nbsp;<a class="hanchor" href="#sarajevo" aria-label="Anchor link for: Sarajevo">🔗</a></h6>
<p>
<figure>
  <img src="/blog/2018/02/DSC_0033.jpg" alt="Taken from the Yellow Bastion in Sarajevo. I could get lost in this view forever." loading="lazy">
  <figcaption>Taken from the Yellow Bastion (<a href="https://goo.gl/maps/s4SHYxVLkEC2" class="bare">https://goo.gl/maps/s4SHYxVLkEC2</a>) in Sarajevo. I could get lost in this view forever.</figcaption>
</figure>
</p>
<p>The three days I spent in Sarajevo were short but significant. I was truly alone on this visit and it was up to me to make the most of it. Originally, I was skeptical to go alone, but I knew that I would never have a better opportunity to go. My fascination with Sarajevo stemmed from a year of studying European history in high school, and knowing the cultural significance of Sarajevo as a meeting point of western and eastern cultures. In the end, I decided to go, and I was rewarded for it.</p>
<p>
<figure>
  <img src="/blog/2018/02/eLj9O40.jpg" alt="Inside of the Tunnel of Sarajevo. It was so quiet I could hear myself breathe. This was a grounding experience." loading="lazy">
  <figcaption>Inside of the Tunnel of Sarajevo. It was so quiet I could hear myself breathe. This was a grounding experience.</figcaption>
</figure>
</p>
<p>Most of my trip in Sarajevo consisted of museums. I visited various museums, ranging from eighteenth to twentieth century history. The most rewarding for me were the <a href="http://galerija110795.ba/">Galerija 11/07/95</a> and the <a href="https://en.wikipedia.org/wiki/Sarajevo_Tunnel">Tunnel of Sarajevo</a>. The gallery documented the <a href="https://en.wikipedia.org/wiki/Srebrenica_massacre">Srebrenica genocide</a> in July 1995 by the Serbian armed forces. The exhibit was eye-opening and perspective-shifting. The Tunnel of Sarajevo, sometimes called the Tunnel of Hope, is another perspective-shattering experience. The museum introduces the tunnel used during the siege of Sarajevo during the 1990s, when Serbian forces surrounded the city for an almost <a href="https://en.wikipedia.org/wiki/Siege_of_Sarajevo">four-year siege</a>. The tunnel was the only way for citizens and resistance forces to contact the outside world and keep the resistance alive. A small part of the tunnel is preserved, and the other artifacts make it a gripping experience (not to mention it&rsquo;s a short drive out of the city, so you also have a chance to mentally prepare and later unpack the experience).</p>

<h6 id="tirana">Tirana&nbsp;<a class="hanchor" href="#tirana" aria-label="Anchor link for: Tirana">🔗</a></h6>
<p>I visited Tirana, Albania four times on my trip abroad. In Tirana, my heart was captured by the people there. For years, I read about the <a href="https://openlabs.cc/en/">Open Labs Hackerspace</a> community based in Tirana and I always imagined an opportunity to see it in person. I actually remember my first encounter with their community was an <a href="https://blog.azizaj.com/ada-lovelace-day/">Ada Lovelace Day event report</a>. And somehow, the circumstances shifted where I was able to meet their community and immerse myself in the culture, if only for a short time.</p>
<p>
<figure>
  <img src="/blog/2018/02/DSC_0187.jpg" alt="My visits to Tirana are best defined by the people who impacted my time there." loading="lazy">
  <figcaption>My visits to Tirana are best defined by the people who impacted my time there.</figcaption>
</figure>
</p>
<p>During my times in Tirana, I participated in the <a href="https://opensource.com/article/17/3/open-labs-48-hour-hackathon-albania">first-ever 48 hour hackathon</a> to support the UN&rsquo;s <a href="http://www.undp.org/content/undp/en/home/sustainable-development-goals.html">Sustainable Development Goals</a> (SDGs), the first edition of <a href="https://fedoramagazine.org/students-fedora-linux-weekend-2017/">Linux Weekend</a>, and the annual <a href="https://oscal.openlabs.cc/">Open Source Conference Albania</a> (OSCAL).</p>
<p> </p>
<p><a href="https://fedoramagazine.org/students-fedora-linux-weekend-2017/">https://fedoramagazine.org/students-fedora-linux-weekend-2017/</a></p>

<h2 id="india">India&nbsp;<a class="hanchor" href="#india" aria-label="Anchor link for: India">🔗</a></h2>
<p>At the end of my study abroad experience in Croatia, a unique opportunity presented itself to me. I did not buy my return airfare back to the US before I left for Croatia. When price-checking for my trip back, I noticed it was a few hundred dollars extra if I decided to spend a week in India before flying back to the US.</p>
<p>I booked the tickets.</p>
<p>
<figure>
  <img src="/blog/2018/02/yBioeCg.jpg" alt="Witnessing a tradition on my final day in Mumbai." loading="lazy">
  <figcaption>Witnessing a tradition on my final day in Mumbai.</figcaption>
</figure>
</p>
<p>The last day of my classes finally came, and the next day, I was traveling further east, to <a href="https://en.wikipedia.org/wiki/Mumbai">Mumbai</a> (or Bombay, if you prefer). I had the great fortune of having two great friends who invited me to the homes of their families during my trip. I visited Bee in Mumbai and Amita in Pune, all split across a single week!</p>
<p>My trip to India was eye-opening. For years, I&rsquo;ve had a fascination with Eastern culture and philosophy, but it was something completely different to experience. Bee and her family took me to the <a href="https://en.wikipedia.org/wiki/Global_Vipassana_Pagoda">Global Vipassana Pagoda</a>, a personally fulfilling experience for me. We visited the <a href="https://en.wikipedia.org/wiki/Bandra%E2%80%93Worli_Sea_Link">Bandra–Worli Sea Link</a>, <a href="https://goo.gl/maps/5kthSFfZmBJ2">Shree Mahalakshmi Temple</a>, and several other places in Mumbai. I remember walking through the streets more than anything.</p>
<p>
<figure>
  <img src="/blog/2018/02/DSC_0037.jpg" alt="The Bandra–Worli Sea Link. This may have been one of my best photos." loading="lazy">
  <figcaption>The Bandra–Worli Sea Link. This may have been one of my best photos.</figcaption>
</figure>
</p>
<p>
<figure>
  <img src="/blog/2018/02/DSC_0018.jpg" alt="Together at the gurdwara in Pune. Left to right: Prakash Mishra, me, Amita Sharma, Sumantro Mukherjee" loading="lazy">
  <figcaption>Together at the gurdwara in Pune. Left to right: Prakash Mishra, me, Amita Sharma, Sumantro Mukherjee</figcaption>
</figure>
</p>
<p>In Pune, Amita and her family showed me their favorite places. I had a chance to meet many other Fedora friends in Pune too. One of my favorite memories of Pune was a historic <a href="https://en.wikipedia.org/wiki/Gurdwara">gurdwara</a>. Amita took me and the others in our group to visit. For a moment, I finally got to see something I&rsquo;ve only read about right in front of my eyes. The history and reverence in these places was absorbed into my mind.</p>
<p>
<figure>
  <img src="/blog/2018/02/DSC_0048.jpg" alt="Definitely not proper zazen posture. But a cool shot anyways." loading="lazy">
  <figcaption>Definitely not proper zazen posture. But a cool shot anyways. Photo: Amita Sharma</figcaption>
</figure>
</p>
<p>I never expected an Indian visa stamp in my passport in 2017, yet it happened. I&rsquo;m equally filled with wonder at how the circumstances unfolded as I am grateful this experience sneaked into my year.</p>

<h2 id="chicago-urban-experience">Chicago: Urban experience&nbsp;<a class="hanchor" href="#chicago-urban-experience" aria-label="Anchor link for: Chicago: Urban experience">🔗</a></h2>
<p>After my semester abroad and visiting India, I was whisked back to the United States, only to pack up once again for another new experience. From June to August, I lived in <a href="https://en.wikipedia.org/wiki/Chicago">Chicago, Illinois</a> to work an internship at <a href="http://jumptrading.com/">Jump Trading</a>. Chicago had a feeling of nostalgia for me because much of my father&rsquo;s family has origins tracing back to Chicago. But I would find myself losing more of my heart in Chicago than I realized.</p>
<p>
<figure>
  <img src="/blog/2018/02/DSC_0001.jpg" alt="The view from my apartment in Chicago. Could this even be real??" loading="lazy">
  <figcaption>The view from my apartment window in Chicago. Could this even be real??</figcaption>
</figure>
</p>

<h4 id="the-internship">The internship&nbsp;<a class="hanchor" href="#the-internship" aria-label="Anchor link for: The internship">🔗</a></h4>
<p>I worked with a fantastic team of people on exciting projects. Professionally, my time in Chicago was motivating and empowering. I was provided the opportunity to learn and also contribute. I walked in with a dreadful feeling of imposter syndrome and left feeling more confident in my own learning abilities. <a href="https://www.docker.com/">Docker</a>, <a href="https://kubernetes.io/">Kubernetes</a>, and <a href="https://opensource.com/article/17/8/influxdb-time-series-database-stack">time-series data</a> became a part of my daily work life, when I had little to no knowledge before then.</p>
<p>By the time my internship finished, I helped contribute to our team&rsquo;s goal of standing up Kubernetes and <a href="https://github.com/kubernetes/minikube/commits?author=jflory7">contributing a few patches</a> in Kubernetes projects like Minikube. I have great mentors to thank for not only direct, technical assistance but also motivational mentorship and empowerment too.</p>

<h4 id="everything-else">Everything else&nbsp;<a class="hanchor" href="#everything-else" aria-label="Anchor link for: Everything else">🔗</a></h4>
<p>
<figure>
  <img src="/blog/2018/02/chicago-matt-justin.jpg" alt="When old friends come to visit. Hi Matt!" loading="lazy">
  <figcaption>When old friends come to visit. Hi Matt!</figcaption>
</figure>
</p>
<p>There was more to Chicago than only the work too. Before long, I felt like a true Chicagoan, traveling the subways into the Loop, catching free concerts in <a href="https://www.cityofchicago.org/city/en/depts/dca/supp_info/millennium_park.html">Millennium Park</a>, and indulging in the Chicago tradition of <a href="https://en.wikipedia.org/wiki/Chicago-style_pizza">deep-dish pizza</a>.</p>
<p>Unlike other cities I&rsquo;ve visited, like New York City, Chicago felt easier to integrate into. The culture was notably &ldquo;slower&rdquo; than the fast-pace life of NYC, London, or Washington DC. I discovered <a href="http://www.middleeastbakeryandgrocery.com/">Middle Eastern markets</a> that became a regular part of my weekends, made friends with the baristas at a <a href="https://www.intelligentsiacoffee.com/old-town-coffeebar">local coffeehouse</a>, and had the privilege of hosting friends from three continents for short stays.</p>
<p>
<figure>
  <img src="/blog/2018/02/chicago-bee-fireworks.jpg" alt="4th of July fireworks on the Navy Pier with Bee" loading="lazy">
  <figcaption>4th of July fireworks on the Navy Pier with Bee</figcaption>
</figure>
</p>
<p>I left Chicago and was offered a new contract for the following summer in 2018. I&rsquo;m looking forward to be back in June again.</p>

<h2 id="year-of-fedora">Year of Fedora&nbsp;<a class="hanchor" href="#year-of-fedora" aria-label="Anchor link for: Year of Fedora">🔗</a></h2>
<p>2017 was full of time and effort spent in the Fedora community. In addition to the Diversity FAD, I was elected to the <a href="https://docs.fedoraproject.org/fedora-project/council/charter.html">Fedora Council</a> (on my third attempt), attended the annual Fedora contributor conference, Flock, and also narrowed my scope for contributions.</p>
<p>When I began contributing to Fedora, I was contributing to many things. Marketing, community operations, Fedora Badges, Fedora Magazine, Ambassadors, Games SIG, Join SIG, the Diversity Team, and maybe a few more things. After a while, I realized my contributions carried great width but poor depth. In 2017, I &ldquo;reconfigured&rdquo; my time in Fedora to focus in on the areas where I felt my time yielded the highest impact. This is Fedora <a href="https://fedoraproject.org/wiki/CommOps">CommOps</a> and the <a href="https://fedoraproject.org/wiki/Diversity">Diversity Team</a>.</p>
<p>I resigned as Fedora Magazine editor-in-chief and also formally stepped down from other teams. It made me sad, but I knew it was the right decision for me. I&rsquo;m happy to spend more time working in fewer projects at a greater depth and focus than I had before.</p>

<h4 id="flock-2017">Flock 2017&nbsp;<a class="hanchor" href="#flock-2017" aria-label="Anchor link for: Flock 2017">🔗</a></h4>
<p><a href="https://flocktofedora.org/">Flock</a>, Fedora&rsquo;s annual contributor conference, was held from Aug. 29 to Sep. 1 in Cape Cod, Massachusetts. Every year, Flock is an empowering experience for me because of the face-time I get with the people I spend much of my year working with remotely. This year was no different, and many new faces were mixed in with the old ones.</p>
<p>The highlights for me were in three forms: the <a href="https://flock2017.sched.com/event/Bm9a/commops-and-metrics-workshop">CommOps session</a>, the <a href="https://flock2017.sched.com/event/Bm8o/diversity-team-hackfest">Diversity Team session</a>, and the <a href="https://flock2017.sched.com/event/Bm8p/fedora-magazine-workshop">Fedora Magazine session</a>. Together with <a href="https://twitter.com/iamskamath">Sachin Kamath</a>, we led the CommOps session. You can read more about our session here:</p>
<p><a href="https://communityblog.fedoraproject.org/metrics-docs-flock-2017/">https://communityblog.fedoraproject.org/metrics-docs-flock-2017/</a></p>
<p>The Diversity Team and Magazine sessions were also valuable for both teams to get feedback from the rest of the community. In the Diversity Team session, we had many active participants outside of our team that reminded us the importance of narrowing our focus for higher impact. I also attended other interesting sessions held by the community, like the <a href="https://flock2017.sched.com/event/Bm9C/the-future-of-fedmsg">future of fedmsg</a> by Jeremy Cline.</p>

<h4 id="commops-fad">CommOps FAD&nbsp;<a class="hanchor" href="#commops-fad" aria-label="Anchor link for: CommOps FAD">🔗</a></h4>
<p>Towards the end of 2017, I worked together with our team in CommOps to organize our own team sprint, or FAD, in 2018. We <a href="https://fedoraproject.org/wiki/FAD_CommOps_2018">successfully planned the event</a> and organized it in Brno, Czechia, similar to last year&rsquo;s Diversity FAD.</p>
<p>More details on this will be found in its own event report!</p>

<h2 id="listenbrainz-indie-study">ListenBrainz indie study&nbsp;<a class="hanchor" href="#listenbrainz-indie-study" aria-label="Anchor link for: ListenBrainz indie study">🔗</a></h2>
<p>In my fall semester of 2017, I took on an <a href="https://jwfblog.wpenginepowered.com/tag/rit-2171/">independent study</a> to further explore the ListenBrainz project. <a href="https://listenbrainz.org/">ListenBrainz</a> is an open source social platform to document the music you listen to over time. If you&rsquo;re familiar with Last.fm or Libre.fm, it&rsquo;s a similar concept, but the focus is more on the data than the social features. ListenBrainz is supported by the <a href="https://metabrainz.org/">MetaBrainz Foundation</a>, also the guiding body for the more well-known <a href="https://musicbrainz.org/doc/About">MusicBrainz</a> project.</p>
<p>In my independent study, I had a chance to contribute documentation and community tools (like issue / PR templates), as well as explore how the project gathers and builds metrics. I didn&rsquo;t make my original milestone of major code contributions to the project, but I better understood the community and tried to help in the areas of low coverage, like documentation.</p>
<p>The experience was insightful for me and provided me an excuse to work on something that I am genuinely passionate about. Music is a powerful part of human culture, and the MetaBrainz Foundation takes a serious approach to documenting music, especially in a technical sense. ListenBrainz represents an opportunity for us to better explore and understand ourselves through our music listening habits. I hope someday that ListenBrainz will be a platform for data journalism and research about music. That&rsquo;s my dream.</p>

<h2 id="opensourcecom-community-moderator">Opensource.com community moderator&nbsp;<a class="hanchor" href="#opensourcecom-community-moderator" aria-label="Anchor link for: Opensource.com community moderator">🔗</a></h2>
<p>At the beginning of 2017, I was brought on board as an <a href="https://opensource.com/">Opensource.com</a> community moderator. Together with other community moderators and site staff, I help contribute new content and source new writers to the site. My invitation to the community moderator team came shortly after the announcement that I received the <a href="https://opensource.com/article/17/2/community-awards-2017">2017 People&rsquo;s Choice Award</a>. When <a href="https://twitter.com/rikkiends">Rikki Endsley</a> invited me to the team, it felt like a natural alignment to my passion for storytelling.</p>

<h4 id="all-things-open-2017">All Things Open 2017&nbsp;<a class="hanchor" href="#all-things-open-2017" aria-label="Anchor link for: All Things Open 2017">🔗</a></h4>
<p>
<figure>
  <img src="/blog/2018/02/DSC_0146.jpg" alt="Working together with the Opensource.com team to plan out the next year ahead." loading="lazy">
  <figcaption>Working together with the Opensource.com team to plan out the next year ahead.</figcaption>
</figure>
</p>
<p>I was invited to <a href="https://allthingsopen.org/">All Things Open</a>, an annual open source conference in Raleigh, by the Opensource.com team. The day before the conference, I met the rest of the team and other community moderators at the Red Hat HQ in Raleigh. We spent the day locked into a room together to hash out plans and goals for the next year. It was a productive opportunity for the team to work together and also a great opportunity to meet the other members of the community.</p>
<p>Some of my best takeaways from this experience were catching coffee with other community moderators, meeting Jim Whitehurst to talk about Opensource.com, and giving my talk, <em>What open source and J.K. Rowling have in common</em>, for the final time.</p>
<p>I hope I have the opportunity to go again next year to meet the awesome team behind Opensource.com. (If you haven&rsquo;t considered before, <a href="https://opensource.com/how-submit-article">come and write for us</a> too!)</p>

<h2 id="happiness-packet-challenge">Happiness Packet Challenge&nbsp;<a class="hanchor" href="#happiness-packet-challenge" aria-label="Anchor link for: Happiness Packet Challenge">🔗</a></h2>
<p>Another unusual milestone for my 2017 was the first rendition of the Happiness Packet Challenge. I was introduced to the Happiness Packets website in 2016. <a href="https://www.happinesspackets.io/">Happiness Packets</a> are an easy way to say thank you to someone who has had a positive impact on you. I came up with a challenge to my friends and network to write one Happiness Packet a day, every day, for a week.</p>
<p>I followed up with the team behind the project to evaluate the impact of this idea, and I was pleasantly surprised. Here&rsquo;s the number of messages sent for the two weeks prior to the Happiness Packet Challenge, followed by the week of the challenge:</p>
<ul>
<li><strong>Week starting 2017-03-27</strong>: 2 sent</li>
<li><strong>Week starting 2017-04-03</strong>: 35 sent</li>
<li><strong>Week starting 2017-04-10 (challenge week)</strong>: 72 sent</li>
</ul>
<p>You can read more about the challenge in my original blog post. Keep an eye out for it again in 2018.</p>
<p><a href="https://jwfblog.wpenginepowered.com/2017/04/happiness-packets-challenge/">https://jwfblog.wpenginepowered.com/2017/04/happiness-packets-challenge/</a></p>

<h2 id="living-openly">Living openly&nbsp;<a class="hanchor" href="#living-openly" aria-label="Anchor link for: Living openly">🔗</a></h2>
<p>Earlier in this post, I alluded to how I felt like I began to find myself when I was abroad. My study abroad experience was the beginning of a longer process that leads into present day.</p>
<p>In April, <a href="https://medium.com/@jflory7/turn-on-the-lights-267603e553b5">I went public</a> with my depression, both to help take a weight off my shoulder and to be a voice for others who are afraid to speak up. I was always concerned of the reaction from publishing something like that, but I was met with nothing but loving-kindness from friends and strangers. It gave me new confidence to live more openly and wear my values in the open.</p>
<p>The story continued in October, when I decided to delete my Facebook and Instagram accounts.</p>
<p><a href="https://medium.com/@jflory7/cut-the-plug-deleting-facebook-and-instagram-6cbe7c86d9c9">https://medium.com/@jflory7/cut-the-plug-deleting-facebook-and-instagram-6cbe7c86d9c9</a></p>
<p>I considered this for a couple of years before, but I pulled the trigger in October. Like many others, it felt almost too much of a task to disconnect myself from this huge network of people and friends. But the negative impacts of it were draining me and trapping me. Since I deleted my accounts, I&rsquo;ve noticed a positive impact in overall levels of happiness and awareness. However, I don&rsquo;t think the social media accounts alone are the reason for this.</p>
<p>In the near future, I hope to do a follow-up post to my decision to cut away from the Facebook and Instagram machines. Keep an eye out for more.</p>

<h2 id="2018">2018&nbsp;<a class="hanchor" href="#2018" aria-label="Anchor link for: 2018">🔗</a></h2>
<p>It&rsquo;s already February in 2018 when I finished this post. This year, I thought it would be the year when I get the post out closer to the new year, but somehow I always slip. In either case, it gives me a chance to take in some of the new opportunities and excitement of the new year before reflecting and looking back.</p>
<p>This year, I&rsquo;m working an internship with <a href="https://www.unicef.org/">UNICEF</a> to help lead on open source community engagement and supporting the non-technical areas of their <a href="http://unicefstories.org/magicbox/">MagicBox platform</a>. In the one month I&rsquo;ve been doing this, I feel like I have tens of articles I could write about, but the experience is still maturing for me.</p>
<p>I also have another round in Chicago to look forward to over the summer. I&rsquo;ll get to work with the same team as last year on similar projects, and I&rsquo;m looking forward to going back.</p>
<p>As for the rest, who knows what&rsquo;s to come? So many things that made 2017 what it was were the things I didn&rsquo;t expect. The surprises in life are the salt to the regiment of daily life, and add flavor and spice in unexpected ways. I have no idea what my 2018 Year in Review will look like, and that&rsquo;s okay. I&rsquo;m looking forward to seeing what will make it in.</p>

<h2 id="thank-you">Thank you&nbsp;<a class="hanchor" href="#thank-you" aria-label="Anchor link for: Thank you">🔗</a></h2>
<p>Above all, every year, I think back on the people who positively impacted my life and contributed to the &ldquo;flavor&rdquo; of my year. A close friend reminded me recently that we all stand on the shoulders of giants. And isn&rsquo;t it true? We all have our great mentors, great friends, and unexpected sages that help us find our own footing on this great path of life. We become ourselves from the various pieces impacted on us by others.</p>
<p>I&rsquo;m thankful for all of the people who have made my year into the experience it was. The list is too long to write and I fear I would leave someone out – even significant impacts were made by people who had a short-term role in this last year.</p>
<p>A long time ago, my open source experience was jump-started by someone who did something kind and exceptional for me. It was a continuing trend since that moment. My only aspiration is to pay forward the good will that so many have bestowed unto me.</p>
<p>Thanks for making it this far down, and I hope to see you in 2018. Or who knows – maybe it will just be me reading this far down for next year, when I go to write my next year in review. Hi future me!</p>]]></description></item><item><title>Tell us your Fedora 2017 Year in Review</title><link>https://jwheel.org/blog/2018/01/fedora-2017-year-review/</link><pubDate>Thu, 11 Jan 2018 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2018/01/fedora-2017-year-review/</guid><description><![CDATA[<p>The past year was a busy for Fedora. The community released Fedora 26 and 27. Different sub-projects of Fedora give their share of time for the overall success of Fedora. But in a project as big as Fedora, it&rsquo;s hard to keep track of what everyone is doing! If you&rsquo;re a developer, you likely know more about what&rsquo;s happening inside the code of Fedora, but you may not know what&rsquo;s happening with the Fedora Ambassadors. Or maybe you&rsquo;re involved with Globalization (G11n) and translating and know what&rsquo;s happening there, but you&rsquo;re not as familiar with what the Fedora Design team is working on.</p>

<h2 id="share-your-2017-year-in-review">Share your 2017 &ldquo;Year in Review&rdquo;&nbsp;<a class="hanchor" href="#share-your-2017-year-in-review" aria-label="Anchor link for: Share your 2017 &ldquo;Year in Review&rdquo;">🔗</a></h2>
<p>To communicate with the rest of the Fedora community what we worked on in 2017, the Fedora Community Operations team (<a href="https://fedoraproject.org/wiki/CommOps">CommOps</a>) encourages every sub-project of Fedora put together their own &ldquo;Year in Review&rdquo; article on the <a href="https://communityblog.fedoraproject.org/">Fedora Community Blog</a>. The CommOps team has created an <a href="https://communityblog.fedoraproject.org/fedora-2017-year-in-review/">easy to use template</a> to document your <strong>top three highlights</strong> of 2017 and <strong>one goal</strong> for 2018.</p>
<p>Read the <a href="https://communityblog.fedoraproject.org/fedora-2017-year-in-review/">original announcement</a> of the 2017 &ldquo;Year in Review&rdquo; on the Fedora Community Blog. Contributors are encouraged to work with their sub-projects to come up with the three 2017 highlights and one 2018 goal. These are only set as a minimum. If your sub-project has a lot to say or has many big tasks for 2018, include more highlights or more goals! The only requirement is to meet the minimum, but there is no limit for what you wish to include.</p>
<p><a href="https://communityblog.fedoraproject.org/fedora-2017-year-in-review/">https://communityblog.fedoraproject.org/fedora-2017-year-in-review/</a></p>

<h2 id="where-to-find-year-in-review-posts">Where to find &ldquo;Year in Review&rdquo; posts&nbsp;<a class="hanchor" href="#where-to-find-year-in-review-posts" aria-label="Anchor link for: Where to find &ldquo;Year in Review&rdquo; posts">🔗</a></h2>
<p>All &ldquo;Year in Review&rdquo; articles end up on the <a href="https://communityblog.fedoraproject.org/">Fedora Community Blog</a>. See <a href="https://communityblog.fedoraproject.org/tag/year-in-review-2015/">examples from 2015</a> for some inspiration. To find new posts, find them in the &ldquo;<a href="https://communityblog.fedoraproject.org/tag/year-in-review-2017/">Year in Review 2017</a>&rdquo; tag.</p>
<p>Start discussing this now and craft your own &ldquo;Year in Review&rdquo; post for 2017! Sub-projects are encouraged to have a draft in the Community Blog before the end of February.</p>]]></description></item><item><title>Election night hackathon supports civic engagement</title><link>https://jwheel.org/blog/2017/12/election-night-hackathon/</link><pubDate>Wed, 13 Dec 2017 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2017/12/election-night-hackathon/</guid><description><![CDATA[<p><a href="https://opensource.com/article/17/12/rit-election-night-hackathon"><em>This article was originally published on Opensource.com.</em></a></p>
<hr>
<p>On November 7, 2017, members of the RIT community came together for the annual Election Night Hackathon held in the Simone Center for Student Innovation. This year marked the seventh anniversary of a civic tradition with the FOSS@MAGIC community. As local and state election results come in across nine projectors, students and professors work together on civic-focused projects during the night. Dan Schneiderman, the FOSS@MAGIC Community Liaison, compiled lists of open APIs that let participants use public sets of data made available by governments at the federal, state, and local level.</p>
<p>The hackathon officially began at 5:00pm and went until 10:00pm. Plenty of pizza and drinks were provided to fuel participants during the evening.</p>

<h2 id="open-source-with-open-government">Open source with open government&nbsp;<a class="hanchor" href="#open-source-with-open-government" aria-label="Anchor link for: Open source with open government">🔗</a></h2>
<p>Each year, the hackathon welcomes students and faculty to analyze civic problems happening in the local community, state, or country, and then propose a project to address them. MAGIC Center faculty help students choose open source licenses to share their projects. Organizers encourage students to use a site like GitHub to publish and share their code.</p>
<p>Second Avenue Learning, an educational game company in Rochester, demonstrated their <a href="http://www.secondavenuelearning.com/products/voters-ed">Voter’s Ed app</a> that replays historic elections, keeps voters up-to-date on current ones, and lets them simulate their own using open data and HTML. It also allows users to examine key issues and hot topics related to national level events. The company, represented by the founder Victoria Van Voorhis and two employees (one an RIT alum) held a design discussion for new features to prototype with students and the community. Sean Sutton and Paul Ferber (RIT faculty) provided subject matter expertise to the application.</p>
<p>While people began their projects, coverage of the local and state elections were displayed across nine different projectors. As the night progressed, votes from local and state elections rolled in. Rochester coverage was enhanced, since Monroe County is one of three counties in New York that releases public data for election coverage. Some participants even used the local Henrietta data for their own projects.</p>

<h2 id="librecorps-internship">LibreCorps internship&nbsp;<a class="hanchor" href="#librecorps-internship" aria-label="Anchor link for: LibreCorps internship">🔗</a></h2>
<p>Pratik Shirish Kulkarni, a second-year computer science major from Mumbai, India, presented the current status of his FOSS@MAGIC LibreCorps internship. LibreCorps placed Pratik with UNICEF Innovation in Manhattan, where he worked on MagicBox, a set of big data APIs and technologies used to chart Zika outbreaks and connectivity across schools in Africa.</p>
<p>Pratik demoed some of the work, which he is continuing part-time on campus this semester, funded by UNICEF. Another internship to work on the project is currently posted in <a href="https://rit.joinhandshake.com/">Handshake</a>.</p>

<h2 id="where-can-i-vote">Where can I vote?&nbsp;<a class="hanchor" href="#where-can-i-vote" aria-label="Anchor link for: Where can I vote?">🔗</a></h2>
<p>
<figure>
  <img src="/blog/2017/11/election-night-hackathon-2017-demo-time.jpg" alt="Chris Bitler demonstrated his Where can I vote app at the end of the Election Night Hackathon" loading="lazy">
  <figcaption>Chris Bitler (<a href="https://github.com/Chris-Bitler" class="bare">https://github.com/Chris-Bitler</a>) demonstrated his <em>Where can I vote?</em> (<a href="https://github.com/Chris-Bitler/Where-Can-I-Vote" class="bare">https://github.com/Chris-Bitler/Where-Can-I-Vote</a>) app at the end of the night</figcaption>
</figure>
</p>
<p>Third-year student <a href="https://github.com/Chris-Bitler">Chris Bitler</a> created a tool to make it easier to get to the polling booth. His web application, &ldquo;<em>Where can I vote?</em>&rdquo;, takes a specific election and your address, and gives you directions from your address to the closest polling location. It uses the <a href="https://developers.google.com/civic-information/">Google Civic Information API</a> to find election data and calculate a specific address&rsquo;s voting district and candidates.</p>
<p>Chris was exploring for project ideas in the beginning of the hackathon, but quickly found the civic data API returned interesting data about polling locations. &ldquo;After seeing that, I gave some thought to how some people don&rsquo;t know their polling location and how a simple website could be useful for that,&rdquo; Chris said. His web application was motivated by simplicity, so anyone could navigate without being lost in information.</p>
<p>In the spirit of open source, Chris <a href="https://github.com/Chris-Bitler/Where-Can-I-Vote">open sourced his project</a> on GitHub under the <a href="https://github.com/Chris-Bitler/Where-Can-I-Vote/blob/master/LICENSE">MIT License</a>.</p>

<h2 id="linkybook-local-election-data-in-real-time">Linkybook: Local election data in real-time&nbsp;<a class="hanchor" href="#linkybook-local-election-data-in-real-time" aria-label="Anchor link for: Linkybook: Local election data in real-time">🔗</a></h2>
<p>Another project during the night focused on tracking local election data in Chautauqua, Monroe, and Suffolk Counties. RIT and FOSS@MAGIC alumni Nathaniel Case continued work on his <a href="https://github.com/Chris-Bitler/Where-Can-I-Vote">monroe-elections</a> application during the night. The site shows data for all races in the three counties.</p>
<p>During the night, his web application updated in real-time as the results from the local elections began to appear. Election results for the races is quick to understand and read. Additionally, referendum results and other non-partisan elections are available.</p>
<p>Nathaniel <a href="https://github.com/Qalthos/monroe-elections">open sourced his project</a> on GitHub under both the <a href="https://github.com/Qalthos/monroe-elections/blob/master/DBAD%20LICENSE">DBAD</a> and <a href="https://github.com/Qalthos/monroe-elections/blob/master/GPL%20LICENSE">GPLv3</a> licenses.</p>

<h2 id="join-us-next-time">Join us next time!&nbsp;<a class="hanchor" href="#join-us-next-time" aria-label="Anchor link for: Join us next time!">🔗</a></h2>
<p>The night ended after a quick round of project demos and finishing up project work. FOSS@MAGIC has more events planned in the near future. On <a href="https://www.eventbrite.com/e/fossmagic-talks-open-source-facebook-with-christine-abernathy-tickets-38955037566">November 15th</a>, Christine Abernathy from Facebook&rsquo;s Open Source Program talks about how Facebook approaches open source and how they&rsquo;ve solved engineering problems with it.</p>
<p>You can learn more about the FOSS@MAGIC initiative <a href="http://foss.rit.edu">on their website</a>. Participation on the <a href="https://lists.fedoraproject.org/admin/lists/fossrit.lists.fedorahosted.org/">mailing list</a> is welcome.</p>]]></description></item><item><title>ListenBrainz community gardening and user statistics</title><link>https://jwheel.org/blog/2017/11/listenbrainz-community-user-statistics/</link><pubDate>Mon, 13 Nov 2017 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2017/11/listenbrainz-community-user-statistics/</guid><description><![CDATA[<p><em>This post is part of a series of posts where I contribute to the ListenBrainz project for my independent study at the Rochester Institute of Technology in the fall 2017 semester. For more posts, find them in <a href="https://jwfblog.wpenginepowered.com/tag/rit-2171/">this tag</a>.</em></p>
<hr>
<p>My progress with ListenBrainz slowed, but I am resuming the pace of contributing and advancing on my independent study timeline. This past week, I finished out assigned tasks to discuss contributor-related documentation, like a Code of Conduct, contributor guidelines, and a pull request template. I began research on user statistics and found some already created. I wrote one of my own, but need to learn more about Google BigQuery to advance further.</p>

<h2 id="paving-the-contributor-pathway">Paving the contributor pathway&nbsp;<a class="hanchor" href="#paving-the-contributor-pathway" aria-label="Anchor link for: Paving the contributor pathway">🔗</a></h2>
<p>
<figure>
  <img src="/blog/2017/11/Screenshot-from-2017-11-13-02-05-12.png" alt="Making it easier for people to contribute user statistics to ListenBrainz" loading="lazy">
  <figcaption>Making it easier for people to contribute to ListenBrainz with helpful contibuting guidelines</figcaption>
</figure>
</p>
<p>Earlier, I identified weaknesses for the ListenBrainz contributor pathway and found ways we could improve the pathway. This started with the development environment documentation. Now, I helped draft first revisions of our <a href="https://github.com/metabrainz/listenbrainz-server/pull/287">contributor guidelines</a>, <a href="https://github.com/metabrainz/listenbrainz-server/pull/286">Code of Conduct reference</a>, and <a href="https://github.com/metabrainz/listenbrainz-server/pull/288">pull request templates</a>. Together, these three documents have two goals.</p>
<ol>
<li><strong>Make it easier</strong> to contribute to ListenBrainz</li>
<li>Have a better experience and <strong>have fun</strong> contributing!</li>
</ol>
<p>Adding these documents addresses these goals. Additionally, the <a href="https://github.com/metabrainz/listenbrainz-server/community">GitHub community profile</a> also highlights these deliverables as ways to meet these goals. After getting feedback and seeing what others think, we make more revisions later (with some trial runs).</p>

<h2 id="back-to-selinux-context-flags">Back to SELinux context flags&nbsp;<a class="hanchor" href="#back-to-selinux-context-flags" aria-label="Anchor link for: Back to SELinux context flags">🔗</a></h2>
<p>Recently, I set my desktop back up and installed Docker for the first time on this machine; however, the development environment still failed to start. When I ran the script, it would eventually error out because of a permission denial. The web server image for ListenBrainz was failing.</p>
<p>After debugging, I noticed that I missed the SELinux volume tags for the ListenBrainz web server images in my original pull request, <a href="https://github.com/metabrainz/listenbrainz-server/pull/257">#257</a>. When I created the pull request, I might have had cached data that let my laptop run the development environment without a problem. In either case, it was an easy fix and I knew what the issue was when it happened. Therefore, I submitted a new fix in <a href="https://github.com/metabrainz/listenbrainz-server/pull/290">#290</a>.</p>

<h2 id="writing-new-user-statistics">Writing new user statistics&nbsp;<a class="hanchor" href="#writing-new-user-statistics" aria-label="Anchor link for: Writing new user statistics">🔗</a></h2>
<p>The most interesting part of my independent study is working with the music data to build and generate interesting statistics. I finally began exploring the <a href="https://github.com/metabrainz/listenbrainz-server/tree/master/listenbrainz/stats">existing statistics</a> in ListenBrainz. The statistic queries use BigQuery standard SQL. BigQuery helps rapidly scan and scale data queries to help with performance (I have a lot to learn about BigQuery).</p>

<h4 id="two-types-of-statistics">Two types of statistics&nbsp;<a class="hanchor" href="#two-types-of-statistics" aria-label="Anchor link for: Two types of statistics">🔗</a></h4>
<p>Additionally, ListenBrainz generates <strong>two types</strong> of statistics:</p>
<ol>
<li>Site-wide statistics</li>
<li>User statistics</li>
</ol>
<p>Site-wide statistics are metrics non-specific to a single user. There is only <a href="https://github.com/metabrainz/listenbrainz-server/blob/master/listenbrainz/stats/sitewide.py">one site-wide query</a> now. It counts how many artists were ever submitted to this ListenBrainz instance and returns an integer. There&rsquo;s room for expansion in site-wide statistics.</p>
<p>On the other hand, user statistics are metrics specific to a single user. There&rsquo;s a <a href="https://github.com/metabrainz/listenbrainz-server/blob/master/listenbrainz/stats/user.py">fair number already</a>, like the top artists and songs in a time period and the number of artists you&rsquo;ve listened to. These are a little more complete and offer more expansion for doing cool front-end work with something like <a href="https://d3js.org/">D3.js</a>.</p>

<h4 id="writing-user-statistics">Writing user statistics&nbsp;<a class="hanchor" href="#writing-user-statistics" aria-label="Anchor link for: Writing user statistics">🔗</a></h4>
<p>Of course, I had to try writing my own. One helpful query I thought of was getting a count of the songs you listened to over a time period (e.g. &ldquo;you listened to 500 songs this week!&rdquo;). I haven&rsquo;t tested it yet, but I have this in a local branch and hope to test it with real data soon.</p>
<pre tabindex="0"><code>def get_play_count(musicbrainz_id, time_interval=None): 
 
 filter_clause = &#34;&#34; 
 if time_interval: 
     filter_clause = &#34;AND listened_at &gt;=
     TIMESTAMP_SUB(CURRENT_TIME(), 
     INTERVAL {})&#34;.format(time_interval) 
 
 query = &#34;&#34;&#34;SELECT COUNT(release_msid) as listen_count 
            FROM {dataset_id}.{table_id} 
            WHERE user_name = @musicbrainz_id 
            {time_filter_clause} 
            LIMIT {limit} 
         &#34;&#34;&#34;.format( 
                 dataset_id=config.BIGQUERY_DATASET_ID, 
                 table_id=config.BIGQUERY_TABLE_ID, 
                 time_filter_clause=filter_clause, 
                 limit=config.STATS_ENTITY_LIMIT, 
            ) 
 
 parameters = [ 
     { 
         &#39;type&#39;: &#39;STRING&#39;, 
         &#39;name&#39;: &#39;musicbrainz_id&#39;, 
         &#39;value&#39;: musicbrainz_id 
     } 
 ] 
 
 return stats.run_query(query, parameters)
</code></pre>
<h2 id="researching-google-bigquery">Researching Google BigQuery&nbsp;<a class="hanchor" href="#researching-google-bigquery" aria-label="Anchor link for: Researching Google BigQuery">🔗</a></h2>
<p>My next steps for the independent study are researching <a href="https://cloud.google.com/bigquery/docs/">Google BigQuery</a>. After going through the existing statistics and understanding how ListenBrainz generates them, an understanding of Google BigQuery is essential to writing effective queries. When I become more comfortable with the tooling and how it works, I want to map out a plan of statistics to generate and measure.</p>
<p>Until then, the hacking continues! As always, keep the FOSS flag high…</p>]]></description></item><item><title>Resigning from Fedora Council for Fedora 27</title><link>https://jwheel.org/blog/2017/10/resigning-fedora-council/</link><pubDate>Thu, 19 Oct 2017 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2017/10/resigning-fedora-council/</guid><description><![CDATA[<p>Since I became a Fedora contributor in August 2015, I&rsquo;ve spent a lot of time in the community. One of the great things about a big community like Fedora is that there are several different things to try out. I&rsquo;ve always tried to do the most help in Fedora with my contributions. I prefer to make long-term, in-depth contributions than short-term, &ldquo;quick fix&rdquo;-style work. However, like many others, Fedora is a project I contribute to in my free time. Over the last month, I&rsquo;ve come to a difficult realization.</p>
<p>After deep consideration, I am resigning from the Fedora Council effective at the end of the Fedora 26 release cycle.</p>

<h2 id="why-im-stepping-back">Why I&rsquo;m stepping back&nbsp;<a class="hanchor" href="#why-im-stepping-back" aria-label="Anchor link for: Why I&rsquo;m stepping back">🔗</a></h2>
<p>When I decided to run for Fedora Council in July, I had not yet moved back to Rochester, New York. From my past experiences, I didn&rsquo;t predict an issue to fulfill my commitments to the Fedora community. However, since moving back to Rochester, it is difficult to fulfill my expectations, Council and otherwise, to Fedora.</p>
<p>I&rsquo;m entering the last years of my degree and the rigor of my coursework demands more time and focus. Additionally, I&rsquo;m working more hours this year than I have in the past, which takes away more time Fedora. Because student loans are too real.</p>
<p>If I expected these changes, I would not have run for the Council. However, from my short time on the Council, I understand the energy and dedication needed to represent the community effectively. During my campaign and term, this was my driving motivation – to do my best to represent an international community of thousands in the highest body of leadership in Fedora. Now, I do not feel I am meeting my standard of participation and engagement. Already, I&rsquo;ve stepped back from the Fedora Magazine and Marketing teams to focus more time in other areas of Fedora. Now, it is right to do the same for the Council.</p>
<p>I will spend the most time in the CommOps and Diversity teams, since I believe that is where I can make the largest impact as a contributor.</p>

<h2 id="fedora-27-council-elections">Fedora 27 Council elections&nbsp;<a class="hanchor" href="#fedora-27-council-elections" aria-label="Anchor link for: Fedora 27 Council elections">🔗</a></h2>
<p>I privately shared my resignation with the Fedora Council before writing this post. After discussing with other Council members, the plan is</p>
<ol>
<li>Elect a new, full-term Council member for Fedora 27 and 28</li>
<li>Elect a new, half-term Council member for only Fedora 27</li>
</ol>
<p>In past elections with half-term seats, the candidate with the most votes receives the full-term seat and the runner-up receives the half-term seat. I expect this to happen again, although final details will come once the election phase begins.</p>

<h2 id="thank-you-for-your-trust">Thank you for your trust&nbsp;<a class="hanchor" href="#thank-you-for-your-trust" aria-label="Anchor link for: Thank you for your trust">🔗</a></h2>
<p>This is one of the most difficult decisions I&rsquo;ve made in Fedora. Serving on the Fedora Council is the greatest privilege. My election to the Council by hundreds of people was humbling and inspired me to not only lead by example, but represent the perspective of the greater Fedora community to the Council. This was the greatest honor for me and it disappoints me to finish my term early.</p>
<p>However, based on current circumstances, I believe this is the best path forward to make sure the community is well-represented in Fedora leadership. Thank you for your trust and I hope I can return to serve the community in this capacity someday in the future.</p>]]></description></item><item><title>IRC for the 21st century: introducing Riot</title><link>https://jwheel.org/blog/2017/08/riot-matrix-irc/</link><pubDate>Tue, 08 Aug 2017 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2017/08/riot-matrix-irc/</guid><description><![CDATA[<p><a href="https://opensource.com/article/17/5/introducing-riot-IRC"><em>This article was originally published on Opensource.com.</em></a></p>
<hr>
<p><a href="https://en.wikipedia.org/wiki/Internet_Relay_Chat">Internet Relay Chat</a>, or IRC, is one of the oldest chat protocols around and still popular in many open source communities. IRC&rsquo;s best strengths are as a decentralized and open communication method, making it easy for anyone to participate by running a network of their own. There&rsquo;s also a variety of clients and bots available for IRC. But on the reverse side, usability is a concern. Most common user interfaces for IRC clients or platforms aren&rsquo;t always intuitive. People from parts of the world with unstable Internet connections are challenged with remaining connected to participate in conversation. Many people have tried addressing this problem before, but none have come as far as Riot.</p>

<h2 id="what-is-riot">What is Riot?&nbsp;<a class="hanchor" href="#what-is-riot" aria-label="Anchor link for: What is Riot?">🔗</a></h2>
<p><a href="https://riot.im/">Riot</a> is a free, open source, and multi-platform client based on the <a href="https://matrix.org/">Matrix</a> protocol. To understand better, think of Matrix as the protocol and Riot as the client. Matrix is a decentralized, secure, messaging protocol. It has the benefit of using HTTP / JSON APIs, is capable of sending and receiving messages with full end-to-end encryption, WebRTC VoIP / video calling, and maybe most importantly, integration capabilities. Matrix was built to integrate with IRC servers and other communication protocols, meaning you can use the Riot client as an <a href="https://opensource.com/article/17/4/never-leave-irc-again">IRC bouncer</a>. You can read more of the details on what separates Matrix from Riot <a href="https://matrix.org/docs/guides/faq.html#what-is-the-difference-between-matrix-and-irc">on their FAQ</a>.</p>
<p>As a result, Riot becomes most useful in its implementation as the default Matrix client. It&rsquo;s convenient and decentralized, as anyone is able to launch their own Matrix &ldquo;homeserver&rdquo; and connect it with Riot. However, Matrix by default has servers bridged with <a href="https://freenode.net/">Freenode</a>, <a href="https://wiki.mozilla.org/IRC#Connect_to_the_Mozilla_IRC_server">Mozilla IRC</a>, and more. This lets you use Riot as a persistent client that keeps you connected to IRC even when you&rsquo;re not there.</p>
<p>
<figure>
  <img src="/blog/2017/03/intro-riot-01-logged-in.png" alt="Riot desktop application on Fedora Linux using Matrix" loading="lazy">
  <figcaption>Riot desktop application</figcaption>
</figure>
</p>
<p>Outside of the web application, you can also find it as a <a href="https://riot.im/desktop.html">desktop application</a> for Mac, Windows, and Linux, or a mobile application for iOS and Android. In this guide, you&rsquo;ll learn how to get started using Riot as a full-time messaging client with the default Matrix / IRC integration servers.</p>

<h2 id="register-and-get-a-client">Register and get a client&nbsp;<a class="hanchor" href="#register-and-get-a-client" aria-label="Anchor link for: Register and get a client">🔗</a></h2>
<p>First, you&rsquo;ll need to grab an account from Riot&rsquo;s website. Registration is straightforward and shouldn&rsquo;t take you much time. You can find the registration form <a href="https://riot.im/app/">here</a>. Once you&rsquo;re registered and have confirmed your email, you&rsquo;ll need to get the Riot applications on your devices of choice.</p>

<h4 id="desktop-clients">Desktop clients&nbsp;<a class="hanchor" href="#desktop-clients" aria-label="Anchor link for: Desktop clients">🔗</a></h4>
<p>There are desktop clients available for Windows, macOS, and Linux. If you&rsquo;re running Windows or macOS, you can download the right version for your desktop on the <a href="https://riot.im/desktop.html">Riot downloads</a> page. If you&rsquo;re using Debian, Ubuntu, or a related operating system, you can add a repository to your system to install the Riot desktop client. You can read <a href="http://data.agaric.com/how-install-riot-desktop-matrix-client-debian-based-systems">this guide</a> on how to add the repository and install Riot to your system.</p>

<h5 id="fedora">Fedora&nbsp;<a class="hanchor" href="#fedora" aria-label="Anchor link for: Fedora">🔗</a></h5>
<p>Riot is not yet officially packaged in Fedora&rsquo;s repositories. However, there is a <a href="https://copr.fedorainfracloud.org/coprs/taw/Riot/">third-party Copr repository</a> where the desktop application is packaged. Until it makes it into Fedora&rsquo;s repositories, you can use this version to get started with Riot. You can find the Copr project and install instructions <a href="https://copr.fedorainfracloud.org/coprs/taw/Riot/">here</a>.</p>

<h4 id="mobile-clients">Mobile clients&nbsp;<a class="hanchor" href="#mobile-clients" aria-label="Anchor link for: Mobile clients">🔗</a></h4>
<p>Want to have Riot integrated on your phone or prefer a mobile client? You can also find official versions of Riot on <a href="https://itunes.apple.com/us/app/vector.im/id1083446067">iOS</a>, <a href="https://play.google.com/store/apps/details?id=im.vector.alpha">Google Play Store</a>, and <a href="https://f-droid.org/repository/browse/?fdid=im.vector.alpha">F-Droid</a>. Using any of the mobile clients will integrate fully with a desktop client, if you choose to use both. This guide will focus more on the desktop clients.</p>

<h2 id="setting-up-freenode-in-riot">Setting up Freenode in Riot&nbsp;<a class="hanchor" href="#setting-up-freenode-in-riot" aria-label="Anchor link for: Setting up Freenode in Riot">🔗</a></h2>
<p>Riot currently supports eight IRC networks: Freenode, Moznet, Snoonet, OFTC, GIMPNet, Foonetic, Rizon, and EsperNet. Although you can use any network you like and the instructions will mostly be the same, this guide focuses on using <a href="https://freenode.net">Freenode</a>.</p>

<h4 id="joining-your-first-channel">Joining your first channel&nbsp;<a class="hanchor" href="#joining-your-first-channel" aria-label="Anchor link for: Joining your first channel">🔗</a></h4>
<p>One of the first things you&rsquo;ll see after signing into Riot is the directory. In the directory, you can search through chat rooms on Matrix itself or any of the other IRC servers that are integrated. To join your first channel, you can select the IRC channel of choice in the dropdown menu and search for a channel.</p>
<p>For example, if we want to find <code>#opensource.com</code> on Freenode, you can select the Freenode option and search for <code>#opensource.com</code>. Once it&rsquo;s there, you can join and say hello to the rest of the Opensource.com community hanging out in IRC.</p>
<p>
<figure>
  <img src="/blog/2017/03/intro-riot-05-join-opensource.com_.png" alt="Searching for #opensource.com on Freenode from Matrix / Riot client" loading="lazy">
  <figcaption>Searching for #opensource.com on Freenode from Riot client</figcaption>
</figure>
</p>
<p>Alternatively, if you would prefer directly joining a room, you can type the following as a command from any chat window in Riot.</p>
<pre tabindex="0"><code>/join #freenode_#channelname:matrix.org
</code></pre>
<h4 id="setting-your-irc-nick">Setting your IRC nick&nbsp;<a class="hanchor" href="#setting-your-irc-nick" aria-label="Anchor link for: Setting your IRC nick">🔗</a></h4>
<p>
<figure>
  <img src="/blog/2017/03/intro-riot-07-message-appservice.png" alt="Send a message to @appservice-irc:matrix.org to change your IRC nick in Matrix / Riot" loading="lazy">
  <figcaption>Send a message to <code>@appservice-irc:matrix.org</code> to change your IRC nick</figcaption>
</figure>
</p>
<p>By default, your IRC nick, or username, will be similar to your display name in Riot. Sometimes it will have a <code>[m]</code> appended to the end. However, after you connect to a channel, you can <a href="https://github.com/matrix-org/matrix-appservice-irc/blob/master/HOWTO.md#changing-nicks">change your nick</a> on the IRC side as well. You&rsquo;ll need to start a new conversation with the IRC integration bot between Riot and Freenode.</p>
<p>In the bottom left corner of your Riot client, you can start a new personal chat with any user. To message the IRC integration bot, start a new chat with <code>@appservice-irc:matrix.org</code>. This will put you and the bot together in a private chat. To change your nick, send the following command to the bot:</p>
<pre tabindex="0"><code>!nick irc.freenode.net &lt;IRC nick&gt;
</code></pre><p>You should receive a confirmation message, similar to: &ldquo;<em>Nick changed from &lsquo;OldNick&rsquo; to &lsquo;NewNick.&rsquo;</em>&rdquo; For more help, you can read the <a href="https://github.com/matrix-org/matrix-appservice-irc/blob/master/HOWTO.md#changing-nicks">official documentation</a> on changing your nick.</p>

<h4 id="authenticating-with-nickserv">Authenticating with NickServ&nbsp;<a class="hanchor" href="#authenticating-with-nickserv" aria-label="Anchor link for: Authenticating with NickServ">🔗</a></h4>
<p>One of the other vital functions you might need to do is authenticate with NickServ. This is especially important if you want to use your registered IRC nick or are a member of invite-only channels. However, it&rsquo;s possible to do this too.</p>
<p>You&rsquo;ll need to start another direct chat again. This time, you can search for the user <code>@freenode_NickServ:matrix.org</code>. This will put you into a private message with NickServ on Freenode&rsquo;s servers. To authenticate, you can send a message just like you normally would.</p>
<pre tabindex="0"><code>IDENTIFY &lt;username&gt; &lt;password&gt;
</code></pre><p>After doing this, you should receive the normal confirmation that you are now logged in as your account. Remember to use caution when opening this chat in a public place, as your password will be displayed in plaintext whenever you open that direct message with NickServ.</p>

<h2 id="say-hello">Say hello!&nbsp;<a class="hanchor" href="#say-hello" aria-label="Anchor link for: Say hello!">🔗</a></h2>
<p>Once you&rsquo;ve joined a channel, claimed your nick, and authenticated with NickServ, you will be all set to begin using Riot. In any channel bridged in IRC with Matrix, all of your messages from Riot will show up in the IRC channel. Riot can also act like an IRC bouncer that keeps you persistently connected. Whenever you open Riot, you will be able to see a log of past discussions even if you weren&rsquo;t connected to the Internet.</p>
<p>Both Matrix and Riot are open source projects. You can find <a href="https://github.com/matrix-org">Matrix&rsquo;s code</a> and <a href="https://github.com/vector-im">Riot&rsquo;s code</a> on GitHub. If you want to better understand how the integration bridge works, you can read <a href="https://matrix.org/blog/2017/03/14/an-adventure-in-irc-land/">this blog post</a> by one of the developers.</p>
<p>Have any comments or stories to share about using Riot? Are you already using it for IRC? Share your comments with us down below!</p>]]></description></item><item><title>FAmSCo August 2017 elections: Thoughts on a global community</title><link>https://jwheel.org/blog/2017/07/famsco-august-2017-elections/</link><pubDate>Mon, 31 Jul 2017 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2017/07/famsco-august-2017-elections/</guid><description><![CDATA[<p>A new release of Fedora makes headlines this month. With every release, it also means a new round of the Fedora community leadership elections. On 24 July 2017, the <a href="https://communityblog.fedoraproject.org/elections-august-2017-nomination-open/">call for nominations</a> went out for candidates. The <a href="https://fedoraproject.org/wiki/Fedora_Engineering_Steering_Committee">Fedora Engineering Steering Committee</a> (FESCo), <a href="https://fedoraproject.org/wiki/Fedora_Ambassadors_Steering_Committee">Fedora Ambassador Steering Committee</a> (FAmSCo), and the <a href="https://fedoraproject.org/wiki/Council">Fedora Council</a> all have <a href="https://fedoraproject.org/wiki/Elections">seats open</a>. Already, discussions on nominations are happening. The candidate interview templates are <a href="https://pagure.io/fedora-commops/pull-request/113">being prepared</a>. Even now, the nomination lists are filling up. However, I want to share an opinion on the upcoming FAmSCo election specifically.</p>

<h2 id="past-term">Past term&nbsp;<a class="hanchor" href="#past-term" aria-label="Anchor link for: Past term">🔗</a></h2>
<p>In this past election, the Council encouraged the new FAmSCo to retool themselves. They should support the Ambassadors in a new age of Linux outreach and events. And they have done exactly that. Clarifications and improvements to the <a href="https://pagure.io/famsco/issue/415">mentorship policies</a> are taking place, the Fedora Ambassadors Membership Administration (FAMA) was <a href="https://pagure.io/famsco/issue/421">reformed</a>, and a Fedora Activity Day (FAD) for the LATAM region was <a href="https://pagure.io/famsco/issue/426">successfully planned and executed</a>. As a voting Ambassador, I am proud of all FAmSCo members and happy to see the progress they have made this term.</p>

<h2 id="one-concern">One concern&nbsp;<a class="hanchor" href="#one-concern" aria-label="Anchor link for: One concern">🔗</a></h2>
<p>However, one thing stood out to me the past election. All of the representatives on FAmSCo were only from the EMEA and LATAM regions. Part of the fault is that there were no NA candidates and only one candidate from APAC. Therefore, the benefit of this was that EMEA and LATAM communities were more in touch with FAmSCo, since members in their meeting included elected representatives. In NA and APAC, this was not the case.</p>
<p>For Ambassadors in these regions, we did not have an attendee in our meetings to share news with FAmSCo. If we wanted to keep up, we would have to dig deeper. In March, I filed two tickets to suggest <a href="https://pagure.io/famsco/issue/419">opening the mailing list</a> to public participation and <a href="https://pagure.io/famsco/issue/420">establishing an IRC channel</a> presence. Consequently, FAmSCo has improved on being more accessible and transparent for all Ambassadors.</p>
<p>However, there is still a disconnection when your region doesn&rsquo;t have an elected official to help represent the unique needs and perspectives of your region. In NA, I thought it would help to have a representative. This past June, I traveled to India and met with some Ambassadors in Pune, India. My discussions with them led me to believe that APAC needs representation in FAmSCo too.</p>

<h2 id="looking-ahead-to-the-next-famsco">Looking ahead to the next FAmSCo&nbsp;<a class="hanchor" href="#looking-ahead-to-the-next-famsco" aria-label="Anchor link for: Looking ahead to the next FAmSCo">🔗</a></h2>
<p>Three seats are open for this coming election in August, leaving four (fantastic and well-qualified) FAmSCo members from EMEA to serve another term. Therefore, this leaves one region of the world well-represented by the Fedora Ambassador leadership body. Seeing as there are <strong>three seats</strong> up for elections and <strong>three regions</strong> that could be represented, I encourage voters in the next FAmSCo election to <strong>remember how big the Fedora community is</strong>.</p>
<p>The planet is big, and it&rsquo;s hard to know what&rsquo;s happening in different countries, regions, and continents. While we are all united as Fedora Ambassadors, there are unique challenges that our Fedora friends from one region may face that others may not. There are cultural, language, and currency differences. Some communities have a better foundation while others need guidance and encouragement to grow. I encourage all participating voters in this next election to remember our friends around the world and to <strong>help keep everyone included and involved</strong> in the conversations that drive the project forward.</p>]]></description></item><item><title>Ura Design crowdfunds free design for open source projects</title><link>https://jwheel.org/blog/2017/07/ura-design-crowdfunds-design/</link><pubDate>Tue, 25 Jul 2017 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2017/07/ura-design-crowdfunds-design/</guid><description><![CDATA[<p><a href="https://opensource.com/article/17/6/ura-design-open-source-projects"><em>This article was originally published on Opensource.com.</em></a></p>
<hr>
<p><a href="/blog/2017/06/ura-logo.png">
<figure>
  <img src="/blog/2017/06/ura-logo.png" alt="Ura Design logo" loading="lazy">
</figure>
</a>Open source software is nothing new in 2017. Even now, big tech giants are exploring open source. More and more companies allow employees to contribute to open source software on company hours, if it isn&rsquo;t altogether encouraged. However, design assets and work have not enjoyed the same popularity with open source licensing and use as software has. However, Albanian design agency Ura Design is helping change this.</p>
<p>The team consists of four people: <a href="https://elioqoshi.me/">Elio Qoshi</a>, <a href="https://redon.skikuli.com/about/">Redon Skikuli</a>, <a href="http://konstantinidis.cc/">Giannis Konstantinidis</a>, and <a href="https://lushka.al/">Anxhelo Lushka</a>. <a href="https://ura.design/">Ura Design</a> started from an idea. The team believed that many open source projects are full of capabilities and features, but their design can make it difficult for users to effectively use the software. This could be through user experience, branding, or accessibility. And the goal? To help bring these better design principles to open source projects at little to no cost. &ldquo;In open source, there are amazing projects that are poorly communicated with the outside world. By communication, we mean visual communications, branding, even marketing. That is nonexistent for many reasons. There is a connection between communicating your project well and also getting contributors or users on board,&rdquo; says Skikuli.</p>
<p>
<figure>
  <img src="/blog/2017/06/ura-design-team.png" alt="The Ura Design team, left to right: Elio Qoshi, Redon Skikuli, Giannis Konstantinidis, Anxhelo Lushka" loading="lazy">
  <figcaption>The Ura Design team, left to right: Elio Qoshi, Redon Skikuli, Giannis Konstantinidis, Anxhelo Lushka</figcaption>
</figure>
</p>
<p>The Ura Design team helps open source projects improve their design so they can focus on great code.</p>

<h2 id="how-it-works">How it works&nbsp;<a class="hanchor" href="#how-it-works" aria-label="Anchor link for: How it works">🔗</a></h2>
<p>Together, the four of them work with open source project owners to help them bring better design elements to their projects. The principles of <a href="https://ind.ie/ethical-design/">ethical design</a> are part of the goals and values of the project.</p>
<p>Some of their past projects include <a href="https://www.mozilla.org/en-US/">Mozilla</a>, the <a href="https://www.torproject.org/">Tor Project</a>, <a href="https://fsfe.org/">Free Software Foundation Europe</a>, <a href="http://www.glucosio.org/">Glucosio</a>, and more. The team takes contract work with companies or communities with a budget, but for projects with less financial support, they&rsquo;ll even do the work free. This is in part supported by their <a href="https://www.patreon.com/ura">Patreon page</a>, where anyone can subscribe or see updates from Ura Design.</p>
<p>Their Patreon page is part of the reason Ura Design is able to take on some projects at no cost. &ldquo;Since there are working hours involved, we are asking for people to make small contributions to help us pay living costs, so we work for small projects who apply for free or minimal design support from us. This is our way of supporting some open source initiatives that we think are worth it,&rdquo; says Skikuli. Right now, they have 22 backers to the project, which lets them cover most infrastructure costs. Some of the goals for the team now is to expand into photography to release work into the public domain.</p>
<p>
<figure>
  <img src="/blog/2017/06/ura-patreon-screenshot.png" alt="Ura Design Patreon page" loading="lazy">
  <figcaption>Ura Design Patreon: <a href="https://patreon.com/ura" class="bare">https://patreon.com/ura</a></figcaption>
</figure>
</p>

<h2 id="past-projects">Past projects&nbsp;<a class="hanchor" href="#past-projects" aria-label="Anchor link for: Past projects">🔗</a></h2>
<p>Ura Design has worked with many open source projects already. Some of their work covers projects at <a href="https://github.com/mozilla/OpenDesign/issues/98">Mozilla</a>, the <a href="https://github.com/TheTorProject/tor-media">Tor Project</a>, Glucosio, <a href="https://opensource.com/article/17/4/linux-chromebook-gallium-os">GalliumOS</a>, <a href="https://opensource.com/article/17/3/open-labs-48-hour-hackathon-albania">Open Labs Hackerspace</a>, and more. You can see the full list of <a href="https://ura.design/works/">past works</a> on their website.</p>

<h4 id="mozilla">Mozilla&nbsp;<a class="hanchor" href="#mozilla" aria-label="Anchor link for: Mozilla">🔗</a></h4>
<p><a href="/blog/2017/05/mozilla-i10n-mentor-logo.png">
<figure>
  <img src="/blog/2017/05/mozilla-i10n-mentor-logo.png" alt="Mozilla Localization team mentorship logo by Ura Design" loading="lazy">
</figure>
</a>The Mozilla localization team was looking to send a reward to their community translators around the world. Specifically, it was to celebrate the relationships formed between mentors and mentees over the years. The localization team was hoping to design t-shirts that captured these relationships and why they were important for the community.</p>
<p>For Mozilla, Qoshi had an existing relationship with Mozilla as a contributor. He was asked to help design and capture this connection inside of the localization community for Mozilla. The final design focused on two lions, one big and one small, looking at each other. &ldquo;It was nice effort for contributors who have been mentoring others to get recognized for their contributions. Good design breaks off a conversation even for a project like this,&rdquo; Qoshi said.</p>

<h4 id="the-tor-project">The Tor Project&nbsp;<a class="hanchor" href="#the-tor-project" aria-label="Anchor link for: The Tor Project">🔗</a></h4>
<p>Working with the Tor Project was a unique experience for Ura Design. The Tor Project was looking at rebranding the entire project. The end goal was to try to improve the accessibility of the project by incorporating good design elements.</p>
<p>
<figure>
  <img src="/blog/2017/05/tor-logo.png" alt="Tor Project rebranding by Ura Design" loading="lazy">
  <figcaption>Part of the new branding used by the Tor Project</figcaption>
</figure>
</p>
<p>Together with the Tor Project leadership, Ura Design helped lead the rebranding of the project. This included graphical assets, logos, and corporate identity. Today, you can see the new branding featured across Tor&rsquo;s web presence online. There are still plans to continue to roll these changes out over the coming year.</p>

<h4 id="logobridge">Logobridge&nbsp;<a class="hanchor" href="#logobridge" aria-label="Anchor link for: Logobridge">🔗</a></h4>
<p>The newest project from the team is <a href="https://ura.design/logobridge/">Logobridge</a>. From unused work or small samples, Ura Design releases several new logos into the public domain each month. People are encouraged to use them in their projects, for icons, for placeholders, or anything they want. There&rsquo;s no restrictions on how the logos can be used. Anyone can download the source SVG files to use in vector imaging software, like Adobe Illustrator or Inkscape.</p>
<p>Most of the logos designed through Logobridge are supported by monthly subscribers to Ura Design. It was from this that they decided to start Logobridge. You can see all of the logos they have <a href="https://ura.design/logobridge/">on their website</a>.</p>

<h2 id="got-projects">Got projects?&nbsp;<a class="hanchor" href="#got-projects" aria-label="Anchor link for: Got projects?">🔗</a></h2>
<p>Ura Design is still relatively new, but they hope to continue impacting open source projects through their work. To learn more about Ura Design, you can visit their <a href="https://ura.design/">website</a> or read their <a href="https://ura.design/category/blog/">blog</a>. Additionally, you can follow them on <a href="https://www.facebook.com/uracreative/">Facebook</a> or <a href="https://www.twitter.com/uracreative">Twitter</a> for other news and updates from the team. If you want to support their work, you can visit their <a href="https://www.patreon.com/ura">Patreon page</a>. And if you&rsquo;re an open source project? The Ura Design team encourages you to get in touch!</p>]]></description></item><item><title>What I discovered in Tirana, Albania</title><link>https://jwheel.org/blog/2017/05/open-labs-tirana-albania/</link><pubDate>Mon, 15 May 2017 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2017/05/open-labs-tirana-albania/</guid><description><![CDATA[<p>The past few months have brought many changes for me. I traveled throughout Europe to experience some of the open source conferences and communities across the continent. Along the way, I met incredible people with powerful stories about their own communities. However, there is one community that I knew about before I came to Europe. The <a href="https://openlabs.cc/en/">Open Labs Hackerspace</a> in Tirana, Albania is a special community that I was fortunate enough to discover and meet. Together, they have helped set in motion the open source way in their own city.</p>
<p>If you&rsquo;re outside of the Mediterranean region, the Open Labs Hackerspace might be one of the hidden secrets of the region that you never knew existed. Free software and open principles build the community&rsquo;s foundation. In their hackerspace, they support various open source projects with time, energy, and activism. Members work on various open source projects, ranging from <a href="https://fedoraproject.org/wiki/Overview">Fedora</a>, <a href="https://www.mozilla.org/">Mozilla</a>, <a href="https://nextcloud.com/">Nextcloud</a>, Wikipedia, <a href="https://www.openstreetmap.org/about">OpenStreetMap</a>, and more. But the open source way goes beyond the software. The hierarchy of this Albanian non-profit organization is flat and open too. The hackerspace places a strong emphasis on empowering others to have a voice and to take part in the governance. No question is ever dumb, and anyone who wants to learn is able to find someone who will help guide them in the right direction. The combined effect of open software and open culture has helped Open Labs grow over the past five years.</p>

<h2 id="why-open-labs">Why Open Labs?&nbsp;<a class="hanchor" href="#why-open-labs" aria-label="Anchor link for: Why Open Labs?">🔗</a></h2>
<p>There are many hackerspaces in the world, but why does Open Labs mean so much to me? They love free and open source software and believe in the open source way… sure. That&rsquo;s definitely part of it. But beyond the mission, beyond the activities, Open Labs fosters an inclusive and empowering culture. This culture has the effective of motivating others to understand that their voice matters and that they can have an impact on something far bigger than themselves. The hackerspace helps give young people in Tirana a platform to stand up and share their ideas. But beyond that, it provides them with the resources and community to help turn the ideas into reality.</p>
<p>So, what is the secret? Simply… the people.</p>
<p>Everything that the community here does, they take their unique passion and energy into those tasks. They invest their own personal resources into building solutions to answer complicated problems, inside and outside of Albania. Some of their work is best demonstrated in events that happened earlier this year. In March, Open Labs helped coordinate the first-ever <a href="https://opensource.com/article/17/3/open-labs-48-hour-hackathon-albania">48 hour hackathon</a> for United Nations <a href="https://sustainabledevelopment.un.org/sdgs">Sustainable Development Goals</a>. Later in March, they organized <a href="https://fedoramagazine.org/students-fedora-linux-weekend-2017/">Linux Weekend</a>, an introductory event to help introduce Linux to students. This was done by demonstrating what can be done with Linux and open source and then connecting students to professionals from Tirana and abroad. The organic energy that came from these events is almost immeasurable. Even an event report is hard to convey how inspiring that energy was.</p>
<p>This past weekend, from May 13-14, 2017, the community organized the fourth edition of the annual <a href="https://oscal.openlabs.cc/">Open Source Conference Albania</a> (OSCAL) in Tirana. This is the largest open source event in Albania and one of the most notable in southeast Europe. No event report for this yet, but you can expect one soon.</p>
<p>
<figure>
  <img src="/blog/2017/05/Fedora-meetup-at-OSCAL-2017.jpg" alt="Fedora Project community meet-up in Tirana, Albania for Open Labs Hackerspace&rsquo;s OSCAL 2017" loading="lazy">
  <figcaption>Fedora community meet-up for OSCAL 2017</figcaption>
</figure>
</p>

<h2 id="why-part-of-my-heart-is-at-open-labs">Why part of my heart is at Open Labs&nbsp;<a class="hanchor" href="#why-part-of-my-heart-is-at-open-labs" aria-label="Anchor link for: Why part of my heart is at Open Labs">🔗</a></h2>
<p>Whenever I visit Albania and visit Open Labs, I learn something new. There&rsquo;s many different types of things I learn. Sometimes it&rsquo;s something about an open source project or community. Other times, I learn about events and opportunities happening in the local Tirana area for open source. And then other times, I gain unique insight towards some of the unique challenges and problems that citizens face here. Every time I visit, my perspective is always broadened in a way that I wouldn&rsquo;t be able to normally find. It&rsquo;s exhilarating.</p>
<p>I am privileged and honored to be an official member of this community. However, I am mostly an observer in my role. The passion and interest are at the heart of the hackerspace. The members from Tirana have invested so much of themselves into this community, its mission, and its values. From reading, visiting, and talking with the people involved with Open Labs, you see many of their hearts dedicated to what they&rsquo;re doing. And when you see someone else who invests their heart into something, it&rsquo;s challenging to not lend some of your own too.</p>
<p>And in today&rsquo;s world, where the hearts of many people close with borders and the world shifts towards coldness, the warmth that radiates from Open Labs is refreshing, inspiring, and powerful.</p>

<h2 id="discover-open-labs">Discover Open Labs&nbsp;<a class="hanchor" href="#discover-open-labs" aria-label="Anchor link for: Discover Open Labs">🔗</a></h2>
<p>You can learn more about the Open Labs Hackerspace <a href="https://openlabs.cc/en/">on their website</a>. Additionally, you can also follow them along on <a href="https://www.facebook.com/openlabsAlbania">Facebook</a> and <a href="https://twitter.com/OpenLabsAlbania">Twitter</a> to see what they&rsquo;re up to. You can also see their <a href="https://forum.openlabs.cc/">Discourse forums</a> to say hello and take part in any discussion too.</p>]]></description></item><item><title>Mission to understand: Fedora Diversity FAD 2017</title><link>https://jwheel.org/blog/2017/04/fedora-diversity-fad-2017/</link><pubDate>Mon, 17 Apr 2017 00:00:00 +0000</pubDate><guid>https://jwheel.org/blog/2017/04/fedora-diversity-fad-2017/</guid><description><![CDATA[<p><a href="https://communityblog.fedoraproject.org/fedora-diversity-fad-2017/"><em>This article was originally published on the Fedora Community Blog.</em></a></p>
<hr>
<p>
<figure>
  <img src="/blog/2017/04/DSC_0031.jpg" alt="Team picture of the Diversity Team members (left to right: Brian Exelbierd, Amita Sharma, Radka Janek, Jona Azizaj, Bhagyashree Padalkar, Justin Wheeler)" loading="lazy">
  <figcaption>Team picture of the Diversity Team members (left to right: Brian Exelbierd, Amita Sharma, Radka Janek, Jona Azizaj, Bhagyashree Padalkar, Justin Wheeler)</figcaption>
</figure>
</p>
<p>The <a href="https://fedoraproject.org/wiki/FAD_Diversity_2017">Fedora Diversity FAD</a> (a.k.a. Fedora Activity Day, or a sprint) took place during the weekend of <a href="https://devconf.cz/">DevConf</a>, 27-29 January. The original planning for this FAD started in August 2016, after the <a href="https://flocktofedora.org/">Flock 2016</a> conference. At Flock, the Diversity Team held a panel with open discussion about diversity and inclusion efforts in Fedora. Based on the feedback received during and after the panel, it was a priority for us to continue working on the objectives we had established before Flock. For the FAD, a majority of the Fedora Diversity Team was present along with a few others.</p>
<ul>
<li>Amita Sharma (<a href="https://fedoraproject.org/wiki/User:Amsharma">amsharma</a>)</li>
<li>Bhagyashree &ldquo;Bee&rdquo; Padalkar (<a href="https://fedoraproject.org/wiki/User:Bee2502">bee2502</a>)</li>
<li>Brian Exelbierd (<a href="https://fedoraproject.org/wiki/User:Bex">bex</a>)</li>
<li>Jona Azizaj (<a href="https://fedoraproject.org/wiki/User:Jonatoni">jonatoni</a>)</li>
<li>Justin Wheeler (<a href="https://fedoraproject.org/wiki/User:Jflory7">jflory7</a>)</li>
<li>Maria &ldquo;tatica&rdquo; Leandro (<a href="https://fedoraproject.org/wiki/User:Tatica">tatica</a>)</li>
<li>Marina Zhurakhinskaya (<a href="https://fedoraproject.org/wiki/User:Marinaz">marinaz</a>)</li>
<li>Radka Janek (<a href="https://fedoraproject.org/wiki/User:Rhea">rhea</a>)</li>
</ul>
<p>We made significant progress in accomplishing our larger objectives and to contribute to the Fedora Project mission and goals. The primary objectives we established for our FAD were completing plans for the demographic survey, building a campaign based on those results, and analyzing our Code of Conduct to find ways to better impact the community. This report covers each of these objectives, what we accomplished, and what we plan to do next.</p>
<p>
<figure>
  <img src="/blog/2017/04/Diversity_FAD_2017_Logic_Model.png" alt="Logic model used for preliminary planning and mapping out the activities and impact of the Fedora Diversity FAD 2017" loading="lazy">
  <figcaption>Logic model used for preliminary planning and mapping out the activities and impact of the Fedora Diversity FAD</figcaption>
</figure>
</p>

<h2 id="demographic-survey--marketing-campaign">Demographic survey / marketing campaign&nbsp;<a class="hanchor" href="#demographic-survey--marketing-campaign" aria-label="Anchor link for: Demographic survey / marketing campaign">🔗</a></h2>
<p>The majority of our discussions and planning on Friday and Saturday were focused on establishing strategic goals for the demographic survey and crafting the questions. The wish for having a survey like this predates the Diversity Team back to some of the earliest tickets in the Fedora Council ticket tracker (see <a href="https://pagure.io/Fedora-Council/tickets/issue/1">#1</a> and <a href="https://pagure.io/Fedora-Council/tickets/issue/16">#16</a>). The need for a demographic survey was established by the Diversity Team as well shortly after Flock. At Flock, there was expressed concern about little understanding for the diversity of our community. Fedora is a global community spanning all four corners of the world. It&rsquo;s hard to understand the unique needs and wishes of our community if we don&rsquo;t know they are there or what they think we could do better. The survey is the means to this end and how we best understand how our community is composed to make Fedora a more welcoming and inviting place for our global community of contributors.</p>
<p>The FAD enabled us to make significant progress on establishing the groundwork for the survey and move towards deploying a live version of the survey. One of the early outcomes of our discussion was postponing ideas about a marketing campaign until we had actual data and results to work with. This would make sure our efforts and focus on that would not be wasted. While the marketing campaign is a primary goal for our team, we decided it was best to double our efforts on the survey. As it turned out, this was a good decision with the amount of time we had, as the survey discussion and planning took the longest part of our time together.</p>

<h4 id="building-the-questions">Building the questions&nbsp;<a class="hanchor" href="#building-the-questions" aria-label="Anchor link for: Building the questions">🔗</a></h4>
<p>Before the FAD, Maria, Bee, and Marina had compiled a list of questions starting in a <a href="https://lists.fedoraproject.org/archives/list/diversity@lists.fedoraproject.org/thread/BPV2OTZ5OFMKPTO3PJ5WAYVBHUCE3VXQ/">mailing list thread</a>. Many of the questions at the beginning were based on survey questions used in the FLOSS 2013 and <a href="https://cwiki.apache.org/confluence/display/COMDEV/ASF&#43;Committer&#43;Diversity&#43;Survey&#43;-&#43;2016">Apache Software Foundation Committer Diversity</a> surveys. We started our discussion about the objectives and problems we wanted to solve with this survey. We established these two points as our primary goals.</p>
<ol>
<li>Gather baseline demographics about the contributor community</li>
<li>Determine contributor knowledge about project components that ease contribution</li>
</ol>
<p>
<figure>
  <img src="/blog/2017/04/DSC_0023.jpg" alt="The entire team in Brno listening to Maria &ldquo;tatica&rdquo; Leandro and Marina Zhurakhinskaya, dialing in from Venezuela and the United States for the Fedora Diversity FAD 2017" loading="lazy">
  <figcaption>The entire team in Brno listening to Maria \&#34;tatica\&#34; Leandro and Marina Zhurakhinskaya, dialing in from Venezuela and the United States</figcaption>
</figure>
</p>
<p>With these points in mind, we revisited the draft of questions prepared by Marina. We took an initial pass discussing the questions and weighing if this was something we needed to know and whether we saw a use for the answers based on our goals. The first pass took the longest amount of time, but it narrowed the questions significantly. After getting to a smaller number of questions with varied opinions, the questions were organized them into a spreadsheet where we weighted them by point values and narrowed it down to our final set. Our final draft of questions can be found <a href="https://pagure.io/fedora-diversity/issue/12#comment-114215">in the Pagure ticket</a> tracking this task. We are awaiting feedback from Fedora Legal before moving forward. Once we receive additional feedback, we plan to revisit the implementation questions about how and where to deploy the survey.</p>

<h4 id="noting-the-working-process">Noting the working process&nbsp;<a class="hanchor" href="#noting-the-working-process" aria-label="Anchor link for: Noting the working process">🔗</a></h4>
<p>One thing worth mentioning and explaining is how we narrowed the questions. We originally had a wide set of questions and were struggling with how to narrow them down. The methods we ended up using, suggested by Brian, were successful in us focusing on the purpose and goals we originally identified. The concern was on survey engagement and trying to guarantee survey completion. Too many questions or making it too long could result in people not finishing the survey. It is more valuable for us to have the most important data (even if it&rsquo;s less) rather than have more questions but fewer responses.</p>
<p>
<figure>
  <img src="/blog/2017/04/DSC_0018.jpg" alt="Brian Exelbierd providing input on the demographic survey at the Fedora Diversity FAD 2017" loading="lazy">
  <figcaption>Brian Exelbierd providing input on the demographic survey</figcaption>
</figure>
</p>
<p>In the beginning, we started with the set of questions curated by Maria, Bee, and Marina. It was over 50 questions with different motivations or objectives. Our first approach was going from top to bottom of all the questions. We discussed each one and tried to justify if it was worthwhile to include. Some questions were easy to remove, but others were more challenging. All of this initial discussion gave background to the questions in the later steps. This took up a significant amount of time and was possibly one of the more difficult parts of this process.</p>
<p>After the initial pass, Brian organized all of the questions into a spreadsheet and established a scale from 1 to 7. Of the remaining questions, we ranked them in this order:</p>
<ul>
<li><strong>Category 1</strong>: Five questions</li>
<li><strong>Category 2</strong>: Five questions</li>
<li><strong>Category 3</strong>: Five questions</li>
<li><strong>Category 4</strong>: Five questions</li>
<li><strong>Category 5</strong>: Five questions</li>
<li><strong>Category 6</strong>: Five questions</li>
<li><strong>Category 7</strong>: Four questions</li>
</ul>
<p>After all of the team members ranked the questions by order of preference, we tallied up the points for all of the questions. We ended up taking the top twenty-two questions, which can currently be found <a href="https://pagure.io/fedora-diversity/issue/12#comment-114215">in the ticket</a>. This method of going through the options we had forced us into making tough calls and choices on the things we felt were most important. It was powerfully effective for us to go through our options in this way, and it&rsquo;s a method that could definitely be recycled for other purposes or even by other teams in Fedora.</p>

<h2 id="code-of-conduct">Code of conduct&nbsp;<a class="hanchor" href="#code-of-conduct" aria-label="Anchor link for: Code of conduct">🔗</a></h2>
<p>A code of conduct is a valuable part of an open source community. Its purpose is to set clear expectations about how the community interacts and behaves with each other. An effective code of conduct empowers contributors to be excellent to each other. This creates a welcoming and inclusive space.</p>

<h4 id="background">Background&nbsp;<a class="hanchor" href="#background" aria-label="Anchor link for: Background">🔗</a></h4>
<p>Before we all gathered in Brno, we planned to analyze the Fedora code of conduct to understand its strengths and weaknesses. We also wanted to focus on its visibility and ensure that it is well-communicated. This includes new contributors when they first join the community and also current contributors. We <a href="https://communityblog.fedoraproject.org/what-is-fedora-code-conduct/">published a post</a> about the Fedora Code of Conduct to help raise awareness, but planned to cover this more during our FAD.</p>
<p>
<figure>
  <img src="/blog/2017/04/DSC_0043.jpg" alt="Getting ready for another day of discussion on Sunday morning for the Fedora Diversity FAD 2017" loading="lazy">
  <figcaption>Getting ready for another day of discussion on Sunday morning</figcaption>
</figure>
</p>
<p>A comprehensive code of conduct is important to set the tone for interactions among contributors. This helps promote a global perspective and create a welcoming community. The code of conduct drives the belief that contributors should always be excellent to each other. This builds the community as a united, global team. It was valuable for us to deliver on our proposed impact for the Fedora community through our discussions and planning.</p>

<h4 id="seeking-positive-engagement">Seeking positive engagement&nbsp;<a class="hanchor" href="#seeking-positive-engagement" aria-label="Anchor link for: Seeking positive engagement">🔗</a></h4>
<p>After we arrived in Brno, we started to have discussions about this and what some our actions would be. The tone of our conversation switched from looking at it from a disciplinary point of view to an enabling point of view. A code of conduct isn&rsquo;t the only part of how to empower contributors to be excellent. To this end, we asked ourselves these questions.</p>
<ol>
<li>What kind of behaviors does the Fedora code of conduct encourage?</li>
<li>How are we able to reward positive interactions that show this behavior?</li>
</ol>
<p>While we spent time looking at the code of conduct, the main focus was how to promote the behavior the code of conduct encourages. The biggest idea that came from this discussion was Fedora Appreciation Week. It is a subtle yet positive way for people to be excellent to each other by saying &ldquo;thanks!&rdquo; and raising awareness for the work that people put into Fedora.</p>

<h4 id="fedora-appreciation-week">Fedora Appreciation Week&nbsp;<a class="hanchor" href="#fedora-appreciation-week" aria-label="Anchor link for: Fedora Appreciation Week">🔗</a></h4>
<p>This discussion mostly occurred on parts of Saturday and the Sunday of DevConf. This idea was originally suggested on the <a href="https://pagure.io/fedora-commops/issue/92">CommOps Pagure</a>. It was not an original part of our pre-planning, but it became a pivotal point in the context of how to encourage the positive behavior the code of conduct suggests. One of the first changes to the original suggestion was making it into an entire week instead of a day, so we have the most flexibility for planning the event and giving ample time for contributors to participate.</p>
<p>Afterwards, we started to look at systems used in other places to use as case studies. We examined the Red Hat appreciation system and the <a href="https://happinesspackets.io/">Happiness Packets</a> project. These examples helped to understand the benefit of co-workers or other community members encouraging each other. The Happiness Packets website puts it simply: &ldquo;The feeling that you made a difference, that your work matters and has value, and that the people you work with are happy to work with you, is an awesome feeling.&rdquo; Taking the time to understand the background and motivations behind these systems helped us determine the background and motivations for Fedora Appreciation Week. We divided our plans into short-term and long-term criteria.</p>
<p>
<figure>
  <img src="/blog/2017/04/DSC_0047.jpg" alt="Jona Azizaj and Brian Exelbierd discussing on the way to lunch for the Fedora Diversity FAD 2017" loading="lazy">
  <figcaption>Jona Azizaj and Brian Exelbierd discussing on the way to lunch</figcaption>
</figure>
</p>

<h4 id="long-term">Long-term&nbsp;<a class="hanchor" href="#long-term" aria-label="Anchor link for: Long-term">🔗</a></h4>
<p>The long-term discussion mostly focused on how we could make it easier for people to thank each other with Fedora web services. We started our focus with the existing platform of Fedora Badges. One idea was giving all Fedora contributors the ability to award a special type of badge to other contributors a fixed number of times in a release cycle. Each special badge would fit into one of the Four Foundations of Fedora (Freedom, Friends, Features, First). Each one would have guided criteria to consider when awarding the badge to someone else. The effect of doing is to strengthen our commitment to our Four Foundations and to thank contributors who are committed to any of the four areas.</p>
<p>As one example, imagine someone working on a new feature or exciting change for an upcoming Fedora release. They have invested a lot of time and energy into developing this change. Another contributor who noticed this could give them a &ldquo;Features&rdquo; badge to thank them for their commitment to driving Fedora forward. Another example might be when one contributor sends thoughtful words to another, thanking them for their time or for everything they do. That person might give the first person a &ldquo;Friends&rdquo; badge for being kind and considerate to them.</p>
<p>We also discussed the idea of tying the accumulation of these badges into a physical reward, such as a special t-shirt or sticker sent via the mail. We ran out of time to discuss this idea further.</p>

<h4 id="short-term">Short-term&nbsp;<a class="hanchor" href="#short-term" aria-label="Anchor link for: Short-term">🔗</a></h4>
<p>We started by trying to establish the general timeline for planning Fedora Appreciation Week. Initially, we want start defining guidelines and creating promotional materials to use and spread leading up to the week. This would include things like giving examples of the different ways contributors can give thanks and also to work on articles or posts.</p>
<p>The month before the appreciation week would focus on general awareness. This would include a Community Blog article and a post to the <a href="https://lists.fedoraproject.org/archives/list/announce%40lists.fedoraproject.org/">Fedora announce list</a>. The week before the first day would include a Fedora Magazine article explaining what&rsquo;s happening and also to provide a way for users or people outside of the contributor community to participate.</p>
<p>Methods to give thanks included thanking in IRC (either thoughtful messages or with <a href="https://badges.fedoraproject.org/tags/cookie/any">karma cookies</a>), writing messages on a public wall or forum, and sending personal notes to individual contributors. Methods we could use to measure this impact included but was not limited to were karma cookies, mailing list traffic, or wiki page edits.</p>
<p>For the short-term focus, more discussion is needed to develop the ideas for running Fedora Appreciation Week in 2017.</p>

<h2 id="tying-it-together">Tying it together&nbsp;<a class="hanchor" href="#tying-it-together" aria-label="Anchor link for: Tying it together">🔗</a></h2>
<p>The first-ever Diversity FAD was a great opportunity to spend significant amounts of time looking at how we can build more inclusive environments for Fedora contributors and how to tackle other issues like understanding who makes up the Fedora community. Our team was able to use this valuable time to work on these issues more personally and intently than IRC or mailing lists can provide.</p>
<p>Special thanks and our gratitude go to the Fedora Council for supporting our work with the Fedora Project budget and enabling us to be gather and work on these tasks. To all of us, this also showed that Fedora leadership is committed to supporting these initiatives and helping make diversity and inclusion an important part of the Fedora community. Additionally, we&rsquo;d also like to thank Brian Exelbierd for participating in the FAD even though his attendance wasn&rsquo;t originally planned—we were lucky to have him with us and to steal his time from other DevConf activities happening during the weekend!</p>
<p>We&rsquo;re looking forward to next plan talks and/or workshops at Flock 2017 this year.</p>

<h2 id="come-say-hello">Come say hello!&nbsp;<a class="hanchor" href="#come-say-hello" aria-label="Anchor link for: Come say hello!">🔗</a></h2>
<p>The Fedora Diversity Team mostly consists of a few active, core members. But we are always looking for more people to get involved and participate! Every contribution is significant and it helps to have numerous people from different backgrounds following along with our discussions, so they can speak up and add their voice when they feel it&rsquo;s important.</p>
<p>There are multiple ways you can get in touch with the Diversity Team. We have a <a href="https://lists.fedoraproject.org/admin/lists/diversity@lists.fedoraproject.org">mailing list</a> you can subscribe to and you can follow our discussions. We have an IRC channel on freenode (<code>#fedora-diversity</code>). You . We meet once every other week on Wednesdays at 12:00 UTC in #fedora-meeting on free</p>
<ul>
<li><a href="https://lists.fedoraproject.org/admin/lists/diversity@lists.fedoraproject.org"><strong>Mailing list</strong></a>: Subscribe to follow our discussions</li>
<li><strong>IRC channel</strong>: Say hello in <code>#fedora-diversity</code> on freenode (you can <a href="https://webchat.freenode.net/?channels=fedora-diversity">join with a web client</a> if you don&rsquo;t have an IRC client)</li>
<li><a href="https://apps.fedoraproject.org/calendar/meeting/4422/"><strong>Weekly meeting</strong></a>: Meet every other week on Wednesdays (12:00 UTC) in <code>#fedora-meeting</code> on freenode</li>
<li><a href="https://pagure.io/fedora-diversity"><strong>Pagure tickets</strong></a>: See some of the current tasks we&rsquo;re working on and what needs doing</li>
</ul>
<p>Come say hello and introduce yourself—we&rsquo;d love to hear what you have to say!</p>
<p>
<figure>
  <img src="/blog/2017/04/DSC_0041.jpg" alt="Saturday night dinner with other members of the Fedora community for the Fedora Diversity FAD 2017" loading="lazy">
  <figcaption>Saturday night dinner with other members of the Fedora community</figcaption>
</figure>
</p>
<hr>
<p><em><a href="https://thenounproject.com/search/?q=diversity&amp;i=913730">Heterogeneous group</a> icon by <a href="https://thenounproject.com/magicon">Magicon</a> from <a href="https://thenounproject.com/">the Noun Project</a></em></p>]]></description></item></channel></rss>