The Political Nature of Software: Recognizing and Embracing Ethical Responsibility in Tech

DevOpsDays London

Summary:
  • Software is inherently political, influencing power dynamics and who is included or excluded, not in the sense of party politics.
  • Examples like the Post Office Horizon scandal, Tesla's Autopilot incidents, and Optum Health's biased AI demonstrate how flawed software and design choices cause significant real-world harm, including wrongful convictions, fatalities, and systemic discrimination.
  • Ethical responsibility in technology transcends mere compliance; it's an ongoing practice akin to literacy, requiring continuous critical thinking and responsible coding.
  • Developers are urged to adopt a personal "code to code by" based on five principles: actively questioning potential exclusions, integrating diversity into design, advocating for transparency, speaking up against issues, and normalizing ethical reflection within development processes.
  • Every decision in software development, from a single commit to a system deployment, actively shapes the world, highlighting the collective power developers hold to foster more thoughtful and inclusive technological solutions.
    Kestral Gaian presents "CODE IS NEVER NEUTRAL: why all software is political"
    Kestral Gaian presents "CODE IS NEVER NEUTRAL: why all software is political" [ 00:00:10 ]

The Inherent Responsibility of Software [0:00:00]

Real-World Consequences of Unethical Software [0:06:26]

The Post Office Horizon Scandal [0:06:26]

Tesla Autopilot Fatalities [0:09:31]

Optum Health's Biased AI [0:12:20]

Understanding the "Political" in Software [0:14:42]

Personal Experience: Exclusion in Tech [0:18:35]

Beyond Compliance: Cultivating Ethical Literacy [0:23:17]

A Code to Code By: 5 Steps for Ethical Development [0:26:26]

The speaker provides five actionable steps for developers to embed ethical considerations into their daily work:

  1. Ask "Who Does this Exclude?" [0:27:09]
    • Exclusion is subtle; it hides in defaults, edge cases, and seemingly "fine" forms.
    • Explicitly asking this question before shipping or building can open doors for thousands of people. Even if a fix isn't immediately possible, knowing the exclusion is half the battle.
  2. Make Diversity a Feature [0:27:59]
    • Diversity, inclusion, and equality are not just "nice-to-haves" but are critical for building systems that accurately reflect the real world and help catch blind spots.
    • Actively fight for diversity as an integral part of design, not just decoration.
  3. Fight for Transparency [0:28:41]
    • This is especially crucial for AI systems: if a system cannot be explained, it cannot truly be trusted.
    • Demand clarity even when business pressures push for speed. Trust is an invaluable currency that technology cannot afford to lose.
    • Ensure documentation is thorough and avoid "black boxes" in the codebase.
  4. Speak Up [0:29:48]
    • This is the most challenging step because it requires overcoming discomfort, but silence is also a decision that reinforces the status quo.
    • It's not necessary to have all the answers; simply asking the right questions can be enough to initiate change.
  5. Normalize Reflection [0:30:16]
    • Integrate ethical reflection into routine development processes like retrospectives and stand-ups.
    • Ask questions like: "What did this exclude?", "How did we do?", "What went wrong/right?"
    • When reflection becomes a normal practice, responsibility becomes embedded in the team's culture.

Conclusion: Empowering Choice and Collective Impact [0:31:12]