(This blog post is brought to you by reposcore - hassle-free and qualified GitHub repository benchmarks)
Ethics in software development is becoming more important. Users and customers are wondering if their preferred vendor develops software ethically correct. But what are relevant criteria? Is there ethical software?
Answer 1 (without thinking): No
Software cannot be judged ethically. Binary code consisting of ‘1’ and ‘0’ follows the laws of logic but not ethics.
Answer 2 (after some consideration): Yes
As humans are involved in the value-generation process and application of software, the right question is whether those humans act right or wrong. Therefore, reposcore is currently working on an “Ethics Score” which judges the morality behind the human behavior around software (wikipedia).
Who cares about ethics in software development?
The cry for “ethically assured” software becomes louder the more we rely on software-based decisions. Companies aim to avoid both legal consequences linked to unethical software as well as reputation losses. Additionally, their employees’ motivation correlates with the purpose of their work, i.e. with the development of ethically sound software (Source).
How to measure ethics in software development?
As institutions frequently describe their codes of conduct as a basis for ethical decision-making but not as an algorithm (source), the identification of the right metrics to calculate an “Ethics Score” is not trivial. Therefore, we at reposcore are currently discussing a reasonable set of evaluation criteria and are open for feedback. If you want to share your thoughts, please contact us. Meanwhile, we are following the ongoing vivid discussion in the scientific community (source).
What are the indicators of the “Ethics Score”?
Noteworthy, the definition of the “Ethics Score” algorithm is still in development. The following reflects the current status of our considerations.
The algorithm of the “Ethics Score” takes the following morally reprehensible cases into account:
Software is developed is an unethical way
- Contributions to the repository is restricted to a limited number of people AND
- Access is not granted independently of nationality, race, sex, age, or religion (source).
- Contributions are not appreciated. Open questions are not answered. Communication between repository members is offensive (source).
Software delivers unethical results
- Software does not contribute to the 17 sustainability goals of the UN but aims to reach quite the opposite (source).
Software operates in an unethical way
- Customers’ data is heavily collected without reasonable purpose (source).
Software is used by unethical organizations
- Repository is used by organizations which are excluded from ethical investments (source).
- Repository is used by organizations in countries which are registered by the Ministry of Foreign Affairs (source).
The “Ethics Score” concentrates on aspects humans should do whereas law defines what humans must do source. The latter is not part of the “Ethics Score”.
Watch the YouTube video on a discussion of ethics in software development (9:31 min)
Are you interested in our service?
Check out your GitHub repository for free: https://app.reposcore.dev