Over the course of the next few weeks, we are switching the CircuitPython repositories to use main as their default branch instead of master. This change is a continuation of past efforts to depart from language deeply rooted in centuries of racism and the subjugation of people based on the color of their skin towards language that is inclusive of everyone. These changes can (and will) spark others in the electronic & maker communities to think about the history of words, how they are used, and changes we can make together.
This is a follow up our previous post(s) on inclusive language in Python and more – The Python programming language repository migrates to main on GitHub … From the March 23, 2021 (Python Steering Council) –
Yes, this is a political decision. Very many decisions are political. The existence of an open-source project is inherently political. The decision to try and make python-dev more welcoming, more open, more helpful is also a political decision — one that the SC feels is absolutely necessary for the long-term health of the Python language. Not wanting to be bothered by political decisions is a political decision; it’s a decision that you’re happy
with politics as they are. I’m afraid you can’t avoid politics.
This isn’t just about ‘master’ being rooted in slavery. This is about what the community sees and does. As I mentioned before, we’re not leading the pack in this, we’re merely following along with others (like, say, Django). There are undoubtedly other terms and practices that are genuinely offensive, and the decision on how to handle them will be taken on a case-by-case basis, weighing the cost and the benefit in each case.
While you may feel the benefit of this change is small and that it has no real impact, we believe that there is little cost to making this change. We believe this change, while a minor inconvenience to some, helps demonstrate our commitment to acting in the best interests of Python’s future. Failure to make a small sacrifice, such as this, signals that the Python core development community would be unlikely to undertake real change for greater benefits.
This isn’t happening because GitHub/Microsoft made a political decision. It’s happening because it is incredibly easy to make this move, many projects have already done this, and it reflects badly on any project not making this change.
IEEE December 2020 …
IEEE standards (including recommended practices and guides) shall be written in such a way as to unambiguously communicate the technical necessities, preferences, and options of the standard to best enable market adoption, conformity assessment, interoperability, and other technical aspirations of the developing standards committee. IEEE standards should be written in such a way as to avoid non-inclusive and insensitive terminology (see IEEE Policy 9.27) and other deprecated terminology (see clause 10 of the IEEE SA Style Manual) except when required by safety, legal, regulatory, and other similar considerations. Terms such as master/slave, blacklist, and whitelist should be avoided.
We, the undersigned, encourage educators, engineers, designers, and community members to discontinue the use of the terms MOSI/MISO/SS and in their place use SDO/SDI/CS.
And the work continues …
- MOSI/MISO and 140 Years Of Wrong – June 2021.
- The Python programming language repository migrates to main on GitHub… May 2021.
- What Is the Best Way to Purge…
- Fight Over Offensive Terms in Computing – April/May 2021.
- The Linux kernel has now adopted inclusive language – JULY 12, 2020.
- Git and Branch Naming – Software Freedom Conservancy – June 2020.
- Making open source more inclusive by eradicating problematic language @redhat – JUNE 30, 2020.
- A Resolution to Redefine SPI Signal Names – Open Source Hardware Association – JUNE 29, 2020.
- Replacing Terms in Music Technology – JUNE 22, 2020.
- Renaming the default branch – GitHub.
- Replacing “master” reference in git branch names – May 2019.
- “Master” on GitHub – Feb, 2001.
- Black Lives Matter at Adafruit.
What does this mean for contributors to CircuitPython?
This change will affect those folks who contribute to the Adafruit CircuitPython libraries. You will need to make sure that you’re working with the main branch instead of the master branch when you are working on library code or documentation.
If you are planning on getting started contributing, we recommend starting fresh with a new clone of the repository to ensure that you have the latest updates. The Contribute to CircuitPython with Git and GitHub guide shows how to tell whether or not a library has been updated to main.
Be aware that we are deleting the master branch in this process, so if you are trying to push to or sync with master, it will fail – This is deliberate as we do not want folks to be confused moving forward about which branch is the active one.
Update – June 8, 2021. Looks like on GitHub, Arduino is now also moving from master to main on some repos (mostly the new ones so far, the ArduinoAI repo for example).