2.1 Strive to achieve high quality in both the processes and products of professional work
Computing professionals must prioritize and uphold high-quality work standards for themselves and their colleagues.
Respect for the dignity of all individuals involved in the work process, including employers, employees, colleagues, clients, users, and affected parties, is crucial.
Transparent communication regarding the project should be ensured, respecting the rights of those involved.
Professionals need to be aware of potential serious negative consequences for stakeholders due to poor quality work and resist any temptations or inducements that might lead to neglecting this responsibility.
2.2 Maintain high standards of professional competence, conduct, and ethical practice
Quality computing requires individuals and teams to take responsibility for continuous professional growth, including technical expertise, social awareness, effective communication, reflective analysis, and ethical navigation.
Ongoing skill enhancement through self-study, attending events, and education is crucial, supported by professional organizations and employers.
2.3 Know and respect existing rules pertaining to professional work
Computing professionals are obligated to adhere to local, national, and international laws, organizational policies, and procedures.
Deviation from these rules is acceptable only with a strong ethical reason.
Unethical rules should be questioned and challenged, especially if they lack moral justification or cause harm.
Prior to violating a rule, a professional should attempt to challenge it through established channels.
If a computing professional decides to breach a rule due to ethical concerns or other reasons, they must weigh potential consequences and take responsibility for their actions.
2.4 Accept and provide appropriate professional review
High-quality professional work in computing requires continuous professional review at every stage.
Computing professionals should actively seek and incorporate peer and stakeholder reviews whenever applicable.
It's essential for computing professionals to offer constructive and critical feedback on the work of others as part of the review process.
2.5 Give comprehensive and thorough evaluations of computer systems and their impacts, including analysis of possible risks
Computing professionals, as trusted figures, must provide impartial evaluations and testimony to employers, clients, and the public.
They should be meticulous and objective when assessing system descriptions and alternatives.
Machine learning systems require careful risk identification and mitigation; uncertain systems should be reevaluated or avoided.
2.6 Perform work only in areas of competence
Computing professionals are responsible for assessing potential work assignments, considering feasibility and compatibility with their expertise.
If they lack necessary expertise before or during the assignment, they must inform the employer or client.
The employer/client can decide to proceed after allowing time for the professional to acquire skills, hire someone else with the needed expertise, or abandon the assignment.
Ethical judgment of the computing professional should be the deciding factor in accepting or declining the assignment.
2.7 Foster public awareness and understanding of computing, related technologies, and their consequences.
Computing professionals are encouraged to share technical knowledge with the public and promote awareness and understanding of computing.
Public communication should be clear, respectful, and inclusive to foster better understanding.
Key topics for discussion include the impacts, limitations, vulnerabilities, and opportunities presented by computer systems.
It's important for computing professionals to address inaccuracies or misleading information related to computing respectfully.
2.8 Access computing and communication resources only when authorized or when compelled by the public good.
Individuals and organizations have the right to control access to their systems and data, aligning with other principles in the Code.
Computing professionals should not access another's computer system, software, or data unless reasonably believing it's authorized or serving the public good.
Mere public accessibility of a system doesn't imply authorization for access.
In exceptional cases, a computing professional may use unauthorized access to disrupt malicious systems, but extreme care must be taken to prevent harm to others.
2.9 Design and implement systems that are robustly and usably secure.
Robust security is crucial during system design and implementation to prevent harm from security breaches.
Computing professionals must ensure proper system function and protect against misuse, modifications, and service denials.
Continuous monitoring, patching, and clear communication with affected parties are essential post-deployment.
Security measures should be user-friendly, avoiding confusing or inhibiting precautions.
If harm is foreseeable or unavoidable, not implementing the system might be the best decision.