The Maintainer’s Paradox: Balancing Project and Community
Drudge Bot last edited by
At Embedded Linux Conference, Sony’s Tim Bird discussed some of the challenges faced by maintainers of open source projects.
What are some of the challenges open source project maintainers face? One common issue is “The Maintainer’s Paradox,” which refers to the fact that open source maintainers are presented with more ideas along with more challenges as their communities grow. This occurs even when they take very minor patches from contributors. This topic was recently tackled by Tim Bird, Senior Software Engineer at Sony, in a keynote address at the Embedded Linux Conference.
The Maintainer’s Paradox is referenced in Eric Raymond’s seminal work “The Cathedral and the Bazaar,” and Bird opened his keynote address by citing the reference. “Raymond said that with enough eyeballs, all bugs are shallow,” Bird noted, adding that the reference applies to large open source communities.
Diversity of thought
“When I do training at Sony, I use a light bulb metaphor for this,” he said. “If you have five or 10 light bulbs that are similar to each other and you turn them on, there will be some good ideas represented by those light bulbs. But if you have a thousand light bulbs of different shapes and sizes, it’s more likely that there are going to be thousands of good ideas represented. So there are probabilities involved here. It’s the diversity of thought that is important. Diversity has a lot of upside.”
“Of course diversity has costs,” he added. “It takes time to assimilate different ideas and integrate them into the existing code path.”
Bird is the maintainer of the Fuego test system, which provides a framework for testing embedded Linux. During his keynote, he provided examples of challenges that maintainers face, within the context of maintaining Fuego.
“I learned things becoming a maintainer,” he said. “The Maintainer’s Paradox is that the maintainer is really excited about new contributions, but there is also fear and trepidation. Sometimes when I see a patch set on the mailing list I say, ‘Oh no, another patch set.’ I just might not have time to look at it. You want to review patches carefully and give appropriate feedback, but being a maintainer is sometimes overwhelming.”
Bird displayed a large photo of a puppy as he said: “Every time you get a patch that implies a new feature branch, that is something that has to be cared for indefinitely. As a maintainer, your incentive can be to not take too many of these things.”
Bird also noted some important social dynamics involved with how maintainers interact with community members. For example, differing personalities can create challenges. “People can get frustrated, and there can be miscommunications.” Additionally, although many maintainers want to reward contributions on a meritocracy basis, it can be difficult to achieve that goal.
What are Bird’s recommendations for optimizing tasks and communications? He supplied the following tips:
- Call out negative communication
- Route around offenders
- Listen carefully, actively clarify and act on feedback
- Assist by helping others
- Become a maintainer
Finally, for more on active management of open source projects, including free tools, check this post.
Watch the entire presentation below:
Join us at Open Source Summit + Embedded Linux Conference Europe in Edinburgh, UK on October 22-24, 2018, for 100+ sessions on Linux, Cloud, Containers, AI, Community, and more.
The post The Maintainer’s Paradox: Balancing Project and Community appeared first on The Linux Foundation.
Make ISO from DVD
In this case I had an OS install disk which was required to be on a virtual node with no optical drive, so I needed to transfer an image to the server to create a VM
Find out which device the DVD is:lsblk
Output:NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 465.8G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 464.8G 0 part ├─centos-root 253:0 0 50G 0 lvm / ├─centos-swap 253:1 0 11.8G 0 lvm [SWAP] └─centos-home 253:2 0 403G 0 lvm /home sdb 8:16 1 14.5G 0 disk /mnt sr0 11:0 1 4.1G 0 rom /run/media/rick/CCSA_X64FRE_EN-US_DV5
Therefore /dev/sr0 is the location , or disk to be made into an ISO
I prefer simplicity, and sometimes deal with the fallout after the fact, however Ive repeated this countless times with success.dd if=/dev/sr0 of=win10.iso
Where if=Input file and of=output file
I chill out and do something else while the image is being copied/created, and the final output:8555456+0 records in 8555456+0 records out 4380393472 bytes (4.4 GB) copied, 331.937 s, 13.2 MB/s
Recreate postrgresql database template encode to ASCIIUPDATE pg_database SET datistemplate = FALSE WHERE datname = 'template1';
Now we can drop it:DROP DATABASE template1;
Create database from template0, with a new default encoding:CREATE DATABASE template1 WITH TEMPLATE = template0 ENCODING = 'UNICODE'; UPDATE pg_database SET datistemplate = TRUE WHERE datname = 'template1'; \c template1 VACUUM FREEZE;