Friday, April 8, 2022

"...is that how you talk to a nice stranger in real life...?"

"...is that how you talk to a nice stranger in real life...?"

...asked my senior, in the code review meeting. 

It was 2006, I was relatively fresh in the role of a software engineer at Infosys. My job was to analyse production code written for a US based insurance company & find the cause of issue reported & then update the code to fix it. The piece of code I was working on that day needed me to add an end user error message informing the user that they had exceeded their insurance limit.

Every coder would know, most of the code one writes is copied & pasted from some other piece of code. So I found a piece that suited my requirements & pasted it, leaving the error message text about exceeding limits as it was - "You have crossed your limit!".

When my senior read it, she wanted me to think about it. "Make every error message polite & informational. The end user should not feel guilty or offended when they read it. Besides, this is you talking to them. The message you code will be read by thousands of people. Would you want to talk to them in such a dry tone which doesn't even help them?" She asked. We then changed it to "Dear <<user name>>, the amount you are trying to enter in the claim field is higher than the limit of $<<value>> as per your policy. Kindly review the same and reach out to us in case of an issue." 

From then on, I was careful about the error message texts. Even today, when I give requirements to our IT partner, I try to give the possible error messages along with the requirements. If not, then it is during user acceptance testing that I love to check all error messages, because error messages are often critical in guiding the end user. Plus, every interaction the end user has with the technology should be pleasant as your code represents your organization's brand.

The reason this story came to my mind is the error messages shown in the image attached. The first one is an empathetic error message seen on LinkedIn which popped up yesterday when I was trying to perform a search while my network switched. Technically, it wasn't LinkedIn 's code at fault here, yet the coder took the ownership & comforted me with a polite error message. The second one is from an insurance portal. The moment I filled out a form & hit submit, this was the error I got. It almost made me feel like I was caught committing a crime! I shut the webpage after the experience. Bad coding had probably cost them a prospective client. 

This is not limited to just error message language, somewhere the UI of a website, the terms used, the tone of the system generated emails/smses tell a deeper story about the brand - thoroughness, eye for detail & empathy towards their clients. Every page of a website goes through multiple reviews that are done not just by the IT folks but the business folks that own the page, and if all of them are indifferent to the end user, then God save the customer once he/she is acquired.

The devil is in the details.

No comments:

Post a Comment