Much of the conversation about the sustainability of open source has revolved around how to ensure VC-backed companies can turn millions in investment into hundreds of millions in return.
But talking with early pioneers of open source projects like Curl, Fio, and Wireshark, it’s clear that a critical component is missing from such conversations: fun.
In canvassing the industry for the stories behind important but perhaps not well-known open source projects, it has surprised me just how many of these projects are developed for personal satisfaction, regardless of the impact on these developers’ bank accounts.
Drupal for fun
Not that open source can’t pay big (financial) dividends. Just ask Dries Buytaert, founder of Drupal, a hugely popular web content management system, as well as Acquia, which offers Drupal-related services.
In 2019 Acquia passed $200 million in revenue, which is a lot of money for something you can download for free. Nor is Acquia the only company making money from Drupal.
Despite Buytaert’s central importance to the Drupal project, Acquia contributes less than five per cent of the total Drupal code, with thousands of other companies contributing (and building businesses around Drupal). Which, of course, Buytaert never could have imagined when he and a fellow student launched Drupal in 2000 while studying at the University of Antwerp.
At that time, Buytaert just needed to build a tiny website so friends could share information related to a broadband line they shared. Upon graduation in January 2001 Buytaert decided to open source the code, in part to allow others to make the improvements they kept asking him to make.
But also to learn, as he related in an interview. With the launch of MySQL, “all of a sudden we had an open source database and it made building dynamic websites so much better. For me, the initial trigger [for developing Drupal] was a passion for websites in the early days of the web and a desire to explore PHP in MySQL and seeing that as a learning opportunity.”
For the first seven years of Drupal’s existence, Buytaert says, “It was just what I did at night or on the weekends” after school or work. “It was for fun. And it’s still a lot of fun.”
Curl on the side
When Daniel Stenberg set out to make currency exchange rates available to IRC users, he wasn’t trying to “do open source.” It was 1996 and the term “open source” hadn’t even been coined yet (that came in February 1998).
No, he just wanted to build a little utility (“how hard can it be?”), so he started from an existing tool (httpget), made some adjustments, and released what would eventually become known as cURL, a way to transfer data using a variety of protocols.
It wasn’t Stenberg’s full-time job, or even his part-time job. “It was completely a side thing,” he says in an interview. “I did it for fun.” Stenberg’s side project has lasted for over 20 years, attracted hundreds of contributors, and has a billion users. Yes, billion with a B.
Some of those users contact him with urgent requests to fix this or that bug. Their bosses are angry and they need help RIGHT NOW. “They are getting paid to use my stuff that I do at home without getting paid,” Stenberg notes. Is he annoyed? No. “I do it because it’s fun, right? So I’ve always enjoyed it. And that’s why I still do it.”
Fio to fill a need
And there’s Jens Axboe, a Linux kernel developer who found he needed a tool to help with his block layer work for the Linux kernel. Unfortunately, that tool didn’t exist. So Axboe created the flexible IO tester (fio) “to save [him] the hassle of writing special test case programs when [he] wanted to test a specific workload, either for performance reasons or to find/reproduce a bug.”
Today fio can be configured to model nearly any storage workload, which has helped to make it an industry standard.
But back in 2005, fio was simply a means to a storage modelling end for Axboe. For the first five years Axboe mostly toiled alone on fio, a side project that helped him with his Linux kernel work (and contributed toward him getting paid by Oracle, Fusion-io, and Facebook).
Today others do much of the development work, but it remains a key part of Axboe’s life and work. When asked if he’s ever grown tired of the project, he responded, “I think the utility of it made it so that it was fun to work on it.”
Even as Axboe maintains the I/O stack for the Linux kernel, fio has remained a “creative outlet” for him, an “on-the-side thing” where he can do interesting development in user space without the same overhead that comes with the rigours of developing the Linux kernel. Open source, he says, is “supposed to be a labor of love, something you do for fun.”
Thinking different about sustainability
In these and other conversations with open source builders, this idea of their projects as “fun, creative outlets” permeates. It’s not that they don’t have frustrations with overly demanding users, but in each case the open source project started (and generally continued) as a way to express their creativity and to relax.
Each of the developers profiled here has found employment over decades, though that employment hasn’t always been directly tied to the open source they maintain.
Which makes me wonder: Are we too concerned with trying to turn open source into money? Into work? Maybe, just maybe, we need to rediscover the fun side of open source, as these developers clearly do.