The Interledger Community 🌱

Josh Senyak for Tembo

Posted on

Let's talk about open source

My GFTW grant involves a new open source project. Now the confession - I've never launched my own open source software project before. In fact I've never even contributed to an existing open source project.

To start my learning process, I attended open-source-related sessions at recent conferences: All Things Open, WordCamp, and Aspiration Tech's Dev Summit. Then I read the online book Producing Open Source Software (https://producingoss.com/en/), which I found very good.

Please give a shout-out in this thread if your GFTW project is open source, or if you're willing to share some wisdom with those of us are. Thanks!

Top comments (12)

Collapse
 
michaeltharrington profile image
Michael Tharrington • Edited

Heyo!

I'm the Community Manager at DEV (dev.to), which is the first community built on Forem. Forem is also the software that this community — The Web Monetization Community — is built on. You can read a bit more about Forem here.

I joined DEV shortly after they made the decision to make dev.to open source. At this point in time, they had begun to conceptualize Forem — with a plan to generalize the code behind DEV and make it so that other folks could build communities using the platform. I got to see this concept come to fruition as we worked in the open over GitHub with community members to both improve dev.to but also generalize the platform so that new communities could be built on Forem.

It's been a super interesting ride. To be clear, I'm nontechnical, but I know how to make both feature requests and bug reports over GitHub. I also like to think that I understand the power of having people work with you in the open — especially people who are users of your product. Community members put forth some of the best ideas for new features and definitely catch a lot of bugs too. 😅 It's nice that we have a technical community because they're often the ones jumping in to proposes fixes and changes too.

There are certainly challenges too. Maintaining an open source project is often like maintaining it's own little community too. You need to appropriately recognize and give attention to folks involved, you need to be prepared to code a little less and review other's works a little more. But, I do think it's a rewarding experience and a great natural way to make allies in whatever you're building.

Personally, I think open source is cool because it's often one of the best ways to be transparent with your decision making behind whatever it is you are building. To me that honesty is a good service to all involved — folks working on the thing you're working on and those that are using it.

Collapse
 
jsenyak profile image
Josh Senyak

This is very helpful. Thank you Michael. I'm coming to understand that open source is largely about a community and only partially about shared code development. Since I'm a writer I'm especially intereted in the crucial role that documenters (and community managers!) play in that community.

Collapse
 
michaeltharrington profile image
Michael Tharrington

Awesome! Well, if I can help, please let me know. 🙂

I think you're exactly right... open source really depends on community. Generally everyone is by themselves at home working solo on their machine, so good docs and patient communication are super important for setting clear expectations and connecting everything together with little friction.

Community is also just important for the morale aspect. While I'm not a dev and not merging loads of code or anything, I'd like to think that if I did, someone would notice and give some sort of shout out. We generally all want some recognition; I'm thinking about when I work with folks over GitHub and don't see the person (in person) who is helping to create that feature request I requested, it's important that I make the extra effort to give them a shoutout.

Collapse
 
benhylau profile image
Benedict Lau

COMPOST magazine and its publishing tool Distributed Press are both released with copy-left licenses CC BY-SA 4.0 (for content) and AGPLv3 (for code) respectively. Here is what one of the repositories look like with its license file in the code base.

While I generally use copy-left licenses that don't differentiate between commercial and non-commercial use for my open source projects, I think there are good reasons for licenses that do make that differentiation such as Prosperity, as well as ones that don't have copy-left requirements such as Apache 2.0 and MIT.

In these decisions, I tend to ask myself what my goal is for the project, and make a distinction about the many good reasons for "opening" the source. Do I want the code to be open for public audit, in order to keep security components honest? Or is it to allow everyone to use it for free, or to allow people to build upon to keep myself from building a monopoly? How mad will I be if Amazon decides to operate a lucrative business based on my free labour? Or do I want to define a protocol/schema that hopes to gain adoption from as wide an audience as possible? Answering these questions will point me to some direction on which license to use. I hope this is helpful.

Collapse
 
jsenyak profile image
Josh Senyak

Hi Benedict - these are great questions and I'm especially intrigued about the profit/not-profit divide - under what circumstances does one just plunge in and say "ANYBODY can use this (even Amazon!)"?

Checking out your project, I see that Compost is also a magazine about digital commons... and so I expect there will be great resources in the mag itself. When do you think Issue 01 will hit the ether?

Collapse
 
benhylau profile image
Benedict Lau

plunge in and say "ANYBODY can use this (even Amazon!)"

I think most open source software actually say exactly that. GPL, Apache, MIT, all the mainstream stuff really.

This article may be an interesting read navigating all this, and filling in some historic context around the never ending quest to "monetize open source". I think some of the new licenses used by Redis, MongoDB, and especially Mapbox (open source and non-permissive), are quite interesting. Of course, whether such licenses can be considered "free" software is questionable, but to be free you have to first exist.

RE: COMPOST, we are working with authors now to hoping get the first issue out in February :D

Collapse
 
cyberdees profile image
Desigan CHINNIAH • Edited

Nadia Eghbal recently penned 'Working in Public: The Making and Maintenance of Open Source Software' which is available via many online bookstores. Do consider adding it to your reading...

Collapse
 
jsenyak profile image
Josh Senyak

Thanks for the suggestion, Desigan. This looks deeper than just a how-to. Will check it out.

Collapse
 
drsm79 profile image
Simon Metson

Mine will have some open sourced libraries as part of its output. I’ve been involved in various open source projects over the years, happy to chat.

Collapse
 
jsenyak profile image
Josh Senyak

Thanks Simon. I just checked out your Audiotarky project info and I love that this is happening. I'll follow up when I've gone deeper & have better questions.

Collapse
 
drsm79 profile image
Simon Metson

Great :)

Collapse
 
benhylau profile image
Benedict Lau

Returning to this thread because I just wrote up my thoughts around software licenses, and the common tensions with project sustainability, maintainer labour, and how projects relate to their contributor communities.

We all have probably heard how some big FLOSS project struggle to find financial sustainability, with maintainers burnt out, or left community contributors feeling betrayed. I have maintained several small FLOSS projects myself over the years, and definitely feel the hidden labour behind community stewardship.

A project I am part of is publishing previously private source code over coming weeks that we developed over last year, and I had a chance to think through this properly and put in writing, and would like to share with y'all: aethereans.substack.com/p/source-u...

Curious to know your thoughts!