Here's a good conversation about programmer logic vs user logic I thought was worth sharing with everybody.
This bit of the conversation here is the most important ^^^
If you can't see what's going on in the image, here's another version of the same problem:
Up = Forward
Up and left = forward and left
Up and right = forward and right
Down = Backward
Down and left = back and left
Down and right = back and right
But what about dead right? At 89 degrees it should spin forward+right (clockwise), but at 91 degrees it should spin backward+right (anticlockwise). What happens at 90?
This is the difference between programmer logic and user logic: The programmer will create a list of rules (or be handed a list of rules) and put them into the code as intended. At the end of the process, if the program follows the rules, the programmer considers the job done.
Then the program gets dropped into the hands of user testing or QA. The program may be doing its job in the way it was programmed, and be bug free, but it still isn't "right", because it doesn't "feel right". Technical knowledge out the window, if I do a thing, and I expect something and I get something else, then it "doesn't work."
Programmers sometimes forget that programs are meant to be used by humans. A programmer could make a working mobile phone that's the size of a pea, but if the human can't type on the keypad or see the screen big enough to play animal restaurant, then the whole creation is pointless.
Anyway, thought that might be a nice life lesson for everybody.
We're going to program this anyway and see what happens.
Comments