Displaying posts tagged Member Projects
Looking Back on Homebrew’s First Year with Conservancy
byon February 2, 2017
This series covers new developments and exciting projects taken on by Conservancy member projects. To learn more about Conservancy member projects, or the non-profit infrastructure support and services offered by Conservancy, check out Conservancy’s Projects page. Please support Conservancy so we can continue to help all this important software.
There’s an app for that.
Need a way to download and save that cute cat video from YouTube so you can watch it offline? There’s an app for that. Want to collaborate with others using GitHub? There’s an app for that, too. But neither are in the App Store. Every day, hundreds of thousands of Mac users turn to Homebrew to download one of more than 3,000 useful software packages for their desktops and laptops that Apple does not include in its operating system and can’t be found in the App Store.
Since Max Howell began Homebrew in 2009 with the goal of creating an efficient package manager, over 6,000 people have contributed to the project. Max built the package manager to rely on software and libraries that come preinstalled in OS X and chose to limit support to recent versions of the Mac operating system so that the packages could be optimized as much as possible. Max delivered an early implementation and shepherded the project through 2013.
Mike McQuaid started contributing to Homebrew because he was an avid user. After employing Homebrew to outfit his work laptop with vital FLOSS software, he saw that there were ways that Homebrew could be improved. Mike rose from occasional contributor to maintainer to eventually become the project’s lead maintainer. Mike coordinates the technical aspects of the project, manages the vibrant community of volunteer contributors to the project and serves as Homebrew’s primary liaison with the Software Freedom Conservancy.
Software Freedom Conservancy recognized Homebrew’s technical and social successes and invited them to join as a member project in 2016. Software Freedom Conservancy was excited that they accepted the invitation and is proud to support them.
Mike was kind enough to spend some time answering questions about the project’s past success and its future goals.
We began the interview talking about the importance of having Homebrew join Software Freedom Conservancy. “I’ve been a fan of Software Freedom Conservancy for a long time thanks to using several of their member projects. Bringing Homebrew into Conservancy helps provide long-term security to the trickier financial and community aspects of Homebrew.” For example, Mike has been worried about the contingency plan for Homebrew so that its existence could outlive any single individual. Software Freedom Conservancy provides legal, fundraising and organizational support to this end.
On the technical merits, Mike described Homebrew’s cutting-edge architecture, implementation, and development practices. Every application available through Homebrew is described by a Formula. Each Formula is Ruby code and the process of adding and modifying Formulae is coordinated with Git. If a contributor wants to add a package for other Homebrew users to download and install, they can simply write a Ruby script and send a pull request to one of Homebrew’s maintainers.
Mike said that thanks to using Ruby and Git for describing Formulae and facilitating code changes, respectively, new contributors can make an immediate, positive impact on Homebrew. Using a popular language like Ruby and building a smooth workflow based on Git makes it easy for Homebrew maintainers and contributors to keep all of its Formulae up to date. Every day new features are added, bugs are patched and security vulnerabilities closed in Homebrew packages. If the process for updating Formulae was not as well designed as it is, Homebrew’s users could be stuck with outdated and insecure software.
The Homebrew community has spent significant time and energy building and implementing a continuous integration system. Continuous integration is a software development practice to test software for bugs every time new code is added. Every update to a Formula involves a modification to Homebrew’s code. Having an automated system to check Homebrew’s code every time a package is updated or added gives Homebrew’s developers assurance that the software is always ready for end users.
While Homebrew benefits from using the latest and greatest tools and techniques of FLOSS software development, it’s the active and vibrant community that really drives progress. Community is a very important part of Homebrew but such a positive, supportive, diverse community does not just happen. It takes leadership and Mike takes that role seriously.
In our interview, Mike talked extensively about the project’s commitment to community. Under his leadership, the project has established a code of conduct for its participants and created policies to encourage users to become committers, contributors to become maintainers and maintainers to become project leaders. Mike helped Homebrew create its code of conduct early on because he knew it would help create a more diverse community. While the code of conduct can be used as a tool to remove the rare disruptive member, it serves mostly to make explicit the community’s expectation that its members are to be respectful and welcoming to everyone who wants to join. “Homebrew is probably a little more diverse than your average open source project but it’s still woefully unrepresentative of society as a whole,” Mike said. “Homebrew has chosen to be proactive about diversity because studies have shown diversity makes better software and we don’t want anyone to feel alienated or excluded from our community based on who they are.”
This year Homebrew participated in the Outreachy internship program. Mike and the Homebrew team mentored Andrea Kao who worked on Homebrew’s continuous integration and testing system. Andrea said about her experience, “… [T]he Homebrew maintainer-mentors have all been so incredibly generous, encouraging, kind, and helpful to me over the past couple weeks and months. I’m so thankful for this generosity and for nabbing the Outreachy internship. In the space of two months, I’ve become an active member of several wonderful, worldwide communities—the community of Homebrew contributors, the Outreachy community, and the wider open-source software community.”
The project’s technical implementation and architecture and its commitment to building a positive, active community around Homebrew are evident from the number of its users and participants and the way they talk about the project. It is regularly among the top projects on GitHub. When version 1.0 was announced, a user commented, “[Homebrew is] great because the community is so vibrant, the user experience is so well thought out… it’s actually both a GitHub and Ruby showcase.”
Mike finished our interview by describing the project’s goals for 2017. The first goal is to improve support for installation of specific legacy versions of applications. There are many reasons why a user might need an older version of a package—to satisfy a dependency or to use a feature that no longer exists, for example.
The second goal is to improve Homebrew’s continuous integration system. As described earlier, having a continuous integration system is vital for a project like Homebrew whose code changes on a regular basis. Right now the system checks new code to make sure that it compiles. That’s a good start. However, new code could introduce bugs that are only evident when the software is run. In 2017, Homebrew will expand its continuous integration to test runtime functionality.
Conservancy is proud to have Homebrew as a member project and is excited to see what the future brings for the FLOSS package manager, its users and its community.
Conferences, Standards, and Sponsorships: Selenium’s Work in 2016
byon January 12, 2017
This series covers new developments and exciting projects taken on by Conservancy member projects. To learn more about Conservancy member projects, or the non-profit infrastructure support and services offered by the Conservancy, check out Conservancy’s Projects page. Please support Conservancy so we can continue to help all this important software.
SeleniumConf UK wrapped up November 16th! For three days, Selenium developers and enthusiasts got together to share ideas, work together, and spend time with other community members in London. This year, there were three amazing keynotes, a diverse group of twenty-six speakers, and four full day workshops. Talks are already posted online, and you can watch them on the SeleniumConf UK YouTube channel.
Selenium has been a Conservancy project since 2010. Starting in 2011, Conservancy began to support Selenium’s efforts to host their own conferences, which have grown over the years to the successful events we know today. As a tool, Selenium has become an industry standard, with users ranging from individuals plugging away at their own projects to some of the largest companies in tech.
Selenium demonstrates a strong commitment to fiscal responsibility, and the project leadership looks to sustain Selenium beyond individual donations. In order to help power the project, the team promotes and manages large corporate sponsorships.
Earlier this year, Selenium 3.0 was released, replacing the original Selenium Core—Jason Huggins started developing the Core in 2004—with one based on Selenium WebDriver. Much like Selenium itself, WebDriver is becoming a standard in its own right. The World Wide Web Consortium (W3C) has a draft specification for browser automation based on Selenium WebDriver, and members of the Selenium project are on the team to make this an official recommendation.
Helping Our Member Projects Raise Money
byon January 10, 2017
Conservancy member projects depend on contributions from both individual and institutional donors to cover code sprint and conference expenses, pay for hosting services and hardware purchases, and fund strategic software development. Once a project joins Conservancy, Conservancy’s staff takes over the day-to-day responsibility of managing every donation directed to that project. In addition, we sit down with our projects’ leadership committees and help them execute fundraising strategies that go beyond posting a Conservancy-managed PayPal link on the project’s website. Here are some of the common fundraising initiatives Conservancy member projects use:
Conservancy’s status as a 501(c)(3) public charity enables our member projects to qualify for grants from foundations and other philanthropic donors who want the financial transparency and mission-centric focus public charities are required to have by US law. In 2016, Conservancy enabled member projects Bro, Buildbot, and Godot to receive grants from the Mozilla Foundation’s Mozilla Open Source Support (MOSS) program. Our member projects are using the grant funds to add new features, improve documentation, and add support for critical web standards.
Walter Bender helps teach a child at Turtle Art Day.
Conservancy helped Sugar get a grant to fund the event.
Photo by Nalin Tutiyaphuengprasert Tukta under CC BY-SA 2.0
We also successfully helped member project Sugar Labs secure a grant from the TripAdvisor Charitable Foundation to fund the translation and internationalization of Sugar for use in locales around the world. Sugar Labs has also used the grant to fund Turtle Art Days — mini-conferences where developers and students meet to discuss and share “Turtle Art”.
Member Project Sponsorships
Several of Conservancy’s member projects — including Outreachy, phpMyAdmin, and Selenium — use sponsorship programs administered by Conservancy to raise money. Outreachy’s sponsorship program provides the funding for people from groups underrepresented in free and open source software to work as interns with participating free and open source software communities and organizations. phpMyAdmin’s sponsorship program helps fund contractors to work on security maintenance, bug fixing, and code base improvement. Selenium’s sponsorship program helps cover project infrastructure costs and developer travel to project-related events; it also provides financial support for Selenium’s official conferences.
Sponsorship programs allow us and our projects to publicly acknowledge the financial support we receive from corporate donors. Corporations who support our member projects appreciate these acknowledgments, and we’ve enjoyed the opportunity to build relationships with repeat donors who gladly renew their sponsorship over the years.
Projects often seek to raise money to fund strategic development. A project may want to fund a developer to focus on implementing a new feature, or on solving a particularly difficult problem. In other cases, projects notice that their volunteer contributors have gravitated towards contributing to more glamorous, bleeding edge parts of the code base — meaning the core can use a little more love. Conservancy helps a member project’s leadership committee draft a fundraising proposal describing the tasks they’d like to accomplish, and the budget needed to accomplish those tasks. Projects publish their final proposals in the form of fundraising campaigns.
Conservancy manages the donations generated from these campaigns, and works with our projects to spend the funds in a manner consistent with their campaigns’ stated goals and Conservancy’s nonprofit mandate.
Conservancy member project Inkscape launched a funded development program that will enable any interested community member to organize his or her own campaign to raise funds to complete items on an Inkscape-maintained “jobs list”. Community members can propose their own items to be added to the list. If a campaign organizer is able to raise sufficient funds for a particular item, Inkscape will then use the funds to retain contract software developers to complete the task.
Inkscape’s program is designed to broaden the pool of community members engaged in job list creation and in fundraising. It’s a novel approach for a Conservancy project, and we’re excited to work with Inkscape and see how the user and developer communities respond.
Affiliate Programs and More
Conservancy has helped our member projects raise funds in lots of other ways. We accept donations via eBay’s Giving Works program (which allows eBay sellers to donate portions of their sales proceeds to registered charities), and Amazon’s Associates program (as seen in links on the Git and Twisted project websites) — just to name a few. We work with our projects to identify and vet new fundraising platforms, and we’re willing to consider virtually any strategy that doesn’t run counter to our organizational mission or IRS rules.
Volunteers (and Donors) Wanted
If you’d like to contribute to Conservancy and/or one of our member projects in ways other than by software development, we could always use volunteers to help out with fundraising. Feel free to contact us with any fundraising ideas you may have; we’d be happy to start a dialogue. If you would like to support our member projects financially, visit the member project website of your choice and follow the instructions to donate. Conservancy will process the donation on our project’s behalf.
And, of course, Conservancy needs your help as well. We rely on the public’s donations to provide these and other critical services that help our member projects flourish. So, if you would like to contribute Conservancy — and all of our member projects at once — become a Conservancy Supporter today!
LibreHealth’s Michael Downey on Why He’s a Conservancy Supporter
byon January 2, 2017
Michael Downey is one of the developers at the helm of our newest member project, LibreHealth. He was eager for the project to join Conservancy because, as he put it, the organization is “a really important player taking on responsibilties that are often neglected in our projects.” Join Michael as a Conservancy Supporter now to help us continue to provide these services to more projects.