📜 ⬆️ ⬇️

The US government has opened 20% of the source of state software



For a long time, advocates of the open software movement, as well as all sensible people, called on the US government to open the source code of government programs. The development of this software is funded by taxpayers. Every citizen has the right to check where the money goes. Open source helps to find and fix bugs, improve the quality of software, adapt programs for various needs. Based on open source community creates a whole ecosystem, including from startups. From the opening of the code only advantages.

In the end, common sense triumphed. In March 2016, US Information Director Tony Scott announced plans for the presidential administration to provide universal access to the source code of government programs.

According to Tony Scott, the discovery of state sources stimulates innovation and the entrepreneurial spirit of citizens. Publication of the code will make it easier to share open data, improve government tools and services, and better meet the needs of taxpayers, for whose money all this has been created.
')
In March, the administration opened for comment the first version of the official rules of the Federal Source Code Policy , which contain rules for publishing and accessing the source code of federal software.

Four months later, the public discussion was finished - and the final version of the document (pdf) was issued, clearly setting out the scope and conditions of the program codes developed by employees of the federal government or third-party contractors commissioned by the government. The administration expects that this will reduce government costs, because absolutely all state services can now reuse the source code for which they have already paid, and not order the same modules from contractors again and again, sawing the state budget.

According to the rules, federal agencies are required to publish in the open access part of the code of the new software specifically designed for them.

Finally, on November 3, 2016, the official launch of the state portal Code.gov , the central repository of US government software, took place . Now the software of the American government can be used by everyone, including the governments of other countries. Thus, American taxpayers indirectly help less wealthy states to implement the latest technological developments.

The administration believes that this is another measure to realize maximum openness and transparency for the government and the president, who serve and listen to the people. Previously, other initiatives were launched for this, including a chat with Obama on the social networking site Facebook - every American can send a message to the president.



It is unlikely that the president personally reads all the messages. To really communicate with the administration, it is easier to subscribe to the official chatbot of the White House in Facebook Messenger. Obama's bot earned in October 2016, and in the evenings Obama reads about a dozen messages from conversations with his chatbot.


Bot immediately warns that Obama reads some messages from the chat

Chat bot and communication with people in social networks are beautiful actions for the image. But the publication of the source code is a reform that has real practical meaning and can really bring effect.

Code.gov


According to the rules of the Federal Source Code Policy , in the future all new programs created by order of the federal agency or its employees should be published on the Code.gov portal. At the moment, there is a test program that obliges agencies to publish at least 20% of the source code.

The document provides for the regulations of the agency in the event that it considers that the publication of 20% of the source code threatens the interests of national security.

To date, the Code.gov portal hosts 44 projects from 13 federal agencies, including the code for the aforementioned Obama chatbot. 3-4 projects are presented from each agency. For example, NASA published Trick simulator (written in C ++, NOSA license), Earthdata Search web application for processing and visualizing data from EOSDIS Earth Science (Ruby, Apache v2 license), Open MCT mission management framework (JavaScript, license Apache v1, the repository on Github ), and NASA-3D-Resources — a collection of 3D models, textures and images from NASA (Mathematica, license not defined, repository on Github ). This is a really interesting collection: there are dozens of models for 3D printing of various historical NASA vehicles, as well as space objects.


Model for 3D printing space telescope. James Webb. STL File Visualization: Github / NASA

As other federal agencies implement the accepted Federal Source Code Policy, the amount of source code on the portal will grow. In the coming months, it should increase substantially. The administration is going to eliminate duplicates and help agencies to reuse someone else's code, establishing cooperation between developers from different departments. And of course, private sector programmers are invited to view the code and check its quality, make sure that it is reliable and efficient. On the very first day, the developers discovered the risk of PHP injection in the code of federal programs due to unsafe deserialization , including a program with an open vulnerability CVE-2015-2171 .

The government portal with repositories, commits, and bug discussions (Code.gov uses the Github platform for this) is a great initiative that is good for other countries to adopt. Although critics say that 20% of the source for the choice of the agency leaves room for maneuver and secrecy. This is not enough, because all the works created by the state should be transferred into the public domain by default, in accordance with Article 105 of the Law Copyright Act .

But 20% is only a mandatory minimum for a three-year pilot program. Probably, then the program will expand. In any case, 20% is much more than 0%.

Source: https://habr.com/ru/post/357554/


All Articles