The ACM committee on Professional Ethics is updating the ACM Code of Ethics and Professional Conduct (the Code).a It was last changed in 1992. Beginning on page 7 of this issue there is an article that outlines the motivations for the update, describes the update process, includes the first draft of the update, and invites you to take part in this important project. While the draft addresses changes in technology and society, here I reflect on a different view: how those changes motivate a call to action for the profession.
There have been significant changes to the profession of computing in the last 25 years. In 1992, it was still possible for a lone developer to produce a significant piece of software, but that was beginning to change. Numerous free and open source projects were beginning to benefit from collaboration among developers worldwide. Effective software development processes were being shared among experienced developers and being adopted by those new to the profession. Software security and reliability began to change for the better. With the advent of Agile development processes, the circle of collaboration expanded to include the client. The quality of software continued to improve and software itself aligned more with the client's expectations. As the profession welcomed psychologists as collaborators, user interfaces improved. Users became less likely to make mistakes that would lead to harm or even death. Best practices began to mature.
In 1992 there was no doubt that being a computing professional required having a high degree of technical expertise. Today, technical expertise alone is no longer sufficient to be a successful computing professional. Let me explain.
Even those computing professionals with a strong liberal arts background do not have the depth of knowledge and experience in psychology, sociology, philosophy, ethics, and communication theory necessary to fully analyze the impact of some of the complex systems being built. Experts from those fields, and others, who have experience in computing need to be drawn into collaborations as an integral part of the practice of computing in order to advance computing professionalism. It is in this way that the computing profession will offer the best for the common good. Suggested updates to the Code's imperatives emphasize this. The new updated Code imperative 3.7 calls on members to be cognizant of when computing systems are becoming part of the social fabric. This imperative calls attention to the importance of being mindful of the impact computing systems have on others and society in general, as well as being mindful of a system's continuing impact after it has become part of society's infrastructure. Continued stewardship of that system is essential for the responsible computing professional.
The expertise needed to address a broadening range of computing's stakeholders can be found among those studying "computer ethics," understood broadly. As a discipline, computer ethics is even younger than computer science, and in 1992, computer ethics was still in its infancy. Since then, it has experienced growth in both the depth and diversity of scholarship and matured into its own field of study with subdisciplines that intersect with many other disciplines including philosophy, ethics, sociology, communication theory, and design. Some scholars focus on the philosophy of computing. Others focus on computing's impact on society. Still others focus on ethics surrounding the information that is the object of computing. These experts have something to offer the computing profession, and because of their multidisciplinary focus, they understand the collaborative model.
The ACM Code of Ethics expresses the conscience of the computing profession and is a call to action. It helps professionals address a broader approach to computing. As happened with the sorts of collaborations begun in the 1990s, a renewed widespread, collaborative, and open practice of applying the Code when designing and implementing systems that impact people and societies, will improve our profession. The Code can help us better express the value of the profession, which rests in part on effective ethical analysis and decision making. This in turn, places a special burden on universities to establish a foundation for those abilities in students considering entering the computing profession.
None of this is easy. Some software is of little ethical importance, while other software has the potential to change the nature of what it means to be human. No single computing professional is equipped to think through all of the social and ethical implications of possible systems. It is a complex job and requires special expertise. We can start developing this expertise through collaborations: invite "ethicists" as keynote speakers at technical conferences, send technical experts to computer ethics conferences, hire analysts whose expertise is social change. Updated Code imperative 3.4 is actually a call to action, "The needs of people—including users, other people affected directly and indirectly, customers, and colleagues—should always be a central concern in professional computing." We have benefited from broadened collaboration in the past. More is to be gained by expanding the circle again.
The Digital Library is published by the Association for Computing Machinery. Copyright © 2016 ACM, Inc.