In a post titled, “The People’s Code,” U.S. Chief Information Officer Tony Scott announced the release of the new Federal Source Code policy. The period for public comment ended in April after which the White House Office of Management and Budget (OMB) analyzed the feedback on GitHub.
The new policy primarily concerns custom-developed source code contracted by the US government. It encourages federal employees to share code across agencies to make more efficient use of taxpayer funds. It also introduces a new three-year pilot program that requires agencies to release at least 20% of new custom-developed code as Open Source Software. The policy identifies a few of the benefits government employees, vendors, and American citizens can expect from making more code open source:
Making source code available as OSS can enable continual improvement of Federal custom-developed code projects as a result of a broader user community implementing the code for its own purposes and publishing improvements. This collaborative atmosphere can make it easier to conduct software peer review and security testing, to reuse existing solutions, and to share technical knowledge. Furthermore, vendors participating in or competing for future maintenance or enhancement can do so with full knowledge of the underlying source code. A number of private sector companies have already shifted some of their software development projects to an OSS model, in which the source code of the software is made broadly available to the public for inspection, improvement, and reuse.
The policy encourages agencies to use modular architecture, craft hybrid solutions with a mix of existing and custom-developed code, evaluate cloud computing options, and utilize open standards. These considerations aim to increase interoperability as well as the ability to share and reuse code, which also makes it easier for the government to switch vendors when necessary.
“By opening more of our code to the brightest minds inside and outside of government, we can enable them to work together to ensure that the code is reliable and effective in furthering our national objectives,” Scott said. “And we can do all of this while remaining consistent with the Federal Government’s long-standing policy of technology neutrality, through which we seek to ensure that Federal investments in IT are merit-based, improve the performance of our government, and create value for the American people.”
Scott also announced that the White House will soon be launching Code.gov, a new website and open source project for sharing the government’s software. The placeholder for the site actually displays WordPress code in the background image. Within 90 days the site will house a collection of tools, best practices, and schemas to help government agencies implement the policy.
With the new Federal Source Code policy in place, American citizens and the rest of the world will benefit from the flood of code that will soon be shared.
“This is, after all, the People’s code,” Scott said. “Explore it. Learn from it. Improve it. Use it to propel America’s next breakthrough in innovation.”
Government Agencies to Increase Participation in the Open Source Community
While the pilot program is a major step forward for the promotion and use of open source software, it did not incorporate feedback from developers who recommended an “open by default” policy. Mozilla, the Presidential Innovation Fellows Foundation, and other developer groups advocated an approach that shoots for 100% OSS instead of mandating a minimum percentage, a requirement that necessitates more bureaucratic tracking and assessing.
Although the new structure of the new pilot program is launching with a more conservative 20% requirement, the government will be collecting additional data to gauge the impact of the program. The policy outlines several principles aimed at increasing federal agencies’ participation in open source communities:
When agencies release custom-developed source code as OSS to the public, they should develop and release the code in a manner that (1) fosters communities around shared challenges, (2) improves the ability of the OSS community to provide feedback on, and make contributions to, the source code, and (3) encourages Federal employees and contractors to contribute back to the broader OSS community by making contributions to existing OSS projects.
Government agencies are encouraged to leverage existing communities first, before developing their own communities. Federal agencies should also push for open development wherever possible, allowing outside contributors to get involved before an official release of a project. The policy also states that agencies should adopt regular release schedules and provide adequate documentation. Check out the 15-page document for more details on the changes coming with the new Federal Source Code policy.