This was entirely moderate, reasonable, and well thought-out! To be honest, I was expecting vague committe-written platitudes. I was wrong. This is well worth a read.
You'd need some insane malpractice insurance if you agreed to some of the things in there. The first rule alone is way too broad "Accept full responsibility for their own work."
That's an interesting point. I wasn't reading this as a binding legal framework. That would be a recipe for disaster. This document is full of sound ethical advice. It's not unreasonable to say that you're morally responsible for the code you write. If you work for a bad company that does bad things, I'm going to judge you for that, just as I expect to be judged. And this document sets up a reasonable standard by which we can judge software developers.
But legally? That's a whole other can of worms. Giving this document the force of law would just make it easier to shift the blame in a crooked organization onto the people writing its software. At most, I could see affirmation of this document and an oath to abide by it as the basis for membership in a voluntary professional organization.
Yes, but who is doing the judging, and how? What does taking "moral responsibility" mean?
Laws are not perfectly correlated with morality (regardless of your ideology), but they at least provide a methodology of implementation and disciplinary action.
If I stand to gain from unethical software, and the worst thing that happens to me is some vague entity with no power holds me in disrepute, why do I care? It's not an effective code at all, it just feels good for its proponents.
A little broad and opinionated at points I thought.
> diminish quality of life, diminish privacy or harm the environment.
Could you work at a targeted advertising company or at resource extraction (eg mining)?
> Consider issues of physical disabilities, allocation of resources, economic disadvantage and other factors that can diminish access to the benefits of software.
Seems like some economic SJW stuff, and would you break your oath if you didn't add blind accessibility to your GUI?
> 3.03. Identify, define and address ethical, economic, cultural, legal and environmental issues related to work projects.
This seems way outside the scope of a developer, especially if we are speaking of technical and deep fields like health care or finance.
The rest isn't too bad. I often fear things are this would just be used to best people over the head that disagree with "best practices" in the industry or work in unfavored industries.
I work in high frequency trading - I'm sure many would try to disbar me if we had a bar.
Since lawyers deal in argument, I think they are better at knowing where to draw lines like this. Reading HN or worse /. I don't think developers can do this well. I used to poke around legal forums a lot and their discussions were much better and well argued compared to dev forums
>> Consider issues of physical disabilities, allocation of resources, economic disadvantage and other factors that can diminish access to the benefits of software.
>Seems like some economic SJW stuff, and would you break your oath if you didn't add blind accessibility to your GUI?
If you forgot about maybe ensuring blind accessibility, then you goofed. If you were informed of this issue, and refused to seriously consider the matter, then you broke the code of conduct. If you seriously consider the matter, and decide not to implement blind accessibility after estimating the cost/time for doing so, then you are in agreement with the code.
>> diminish quality of life, diminish privacy or harm the environment.
> Could you work at a targeted advertising company or at resource extraction (eg mining)?
Environmental: I would guess the typical example of unethical software engineering is the big VW diesel scandal. As far as I understood, the Bosch engineers who wrote the offending code clearly documented that it is for debug purposes only, and use in production would be unethical and probably illegal. Were these engineers in breach of the code-of-conduct? In my view this depends on whether there is a good debug justification for the code; if not, then they acted unethically by even writing it and should have refused. The code-of-conduct requires them to think about whether such a feature is justified for debug purposes.
Did the VW people who put this into production break the code-of-conduct? Absolutely.
>> 3.03. Identify, define and address ethical, economic, cultural, legal and environmental issues related to work projects.
>This seems way outside the scope of a developer, especially if we are speaking of technical and deep fields like health care or finance.
I think that the code-of-conduct just requires that you carefully think about these matters, and accept that your personal ethical responsibility cannot be discharged by "my boss/customer told me to do this".
I love how the existence of whiny college students becomes a shorthand excuse to write off anyone who wouldn't be chosen to appear in a Mentos commercial.