Imagine there is a weapons producing company that want to hire you. You should write an algorithm for leading the missile to the target.
You may dis/-agree with defence or offense behaviour of the current politics. But in general we will agree to the fact that no one wants to harm another.
You will not have many options:
- Refuse the job offer (and my be do something to hinder them)
- Accept the job offer, but do bad work so that it will do nothing or espacially damage other weapons
- Accept the job offer and do what they want you to do. They are the customer. Programmers should do what they are told to.
- Accept the job offer but get involved with something in this case peacefully (helping build wells)
Some more options I forgot?
How is professional honor/ethic/morality for programmers defined?
- Should I be faithful to my company or to the customers of my company or anyone else?
- Should I extend public knowledge and help eliminating false statements about my field of knowledge?
- Should I do all things a customer wants? If it harms other people or the environment? If it bends the law?
- Should I do it the way he wants? Even if its a bad idea?
- Should I activly take care of my employer? That he behaves in a correct way?
- Should I only use products of companies that take care? That produce environmentfrienldy, employeefriendly stuff? Pay well, take care of health and their origin of raw materials and supplies?
- Should I take care that my company treats its employees well?
- If anything is wrong: Should I leave the company. Should I tell the justice (Escpecially in germany there are some cases that forbid to go directly to the justice in case it could be harmful for the company (to big work time, mobbing by the pointy haired boss))?
- Should I use my competence for the advance of human welfare
- Should I honor intellectual property rights?
There are some other responsibilites when dealing with personal data? What about privacy (facebook, google - another question: Is only the first generation of the ceo's behaving good? The next generation behaves bad? Missunderstood the mission? Only interested in making money? Why?)?
Some facts there should be no discussions about:
- Accept responsibility for my work (only accept job offers where I met the requirements)
- Act with professional responsibility (not use any title for misrepresent my competence or deceptive statements)
- Properly qualify myself if I'm asked for my opinion outside my area of competence?
- Responsible for a correct understanding of my area of knowledge. Train professionals and aspirants.
- Be fair, be honest
Is it possible to establish a catalog everyone feels bounded to?