I Am Using GitHub Under Protest
Github decided to sponsor me, because they rely on my tools.
In spite of that, I'm leaving. Why? I certainly do not have the spare-time to move hundreds of projects to a new home... but I'm getting started. I'll enumerate some of the reasons below, but first, where am I, and some of the organizations I control, going?
- pboling @ 🧪 GitLab
- rubocop-lts @ 🧪 GitLab
- oauth-xx @ 🧪 GitLab (chosen amongst all options, including staying at GitHub, by a majority of the dozens of respondents)
- pboling @ 🧊 CodeBerg
- galtzo @ 🛖 SourceHut
Reasons to Leave GitHub
- A recent proposal to extend Github-flavored Markdown (ref)
- Literally breaks regular markdown syntax of links in headings.
- English-only
- Incompatible with Semantic HTML (POSH) (by abusing the
blockquotetag; this also raises issues of accessibility) - Incompatible with existing Markdown standards proposals
- Ignores the community-centered approach to extending Markdown, which, ironically, Github started
- Contributes to vendor lock-in.
- Will force countless volunteer FOSS developers to waste time adding compatibility to their projects that use Markdown and attempt to support GFM.
- More than 2 years of ignoring requests to add an important feature (
allow-failure) to Github Actions (ref, ref). When not ignoring, Github is completely misunderstanding the feature. How are those building Github Actions so deeply unfamiliar with core features of competing CI platforms? - Latest iteration of Achievements was bad.
- Github Copilot. Much has been written about this, and I won't repeat it all here. Making money by abusing the licenses of open source code, without recognition, compensation, or respect to the developers, the craft, or the ideals of open source is nauseating.
What about community?
I am interested in people's thoughts on where to go next. Community involvement matters for open source projects, and I have dozens of them that could be affected, the biggest being oauth and oauth2 Ruby gems.
Regarding fragmentation, hopefully it will be resolved by federation, which is to source forges (like Github) what git was to version control (i.e. makes it distributed, at least in theory).
It looks like Gitea, Codeberg and Hostea will join the fediverse soon, within a year, and there are projects that will integrate Github with the fediverse as well (i.e. federate Github commits, PRs, issues, etc).
I'm interested in your thoughts, leave a comment on the blog post!
Blog posts
- Put the D in DVCS
- How to Repair an Old Gem (Part 5) - Rakefile & RuboCop LTS
- How to Repair an Old Gem (Part 4) - Upgrade Autotest
- How to Repair an Old Gem (Part 3) - Upgrade RSpec
- I'd like to post here again
- List of (Currently) Maintained RubyGems
- Life After Github?
- I'm Leaving Github
- I'm leaving Github
- I use shared hosting as my build server. Here's how.
Contributions
🧒 How it started...
A cheeky me holding a baby black caiman, Amazon River, Brazil, June 24, 1997, shortly after completing my first programming course - Pascal. The black caiman, a baby specimen of the family Alligatoridae and order Crocodilia, was unharmed, and released back to the water, where it promptly continued following its mother. Full grown they are among the largest alligators and crocodiles in the world.
How it's going...
- 🦷 I'm putting more of my focus on FLOSS efforts (of myself and others)!
and
from
- 👷 I build big things and small things out of tiny bits.
- ✨ Recently created
rubocop-ltsfor library maintainer happiness 👩❤️👩. - 🔭 I’m working on switching my gem libraries to use Github Actions for CI
- 🌱 I’m learning Svelte, and I want to learn Rust next
- 👯 Preparing transition to v2 of the
oauth2gem! - 🤔 I’m looking for help with maintaining my suite of Resque plugins, as I don't have a current use case for Resque.
- 📫 How to reach me
- 😄 Pronouns: He/Him
- 🗨️ I speak 3 languages fluently, and for a 4th I'm learning Bahasa Indonesia!
- 👷♂️ I help refugees and ex-refugees in Ghana🇬🇭 and Liberia🇱🇷, respectively, through Hope For Tomorrow, a Liberian NGO. DM me if interested in knowing more.
💼 Career
- The list is long, even in summary, see my LinkedIn.
🧻 Current Roles
- Principal Cloud Engineer | Vital Connect
- Full Stack Instructor | Michigan State University Bootcamp
- FOSS Blogger | RailsBling
- FOSS Author | RubyGems
- FLOSS Maintainer | Tidelift Enterprise OSS
- Researcher | WordTree Foundation
- Member-worker | Bed of Roses Club
- Advisor | Hope For Tomorrow (Liberian NGO)







