6 ms·
This is a good piece, and it is always good to take to heart lessons of ethics and professional responsibility. Ultimately I don't think the situation from the
by markbnj 11y ago
This is a good piece, and it is always good to take to heart lessons of ethics and professional responsibility. Ultimately I don't think the situation from the practitioner side is much different from that of civil engineers, architects, doctors, etc. We're all trusted to do something beneficial with the arcane skills we have mastered, and at least in the first instance do no harm. I do think that software is unique in its ubiquity and penetration into every corner of life, and it may well be that there has never been a technology relied on by so many while being understood by so few. But the responsibility incurred when you build something that others will rely on is what it has always been.
- niels_olson 11y agoAs a physician and, prior to that, military officer, I have been struck by the fierce non-ethics of many software folks. Strawman, I know, but there it is. I think part of the issue is that software engineering is abstracted from the immediate problem the person in the world is trying to solve, and one engineer may cross many industries in their career. In some sense, that abstract transience inhibits the feeling of duty that, say, a small town cardiologist feels toward his patients. My grandmother's doctor quit medicine after she died of a heart attack. He couldn't stand seeing all his friends die. Conversely, there's an opportunity here to think about methods to pierce the abstraction. Perhaps that is the first order issue for software ethics: pierce the abstraction. Know the user's ethical problems. Know the customer's ethical problems (the therapist may be the user, but the hospital is the customer). I hypothesize that the ethical issues are more obvious at the user's level. Hospital business offices, for instance, are famous for claiming the ethical high ground while ignoring the strain productivity requirements place on their staff. How much of software ethics in healthcare could be boiled down to "making healthcare easier, one less click at a time"? That's where money and abstraction prevents the development of a coherent ethics: why develop ethics when I'm getting paid and will never get sued. No one is going to sue the software house for the hours of delay that accrete 1/2 second at a time. No one is going to sue the IT guy for the hours of delay that accrete on slow networks. No one is going to sue the developer that doesn't bother to anticipate that the PACS system will eventually be called upon to store digital pathology images also (at 10x the storage per image and 10x the number of images). In fact, no one's going to sue the hospital for those things. And the hospital is the customer. So there's definitely no path from the nurse or doctor to the software house. Who cares about the intern wearing running shoes at 2 am trying to keep patients alive in 10 different units on 7 different floors in the 3 different wings of 2 hospitals? Nobody. Similar issues could probably apply to roughnecks in the oil industry watching oil blow into the ocean because there's no button to override power on the valve, home buyers who are just trying to get their kids into a good school district, etc, etc.
- jacquesm 11y agoIt would start with accepting liability for the products we create. And no software company to date has been willing to do that.
- tomjen3 11y agoThat would require one hell of a liability insurance premium and as such would cause software development to stagnate due to all the bullshit it would require.
- jacquesm 11y agoAs I said, it would slow things down tremendously. I realize that and it's a huge problem, we basically get to choose between crap with huge unspecified risks (and those risks compound as systems become more interconnected and larger) and technological stagnation. Neither are desirable. But maybe we're overlooking a possible solution.
- lambdaelite 11y agoMy primary objection to most people calling themselves "software engineers" is that professional engineers are personally and professionally liable for their mistakes. It feels like software engineers want to shirk professional responsibility and ethics, yet gain some sort of ego boost by calling themselves an engineer.
- jimmaswell 11y agoMost software has no need to be held to such high standards. Very rarely is a bug going to actually hurt someone beyond some mild inconvenience. Where it matters, like in space shuttle code, it's done. This whole comment section is entirely overblown.
- deleted 11y ago[deleted]
- Turing_Machine 11y ago
- tomjen3 11y agoA civil engineer can certainly do great harm, but what he does is not exactly magic: you have to calculate the strength of steel, make plans for building a building etc, if he started to take into account earth quakes in New York I might question him. If your field wasn't software engineering, could you describe it? "they sit every day in front of the computer and write colored text". Might as well be magic, then.
- greenyoda 11y ago"if he started to take into account earth quakes in New York I might question him." Earthquakes do occasionally occur in NY: http://earthquake.usgs.gov/earthquakes/states/new_york/history.php http://earthquake.usgs.gov/earthquakes/states/new_york/histo... Even if there's only one earthquake in NY every 50 years, you want to make sure that when one happens, skyscrapers don't collapse and the Indian Point nuclear plant doesn't dump radioactive waste into the Hudson.