When you want to deliberately sabotage something. What may have its place, but obviously not in such case (obviously not applicable in cancer research like in this case).
Why is this an ethics problem? That's just "normal" scientific fraud, isnt it? What is there to discuss?
Part of the problem is you think that software engineers should take a course in software engineering ethics. The problem here is like the GP says, it boils down into a class of are you dumb enough to pick the obviously unethical answer and fails to teach any ethics.
I wonder if requiring an ethics class that focuses on an orthogonal topic, for example requiring software engineers to take a course in business ethics, might be more effective since they can focus more on the actual system process of ethics and less on how it effects their own personal career, and thus be more willing to honestly evaluate ethically grey scenarios.
- Ethics should be a required course for CS.
- CS classes in general do a poor job of tracking well with the industry. Fine for some things (eg, theory), but awful for others (eg, any Software Engineering course which touches on waterfall.)
For those who have missed out, here's an ethics course in the size of a paragraph:
Most engineering ethics focus on life and death, such as making sure your bridge doesn't collapse; Most software is not a matter of life and death, so ethics may seem irrelevant. However, the incredible power of technology means your design choices will have an impact on the lives of many. Seeing red lines where you need to tell your employer no is important, but everyday ethical thinking will find problems other approaches to design will be blind to. This in turn will make better products, and increase your value to your employer. So throw an "ethics" section in your design doc, and ask the question "Does this technology as designed hurt any groups of people with specific characteristics?" You might find that your camera app needs better calibration for dark skin tones, that your UI elements are too hard to use for women with large fingernails or people with minor motor disabilities, or perhaps that one of the JS libraries your considering is very large, and will make a much worse experience for people with rural and slow internet. So simply stop, think, and approach your design from the perspective of different cultures, races, religions, ages, genders, and life circumstances.
Gone are the days we can just build something and act naive about what ways tech can be abused or think we can solve those issues as they come up.
Most of the time, it's not even in companies interest to look too closely at the negative implications of their products, because then they'd have to act.
Hence, its better to anticipate problems at the design phase than deal with them after the thing is built and corporate inertia and sunk costs demand it stay the same or only get band-aid fixes to those problems.
I think it's the reverse of the lesson they were trying to teach.
It's a classic Monopsony.
Pedagogically, going purely book- and reading-based like most courses is a bad idea, as that can't capture the paradoxes and nuances involved in ethical decision making. I think the field would benefit from more decision-oriented approaches including a review of past ethical dilemmas perhaps as case studies, more embodied/situated formats like simulations, and practical advice on how to identify and/or avoid getting into ethically compromised situations in the first place. But you do need to couple those with the foundational frameworks that you'd use in those situations, and ideally contextualization with much broader ideas like the social contract in society.
Ethics guidelines from professional engineering societies can help with some amount of ongoing ethical awareness, but I do think it has to start in the formal education system.
The hypotheticals and situations presented and discussed in many of them are very similar to yearly mandatory classes we have to take at FAANG (and many other workplaces I assume) and it boils down to having a checkbox that says "I'm not stupid".
Real world ethics is much more subtle and difficult to teach imo. Like how do you do trade-offs around cost/societal issues/potential financial consequences and do it under pressure with your job on the line.
In Canada, we have the iron ring given to engineers to remind them of their duties to society, I think that serves as a good reminder even if it's symbolic.