Six anchors to carry into every system you ever build, ship, or refuse to ship.
1Ethics is a code of behavior defined by a group. The IT profession has codes; you are bound by whichever applies.
2The five obligations — employer, client, supplier, user, society — have a priority order. Society first, even when it costs you.
3Reasonable assurance is the standard. Controls proportionate to the risk; analysis proportionate to the stakes.
4The objective function is the ethics. The engineer who picked what to optimize made the moral choice.
5Refusal is a duty, not a luxury. The codes were written by people who knew using them would sometimes cost you something.
6Document the analysis. The defensible decision can be reconstructed in code language. The undocumented one cannot.