0% found this document useful (0 votes)
6 views12 pages

ACM Code Cheatsheet

The ACM Code of Ethics outlines the ethical responsibilities of computing professionals, emphasizing the importance of using their skills for the benefit of society. It is divided into four sections: General Ethical Principles, Professional Responsibilities, Professional Leadership Principles, and Compliance with the Code, each containing specific principles to guide ethical conduct. The Code was adopted on June 22, 2018, and serves as a framework for ethical decision-making in the computing profession.

Uploaded by

Ijs Asif
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views12 pages

ACM Code Cheatsheet

The ACM Code of Ethics outlines the ethical responsibilities of computing professionals, emphasizing the importance of using their skills for the benefit of society. It is divided into four sections: General Ethical Principles, Professional Responsibilities, Professional Leadership Principles, and Compliance with the Code, each containing specific principles to guide ethical conduct. The Code was adopted on June 22, 2018, and serves as a framework for ethical decision-making in the computing profession.

Uploaded by

Ijs Asif
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

📚 ACM Code of Ethics – Exam-Ready Cheatsheet

Section A | Asma Ma'am

📌 What is the ACM Code of Ethics?


The ACM (Association for Computing Machinery) Code of Ethics and Professional
Conduct expresses the conscience of the computing profession. It affirms an obligation of
computing professionals — both individually and collectively — to use their skills for the
benefit of society.
The Code is designed to inspire and guide the ethical conduct of all computing
professionals, including current and aspiring practitioners, instructors, students,
influencers, and anyone who uses computing technology in an impactful way.
"Computing professionals' actions change the world. To act responsibly, they should
reflect upon the wider impacts of their work, consistently supporting the public good."
The Code was adopted by the ACM Council on June 22, 2018.

🔑 Q1: Write All the Points of the ACM Code of Ethics.


✍️ Exam Answer:
The ACM Code of Ethics is divided into 4 major sections, each containing specific
principles that computing professionals are expected to follow.

Section 1: General Ethical Principles


A computing professional should...
Point Principle

1.1 Contribute to society and to human well-being, acknowledging that all people are
stakeholders in computing

1.2 Avoid harm

1.3 Be honest and trustworthy

1.4 Be fair and take action not to discriminate

1.5 Respect the work required to produce new ideas, inventions, creative works, and computing
artifacts

1.6 Respect privacy

1.7 Honor confidentiality

Section 2: Professional Responsibilities


A computing professional should...
Point Principle

2.1 Strive to achieve high quality in both the processes and products of professional work

2.2 Maintain high standards of professional competence, conduct, and ethical practice

2.3 Know and respect existing rules pertaining to professional work

2.4 Accept and provide appropriate professional review

2.5 Give comprehensive and thorough evaluations of computer systems and their impacts,
including analysis of possible risks

2.6 Perform work only in areas of competence

2.7 Foster public awareness and understanding of computing, related technologies, and their
consequences

2.8 Access computing and communication resources only when authorized or when compelled
by the public good

2.9 Design and implement systems that are robustly and usably secure

Section 3: Professional Leadership Principles


A computing professional, especially one acting as a leader, should...
Point Principle

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

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

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

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

3.5 Create opportunities for members of the organization or group to grow as professionals

3.6 Use care when modifying or retiring systems

3.7 Recognize and take special care of systems that become integrated into the infrastructure
of society

Section 4: Compliance with the Code


A computing professional should...

Point Principle

4.1 Uphold, promote, and respect the principles of the Code

4.2 Treat violations of the Code as inconsistent with membership in the ACM
🔑 Q2: Explain Some Points of the ACM Code with Examples.
✍️ Exam Answer:
The following are key points from the ACM Code of Ethics explained with real-world
examples relevant to computing professionals:

1.1 – Contribute to Society and Human Well-being


Computing professionals must ensure their work benefits not just their clients or
employers, but society as a whole. All people — regardless of background — are considered
stakeholders in computing.
Example: A software engineer developing a healthcare app ensures it is accessible to
people with disabilities and works on low-end devices so that underprivileged
communities can also benefit. Rather than building only for high-income users, the
engineer considers all people as stakeholders.

1.2 – Avoid Harm


Computing professionals must take deliberate steps to avoid causing physical,
psychological, financial, or societal harm through their work. If harm is unavoidable, it must
be minimized and disclosed.
Example: A developer building a social media recommendation algorithm identifies
that the algorithm may promote harmful content to vulnerable users. Instead of
ignoring it, the developer reports the issue and works on filters to minimize harm —
even if it slows down engagement metrics.
1.3 – Be Honest and Trustworthy
Computing professionals must be transparent and honest in all professional
communications. They must not misrepresent data, capabilities, or system behavior.
Example: A software engineer testing a product discovers a critical bug before launch.
Instead of hiding it to meet the deadline, the engineer honestly reports it to the team,
even though it delays the release. Honesty ensures the product is trustworthy.

1.4 – Be Fair and Take Action Not to Discriminate


Computing professionals must ensure their systems and decisions do not discriminate
based on age, gender, race, religion, disability, or any other characteristic.
Example: A team building an AI-based hiring tool discovers that the model is biased
against female candidates because the training data was skewed. A responsible
engineer identifies this bias and corrects the model to ensure fair evaluation of all
candidates — regardless of gender.

1.5 – Respect Intellectual Property


Computing professionals must respect the creative and intellectual work of others —
including copyrights, patents, trademarks, and open-source licenses.
Example: A developer wants to use a library in their commercial project. Instead of
copying the code without permission, they check the license terms, find it requires
attribution, and properly credit the original authors in their documentation.

1.6 – Respect Privacy


Computing professionals must protect the privacy of individuals. Personal data should only
be collected when necessary and must be safeguarded against unauthorized access.
Example: A software company collects user location data for a delivery app. A
responsible engineer ensures that only the minimum necessary data is collected, that
users are informed and give consent, and that the data is encrypted and never sold to
third parties.

1.7 – Honor Confidentiality


Computing professionals must respect confidentiality agreements and must not disclose
private or sensitive information without proper authorization.
Example: A software engineer working at a company has access to the company's
database containing client information. Even after leaving the job, the engineer must
not share or misuse that confidential information — honoring the trust placed in them.

2.1 – Strive for High Quality


Computing professionals must deliver work of high quality — in both the process (how
they work) and the product (what they deliver).
Example: A developer writing code for a banking application does not just make the
code "work" — they write clean, well-documented, thoroughly tested code that is
maintainable and reliable. Quality here directly affects the financial security of
thousands of users.

2.2 – Maintain High Standards of Competence


Computing professionals must continuously update their skills, stay current with
technological developments, and maintain ethical standards in all aspects of their work.
Example: A cybersecurity engineer regularly attends workshops and certifications to
stay updated on the latest threats and countermeasures. Rather than relying on
outdated knowledge, they invest in continuous learning to maintain professional
competence.

2.5 – Give Comprehensive Evaluations Including Risk Analysis


Before deploying a system, computing professionals must provide thorough evaluations of
its potential impacts, including identifying and analyzing possible risks.
Example: Before launching an autonomous vehicle software update, an engineer
conducts a comprehensive risk analysis — considering edge cases like sensor failure in
bad weather. This evaluation prevents potential accidents and protects both users and
society.

2.6 – Perform Work Only in Areas of Competence


Computing professionals must not take on work that is beyond their expertise without
acknowledging the limitations and seeking appropriate help.
Example: A web developer is asked to build an embedded system for medical devices.
Recognizing this is outside their area of expertise, they inform the client and
recommend bringing in a hardware and embedded systems specialist, rather than
attempting the work and risking patient safety.

2.8 – Access Resources Only When Authorized


Computing professionals must only access computing and communication resources when
they have proper authorization — or when genuinely compelled by the public good.
Example: A system administrator has administrative access to the company's email
server. Even though they technically can read employee emails, they must only do so
when officially authorized — never out of personal curiosity. Unauthorized access
violates both the Code and potentially the law.

2.9 – Design Secure Systems


Computing professionals must design and implement systems that are secure against
unauthorized access, data breaches, and misuse.
Example: A backend engineer developing a login system implements multi-factor
authentication, encrypted password storage using hashing algorithms, and rate-
limiting to prevent brute-force attacks. These measures ensure the system is robustly
and usably secure.

3.1 – Ensure Public Good is the Central Concern


Leaders in computing must always prioritize the public good above organizational profit or
personal gain when making professional decisions.
Example: A CTO of a tech company is asked to implement a feature that would
generate significant revenue but would compromise user privacy. The CTO refuses and
redirects the team to find a privacy-respecting alternative, putting the public good
above profit.

3.6 – Use Care When Modifying or Retiring Systems


When updating or shutting down systems — especially those people depend on —
computing professionals must plan carefully to avoid disruption.
Example: A government IT team retiring an old citizen records system must ensure all
data is safely migrated, users are notified well in advance, and the transition causes
minimal disruption to services that citizens rely on daily.

3.7 – Take Special Care of Systems Integrated into Society


Systems that become part of society's core infrastructure — such as banking systems,
healthcare platforms, or communication networks — require special attention and care.
Example: An engineer managing a national power grid monitoring system
understands that any failure could affect millions of people. They implement
redundancy, regular audits, and rigorous update protocols to ensure the system remains
stable and secure.

4.1 – Uphold and Promote the Code


Computing professionals must not just follow the Code themselves, but also actively
promote and advocate for it within their professional communities.
Example: A senior software engineer at a company notices junior developers are
unaware of ethical coding practices. Instead of staying silent, they organize a workshop
on the ACM Code of Ethics, promoting a culture of ethical awareness within the team.

4.2 – Treat Violations as Inconsistent with ACM Membership


Any violation of the ACM Code of Ethics is considered incompatible with being a member
of the ACM. Professionals must take violations seriously and address them.
Example: A computing professional discovers that a colleague has been accessing user
data without authorization. Rather than ignoring it, they report the incident through
appropriate channels — recognizing that such behavior is a direct violation of the Code
and inconsistent with professional standards.

📋 Quick Summary Table – All ACM Code Points


Section # Principle (Short Form)

1. General Ethics 1.1 Contribute to society & human well-being

1.2 Avoid harm

1.3 Be honest and trustworthy

1.4 Be fair, no discrimination

1.5 Respect intellectual property

1.6 Respect privacy

1.7 Honor confidentiality

2. Professional Responsibilities 2.1 Achieve high quality

2.2 Maintain high professional standards

2.3 Know and respect existing rules

2.4 Accept and provide professional review

2.5 Give thorough evaluations including risk analysis

2.6 Work only in areas of competence

2.7 Foster public awareness of computing


Section # Principle (Short Form)

2.8 Access resources only when authorized

2.9 Design secure systems

3. Leadership Principles 3.1 Prioritize public good

3.2 Encourage social responsibility in organization

3.3 Manage resources to enhance quality of working life

3.4 Apply and support Code-aligned policies

3.5 Create professional growth opportunities

3.6 Use care when modifying/retiring systems

3.7 Take special care of society-integrated systems

4. Compliance 4.1 Uphold and promote the Code

4.2 Treat violations as inconsistent with ACM membership

📝 The ACM Code was adopted on June 22, 2018. Full version:
[Link] 📝 For exam: Learn all point numbers + short
forms. For "explain with example" questions, use the examples above — keep them
concise and to the point.

You might also like