Code 2018 Draft 3: Section 3 discussion


Please use this thread for discussion of the changes to the Section 3 (text of Draft 3 of section 3 is included below). If you have a significant issue to discuss you can start a new thread about it and ping me (Bo Brinkman) and I will add a link to it below.

Draft 3 text


In this section, "leader" means any member of an organization or group who has influence, educational responsibilities, or managerial responsibilities. These principles generally apply to organizations and groups, as well as their leaders.

A computing professional acting as a leader should…

3.1 Ensure that the public good is the central concern during all professional computing work.

The needs of people—including users, those affected directly and indirectly, customers, and colleagues—should always be a central concern in professional computing. Tasks associated with requirements analysis, design, development, testing, validation, deployment, maintenance, retirement, and disposal should have the public good as an explicit criterion for quality. Computing professionals should keep this focus no matter which methodologies or techniques they use in their practice.

3.2 Articulate, encourage acceptance of, and evaluate fulfillment of the social responsibilities of members of an organization or group.

Technical organizations and groups affect broader society, and their leaders should accept the associated responsibilities. Organizational procedures and attitudes oriented toward quality, transparency, and the welfare of society reduce harm to the public and raise awareness of the influence of technology in our lives. Therefore, leaders should encourage full participation of all computing professionals in meeting social responsibilities and discourage tendencies to do otherwise.

3.3 Manage personnel and resources to enhance the quality of working life.

Leaders should ensure that management enhances, not degrade, the quality of working life. Leaders should consider the personal and professional development, accessibility requirements, physical safety, psychological well-being, and human dignity of all workers. Appropriate human-computer ergonomic standards should be used in the workplace.

3.4 Articulate, apply, and support policies and processes that reflect the principles in the Code.

Leaders should ensure that organizational policies are consistent with the ethical principles in the Code, are clearly defined, and are effectively communicated to all stakeholders. In addition, leaders should encourage and reward compliance with those policies, and take appropriate action when policies are violated.

Leaders should verify that processes used in the development of systems protect the public good and promote the dignity and autonomy of users. Designing or implementing processes that deliberately or inadvertently violate, or tend to enable the violation of, the Code's principles is ethically unacceptable.

3.5 Create opportunities for members of the organization or group to learn and be accountable for the scope, functions, limitations, and impacts of systems.

Educational opportunities are essential for all organization and group members. Leaders should ensure that opportunities are available to computing professionals to help them improve their knowledge and skills in professionalism, in the practice of ethics, and in their technical specialties. These opportunities should include experiences that familiarize computing professionals with the consequences and limitations of particular types of systems. Computing professionals should be fully aware of the dangers of oversimplified models, the improbability of anticipating every possible operating condition, the inevitability of software errors, the interactions of systems and the contexts in which they are deployed, and other issues related to the complexity of their profession.

3.6 Retire legacy systems with care.

Computing systems should be retired when it is judged impractical to continue supporting them. System developers should take care when discontinuing support for systems on which people still depend. Developers should thoroughly investigate viable alternatives to removing support for a legacy system. If these alternatives are not practical or unacceptably risky, the developer should assist stakeholders' graceful migration from the system to an alternative. When system support ends, stakeholders should be notified of the risks of their continued use of the unsupported system.

System users should continually monitor the operational viability of their computing systems, accepting the timely replacement of inappropriate or outdated systems. The primary consideration must be the impact on stakeholders, who should be kept informed at all times.

3.7 Recognize when a computer system is becoming integrated into the infrastructure of society, and adopt an appropriate standard of care for that system and its users.

When organizations and groups develop systems that become an important part of the infrastructure of society, their leaders have a responsibility to be good stewards of these socially integrated systems. Part of that stewardship requires establishing policies for fair system access, including for those who may have been excluded. That stewardship also requires that computing professionals monitor the level of integration of their systems into the infrastructure of society. Continual monitoring of how society is using a system will allow the organization or group to remain consistent with their ethical obligations outlined in the Code. As the level of adoption changes, there are likely to be changes in the ethical responsibilities of the organization or group. When appropriate standards of care do not exist, computing professionals have a duty to ensure they are developed.

Related threads

None yet.

Code 2018 discussion - Start here!

I disagree with this entire section existing. This makes the assumption that if one does not consider themselves to be a leader, then they don’t need to be concerned with these principles. After looking at these Principles, I do not believe that to be true. I believe that Principles 3.3 and 3.5 are the only ones that align exclusively with what I consider to be leadership and anyone who is carrying out those Principles is, by definition, a leader.

The Preamble makes it clear that 3.1 is a responsibility of all computing professionals, even if one is not a leader. Anyone who sees the public good being neglected during the course of their work should speak up as appropriate, given their position, role, and standing in the organization. There’s nothing in the text that indicates that one needs any kind of power of influence to enact this principle.

Principles 3.2 and 3.3 do not belong in this Code. They are not unique to computing. If enough people adhere to this Code, then 3.2 should follow naturally as computing professionals demand it. If it is necessary to include in this Code, I would continue to argue that it’s not the responsibility of leaders, but all members of an organization to demand this behavior of the leaders. 3.3 also does not belong. This is traditionally the job of a manager (which is distinct from a leader) and equally applies to all managers, regardless of field.

Principle 3.4 is also a responsibility of everyone, not just leaders. When anyone sees an organizational policy or process that is not consistent with ethical principles, it should be raised. Like with 3.1, what that looks like will be different depending on the person’s role in the organization.

Principles 3.6 and 3.7 are very closely related, and should probably be grouped. However, again, this is not something that I would consider to be exclusive to leaders, but all members of an organization. I would even argue that 3.7 can come from outside the organization. The idea of being aware of how computing technology is being integrated and used by society is the responsibility of all computing professionals, and when technology is integrated, the retirement of that technology becomes an even greater concern.


I do agree to with this. Certainly, if a company has enough budget to provide ergonomic equipments to their employee/s then they must do so as this could result to a significant increase in the employee/s performance and to the companies’ services as a whole. I think this is a win-win situation for both the employee and the employer. Leaders in the company, by virtue of the positions they hold are usually the facilitators of these kinds of initiatives.


I would probably approach the problems you are raising from a different direction: namely, everyone in an organization is, in some way, a leader. Then conclude that there are some ethical principles that have to do with their functioning in such a manner. Furthermore, just because something is an ethical consideration for any manager anywhere, doesn’t mean that we shouldn’t consider it specifically in our industry, especially given the number of Software managers trained as Software practitioners with no managerial training of any kind.

Furthermore, a large portion of the grave effects that our industry has on society stem directly from how we manage. When workers are worked to the bone, and not given time to consider the ethical implications of their work, those ethical implications will fall to the wayside. So, there are clearly some principles to be elaborated here.

That said, I would probably rewrite the preamble to make this clear, as well as redistribute some principles on the basis of this (As an example, principle 2.7 educating society would be something that happens in one’s role as a leader, a role which extends even to the most junior of engineers.)


I think that I would agree with the sentiment that everyone is, or at least has the capacity to be, a leader. In that case, I’m still not sure that having a section on leadership principles makes sense. This is even more true if we want to encourage people to act as leaders in one respect or another.

As far as management, I don’t think I can disagree that management has a huge impact on the relationship between our industry and society. I think that I could take any principle that applies to a manager and extend that to the people being managed. Leaders should be empowered to raise issues about management, even if they aren’t management.

To me, it seems like if you cleaned up and redistributed these principles, you’d end up with an empty section. Although I’m not sure how you would rewrite the preamble or how you’d redistribute the principles to take these things into consideration.