Responsibility and Accountability in Software Development

Microsoft is being criticized by Amnesty International for supplying “goods and services” to China that was used to violate human rights. Cory Doctorow, of the Electronic Frontier Foundation (and an excellent sci-fi author), brings an interesting perspective to the situation.

Microsoft states that they are “focused on delivering the best technology to people throughout the world. However, how that technology is used is with the individual and ultimately not in the company’s control.”

Doctorow points out that “[t]his is a curious rationale from a company that is shoving DRM down its customers’ throats, effectively telling the entertainment industry that it believes that it can and should control how its users use its products.”

Curious indeed. This is an issue that the open-source/free software world has had to deal with this issue as well. It is a tenant in the open-source world that one should not descriminate against uses or users of their software. As our local ISP owner, Kevin J. O’Brien would say, “it’s just data”.

The venerable Open Source Definition by Bruce Perens states that:

The license must not discriminate against any person or group of persons.

The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research

Is someone who makes a tool responsible for how it is used? Guns and other arms manufacturers obviously come to mind.

As for Microsoft – if they sell Microsoft Windows to government (foreign or domestic) and it is then used to organize evil plots, then Microsoft can hardly be held any more accountable than the people who build buildings for the same governments. However, if Microsoft is paid to provide services, such as installation, customization, or consulting, on projects that are obviously in violation of human rights, then they are indeed in the wrong.