Programming is an activity whose purpose is to affect other people, which it does through programmed devices. We know from the regular failures of computers, whether in the besetting, daily problems with desktop systems, or from the embarrassing failures of megaprojects, that computers are not automatically beneficial in every way. Programming computers so that they more often have a beneficial impact is not easy, and anyway not always a conscious goal of development. Programming will not get better automatically. Changing the organisations and processes wherein programming takes place must also be encouraged.
Usability is a useful way of being precise about what key problems are.
There are ISO standards. It is clear with this more precise focus, for instance, that users buying idiot's books is a symptom, not a part of the problems. It is clear, for instance, that measuring user performance contributes to making improvements. There is an even stronger connection between programming and ethics. We write a program and other people use it.