I can’t count the number of times that I have had trouble with my computer. Often a friend will say something like “Aren’t you a programmer; if you know how computers work, why do you have so much trouble with yours?” This is a very interesting question, for someone who spends every day with computers, my devises are surprisingly more difficult to use than the average computer. For a while restarting my phone would start a bootloader that was extremely difficult to navigate. Right now, starting my desktop requires pressing F12 to launch the boot menu and then navigating to the correctly numbered partition for Windows or Linux. These annoyances would probably drive the average user crazy.
For me these issues take up such a small chunk of my day that they aren’t worth taking the time to fix, especially because there’s a good chance I’ll just want to change it again in the future.
I believe, as a programmer, I have naturally developed an extremely high error tolerance. More than once I have come across a bug for the first time that requires an hour or so research to learn the trivially stupid mistake I made. If I had not been able to develop such a high error tolerance I would have quit computer science years ago.
While in many cases this kind of patience is a great trait, it is important to be aware of the times where it can be detrimental.
I am currently working on designing my first major web application. I just presented it to my boss last week, and he pointed out my biggest mistake. I was applying my error tolerance in the app flow. For example, when a user invited people to join a project, it would redirect the user back to the home screen instead of the project page they came from. Another example is that users can be selected for certain tasks. However I was also displaying users who had not yet filled out their name. Thus many of these choices were blank.
I overlooked these errors that I would probably realize are big mistakes if I spent an extra second thinking about them. Instead I naturally ignore them, since I put up with worse errors everyday.
While error tolerance is sometimes a great trait, with UX design, it is important to forget this skill and not put up with any mistakes.