Measures Governments Can Use to Promote Free Software
This article suggests policies for a strong and firm effort to promote free software within the state, and to lead the rest of the country towards software freedom.
The mission of the state is to organize society for the freedom and well-being of the people. One aspect of this mission, in the computing field, is to encourage users to adopt free software.
The state needs to insist on free software in its own computing for the sake of its computational sovereignty (the state's control over its own computing). All users deserve control over their computing, but the state has a responsibility to the people to maintain control over the computing it does on their behalf. Most government activities now depend on computing, and its control over those activities depends on its control over that computing. Losing this control in an agency whose mission is critical undermines national security.
Moving state agencies to free software can also provide secondary benefits, such as saving money and encouraging local software support businesses.
In this text, “state entities” refers to all levels of government, and means public agencies including schools, public-private partnerships, largely state-funded activities such as charter schools, and “private” corporations controlled by the state or established with special privileges or functions by the state.
The most important policy concerns education, since that shapes the future of the country:
- Educational activities, or at least those of state entities, must teach only free software (thus, they should never lead students to use a nonfree program), and should teach the civic reasons for insisting on free software. To teach a nonfree program is to teach dependence, which is contrary to the mission of the school.
Also crucial are state policies that influence what software individuals and organizations use:
Laws and public sector practices must be changed so that they never require or pressure individuals or organizations to use a nonfree program. They should also discourage communication and publication practices that imply such consequences (including Digital Restrictions Management).
Whenever a state entity distributes software to the public, including programs included in or specified by its web pages, it must be distributed as free software, and must be capable of running on a 100% free environment.
State entity web sites and servers must be designed to function fully with 100% free environments on the user's computer.
State entities must use only file formats and communication protocols that are well supported by free software, preferably with published specifications. (We do not state this in terms of “standards” because it should apply to nonstandardized interfaces as well as standardized ones.) For example, they must not distribute audio or video recordings in formats that require Flash or nonfree codecs, and public libraries must not distribute works with Digital Restrictions Management.
Several policies affect the computational sovereignty of the state. State entities must maintain control over their computing, not cede control to private hands. These points apply to all computers, including smartphones.
State entities must migrate to free software, and must not install, or continue using, any nonfree software except under a temporary exception. Only one agency should have the authority to grant these temporary exceptions, and only when shown compelling reasons. This agency's goal should be to reduce the number of exceptions to zero.
When a state entity pays for development of a computing solution, the contract must require it be delivered as free software and be capable of running on a 100% free environment. All contracts must require this, so that if the developer does not comply with this requirement, the work cannot be paid for.
When a state entity buys or leases computers, it must choose among the models that come closest, in their class, to being capable of running without any proprietary software. The state should maintain, for each class of computers, a list of the models authorized based on this criterion. Models available to both the public and the state should be preferred to models available only to the state.
The state should negotiate actively with manufacturers to bring about the availability in the market (to the state and the public) of suitable hardware products, in all pertinent product areas, that require no proprietary software.
The state should invite other states to negotiate collectively with manufacturers about suitable hardware products. Together they will have more clout.
The computational sovereignty (and security) of the state includes control over the computers that do the state's work. This requires avoiding Software as a Service, unless the service is run by a state agency under the same branch of government, as well as other practices that diminish the state control over its computing. Therefore,
- Every computer that the state uses must belong to or be leased by the same branch of government that uses it, and that branch must not cede to outsiders the right to decide who has physical access to the computer, who can do maintenance (hardware or software) on it, or what software should be installed in it. If the computer is not portable, then while in use it must be in a physical space of which the state is the occupant (either as owner or as tenant).
One other policy affects free and nonfree software development:
The state should encourage developers to create or enhance free software and who make it available to the public, e.g. by tax breaks and other financial incentive. Contrariwise, no such incentives should be granted for development, distribution or use of nonfree software.
In particular, proprietary software developers should not be able to “donate” copies to schools and claim a tax write-off for the nominal value of the software. Proprietary software is not legitimate in a school.
With these measures, the state can recover control over its computing, and lead the country's citizens, businesses and organizations towards control over their computing.