Drew DeVault's Blog

What is a fork, really, and how GitHub changed its meaning

The fork button on GitHub - with the little number next to it for depositing dopamine into your brain - is a bit misleading. GitHub co-opted the meaning of “fork” to trick you into participating in their platform more. They did this in a well-intentioned way, for the sake of their pull requests feature, but ultimately this design is self-serving and causes some friction when contributors venture out of their GitHub sandbox and into the rest of the software development ecosystem. Let’s clarify what “fork” really means, and what we do without GitHub’s concept of one - for it is in this difference that we truly discover how git is a distributed version control system.

Status update, May 2019

This month, it seems the most exciting developments again come from the realm of email. I’ve got cool email-related news to share for aerc, lists.sr.ht, and todo.sr.ht, and many cool developments in my other projects to share.

Webcast: Reviewing git & mercurial patches with email

With the availability of new resources like git-send-email.io, I’ve been working on making the email-based workflow more understandable and accessible to the world. One thing that’s notably missing from this tutorial, however, is the maintainer side of the work. I intend to do a full write-up in the future, but for now I thought it’d be helpful to clarify my workflow a bit with a short webcast. In this video, I narrate my workflow as I review a few sourcehut patches and participate in some dicsussions.

Calculating your donation's value following Patreon's fee changes

In January 2018, I wrote a blog post which included a fee calculator. Patreon changes their fee model tomorrow, and it’s time for an updated calculator. I’m grandfathered into the old fees, so not much has changed for me, but I want to equip Patreon users - creators and supporters - with more knowledge of how their money is moving through the platform.

Announcing Wio: A clone of Plan 9's Rio for Wayland

For a few hours here and there over the past few months, I’ve been working on a side project: Wio. I’ll just let the (3 minute) screencast do the talking first:

The "shut up and get back to work" coding style guide

So you’re starting a new website, and you open the first CSS file. What style do you use? Well, you hate indenting with spaces passionately. You know tabs are right because they’re literally made for this, and they’re only one byte, and these god damn spaces people with their bloody spacebars…

Using Cage for a seamless remote Wayland session

Congratulations to Jente Hidskes on the first release of Cage! Cage is a Wayland compositor designed for kiosks - though, as you’ll shortly find out, is useful in many unexpected ways. It launches a single application, in fullscreen, and exits the compositor when that application exits. This lets you basically add a DRM+KMS+libinput session to any Wayland-compatible application (or X application via XWayland) and run it in a tiny wlroots compositor.

Choosing a VPN service is a serious decision

There’s a disturbing trend in the past year or so of various VPN companies advertising to the general, non-technical public. It’s great that the general public is starting to become more aware of their privacy online, but I’m not a fan of these companies exploiting public paranoia to peddle their wares. Using a VPN in the first place has potentially grave consequences for your privacy - and can often be worse than not using one in the first place.

Status update, April 2019

Spring is here, and I’m already miserable in the heat. Crazy weather here in Philadelphia - I was woken up at 3 AM by my phone buzzing, telling me to take immediate shelter from a tornado. But with my A/C cranked up and the tornado safely passed, I’ve been able to get a lot of work done.

Announcing first-class Mercurial support on Sourcehut

I’m pleased to announce that the final pieces have fallen into place for Mercurial support on SourceHut, which is now on-par with our git offering. Special thanks are owed to SourceHut contributor Ludovic Chabant, who has been instrumental in adding Mercurial support to SourceHut. You may have heard about it while this was still experimental - but I’m happy to tell you that we have now completely integrated Mercurial support into SourceHut! Want to try it out? Check out the tutorial.