Mike McQuaid
banner
mikemcquaid.com
Mike McQuaid
@mikemcquaid.com
Edinburgh-based product and engineering leader, ex-GitHub Principal Engineer (#232, 2013), with 18 years of experience reducing developer friction and scaling open-source to tens of millions of users.
Another discussion with Neha Batra on "Creating and Keeping Momentum" on our podcast "Minimum Viable Management".

Momentum = clarity + ruthless scope + visible wins.
We cover the 3-question test, smallest shippable slices, temporary process, pain snakes and smart nos.
November 11, 2025 at 12:53 PM
"Most people overestimate what they can do in one year and underestimate what they can do in ten years."

mikemcquaid.com/good-things-...
Good Things Take A Long Time
In tech, 3 years is often considered a “long tenure”. We maintain open-source projects for 2 years, then burn out. We start habits, lose momentum and quit.
mikemcquaid.com
October 24, 2025 at 7:21 AM
Another "Minimum Viable Management" podcast episode with Neha Batra dropped, this time about "Psychological Safety vs. Telling the Truth": mikemcquaid.com/minimum-viab...

We've also got a GitHub repository now with summaries of topics you can share with others: github.com/Minimum-Viab...
GitHub - Minimum-Viable-Management/Minimum-Viable-Management: 🎙️Notes, playbooks, and resources from Minimum Viable Management podcast
🎙️Notes, playbooks, and resources from Minimum Viable Management podcast - Minimum-Viable-Management/Minimum-Viable-Management
github.com
October 23, 2025 at 10:05 AM
Reposted by Mike McQuaid
Homebrew is a package manager for macOS and it has become an essential developer tool. In this episode, @mikemcquaid.com talks with @kball.llc about how it all started, the project’s architecture, automation, CI/CD, and what keeps Homebrew sustainable today.

bit.ly/4nO04Sh
Homebrew and macOS Package Management with Mike McQuaid - Software Engineering Daily
Homebrew is a widely used package manager that simplifies the installation of open-source software on macOS. It was created in response to the growing demand for a lightweight, developer-friendly tool...
softwareengineeringdaily.com
October 21, 2025 at 11:04 AM
Rather than asking open source maintainers if they would do something, consider just doing as much as you can yourself and only then asking them for help.

Before you say "but I don't know the language/codebase/ecosystem": none of the maintainers were born with this knowledge either.
October 20, 2025 at 11:50 AM
This was fun and the closest I've ever been to being Maybe Too Honest about how open source is not a career.
New episode of Breaking Change is live! Mike McQuaid: If you don't like it, Quit
Mike McQuaid: If you don't like it, Quit
Post-recording update: As I've been lobbying for (both publicly and behind the scenes), it has been announced that the RubyGems and Bundler client libraries are being transferred to Matz and the Ruby core team (https://rubycentral.org/news/ruby-central-statement-on-rubygems-bundler/). Mike McQuaid (https://mikemcquaid.com) (of Homebrew (https://brew.sh) fame) and I scheduled this episode of Hot Fix a week before the Ruby community exploded (https://justin.searls.co/posts/why-im-not-rushing-to-take-sides-in-the-rubygems-fiasco/). Hot Fix (https://justin.searls.co/posts/whats-the-hot-fix/) is all about turning up the heat, but even we were a little wary of the heat in that particular kitchen. The problem Mike brought to the table is the same one he's always on about: open source is not a career. Incidentally, Mike's favorite topic also happens to be relevant to the latest RubyGems controversy—because it all boils down to paying people to work on open source. Not content to miss out on the fun, Jerod (https://changelog.com/person/jerodsanto) from The Changelog (https://changelog.com/) asked if he could join and discuss the ongoing Ruby drama as a group. So we decided to team up and do a collab episode—call it Breaking Changelog , I guess? It's nothing if not efficient: record once, edit twice, and syndicate everywhere. If you don't mind swear words, listen to this version. If you don't like swearing, what the fuck are you doing here? Please send your compliments to podcast@searls.co and your complaints to editors@changelog.com.
justin.searls.co
October 17, 2025 at 4:30 PM
www.ruby-lang.org/en/news/2025...

As someone who spent a bunch of time talking before and after this all went down with current and past RubyGems maintainers, RubyCentral employees, gem.coop maintainers and Ruby Core folks: this seems like the best outcome that was actually attainable.
The Transition of RubyGems Repository Ownership
www.ruby-lang.org
October 17, 2025 at 1:07 PM
Turns out people liked the “management podcast thing” Neha Batra and I did last week, so we made more: Minimum Viable Management is now a podcast. This time we talk about decisions, leadership, and other things managers pretend to be good at.

Various podcast links at mikemcquaid.com/minimum-viab...
October 14, 2025 at 3:19 PM
Reposted by Mike McQuaid
People jumped to conclusions about this RubyGems thing
People jumped to conclusions about this RubyGems thing
For context, last week I wrote a post bringing to light a number of things Andre Arko had said and done (/posts/why-im-not-rushing-to-take-sides-in-the-rubygems-fiasco/) in the past as a way to provide some context. Context that might explain why any of the principal actors involved in the RubyGems maintainer crisis (summarized well up to that point by Emanuel Maiberg (https://www.404media.co/how-ruby-went-off-the-rails/)) would take such otherwise inexplicable actions and then fail to even attempt to explain them. Today, Jean shed some light on Shopify's significant investments in Ruby and Rails open-source (https://byroot.github.io/opensource/ruby/2025/10/09/dear-rubyists.html), and it actually paints a picture of corporate investment in open source done right. (Disclosure: I know and am friends with several people who work at Shopify on these teams, and unless they're all lying to me, they sure seem to prioritize their work based on what Ruby and Rails need, as opposed to what Shopify wants.) Jean went a step further by contrasting Shopify's approach with the perverse incentives at play when individuals or groups receive sponsorships to do open source. He also drew a pretty clear line of those incentives playing out based on how RubyGems and Bundler maintainers reacted to Shopify's feature submissions. Read the post, it's good.
justin.searls.co
October 9, 2025 at 7:46 PM
I was involved in attempts to improve RubyGems governance, mediate between RubyCentral/RubyGems folks and helping the gem-coop folks setup their new governance process. Given recent events, I'm stepping back now that the initial governance work is done: mikemcquaid.com/bootstrappin...
Bootstrapping gem.coop Governance
gem.coop was announced on Monday. As part of that announcement it was mentioned that I was helping gem.coop set up a governance process, continuing the work I’d first started helping with on RubyGems.
mikemcquaid.com
October 9, 2025 at 9:00 PM
Had a chat yesterday with my best ever manager, Neha Batra, on minimum viable engineering management, one-on-ones, feedback and better product vs. engineering fights.

Check it out on YouTube: www.youtube.com/watch?v=JZSe...
Building Trust and Having Better Fights with Neha Batra and Mike McQuaid
YouTube video by Mike McQuaid
www.youtube.com
October 2, 2025 at 12:03 PM
Reposted by Mike McQuaid
New: the world of Ruby has gone completely off the rails over the past few weeks. Developers suddenly locked out, corporate pressure, and claims of a "hostile takeover" of one of the most critical pieces of infrastructure for the internet we all rely on everyday
www.404media.co/how-ruby-wen...
How Ruby Went Off the Rails
What happened to RubyGems, Bundler, and the Open Source drama that controls the internet infrastructure.
www.404media.co
September 29, 2025 at 1:04 PM
Reposted by Mike McQuaid
Proposal: move RubyGems (the gem and bundler CLI tools) to the same Ruby org that governs the language itself.

It's an accident of history that Ruby, its dependency tools, and its dependency hosting are managed by three separate entities. (And it hasn't gone great.)
September 26, 2025 at 9:47 PM
Have thought a bit at past few companies about whether engineering management in some form is always necessary (spoilers: yes) and what's the minimal viable level of engineering management:
mikemcquaid.com/minimum-viab...

When I joined GitHub there was none. This sounded great but was actually bad.
Minimum Viable Engineering Management
When I first joined GitHub in 2013, there was no engineering management. They had people in engineering leadership roles (some with titles, some without) but no dedicated managers to check in with reg...
mikemcquaid.com
September 26, 2025 at 1:38 PM
More Of This Sort Of Thing. Pointing and laughing is much more effective than people think.
in case you're not sure who dhh is, he's a danish counterstrike player and race car owner who writes essays like "i am smarter than you" and "foreigners bad"

rich enough not to worry about consequences but at the very same time, still desperate for status, a man two friends short of a podcast
September 26, 2025 at 1:14 PM
Lots of RubyGems chat recently, very little data. I've used Homebrew's tooling to analyse RubyGems public GitHub data and posted it here: mikemcquaid.com/rubygems-con...
RubyGems Contribution Data with Homebrew’s Tooling
There’s ongoing discussion about recent changes to access in the RubyGems GitHub organisation. If you need context, first read Open Source Turmoil: RubyGems Maintainers Kicked Off GitHub. My goal is t...
mikemcquaid.com
September 24, 2025 at 12:03 PM
Another day in Rubyland, another first-hand account from a departing RubyGems maintainer: gist.github.com/simi/349d881...
rc-wtf.md
GitHub Gist: instantly share code, notes, and snippets.
gist.github.com
September 24, 2025 at 7:47 AM
Reposted by Mike McQuaid
Joel did an amazing amount of investigative work to put together the most accurate representation of this situation that I’m aware of. I stand by everything that I’m able to vouch for. I don’t have anything else to add. Thank you for your effort here @joel.drapper.me
September 23, 2025 at 4:17 PM
Reposted by Mike McQuaid
After listening to about a dozen first-hand accounts, I’ve published what I know about the RubyGems takeover.
Shopify, pulling strings at Ruby Central, forces Bundler and RubyGems takeover
Ruby Central recently took over a collection of open source projects from their maintainers without their consent.
joel.drapper.me
September 23, 2025 at 3:08 PM
Hello new followers! Monday RubyGems updates:

I've been asked "who are the current maintainers of rubygems/bundler?". It's not publicly documented so unclear.

Note this is the second time there was a wave of rolling removals, not the first.
September 22, 2025 at 8:08 AM
Having met with both sides on the current RubyCentral/RubyGems situation, here's my take:

- RubyCentral have managed this exceptionally poorly in many ways including removing literally the most active member of the RubyGems organisation by mistake who has declined to return
September 19, 2025 at 7:04 PM
mirroring body language except it's text so you're mirroring emoji usage instead 🤝
September 11, 2025 at 10:42 AM
In 2025:
Netflix = second screen viewing.
Claude Code = second screen programming.
September 2, 2025 at 8:01 AM
🔥The great advice in these blog posts is rarely said out loud by anyone:

www.seangoedecke.com/dangerous-ad...

This matches my experience of what I had to learn to get promoted to principal engineer at GitHub.

If you follow them: 50% chance you will get promoted, 50% you'll get fired. 🎲
Dangerous advice for software engineers
--
www.seangoedecke.com
August 28, 2025 at 2:19 PM
Learning a programming language in itself is neither motivating nor useful. Learning to achieve an outcome, particularly if it's an outcome you actually care about, is The Way.

The best way to get started is by "scratching your own itch"; use programming (e.g. Python) to solve a problem you have.
To any software developer:

How were you able to stay motivated during your learning process?

I am on the journey of learning Python and I've noticed that after a few days I feel either frustrated or unmotivated to continue but I am 100% sure that this is what I want to do.

Any tips?
August 20, 2025 at 7:29 AM