Sunday, December 6, 2015

Keep it simple stupid: an example from Comcast

I know its been a while since my last blog post, and when I look back at some of my older posts, I see so much I would like to update or correct. But isn't that always the way when we look back on our work? If its from a few years ago or a few months ago, since we are always learning from each task we take on, looking back on any of our work should bring with it insight on how it could be better. I think thats one of the most important and amazing parts of being in this engineering role, being able to look at something (a process, a website, a user interface, a system, a toy, whatever) and see how to improve it. Or at the very least recognize that it could be improved and that there is something not quite right about it.

Lets look at an example of something, that to me, isn't quite right. I happen to be a customer of Comcast or as its also know Xfinity. Aside from any personal experiences with the company you may have, they are a large company and have a large user base. They need to make sure their user interfaces, (the remote, the guide, on demand etc) are clear and simple for all audiences to be able to know exactly what to do on a page right when they land on it. It needs to be out right obvious what the purpose of the page is and to guide the user, making it easy to use and thus creating a good user experience. I've watched them through updates, each time removing some clunkiness from the overall user process, but generally just changing the look and feel. This being said, it is still one of the better TV interfaces I've seen, taking queues from Hulu and Netflix and merging it with their own blend of stuff. It feels like they are making progress but missing some of the small wins that would make it better as a whole, and round off the user experience. 

I want to share one such example that to me says a lot about whats wrong with so many user interfaces out there. In this one example I can see more than a few things 'wrong' but lest see if you agree with me. 

Here is the prompt in Comcast that pops up when you finish watching a recording:


When looking at something, as a user, I should be able to glance and with less than a fraction of a second be able to know where to go next. But, when I first look at this, I see the word 'Delete' in BOTH of the buttons! So instantly I am forced to take an extra second to then read the text and options again. My next thought is why are there more than one word in each button? Couldn't we keep it simple and use just 'Delete' and 'Save'? Instead we are a) confusing the user with delete in each button and b) making the verbiage more complicated than it needs to be. The next issue I see is that the potentially negative action is selected by default. By doing this, if the user miss reads the buttons (and as I have outlined that is a very possible outcome) they may just click on the first selected option assuming that its the action they want because it is highlighted by default. I would think that as an added precaution to the user to have to switch over to the 'Delete' button would be one more affirmation that, YES I do want to delete this. We could go one step further and color the text if we wanted with a red for Delete and some sort of neutral color for Save, but in general just switching these buttons to be single words and not using delete in each text would help immensely.

Such a small change for such a big impact. 

I use this example because I mistakenly deleted a recording while my toddler was distracting me, and it was the recording that he wanted to watch again! After I tempered his tantrum, my first thought was to look for some sort of 'deleted recordings' queue, maybe they would give me a window of time to change my mind and undelete, but alas they do not.. at least not that I could find. But it got me thinking about why it happened, and how it could have been prevented. It also reminds me to keep it simple in my own work, and try to remove this sort of clunkiness from any process I may encounter. I only use this example because of how easily it can be identified with, we have all been there, and how easily it can be translated to all of our own it work. Lets take a lesson from this and continue to strive to bring better interfaces to our end users!