1. Understanding Ethics in Computing
Ethics are the moral principles that guide our actions. In computing, this isn't just about personal beliefs of right and wrong, but about a professional code of conduct that governs how we create and use technology. As a computing professional, your work can have a huge impact on society, from managing people's private data to building systems that control critical infrastructure like power grids or hospitals. Therefore, a clear ethical framework is essential to ensure technology is developed and used responsibly, safely, and for the public good. It helps professionals navigate complex situations where the right choice isn't always obvious.
Key term
Examiner insight
Worked example 14 marks
A software developer is asked by their manager to secretly add code to a new social media app that tracks users' locations even when the app is closed, without informing the user in the terms of service. Why is this an ethical issue?
- 1
- Identify the core conflict: The request conflicts with principles of user privacy and informed consent.
- 2
- Relate to professional responsibility: A computing professional has a responsibility to the public, which includes protecting their data and being transparent.
- 3
- Consider the potential harm: This hidden tracking could be misused, leading to a breach of privacy, stalking, or other dangers. It erodes trust between the company and its users.
- 4
- Conclusion: The action is unethical because it is deceptive, violates user privacy, and prioritises company desires over the well-being and rights of the public.
Recap
- Ethics in computing are professional rules of conduct, not just personal morals.
- Computing professionals have a responsibility to the public, their clients, and their employers.
- Ethical considerations are vital due to the significant impact of technology on society.
- Ethical dilemmas often involve conflicts between different responsibilities, such as profit and public safety.
Quick check
- State one reason why a code of conduct is important for a computer system developer.1 mark