Skip to content

Curriculum for students of ‘open source’, starting with a narrow focus on open software development.

License

Notifications You must be signed in to change notification settings

erlend-sh/opensource-curriculum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 

Repository files navigation

In brief: A curriculum for students of 'open source' as it is practiced by open source software developers. Whether you’re a newcomer to open source or you’ve been involved with the practice for some time, this curriculum aims to provide a comprehensive overview of everything open source is, and aspires to be.

Open-Source Curriculum (v0.2.0)

This document aspires to become a comprehensive reading list for anyone seeking to deeply understand ‘openness’ as an ideology for knowledge work, a distributed movement, a commercial industry and more yet to come.

Open Source as a subset of openness

https://en.wikipedia.org/wiki/Openness

Openness is an overarching concept or philosophy that is characterized by an emphasis on transparency and collaboration. That is, openness refers to "accessibility of knowledge, technology and other resources; the transparency of action; the permeability of organisational structures; and the inclusiveness of participation". Openness can be said to be the opposite of closedness, central authority and secrecy.

Since openness is such an expansive subject, we will start here with a narrow focus on openness as it pertains to software development and the internet-connected world. In software and tech, 'open source' is the most commonly practiced form of openness.

As soon as you start delving into software openness, you'll begin hearing the term open source. Before long you'll also learn that there is a difference between what's called "open source" and "free". And you'll learn that these terms are defined both formally and informally. It's important to be aware that no one owns these terms. There is no central authority to say what "open source" means, just like there's no central authority on the term "democracy".

Open Source (sometimes capitalized!) isn't limited to just software. Any thing with a blueprint that enables said thing to be inspected, duplicated or modified can be regarded as open source. This blueprint could be anything from the complete specification of an airplane, all the way down to the genetic code of a seed. The openness movement therefore extends far beyond the confines of software.

From now on we will talk about the "openness movement" and "open source" somewhat interchangeably. Like it or not, "open source" is being adopted into the mainstream with new meanings attached to it that are way outside the scope of its origins. See for instance "Open Sourced" by Vox, a publication that is largely values-aligned with the open source movement, but has nothing to do with software licensing and open source practices.

Curriculum highlights

  • What “open source” means
  • How openness is applied in software development
  • Economic & personal sustainability
  • Software ethics

In the open source spirit, this curriculum is itself open source, I.e. permissively licensed. We will diligently review the change requests that are sent our way, with the intent of eventually having multiple co-editors. If someone strongly disagrees with how the editors exercise their final-edit powers, feel free to fork this curriculum. If you don’t yet know what that means, you’ll learn very soon!

What is open source

If you're absolutely new to the very concept of open source, start by watching these two introductory videos.

https://www.youtube.com/watch?v=Tyd0FO0tko8&feature=youtu.be

https://www.youtube.com/watch?v=a8fHgx9mE5U

(HELP WANTED: Are you aware of a text/graphical writeup that explains open source in similar fashion to the videos above? We need one of those!)

Creative Commons is also a very plain-English way of understanding the open source ethos through the lense of licensing. CC licenses are primarily intended for artifacts such as books, images and music.

https://creativecommons.org/share-your-work/

https://creativecommons.org/use-remix/cc-licenses/

For now this curriculum will focus on software because...

  1. Open source software is arguably the furthest ahead of any openness movement.
  2. The author(s) of this curriculum are chiefly familiar with software.

Further Reading:

History & Status Quo

https://en.wikipedia.org/wiki/History_of_free_and_open-source_software

https://en.wikipedia.org/wiki/Open-source-software_movement

https://opensource.org/history

https://www.ufried.com/blog/oss_1_rise_of_oss/ https://www.ufried.com/blog/oss_2_misconceptions/ https://www.ufried.com/blog/oss_3_today/

https://steveklabnik.com/writing/the-culture-war-at-the-heart-of-open-source https://steveklabnik.com/writing/what-comes-after-open-source

https://blog.timescale.com/blog/open-source-demise-of-proprietary-software-a49f73f54165/ Retort: https://news.ycombinator.com/item?id=21873337

https://venturebeat.com/2015/12/06/its-actually-open-source-software-thats-eating-the-world/

Ideology

Central authorities for the term “open source”

There is no single authority that ratifies what can be deemed "open source" or not. There are however a few organisations that are widely regarded as highly trusted, and many people believe that their definitions of "open source" should be strictly adhered to. Chief among these is the Open Software Initiative.

opensource.org by Open Software Initiative

https://opensource.org/osd-annotated

https://opensource.org/faq

Not to be confused with opensource.COM, an advocacy site for open source by the company Red Hat:

opensource.com by Red Hat

https://opensource.com/resources/what-open-source

https://opensource.com/open-source-way

Opinion pieces on the open source definition

Why make anything open source

At first glance, open source sharing might just seem like charitable giving. A philanthropic endeavor to make the world we inhabit more open to scrutiny and modification. Yet while a sense of charity is certainly felt by many open source contributors, the practical benefits of open source licensing also align perfectly well with egoistic altruism as well as common-sense business strategy.

Economic incentives aside, the open source development methodology is simply an easier, more efficient way to develop software. Openly accessible knowledge gives way to more and better knowledge.

Non-zero-sum

Intrinsic Motivation

https://www.ted.com/talks/dan_pink_the_puzzle_of_motivation

"Open Source" vs "Free Software"

https://www.youtube.com/watch?v=Ag1AKIl_2GM https://www.gnu.org/philosophy/free-sw.en.html

Privilege & Inclusivity

https://www.npr.org/sections/codeswitch/2013/12/05/248791579/why-isnt-open-source-a-gateway-for-coders-of-color?t=1577575156872

https://www.ashedryden.com/big-ruby-open-source-isnt-for-everyone-but-it-could-be

https://dri.es/the-privilege-of-free-time-in-open-source

https://jlord.us/blog/osos-talk.html

https://www.peterkrautzberger.org/0193/

https://www.techrepublic.com/article/is-getting-paid-to-write-open-source-a-privilege-yes-and-no/

Ethics

Is open source biased towards being for “good”?

https://medium.com/@johnmark/why-open-source-failed-6cae5d6a9f6

https://dev.to/degoodmanwilson/open-source-is-broken-g60

https://firstdonoharm.dev/version/1/2/license.html

http://ethics.fast.ai/

Industry

https://www.cnbc.com/2019/12/14/how-open-source-software-became-the-new-industry-standard.html

https://www.forbes.com/sites/forbestechcouncil/2018/07/16/how-open-source-became-the-default-business-model-for-software/

https://www.youtube.com/watch?v=7XTHdcmjenI (See the upcoming Civility chapter for a follow-up on Linus’ behavior. Linus himself has made some apologies in later times. Rigorous debate and politeness are in no way mutually exclusive.)

https://changelog.com/topic/oss/podcasts

Business Differentiators

https://ben.balter.com/2015/11/23/why-open-source/

https://www.ycombinator.com/library/56-why-the-best-companies-and-developers-give-away-almost-everything-they-do

https://blog.tommoor.com/2019/01/01/you-should-open-source-your-product/

https://writing.kemitchell.com/2018/08/23/Selective-Mythology.html

https://changelog.com/podcast/322

https://changelog.com/podcast/322#transcript-69

https://changelog.com/podcast/322#transcript-91

Dgraph notes

https://en.wikipedia.org/wiki/Vendor_lock-in

Business Strategy

https://en.wikipedia.org/wiki/Business_models_for_open-source_software

https://a16z.com/2019/10/04/commercializing-open-source/ 👉 https://archive.is/gBQIM

https://heathermeeker.com/2018/06/24/revisiting-the-open-source-business-model/

https://blog.opentechstrategies.com/category/open-source-at-large/

https://blog.timescale.com/blog/how-open-source-software-makes-money-time-series-database-f3e4be409467/

https://medium.com/blossom-capital/successful-open-source-business-models-2709e831e38a

https://indieopensource.com/

https://sfosc.org/

https://nythesis.com/open-courses/commercial-open-source-startups/ (defunct)

Open Core

https://www.coss.community/jj/open-core-definition-examples-tradeoffs-ahi

https://www.coss.community/jj/coss-company-value-creation-and-capture-fundamentals-3829

https://www.coss.community/cossc/polyform-and-open-core-2oh6

Entrepreneurship

https://calmfund.com/writing/why-would-bootstrapped-founders-raise-capital

https://calmfund.com/writing/should-you-raise-money-reilly-chase-calm-company-founder

https://calmfund.com/writing/product-strategy

https://calmfund.com/shared-earnings-agreement

https://calmfund.com/writing/shared-earnings-agreements-with-multiple-investors

https://calmfund.com/writing/founder-break-even-calculator

Sustainability

https://www.fordfoundation.org/work/learning/research-reports/roads-and-bridges-the-unseen-labor-behind-our-digital-infrastructure/

https://dri.es/balancing-makers-and-takers-to-scale-and-sustain-open-source

https://katedowninglaw.com/2019/09/08/the-great-open-source-shake-up/

https://writing.kemitchell.com/2019/09/09/Shake-Up.html

https://sustainoss.org/

Further Reading:

Social pressure & Burnout

Methodology

Open source is also a way of working.

Open Source Methodologies

Inner Source

https://en.wikipedia.org/wiki/Inner_source

Inner source is the use of open source software development best practices and the establishment of an open source-like culture within organizations. The organization may still develop proprietary software, but internally opens up its development.

https://writing.kemitchell.com/2019/01/12/Outer-Source.html

Distributed Work

https://www.welcometothejungle.com/en/articles/btc-remote-open-source

https://distributed.blog/

https://basecamp.com/books/remote

Community

The Open Source Community

https://opensource.com/government/10/10/what-open-source-community

The global open source community is an international group of independent collaborators that develops and maintains freely available software, emphasizing transparency, inclusivity, and diversity. Participation can lead to a sense of belonging, skill development, networking opportunities, and the thrill of contributing to a public good.

https://medium.com/@djhersh/community-software-is-dead-431d9f347ee6

The traditional model of community-driven software development is no longer effective due to fragmentation and lack of vision. Instead, companies should focus on building tribes of like-minded individuals who work together to create software that meets their specific needs.

https://medium.com/sustainable-free-and-open-source-communities/we-need-sustainable-free-and-open-source-communities-edf92723d619

Sustainable communities around open source software are crucial to avoid burnout and project abandonment. Building diverse and inclusive communities with clear governance structures and funding models can help achieve this goal. The "Open Collective" model can be used to support funding and transparency.

Community Building

Starter Pack:

Further Reading:

https://www.jonobacon.com/books/peoplepowered/ 🌟

https://www.penguinrandomhouse.com/books/300615/here-comes-everybody-by-clay-shirky/ 🌟

Licensing

Fundamentals

https://opensource.com/article/17/9/open-source-licensing

https://heathermeeker.com/open-source-faq/basic-open-source-software-licensing/

https://heathermeeker.com/open-source-faq/what-should-my-company-know-about-open-source/

https://blog.usejournal.com/understanding-open-source-and-free-software-licensing-c0fa600106c9

Further Reading:

Ratification

https://writing.kemitchell.com/2017/08/31/Null-Value.html

Strategy

https://coss.media/open-source-creator-licensing-fundamentals/

https://coss.media/how-to-choose-open-source-license/

https://coss.media/understand-distribution-open-source-licensing/

https://dirkriehle.com/publications/2009-selected/the-commercial-open-source-business-model/

https://dirkriehle.com/wp-content/uploads/2020/04/09062364.pdf

https://dirkriehle.com/2019/12/17/single-vendor-open-source-firms-and-intellectual-property-strategies-video/

Ethical Licensing

https://ethicalsource.dev/definition/

https://firstdonoharm.dev/

https://heathermeeker.com/2019/11/09/good-and-not-evil-the-advent-of-ethos-licensing/

https://writing.kemitchell.com/2019/11/09/Heather-Meeker-Ethos.html


Appendix

Changelog

v0.2

Added Entrepreneurship section with links from Calm Company.

v0.1

First batch of reading material made publicly available for crowd-powered editing.

Roadmap

  • Better guiding text in between articles.
  • Brief summary of each piece.
  • Fast track and a scenic route.

About

Curriculum for students of ‘open source’, starting with a narrow focus on open software development.

Resources

License

Stars

Watchers

Forks