Integrating social responsibility into core CS
evanpeck.github.io
evanpeck.github.io
Related: this month's issue of Communications of the ACM also has an obvious focus. <https://cacm.acm.org/magazines/2023/5>
Any thoughts on how most ignored the "software engineer" from Google and his thoughts on their AI? [0] I know personally I tended to ignore it and let it get buried. However, in this sort of context I do wonder what would make something like that actually effective in persuading others.
https://www.theguardian.com/technology/2022/jun/12/google-en...
This is among the kinds of protections unions grant industry professionals in other industries.
To me, this is why if you want a more ethically bound software industry, you need regulation, not unionization.
Beware what you wish for, these rules exist to bind and regulate engineers. They are exist so capital holders can feel secure about their return on investment. Unless you want this https://news.ycombinator.com/item?id=35970283 to become reality, better push back attempts to regulate software engineering.
Effective Whistleblowing
Privacy-Preserving Patterns
Ethical SLAs, SLOs, and SLIs
Ethical SRE in the Time of AI
Core Protest Principles
Nonviolent Resistance
Change from Within: Studies in Commerce
Fundamentally, even if we know it to be wrong, and a market exists for it, what is the game-theoretic, optimal strategy? What is the ethical choice?
At my university ethics was a required subject for all engineering students. (And this is long before DEI was a thing). We had a special ethics course with a CS focus and CS TAs. The content included looking at lots of ethical frameworks (eg Kant, rule utilitarianism, etc) and analysing different choices or actions through those lenses. There’s lots of examples from CS history where software (intentionally or otherwise) has caused human suffering or deaths. We talked about them, not prescriptively but to help decide for ourselves what we would want to do if we are ever placed in a similar situation as those engineers.
It’s good stuff.
I’m not sure if it’s a direct result of that course, but I’ve been horrified over the years by some of the opinions I’ve seen here on HN when ethics comes up. Stuff like “well yes lying directly to your customers and chronically underinvesting in information security is unfortunate, but would you really want to risk your job over it? They’d fire you and get someone else!”. Argh yes! Kick up a fuss! You probably won’t lose your job. You will probably get more respect in your organisation, from the right people. In my opinion, you are responsible for the outcomes of your work. As a software engineer on the ground, the computer is literally doing your bidding. Would you personally lie to the face of thousands of your customers? If no, why are ok with telling the computer to do it on your behalf?
We have power in society as engineers. Ethics asks us the question of how we want to wield that power. It’s much deeper question than preachy DEI stuff.
"Both computing departments and tech organizations have long struggled with issues related to diversity, equity, and inclusion."
It looks to me like you're using ethics as the motte.
My goal in talking about ethics isn’t to protect DEI. It’s to have it be subsumed by something which I believe is bigger, broader, more mature and more relevant to engineering work. The study of ethical theory is all of those things.
Concretely, as engineers I think we need to be thinking and talking a lot more about the harm caused to society by security breaches, dark patterns, social media addiction in teens, loneliness and depression amongst the video game community, dystopian pervasive workplace tracking and monitoring, online gambling and I’m sure other problems. This stuff causes real harm.
But what do people campaign for instead? Oh, renaming git’s “master” branch to “main” and changing “blacklist” to “deny list”. And adding trigger warnings all over the place, despite increasing evidence showing it does more harm than good to victims of trauma.
If DEI is important, let’s give people the language and skills to engage in ethical arguments, as people have been doing for thousands of years. An honest, informed debate makes us all smarter. The modern finger wagging moralising that happens with DEI stuff is an embarrassment.
Someone who really understands a topic should be able to argue convincingly for or against their own position. The whole point of the academy is to teach these skills.
[1] https://newdiscourses.com/tftw-diversity/
[2] https://newdiscourses.com/tftw-equity/
We can talk all day about how the history of facial recognition has used things like the eye-nose-mouth T-shape or high-contrast contours to lock in on the target, but if at the end of the day the solution works for people with light skin and not people with dark skin, "HP computers are racist" for every meaningful (i.e. user-experienced) definition of the concept. (reference: https://www.youtube.com/watch?v=t4DT3tQqgRM)
This is why I said this.
The example you gave, where software was trained on people with lighter skin and therefore doesn't produce the intended results on people with darker skin, is noncontroversially racially biased. As in, control for everything but skin color, and the color of someone's skin is actually a parameter that the function "uses" in order to produce its output. For this reason, people tend to agree that this is an actual problem with the program that needs fixing.
For around 20 years, CS departments have been pipelines to "greed is good" careers.
It'll be interesting to see whether it gets genuine traction, and what will have to happen before then.