Reflecting on Drew DeVault's email based workflow (2024-05-04)

Earlier this year Drew DeVault appeared on the Changelog podcast and, among other things, described his email-based workflow. Drew has developed a system where software development collaboration is handled through email rather than using web-based tools like GitHub or pull request platforms. This workflow of course is something that has been in use by the Kernel developer community for over 3 decades (Linus Torvalds announced the project to comp.os.minix on August 25, 1991). We are also reminded us of Sarah Novotny’s critique of the aforementioned workflow: Relying on plain-text email is a ‘barrier to entry’.

Here are the benefits Drew DeVault outlines:

  • Direct Contribution via Email: Developers contribute code patches directly via email using commands such as git send-email. This is perceived faster than navigating multiple web pages or web forms.

  • Efficiency: Drew argues that reviewing and managing code submissions via email allows for greater productivity. Patches and contributions are managed directly from the inbox, and even a high volume of emails can be handled quickly.

  • Unified Inbox: By centralizing contributions and reviews in the inbox, the workflow provides a single place to monitor, review, and act on patches. This minimizes the need to switch between different tools or web interfaces.

  • Flexibility: The workflow can be adapted to a wide range of projects, including open-source work, allowing the user to stay productive and maintain a clean inbox.

In a similar fashion Greg Kroah-Hartman describes in detail how he uses mutt to manage the incoming Kernel patches. The examples and asciinema are a true treasure for the curious who want to improve their workflow!

Linus Torvalds himself has strong opinions on email, as the only scalable mechanism to manage the inbound Kernel patches: