logo

drewdevault.com

[mirror] blog and personal website of Drew DeVault git clone https://hacktivis.me/git/mirror/drewdevault.com.git

Try-not-to-make-unlikable-software.md (3048B)


  1. ---
  2. title: I try not to make unlikable software (and features)
  3. date: 2021-05-08
  4. ---
  5. I am writing to you from The Sky. On my flight today, I noticed an example of
  6. "unlikable" software — something I've been increasingly aware of recently
  7. — inspiring me to pull out my laptop and write. On this plane, there are
  8. displays in the back of each seat which provides entertainment for the person
  9. seated one row back. Newer planes no longer include these, given that in
  10. $CURRENTYEAR everyone would just prefer some power for their phone or laptop.
  11. Nevertheless, you can still end up a plane with this design. You can shut the
  12. thing off by repeatedly pressing the "☀️ -" button, though that button is rated
  13. for half the cycles it will have already received by the time you press it.
  14. When the flight safety video is playing, or an announcement is being made,
  15. however, the system will override your brightness preference. This is a fairly
  16. reasonable design choice, added in the name of passenger safety. What's less
  17. reasonable is that the same feature is re-purposed for shoving advertising into your
  18. face a few minutes later. In fact, it spends more time on ads than on safety. A
  19. software engineer sat down and deliberately wrote a "feature" (or anti-feature?)
  20. which they had to have known that the user would not have wanted. The airplane
  21. manufacturer demanded it at the *expense* of the user.[^1][^2]
  22. [^1]: A savvy reader could (correctly) extrapolate this to infer my position on advertising in general.
  23. [^2]: They also got on the PA later on to try and convince passengers to sign up for their airline-themed credit card. This isn't even a budget airline.
  24. I have had many opportunities throughout my career to make similar
  25. anti-features, and I have encountered many other examples of this behavior in
  26. the wild. Many programmers have implemented something which measurably *worsens*
  27. the experience for the user in order to obtain some perceived benefit for the
  28. company they work for. [Dark patterns][0] provides many additional examples, but
  29. this kind of thing is *everywhere*.
  30. [0]: https://www.darkpatterns.org
  31. I find this behavior to be incredibly disrespectful to the user. When I am that
  32. user who is being disrespected, I will generally stop using that software, and
  33. stop supporting any businesses who chose to be disrespectful.[^3] For my part as
  34. a programmer, I *do* respect the user, I find satisfaction in making software
  35. which makes their lives better, and I always have and always will push back
  36. against anyone who demands that I subvert that ethos for their wallet's sake.
  37. You should always aim to make the user's experience more pleasant, not more
  38. unpleasant. We should just be nice to people. That's it: please be nice to
  39. people. Thank you for coming to my Ted talk.
  40. [^3]: Though, to be entirely fair, it is somewhat difficult to "stop using" the mandatory ad viewing session I am being subjected to on this airplane. I could put in earplugs and gouge out my eyes, perhaps. Yes, that seems like a proportionate response.