9 ms·
First, Do No Harm: A Hippocratic Oath for Software Developers (2004)
- snvzz 7y agoI'll pass.
- toolslive 7y agoMedicine has largely outgrown that oath. A few examples: At some point you're going to want to replace a bad heart, and to do that you have to take it out first. These days if an arm is broken, they often prefer to operate on it and insert some metal rods and pins to fix it so it heals faster and correctly. In both cases the intermediate state is worse than what you started with. Anyway, it's fun as a thinking exercise, but I wouldn't live by it.
- chrisseaton 7y agoI don't think all doctors take the Hippocratic oath, or any oath, even. They just manage to apply common sense without it.
- diggan 7y agoI think the point of that oath is not that you can't take out a heart but rather the intent of taking out that heart should be to introduce a new, healthier one.
- hobs 7y agoThe oath doesnt say "dont do any harm at all" it says "abstain from all intentional wrong-doing and harm, especially from abusing the bodies of man or woman" - causing pain in attempts to fix the body has very much been in the realm of medicine since the oath was first coined.
- Symmetry 7y agoThe modern Hippocratic Oath says that. The original one Hippocrates promulgated and the ones taken by European physicians followed for centuries afterwards explicitly prohibited things like surgery. "I will not use the knife, not even, verily, on sufferers from stone" Pre-antibiotics and pre-clinical trials that wasn't as unreasonable a position as it would be now. Of course some European medical workers did perform surgeries, just lower class ones who didn't take an oath.
- harimau777 7y agoIt seems to me that referencing Code Complete's exhortation to fix the underlying cause of a problem actually supports refactoring. In my experience, the most common cause of bugs is code that was either poorly designed, doesn't follow principles such as immutability and functional purity, or where time wasn't taken to make it simple. In these situations, refactoring is how you fix the root problem.
- xwdv 7y agoThe only thing such an oath would do if taken seriously is create a sharp line between blackhat and whitehat software developers, where as of now I’d say most of the industry is gray and unjudged. Personally I would never swear to such a ridiculous contract.
- _def 7y agoI don't think this is a discussion for developers. Every human being should "do no harm". The thing is, you get no money by looking out for others. It's hard to see the (short-term) benefits. And I think because of that there are a lot of people acting very egocentric and not for the greater good. I don't know how to fix this though.
- neon_me 7y ago> The thing is, you get no money by looking out for others. It's hard to see the (short-term) benefits. This is the main problem of us. We perceive money and short-term goals (self) over of anything else. To fix the lack of personal responsibility in broader part of ecosystem is crucial. Therefore, sort of Hippocratic Oath for software and hardware developers/managers and education to behave in moral constraints is important. We are playing bigger role in shaping how future on Earth(and other planets) will looks like. So it will be beneficial and important to signup for ethical codex. I am surprised that we are not already doing it - globally. How come? How is that possible?
- Nasrudith 7y agoYou said why already in the second sentence of the first paragraph - there is nothing to be gained from it and the codexes wouldn't be binding and the last thing we need is to give liars more tools to feign trustworthiness.
- neon_me 7y agoOk, so what is the purpose of Hippocratic Oath? Why we have such things as Bar Association for lawyers? Statements are important - at least you have to fight with your inner feeling that "you lied" to all when it actual status quo its just "matter of perspective" bending morals
- _def 7y agoThe nearest thing that comes to my mind are the hacker ethics from the CCC https://www.ccc.de/en/hackerethics https://www.ccc.de/en/hackerethics Of course it doesn't really cover the points from the article but think it's sort of related. I think the article really clashes with our everyday life. If there are devs for instance which think they have a shitty paid job and are bombarded with projects and tasks, I don't blame them for doing low quality work. Because there are companies that exactly want that. Because it's cheaper. And remember kids, cheaper is aaaalways better! ...
- abjKT26nO8 7y agoThis article seems focused on doing no harm "to code". To a degree, it's ridiculous. I feel like the bigger problem is how when I look at job postings for software developers they seem to be postings of jobs which contribute negatively to the welfare of the society. Google, Facebook and the like being so widely sought after by software developers just to wash our brains with ads and track us, millions of financial companies/banks working hard to drive the economy down for the benefit of stakeholders. Finding a company which doesn't have a net negative impact is hard, finding one that has a positive one is even harder. It's not like that just for software developers, sure, but it's still clear that it's a serious problem for us. And this part: > Loss of control, loss of intellectual property, unsatisfactory performance, hidden costs, and hard-to-obtain legal remedies are the harm that can occur when things go wrong when projects are outsourced. Yes, it would be a real tragedy if intellectual property (sic!) was violated. Also, suggesting that someone from outside the US is more likely to give you unsatisfactory performance is simply racist.
- ElFitz 7y agoOutsourcing != offshoring Many of the clients I've had have had bad experiences outsourcing to local development agencies that didn't practice any offshoring. See Hertz vs Accenture [^1](maybe Accenture offshores, but they wouldn't have had to in order to do such a bad job) [1] https://www.theregister.co.uk/2019/04/23/hertz_accenture_lawsuit/ https://www.theregister.co.uk/2019/04/23/hertz_accenture_law...
- Nasrudith 7y agoYeah the very concept is a blind and kind of dumb argument by analogy that ignores the obvious - especially in software engineering - that code isn't people. Not to mention oaths especially arbitrary ones have come and gone. The whole article is like this - clearly arguing by analogy about things he doesn't understand. The fact he views IDEs as a risk /from lack of knowledge/ just shows the sheer depths of his ignorance given its role is to make it more accessible. At this point I have grown weary of every article proposing some sort of professionalization. At this point I want to shout to everyone writing them "Stop trying to professionalize code to your gatekeeping standards already!". From the number of failed outsourcing attempts I suspect unsatisfactory performance is true though for reasons not on them - organizational, communication and cultural barriers rather than lesser merit. The threats there aren't even on the software engineers but the management making the decisions! The only thing they could do to "stop" that is to work for free which was unreasonable to expect from even priests and would remain utterly stupid blame shifting.
- pepper_sauce 7y agoI'm surprised by the mental gymnastics other commenters in this thread are displaying in order to avoid contemplating how tech can and should be held responsible for its own actions. All the more reason to push for some form of professional ethics!
- deleted 7y ago[deleted]
- cmurf 7y agoI think those mental gymnastics are the result of cognitive dissonance. There's discomfort resulting from the idea that some action could be unethical in a non-obvious way to someone intelligent enough to be in the tech industry (this is sheer hubris and ignorance of course), or that intelligence does not lead to ethical behavior; or the idea that ethics could or should limit either innovation or income; or the idea that externalities are unacceptable exploitation, i.e. it really is someone else's problem. And like any ordinary person, people are resolving the discomfort with dismissal. The history of the hippocratic oath shows that despite its age, it didn't really become popular in medicine until 1000 years after it was written. Seems reasonably likely there was quite a lot of mental gymnastics in the medical profession, arguing against an oath.
- ravenstine 7y agoI don't find it surprising. A lot of what makes up the gold rush or Silicon Valley is based on implementing dark patterns and foisting things upon the user that don't actually help them. Being able to work on things that addict and deceive the masses gives a sense of power to a lot of people, and it promises a fair sum of money. I personally refuse to work for companies that use software for nefarious purposes, even if everything they're doing is legal.
- yters 7y agoIronically, doctors have stopped taking the Hippocratic oath...because vowing to not kill people is so outdated now...
- stuartbman 7y agoNo, it's because large parts of the hippocratic oath are outdated and involve refusal to teach medicine to those not in the fraternity, and refusing abortions. In the UK, this has been replaced by Duties of a Doctor, which is much more progressive.
- Tomte 7y agoAlso, the duty to teach your own teacher's son is a bit outdated.
- yters 7y agoI suspect the controversial part of the oath is the following: 'Neither will I administer a poison to anybody when asked to do so, nor will I suggest such a course. Similarly I will not give to a woman a pessary to cause abortion.' Like I said, not killing people is so behind the times :D Of course, perhaps there is a bit of concern people may have when the person holding their life in their hands no longer takes an oath to preserve it, but what did the ancients know?
- JoeAltmaier 7y agoNot doing harm became an empty phrase? Chemotherapy etc do a bit of harm but for a greater good.
- dynamite-ready 7y agoThere are quite a few of these online. https://techcrunch.com/2018/03/14/a-hippocratic-oath-for-artificial-intelligence-practitioners/ https://techcrunch.com/2018/03/14/a-hippocratic-oath-for-art... I think something of the like is definitely needed for software in critical domains. Structural Engineers have to be chartered, right? Software engineers in certain domains should probably be chartered under the exact same conditions. But how would you define who should, and who shouldn't be chartered?
- noneeeed 7y agoThe first company I worked for was a high integrity systems/software firm. Getting your Chartered Engineer (CEng) status was seen as part of your professional development for most of the engineers. It isn't required however. Most of the focus was put on the process being followed (DO178B, IEC 61508, or their equivalents which I've now forgotton) rather than the compentence of specific individuals. It's more of an organisational view of competance rather than focusing on individuals.
- kolbe 7y agoHow's the Hippocratic Oath working out for doctors? One of the most unhealthy things that can happen to me is to be bankrupted, and that seems to be their goal. The last two times I've actually gone to the doctor for an ailment, it's been misdiagnosed, given irrelevant/expensive/harmful treatment, and eventually just went away on its own. I've stopped thinking of doctors as friends, and instead as salespeople preying on people in their most vulnerable state. That oath is just another ruse in the sales process.
- asark 7y ago> I've stopped thinking of doctors as friends, and instead as salespeople preying on people in their most vulnerable state. That oath is just another ruse in the sales process. Same, I basically consider a doctor an adversary until they give me reason to believe otherwise. Probably some of the ones who pass that filter are adversaries, still, and are making me pay for crap I shouldn't need to or directing me to providers who are more expensive to get kickbacks or whatever, they're just better at hiding it. They are, as a profession, failing hard at upholding their oath. The insurance industry may be a uniquely useless part of providing medical care, but they do not deserve all the blame for the massive harm that's being done. Hospitals and doctors are a huge part of it, too. [EDIT] I guess I think of them like mechanics now, actually, in that I figure any time I follow their advice and it causes me to give them money there's about an even chance I'm their mark, not their customer/patient.
- blamestross 7y agoThis seems a bit silly, but I can see room in our culture for an analogue to the Iron Ring. https://en.m.wikipedia.org/wiki/Iron_Ring https://en.m.wikipedia.org/wiki/Iron_Ring
- cmurf 7y agohttps://absn.northeastern.edu/blog/the-history-of-the-hippocratic-oath/ https://absn.northeastern.edu/blog/the-history-of-the-hippoc... "First, do no harm" wasn't included in the original oath. Whereas, "give no deadly medicine to any one if asked" is. I think it's reasonable as a metaphor, but possibly not as an actual guide. Every profession could use an ethical code and statement made by each practitioner, not least of which is an explicit anti-fraud statement. Boy wouldn't that give a lot of people in marketing some difficulty?
- Townley 7y agoI think the reason developers in particular need to be cognizant of this (as opposed to "everyone doing no harm") is because of labor power. There's a societal expectation that everyone provide for their family. If you're doing so through evil means (selling drugs, joining the mafia, sweeping floors as part of a genocidal political movement...) then you're in the moral wrong. But if you're sweeping floors for Goldman Sachs, no one could reasonably blame you for causing the financial crisis. Your contribution to an organization that falls somewhere juuuuust south of neutral is morally justifiable because you've gotta pay the bills. But if you're the kind of developer we're talking about here, your ability to provide for your family is largely taken care of. Your decision to support an organization is no longer rooted in this socially-acceptable "gotta pay the bills" mentality, and instead about providing luxuries. That's also fine, but you now have to reckon with the fact that your contributions aren't in pursuit of helping pay the bills, and internally grapple with the morality of sending your kids to private school vs using your specialized, valuable skills to help modernize your neighborhood community center's tech stack (but at a much lower salary). All people need to grapple with the tension between individual/family-level selfishness and societal well-being. But the relieved, privileged life that higher salaries afford also comes with an added moral obligation to evaluate how we spend our time. Something something spiderman great power great responsibilities.