Code of Ethics – IEEE Computer Society
computer.org
computer.org
Professional licensing is pure economic protectionism and largely fails at the stated goal of promoting safety, quality, or professionalism. It is prone to corruption, as all human ventures with absolute power and authority will be
Voluntary trade organizations, certifications and other methods are far superior to governmental professional licensing
Citations?
> Voluntary trade organizations, certifications and other methods
The software industry barely even has those.
> The software industry barely even has those.
And no accountability.
When a building collapses engineers form committees and seek the cause and check to see if any engineers were to blame. When a hospital gets hacked and private patient details are made public there are no such enquiries. The computer programmers responsible for creating insecure systems are not held to account.
The upshot is civil engineers get to do a good job. If they cut corners it has real word effects and they get punished.
Computer programmers never get held to account so their managers insist on minimum viable products being promoted irresponsibly into vulnerable systems that expose people's data. If we cut corners it has real world effects and every body blames the users.
So we never (mēh, not often) get to to good work
Ethics are a double edged sword.
Not only are you held to account but you can hold others to account.
In fact, it's an argument that many other professions aren't actually benefiting from licensing, either.
It ain't broke.
Citations?
edit: I found this “The effectiveness of licensing” [1], which suggests replacing licensing with mandatory registration programs (or suggestions of improvements for licensing boards).
I’d be curious to see any research that advocates for removal of licensing without the addition of something else.
Combination of this there are several licensed FL contractors currently being investigated for Fraud because they promised Homeowers work they never delivered. The Trades are FULL of licensed scam artists
Building Contractors are by far the best example I could give.
Personally I do not want to get to a situation where my Open Source Code is downloaded by someone in say California and the next thing I know I am being arrested for "Developing with out a license"
Hell if there was a License requirement for development when I was a teen I likely would have never learned how to develop code in the first place, I though HN was all about equality seems odd you would promote blocking out people and only allowing in the elite.
Here is your $25 pi to learn to code on, but if you want to release your code you must first pay thousands of dollars and get approval from the code guild.... No thanks
[1]https://nbc-2.com/news/local/charlotte-county/2022/10/08/roo...
There are cadres of people that struggle through medical licensing just for the chance to make less money than an unlicensed software engineer.
I can only imagine that licensing (or some functionally equivalent regulatory mechanism) would boost the quality of the labor pool.
> I though HN was all about equality seems odd you would promote blocking out people and only allowing in the elite.
You may not be aware of this, but there are a wide variety of ways for people to get into STEM or medicine without being an elite.
Heck, there’s billboards showcasing the non-elites being given free access to Harvard training.
> The Trades are FULL of licensed scam artists
Take a look at that research article that I linked in my parent comment.
It identifies some suggestions for how to fix the situation by switching to a mandatory registration program, instead of licenses, or how to fix the licensing boards so that they properly punish incompetence or other professional failings.
Frech's "Competition & Monopoly in Medical Care" says the original motivation for licensing doctors was driving the Jewish and Black doctors out of the profession.
https://www.amazon.com/Competition-Monopoly-Medical-Care-Fre...
Today, the motivation is to restrict the number of physicians in order to increase their pay.
I don’t find that to be interesting, sorry.
https://www.amazon.com/Competition-Monopoly-Medical-Care-Fre...
Law enforcement embraces rehabilitation, prevention, and other mechanisms as well as simple punishment.
Seems rather disingenuous to make a claim that negative reinforcement doesn’t work, vis-a-vis not having to be in jail.
Besides, pickpockets used to be hanged. Didn't stop them.
What has contributed to safety was no-fault attempts to find out what went wrong.
The reason is simple. Punishment means the person who made the mistake becomes highly motivated to cover it up, deny it, shift blame, and not fix it (because fixing it means admission of, and liability for a mistake).
No fault means that people can fix it without fear.
Destroying people for making mistakes is a really, really bad idea for improving safety.
For user "spying", the code of ethics could contain something like "respecting the user" (idk, just spitballing) and those who want to implement more "spying" into their software could be "disbarred" for unethical behavior. This is even mentioned in the IEEE text: "Approve software only if they have a well-founded belief that it [...] does not [...] diminish privacy".
I guess you could codify this into law (i.e. GDPR style), but even that (at least to my understanding) does not hold developers individually responsible, but their company. E.g. when google gets fined, the developers who created the code are less likely to think "this is bad, therefore I will restrain for doing such things in the future" and more "how close to breaking the law can I push without the company getting in trouble".
Was updated in 2016 [1], even though they preserved the copyright from 1999.
[1] https://www.computer.org/press-room/2016-news/code-of-ethics
1.02, 1.07, 2.07, 4.01, and 8.07 could be seen to have some thoughts on some current hotbutton issues I guess.
“Software engineers shall commit themselves to making the analysis, specification, design, development, testing and maintenance of software a beneficial and respected profession. In accordance with their commitment to the health, safety and welfare of the public, software engineers shall adhere to the following Eight Principles:
1. PUBLIC – Software engineers shall act consistently with the public interest.
2. CLIENT AND EMPLOYER – Software engineers shall act in a manner that is in the best interests of their client and employer consistent with the public interest.
3. PRODUCT – Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.
4. JUDGMENT – Software engineers shall maintain integrity and independence in their professional judgment.
5. MANAGEMENT – Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.
6. PROFESSION – Software engineers shall advance the integrity and reputation of the profession consistent with the public interest.
7. COLLEAGUES – Software engineers shall be fair to and supportive of their colleagues.
8. SELF – Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
”“Software engineers shall commit themselves to making the analysis, specification, design, development, testing and maintenance of software a beneficial and respected profession. In accordance with their commitment to the health, safety and welfare of the public, software engineers shall adhere to the following Eight Principles:”
“The short version of the code summarizes aspirations at a high level of the abstraction; the clauses that are included in the full version give examples and details of how these aspirations change the way we act as software engineering professionals. Without the aspirations, the details can become legalistic and tedious; without the details, the aspirations can become high-sounding but empty; together, the aspirations and the details form a cohesive code.”
But it would stop the person from doing evil as a doctor.
The lab coat alone carries weight that magnifies the amount of evil that an evil person can do.
A doctor or nurse that kills patients out of evil, leveraging their position of being able to see patients, should obviously not be allowed to see patients.
Similarly, programmers that do evil, leveraging their position of being able to program a computer for a company, should obviously not be allowed to program for a company.
Setting aside things like rehabilitation, of course.
But there are definitely documented cases of doctors and nurses using their power to kill or to abuse the disadvantaged.
Taking away that power, once it is abused, is key.
Maybe it's useful to consider that this code of ethics is what some people in 1999 were thinking about software engineering ethics, and compare&contrast with what kinds of code of ethics for software engineering we could use today.
Was updated in 2016 [1], even though they preserved the copyright from 1999.
[1] https://www.computer.org/press-room/2016-news/code-of-ethics
> Software engineers shall act consistently with the public interest.
But what can or should be done about it? It seems like it's just economic reality that software as a whole continues trending in a certain direction.
For a lot of telemetry and tracking, if users were made aware of exactly what sort of data is being collected, do you think that they would still consent?
It would be interesting to hear how other engineering professions have handled similar issues.
Well, at least looking at the hardware world, it doesn't look like they've managed to do a great job. Repairability seems like it would clearly be in the public interest, but that feature is often ignored by many of the large hardware manufacturers.
And at least with hardware manufacturers, there's always greater demands of purity and perfection. Even when a company shows up providing hardware that's more open than the alternatives, people will often just complaint that it's not open enough and refuse to buy in. But this is a battle that must be won in slow steps towards making open hardware more viable.
The idealist within me feels frustrated when it comes into contact with reality.
Imagine what a perfect or ideal world would look like and then ask yourself: what features would be worth fighting to bring into this reality?
Good; an ideal to aim for rather than a judgement to be accused by
> The Code is not simply for adjudicating the nature of questionable acts...
Err, as far as I read it this finalizing statement is in conflict with their preamble
If it is a basis to judge others, then I will also judge it:
It says work in the best interest of customer and employer; but omits working in your own interest. In a zero sum game, I can best work for other's interests by taking from my own
Their code of ethics also gives no model to evaluate between different actions, which is kinda important. "Adjudicating questionable acts" by only asking if they were in "The best interest of employer/etc," is a recipe for poor adjudication
IMHO
For brief example,
“The Code is not a simple ethical algorithm that generates ethical decisions.”
and
“In some situations standards may be in tension with each other or with standards from other sources. These situations require the software engineer to use ethical judgment to act in a manner which is most consistent with the spirit of the Code of Ethics and Professional Practice, given the circumstances.”
"Aim for the stars" is aspirational. But you cannot judge somebody for failing to achieve it
"Software engineers shall ... meet the highest professional standards possible." is aspirational. This is a good aspiration, but "shall" is the language of legalistic requirement. -- The document is aiming to do both
6.11. Recognize that violations of this Code are inconsistent with being a professional software engineer
6.13. Report significant violations of this Code to appropriate authorities...
8.09. Recognize that personal violations of this Code are inconsistent with being a professional software engineer
Ouch. This is extremely legalistic, they judge people by unmeetable criteria, then do not allow judgement of their own criteria!
I'm sorry...
That is highly disingenuous to write.
Lawyers, doctors, and members of the other recognized professions all abide by similar language.
And what good is a code that has no teeth? What happens when people do not behave as required by this code?
If a manager is asking middle-class professionals to do unethical or dangerous things, the hope is that they would quickly find themselves without these kinds of employees.
If a manager is asking members of the working-class to do unethical or dangerous things, the hope is that their union would throw a fit.
If you have neither the moat of being hard to replace nor the moat of being part of organized labor, you are in a rough spot.
https://www.pmi.org/about/ethics/code
It does speak volumes that even PMI has links to articles such as “Being Ethical is Profitable”
And what good is a code if you have to be an "underling" to follow it?