Dead Sheepdog: Ethical Dilemmas in Software Development

“If you are using a timebox to force commitment in order to meet externally imposed goals, and you are not changing your behavior when this becomes apparent…”

As our identities and activities become wed to software systems, developers have begun to affect our lives in ways and to degrees we hadn’t anticipated.

“In the discreet world of computing, there is no meaningful metric in which small change and small effects go hand in hand.” – (Dijkstra 1989. p. 1400) … the normally predictable linkage between acts and their effects is severely skewed by the infusion of computing technology.”

This is due in part to miniaturization, global interconnectivity and commoditization. More and more people have access to devices with more and more computational power.

These underlying advances spur evolution in the software industry with new languages and frameworks and lower thresholds to creating complex systems. The worldwide software developer population is expected to grow to 19.5 million by 2010 from 14.5 million in 2007.

The growing influence of software in our society is also driven by our transition from an industrial to a service economy. According to the US State Department, in 2006 67.8% of US GDP came from the services sector. The US maintains a $79.8B trade surplus in services while carrying an $800B trade deficit in manufactured goods.

So, as providing services through machine interfaces has become more achievable, our lives and our livelihoods have increasingly begun to revolve around those services.

This pervasiveness leads to indirect chains of cause and effect among systems. Dependencies may be intrinsic such as the linking of a retail shopping account to a credit card. Dependencies may be accidental. Credentials revealed on an entertainment website may unlock a bank account on another site.
Dead Sheepdog: Ethical Dilemmas and Agile Software Development” August 5, 2008

This creates the potential for unintended harm by well- intentioned software practitioners.

“Every week hundreds of vulnerabilities are being reported in web applications, and are being actively exploited. The number of attempted attacks every day for some of the large web hosting farms range from hundreds of thousands to even millions.” – SANS Institute

“Software bugs, or errors, are so prevalent and so detrimental that they cost the U.S. economy an estimated $59.5 billion annually, or about 0.6 percent of the gross domestic product” – 2002 NIST Study

“The Information and Communications Technology sector accounts for nearly 2% of global greenhouse gas emissions, and that data centres account for 23% of the direct footprint of the sector.” – Gartner

In technology, size is no longer a predictable measure of consequence. Small contains great expressive power. Not only small tools but mundane and seemingly insignificant decisions about their implementation can have tremendous consequences.

Software developers ought to be concerned with people and the world around them. As human beings, they should be determined to do more good in their lives than harm. Software developers need to consider the potential consequences of day to day decisions. This consideration is the domain of software ethics.

Maner, W., “Unique Ethical Problems in Information Technology”, Science and Engineering Ethics, 2:2, April 1996, pp. 137-54.

InfoWorld, “Software developer growth slows in North America”, [online] [cited June 6, 2008] http://

U.S. Department of State’s Bureau of International Information Programs, “USA Economy in Brief”, [online] [cited June 6, 2008]

SANS, “SANS Top-20 2007 Security Risks (2007 Annual Update)”, [online] [cited November 11, 2007],

NIST, “The Economic Impacts of Inadequate Infrastructure for Software Testing”, [online] [cited November 11, 2007],

Gartner, “Gartner Estimates ICT Industry Accounts for 2 Percent of Global CO2 Emissions”, [online] [cited November 11, 2007],

Copyright ©, Ken H. Judy 2008, All rights reserved.