[HN Gopher] Software Engineering Code (of Ethics)
___________________________________________________________________
Software Engineering Code (of Ethics)
Author : mooreds
Score : 43 points
Date : 2022-09-09 18:22 UTC (4 hours ago)
(HTM) web link (ethics.acm.org)
(TXT) w3m dump (ethics.acm.org)
| fl0ps wrote:
| Love this bit: "Software engineers _shall_ participate in
| lifelong learning regarding the practice of their profession... "
| (emphasis mine)
|
| I can imagine the hilarity that will ensue when that
| 70-something-still-employed Cobol maintainer is asked by some
| newly minted MBA if he or she is actively participating in
| lifelong learning per the ACM SE code of ethics.
| ChrisMarshallNY wrote:
| I'm 60, and am about as "cutting edge" a programmer (for the
| little corner I participate in), as you can get (practically
| and ship-focused).
|
| I learn new stuff, every day.
|
| Now, get off my lawn. I got software to ship.
| kache_ wrote:
| avg_dev wrote:
| I am personally acquainted with some senior citizens who have
| sharp minds and continue to learn and grow (in some cases doing
| original academic research). I hope I continue to learn and
| grow well into my old age
| mooreds wrote:
| My hope is that my personal "retirement" won't mean "no
| longer working for money" but rather "no longer having to
| work for money".
|
| I like what I do and could see doing it (with a more flexible
| schedule) for many many years in the future.
| ChrisMarshallNY wrote:
| _> no longer having to work for money_
|
| I don't get paid a dime, and work harder, each day, than I
| ever have (like _really_ "each day" -My GH Activity Graph
| is solid green, and I don't game it. I like to write Swift
| every single day).
|
| In fact, almost every bit of software that I've shipped
| (personally), in the last fifteen years or so, has been
| unpaid. I was paid to manage other engineers, writing ship
| code.
|
| I _love_ where I am, and have no intention to get back in
| the rat race (sorry).
| avg_dev wrote:
| Hear hear.
|
| On an unrelated side note, I don't post my public twitter
| handle on this account's profile page, but I did on the
| account that bears my real name. Some years ago you
| followed me on twitter and were to date the only person
| from HN to have done so. In gratitude, I followed you back,
| and I have been duly rewarded by your engaging content and
| your explanations of the ins and outs of auth. I
| particularly enjoyed your ELI5 thread on oauth. I have an
| appreciation for DevRel I would not developed had I not
| been reading your tweets.
|
| To come back to the topic at hand: Tech is for the public
| good. Shout it from the rooftops!
| Tostino wrote:
| Got a link to those tweets by any chance?
| mooreds wrote:
| Sure, here you are:
| https://twitter.com/mooreds/status/1557442891441524741
| mooreds wrote:
| Ah, thanks! I appreciate the kind words and the feedback.
| Tweeting is often like screaming into the maw of a
| nameless void, so it's great to hear that you found some
| of what I said useful.
| avg_dev wrote:
| :)
| nathias wrote:
| looks like it's just words that noone employed can take seriously
| amelius wrote:
| Perhaps we need something akin to:
|
| https://en.wikipedia.org/wiki/Hippocratic_Oath
| lostdog wrote:
| Where's the code of ethics for the real decision makers? For
| executives and upper management?
| no-dr-onboard wrote:
| I love that people took the time and effort to draft this, but
| boy am I jaded on the practicality of these things. CoE's are
| inherently utopian and seldom adhered to behind closed doors.
|
| My take is that _at best_ , CoE's are for instilling
| homogeneity by outlining predefined, unquestionable set of
| shibboleth's for the working class. At it's worst, CoE's are
| just CYA measures outlined and enforced to avoid lawsuits. Few
| truly believe.
|
| Most CoE's are also a one-way agreement. When is the last time
| you heard of a Human Resources, DIB, or "Member Working Group"
| called out for not upholding the CoE that they wrote? When is
| the last time you witnessed a CoE violation in the way of bad
| hiring practices (for the sake of "diversity")?
|
| At this point in my career I feel I could give a whole talk
| about CoE violations, form and the whole process of writing the
| code. I won't bore the reader here though.
| blandcoffee wrote:
| I do agree with you on the power dynamics that may plague some
| workplaces today. It feels as though there is a greater burden
| or accountability placed on the lower-level employees more than
| the c-suite.
|
| What do you think if we speak to the value of a code of ethics
| separately from the unfortunate power dynamics some companies
| have chosen?
| kragen wrote:
| I think the code of ethics of the American Bar Association
| prohibits lawyers from accepting a position where they are
| bound to obey non-lawyers. That is, you can have a boss, but
| only if they're another lawyer.
| nradov wrote:
| There are thousands of lawyers who work as internal corporate
| counsel and report to non-lawyer managers. The actual
| prohibition is on sharing legal fees or forming partnerships
| with non-lawyers (although certain exceptions are allowed).
|
| https://www.americanbar.org/groups/professional_responsibili.
| ..
| kragen wrote:
| Interesting, thank you for the correction; the part I was
| referring to is SS5.4(c):
|
| "A lawyer shall not permit a person who recommends,
| employs, or pays the lawyer to render legal services for
| another to direct or regulate the lawyer's professional
| judgment in rendering such legal services."
|
| And SS5.4(d)(3) which sort of says the same thing.
| avg_dev wrote:
| I've never read this before and I'm glad you linked it. I read
| the short version and I really like it. I will peruse the full
| version at my leisure. It is immediately clear that not every
| software company follows these principles.
| tcmart14 wrote:
| We had to read this in one of my Software Engineering classes
| and do assignment on it like showing how we were following the
| code of ethics with the semester project or week project we
| had. It is a good document. Designed to make Software
| Engineering conform to similar standards that other fields of
| Engineering have to abide by, or should be abiding by.
| avg_dev wrote:
| Indeed, and you are touching on a subject I think about
| regularly: I don't know first-hand what most engineering
| disciplines are like, but I believe that much of software
| development is not engineering at all. Instead it is slapdash
| and haphazard. Codebases very frequently grow by accretion
| rather than design as convoluted patches are laid on top of
| already byzantine systems. There is often little forethought;
| rarely is serious consideration given to the maintainability,
| soundness, and security of the work we do, let alone the
| consequences of it to society at large.
|
| I believe that software engineering is possible; I believe
| that I have seen it done and taken part in it. But in
| general, a scrappy, pivoting startup does not embrace
| anything approaching engineering practices. I wish this were
| more accepted and I think we can start by calling it software
| development instead of software engineering.
|
| Our industry is still in its infancy but it has a huge impact
| on society. I would like to see more engineering in the
| industry, but I feel a very short-sighted approach to
| maximizing profit precludes this. I fear that until we have
| more death and more loss incurred by poor development
| practices it will not be the norm to practice true software
| engineering.
|
| Thank you for bringing up this point.
| mooreds wrote:
| Looks like it may be getting the hug of death a bit. Here's a
| cached copy: https://archive.ph/Et6JA
| avg_dev wrote:
| Haha, I saw that as well, I was going to post that I expected a
| bit more from the Association for Computing Machinery (of all
| organizations), but it slowly loaded and I gave them a pass.
| [deleted]
| JoeAltmaier wrote:
| Act consistently with the public interest?
|
| In my experience, any suggestion that it's important to adhere to
| a public specification e.g. FCC rules, is met with complete
| indifference. You do whatever will make your product sell. Those
| rules are for other folks.
| travisgriggs wrote:
| > Software engineers shall act consistently with the public
| interest.
|
| Make that legally binding for the people I work for, and we can
| talk. Until then...
| kragen wrote:
| Most of the harms discussed in here result primarily from
| proprietary software licensing practices, so it is unfortunate
| that no reference is included to something like
| https://www.gnu.org/philosophy/shouldbefree.html.
|
| From my point of view, the only intellectually serious
| investigation of the ethics of software engineering is that
| conducted by the FSF, for example in the essay I linked above.
| That's unfortunate, because I think the FSF's analysis is
| shortsighted in many ways, and software is profoundly important
| to many aspects of human life already, and becoming more so every
| day. It's an area of philosophical inquiry that has been
| seriously neglected.
|
| Nothing in, for example, the ACM's linked code of ethics, even
| attempts to tackle the difficult ethical issues that arise when,
| for example, the law conflicts with the public interest; indeed,
| the ACM's code doesn't even attempt to engage in any sort of
| moral reasoning, simply presenting a series of mutually
| contradictory conclusions without attempting any justification
| for most of them, much less exploring how they play out in
| practice.
|
| Many people will object that both the ACM's principles and the
| FSF's principles are inconsistent with the current state of the
| software industry and indeed the economy in general, and
| therefore it is not practical to follow them. (Probably some will
| silently downvote this comment for the same reason.) But if this
| is true, it does not necessarily mean that the principles are
| bad; it might mean that the state of the economy is bad, and we
| should work to bring it into accordance with whatever principles
| we decide are best.
| jmull wrote:
| IMO the essay you linked to is ethically stunted and not
| particularly serious.
|
| For example, it wants to hold independent the development of
| software and the ownership of software, which is pointless
| since they are not independent. Software doesn't necessarily
| get developed whether or not anyone is paid to do it, and
| people don't necessarily pay for software to be written (or
| anything else) without having some control over the the
| software (or anything else).
|
| It seems nice that software is written that is only for free
| distribution, but it seems dead wrong that those should be the
| only terms under which software is written.
|
| RHS thinks I don't have the right to trade my own time -- _my
| own time_ -- simply because what I do with that time is write
| software.
|
| IMO, it's a fundamental right to be able to come to come to
| terms with another person and there's no special exception
| because written code is part of the exchange.
| kerblang wrote:
| Definitely a good step in the right direction.
|
| For comparison: https://www.nspe.org/resources/ethics/code-ethics
|
| While I think software engineering is vastly different from other
| kinds of engineering, I can't think of a good reason that the
| code of ethics would be any different.
| readenough wrote:
| > I think software engineering is vastly different from other
| kinds of engineering
|
| In that case, it kind of make me wonder if engineering is the
| proper label.
| kerblang wrote:
| Well, I should explain: Software is created in the symbolic
| realm rather than the "physical" one. So, software has little
| to do with physics; and software is all design, no "labor".
|
| So yes you could say "engineering" is the wrong label (and we
| go back to "development"), but it's still interesting that
| _ethically_ they have such similar concerns.
| nradov wrote:
| Software _engineering_ is a small subset of software
| development. Most software development is more akin to
| skilled construction labor than to real engineering. And that
| 's not a bad thing.
| nradov wrote:
| The IEEE also has a code of ethics that can be applied to
| software.
|
| https://www.ieee.org/about/corporate/governance/p7-8.html
| unwise-exe wrote:
| > Engineers shall at all times strive to serve the public
| interest.
|
| > Engineers are encouraged to participate in civic affairs;
| career guidance for youths; and work for the advancement of the
| safety, health, and well-being of their community. > Engineers
| shall not complete, sign, or seal plans and/or specifications
| that are not in conformity with applicable engineering
| standards. If the client or employer insists on such
| unprofessional conduct, they shall notify the proper
| authorities and withdraw from further service on the project. >
| Engineers are encouraged to extend public knowledge and
| appreciation of engineering and its achievements. > Engineers
| are encouraged to adhere to the principles of sustainable
| development1 in order to protect the environment for future
| generations. > Engineers shall continue their professional
| development throughout their careers and should keep current in
| their specialty fields by engaging in professional practice,
| participating in continuing education courses, reading in the
| technical literature, and attending professional meetings and
| seminars.
|
| That's rather different from the ACM's take:
|
| > 1.02. Moderate the interests of the software engineer, the
| employer, the client and the users with the public good.
|
| > 1.03. Approve software only if they have a well-founded
| belief that it is safe, meets specifications, passes
| appropriate tests, and does not diminish quality of life,
| diminish privacy or harm the environment. The ultimate effect
| of the work should be to the public good.
|
| I'd summarize the NSPE list as roughly "follow the rules, know
| your limits, and don't be dishonest (and if you can maybe try
| to spare a bit of time to improve the world)".
|
| And the ACM takes that "if you can" and puts it as the top
| priority.
|
| So, would writing software to manage say a lithium mine "harm
| the environment" or not? Obviously mines themselves aren't
| great for the immediate surroundings, but then lithium is
| rather critical for electric cars which are supposed to be
| helping save the world. Do they really want to mandate that
| someone designing SCADA stuff analyze that and come to a
| defensible conclusion before deciding if they're allowed to
| take a particular employer?
| kerblang wrote:
| In your case of a lithium mine, software would not _add_ any
| harm, and it 's unlikely that the mine would be infeasible
| but for the software. Ideally the software makes the mine
| more efficient (and thus less harmful).
|
| An easier target is just anything that uses up more energy
| than it saves; video games use a lot of energy and give us
| what in return?
|
| At any rate yes it's probably too draconian in its present
| wording.
| JoeMayoBot wrote:
| Ethics are very important because the products we create have
| such powerful consequences. It's common to see engineers so
| excited about the product they've created (myself included) that
| they overlook the additional problems they've created. Recent
| examples are with AI models built with historical data (hiring,
| loans, or other competitive decisions) that discriminates against
| groups of people. An ethical approach would be to include these
| considerations in the data analysis phase. It's not that most
| developers allow this to happen intentionally and having an
| ethical mindset is one of the things we can do to avoid problems.
| tomjen3 wrote:
| >they overlook the additional problems they've created
|
| By making food cheap, we have created a society that suffers
| from obesity. But 100 years ago (and at all times before this,
| excluding a few random lucky individuals) people were suffering
| much, much more from a want of food.
|
| So in a sense, yes, we have created a new problem. But that was
| a consequence of solving an other, bigger and much more
| pressing problem.
|
| So, to be honest, I don't give much for "engineers overlook the
| problems we create".
| [deleted]
| unity1001 wrote:
| > By making food cheap, we have created a society that
| suffers from obesity
|
| That's the US. Its not a problem elsewhere where food is
| abundant. Like in Europe.
| JoeMayoBot wrote:
| My point was that we _should_ consider ethics, even if some
| of us have a natural tendency to only look at the technical
| side of our work.
| Meph504 wrote:
| Ugh this is naive and silly, I'm sorry, we build things, we are
| not the arbiters of public interest, and the public interest is
| not something we as individual should have the authority or
| expectation of judging.
|
| I've always thought the notion of trying to place the morality of
| systems and the software we create in the hands of the builders
| is a farce. That falls on those who have it built.
| agilob wrote:
| > Ugh this is naive and silly, I'm sorry, we build things, we
| are not the arbiters of public interest, and the public
| interest is not something we as individual should have the
| authority or expectation of judging.
|
| Until that time the Volkswagen programmer was put in prison
| before any manager or executive...
| Meph504 wrote:
| Yeah because some creed of ethics would have changed that?
|
| Did they need a code of ethics to know what they was doing
| was shady, no. Would that code of ethics be used in a court
| of law to show that their crime was more egregious had they
| or the industry adopted it, probably.
|
| Will some code of ethics stop management from demanding shady
| things, and will it stop people from doing it, history says
| no.
|
| So what would be the positive aspect of agreeing to this?
| tester756 wrote:
| https://en.wikipedia.org/wiki/Iron_Ring
| redwoolf wrote:
| > Software engineers shall act consistently with the public
| interest.
|
| Guess that excludes everyone at Facebook and Lockheed Martin.
| tomjen3 wrote:
| Lockhead Martin and co is making it possible for the US and the
| free world to help Ukraine smash the murderous, raping war
| criminals of Russia.
|
| Yes, I condemned them for supplying the military that bombed
| weddings and murdered journalists, and I continue to deplore
| that, but I was naive in thinking they weren't necessary and
| that they can't do good things.
| waynesonfire wrote:
| thekashifmalik wrote:
| I'm no fan of Facebook or Lockheed Martin, but that doesn't
| seem fair to me.
| p_l wrote:
| Facebook is another thing entirely, but I would easily
| complain about Lockheed-Martin failing acting in public
| interest when said public interest involves development of
| weapons of war and supporting tools...
| tgv wrote:
| Everybody loves defense, though. As said in another
| comment: it's too vague. When even strict rules can be
| bent, vague rules don't mean anything.
|
| (hit save too early): but that's thinking legally. As an
| inspiration, a way of seeing the world and your work, as a
| moral guide, it can help. And some people really should
| wonder if they have taken the right path.
| p_l wrote:
| See, I didn't say the amoral wrong thing was the defence
| part. But failing at it :V (whether through milking the
| public coffers, doing unethical things to further arms
| sales, etc. - making tools to defend oneself is not that
| morally bad)
| [deleted]
| arsome wrote:
| Seems trivial to argue that free social networks and even
| certain military actions are in the public interest. But that's
| the problem with something like this, it's just vague non-
| sense.
___________________________________________________________________
(page generated 2022-09-09 23:02 UTC)