Embrace, extend, and finally extinguish - Microsoft plays their hand August 27, 2020 on Drew DeVault's blog

GitHub took a note out of the Microsoft “EEE” playbook when designing their git services. They embraced git, and then rather than building an interface on top of email — the collaboration mechanism that git was designed to use, and which is still used for Linux kernel development1 — they built their “pull requests” mechanism.

They took terminology which already had meaning — “fork”, meaning the creation a separate governing body and development upstream for a codebase, a rather large task; and “pull request”, a git workflow which prepares an email asking a receipient to pull a large branch of changes from a non-centralized source — and replaced these decentralized, open systems with a completely incompatible system designed to keep you on GitHub and to teach you to collaborate using GitHub’s proprietary tools. They extended git in a proprietary way.

Microsoft knows a good deal when they see one, and picked up GitHub for a cool $7,500,000,000, after they had already completed the two steps in Microsoft’s anti-open-source playbook. They joined the Linux Foundation in late 2016, after Azure failed to win people back to Windows Server, admitting defeat while simultaneously carving out a space from which they could project their interests over the kernel.

Today, I discovered this article, “Relying on plain-text email is a ‘barrier to entry’ for kernel development, says Linux Foundation board member”, a title which conveniently chooses to refer to Sarah Novotny by her role as a Linux Foundation board member, rather than by her full title, “Sarah Novotny, Microsoft employee, transitive owner of GitHub, and patroness saint of conflicts of interests.” Finally, they’re playing the extinguish card. Naturally, a representative of Microsoft, a company which has long waged war against open source, and GitHub, a company which explicitly built an incompatible proprietary system to extend git, would have an interest in dismantling the distributed, open system that git was designed for.

I represent sourcehut, a GitHub competitor which does what GitHub wouldn’t — interoperate with open, distributed protocols, and in the form of 100% free and open-source software. I agree that the UX of email-driven development could be better! But instead of investing $7.5B into throwing the baby out with the bathwater, we’ve built interactive tutorials, designed better mailing lists, built web interfaces for patch submission, implemented CI for emails and sent improvements to git upstream. I wrote an entire mail client which makes it easier to use these tools. We’re planning on web-based review interface, too. The result is a UX which provides a similar experience to GitHub, but without disrupting the established open ecosystem.

This is how you improve the ecosystem, Microsoft. Take notes. Stick with the embrace, move your extending upstream, and forget about extinguish.


  1. And hundreds of other projects, including git itself. ↩︎

Have a comment on one of my posts? Start a discussion in my public inbox by sending an email to ~sircmpwn/public-inbox@lists.sr.ht [mailing list etiquette]

Articles from blogs I read Generated by openring

What's cooking on SourceHut? January 2022

Hello and happy new year! After a bit of well-deserved rest during the holidays, our staff (and many of our contributors) have spun our work streams back up and development continues. Our userbase has grown this month by another 634 users, bringing the total…

via Blogs on Sourcehut January 17, 2022

Status update, January 2022

Hi all! This month’s status update will be quite shorter than usual, because I’ve been taking two weeks off. I’ve been in Strasbourg (a city in the east of France) for New Year’s Eve. We’ve cooked a bunch of local food, including a Kougelhopf: But let’s get b…

via emersion January 17, 2022

Two New Tutorials for 1.18

Two new tutorials have been published in preparation for the release of Go 1.18.

via The Go Blog January 14, 2022