I think this is important to remember in our field too. Too often I hear about a user story breaking down because "the user wasn't doing it right".. blaming the user is the wrong way to go -- you just set it up wrong.
I think this is important to remember in our field too. Too often I hear about a user story breaking down because "the user wasn't doing it right".. blaming the user is the wrong way to go -- you just set it up wrong.
Sometimes the user is wrong. If a person drives their car into a lake and drowns, do we say that cars are broken because they allow this? Or do we point to the millions of other drivers out there and say that driving on roads (and not into lakes) is the expected user behaviour?
An extreme example, sure, but I think it also translates to software. Some people criticize vi/vim for being modal because it confuses beginners. They use this as the basis of an argument that vi is a bad way to edit text or that modal interfaces are bad in general. But tons of other people take the time to learn the vi system of modal editing and they love it so much that they write plugins for everything else in an attempt to replicate that experience. Who is wrong here?
You can build powerful systems without confusing people who often never intended to wind up in your program in the first place. You can even build them to show people how to use them.
export EDITOR=/my/fancy/editorIn Windows if you open a new filetype for the first time, it asks you what application you’d like to set as the default type, and on top of that it tells you where to go to change that later. That’s what beginner friendly UX looks like, not just throwing the newborn into the pool like Linux does with Vim editing.
If the "newborn" in 2020 insists on using the terminal instead of the much more beginner friendly options that are the default nowadays... granted, but why compare a terminal editor in unix to a GUI? That is like comparing apples and oranges and then complaining that the strawberries don't taste like bananas.
As an example of how manually configuring the editor flag can be annoying, consider a job where you regularly ssh into many machines, each that just by default use vim. I know how to use vim, I just don't like it, but pretty much every single machine I have booted into always assumes I want to use vim, and even if you remember to change the flag doing it to many machines all the time is majorly annoying.
Cliffs, lakes, and highways often have guardrails, even if millions of cars drive by without going over the lines.
Vim, IMO, is different because it's not meant for consumption by the general public. Vim is a sysadmin tool, in unix-like environments, where the users have a general amount of competency before even encountering it. The whole rat-experiment analogy is more about stories that are public facing.
Users will always find a way to do what they need to do. The challenge is in finding out what they need to do because most of them would rather come up with their own solutions than come to the developers with a fully-specified feature request. I think this is why spreadsheets are so popular. They are never the best tool at any job, but users can bend them a million ways to do what they need to do.
People race trains all the time because they don't want to sit for 120 seconds. The problem is that losing that race means death.
The is especially stupid for the trains cited. "Metrolink" is not some slow cargo train that you will be trapped behind for 15 minutes. A "Metrolink" is about 6 train cars and is generally moving at a decent clip--probably no less than 35mph. You're not going to be waiting long.
LA has a much more significant problem with people walking in front of or committing suicide on the train tracks. Those cases generally far outnumber traffic accidents with the trains.