18F publishes guidelines for open source contribution
As the General Services Administration’s 18F continues to promote open source federal IT development, the organization last week published a contributor’s guide to help those reusing and sharing its code.
Tracing the basics along with other key topics like how users can enhance code, 18F’s Dr. Robert Read explains in his post on 18F’s tumblr the best ways anyone — federal worker or not — can take part in the team’s development process and why they should. Read uses the FBOpen.com project as a real-time example of how contributors can leverage 18F code and even offer improvements, which he argues “improves the rapidity of our coding and the quality and security of the code.”
FBOpen is a piloted platform similar to the Federal Business Opportunities website in its purpose of connecting contractors to federal agencies in the procurement process but with a simpler search engine and more aesthetic appeal. While the site’s API pulls opportunities from all different federal agencies, Read notes how anyone offering contracts, like a state, could pull the code from 18F’s Github repository and tailor it to its needs. Without dropping a dime, Read wrote, “a State could promote economic development within its borders by taking this code, making a slight modification to limit searches to their own State (you would have to be a software engineer to do this, but it is very easy) and then host “Federal Business Opportunities for the Lone Star State,” using Texas as an example.
Its obvious why a person or organization would want to take from 18F’s repository, but offering changes back, what is called a pull request, might seem less logical outside of the notion that it seems like the right thing to do and a token of good karma. But Read said it’s advantageous for other reasons.
“Beyond altruism, by doing so they keep their codebase as similar to the official Federal codebase as possible,” he wrote. “In this way, when improvements to FBOpen are made by 18F, their software engineers can accept these changes with minimal effort.”
Chances are that not every offered change will be integrated, but 18F says it will make a good effort to consider them all.
“18F will perform strict code review of all such pull requests, and may simply not accept them at all—not every idea is aligned with the codebase owner’s intentions. In general, however, we welcome such pull requests and enhancements,” the post reads. “Just as we hope to create opportunities for American business, we can benefit from the creative output of the entrepreneurs and non-commercial software developers. The taxpayers deserve the least expensive, highest-quality software that we can deliver for their tax dollars.”
Legally 18F cannot ask a non-employee to contribute to its code, but of course it welcomes any outside collaboration that both makes development more creative and efficient. Federal workers, regular citizens and everyone in between can take part in the group’s open source development process whether they’re engineers making eloquent changes to coding language or sticklers for grammar who can’t stand typos. All of 18F’s coding is available on its Github ready to be forked.