Myself and my esteemed colleague Tom were recently fortunate enough to attend the annual DevWeek conference in Westminster – 3 days of seminars from some of the world’s leading technology experts on the current and emerging trends in software development. 3 days so intense and informative, that there was barely even enough time for the pub at lunchtime (but somehow we managed it).
I was surprised to note the number of sessions this year related to UX design, and having attended one early on in the week, I rapidly threw the personalised agenda which I had spent so much time refining out of the window to accommodate 2 further sessions on what I found an enthralling topic. It is worth clarifying at this point that UI design (the way your software looks, that thing the designers and arty people do), is not the same as UX design (the way it feels and behaves when using it). What made this topic so enthralling was how it is repeatedly and consistently done so badly or even overlooked completely, yet the basic principles are so obvious that it is almost in-excusable. And I include myself in this sweeping generalisation.
For those developers working in the larger software houses, a dedicated person or team with UX skills may be available to advise on such things; we at MSM Software Solved are fortunate enough to be in this position, but typically most development teams won’t have this luxury, particularly if they are enhancing and supporting legacy systems, and anyway why should you need to employ a dedicated resource to teach you something that is so simple? Surely us developers are talented enough to take these things on board from the outset, saving everyone further down the project lifecycle time and money, and increasing the appeal of our system to its intended audience. After all, it’s not rocket science but it’s surprising how these three principles are not always followed:
- Consistency, Consistency, Consistency!Incorporate common patters that you use every day on other websites, for example the hamburger menu, and search box. This enhances the users’ recognition of how to achieve their goal. And don’t develop the pages in your system in isolation, look at what your fellow team members have implemented and ensure you are consistent not only with the world at large, but within your own team! Avoid the user having to learn anything new wherever possible and they will love you for it.
- Feedback, Feedback, Feedback!Always, always give feedback to any and all actions the user performs. Tell them their record has been saved, or the email has been sent, or the record has been deleted. It gives them confidence in the system and increases their emotional attachment with it. Doing nothing is not an option! We like toastr
- Assist the user in getting the job doneDon’t be lazy – do everything you can to speed up the users experience, use type-ahead controls and autocompletes, guess what it is they are searching for and make suggestions, provide a drop down of common email domains when completing email fields. Nobody has enough time to do anything nowadays, and small enhancements in this area will buy you lots of goodwill. There is a return on investment to this extra effort, particularly if your website is public facing and you want to encourage uptake.
One of the most straight forward things you can do before you deploy to QA is conduct what is known as “drunk user testing” – even a drunk person should be able to use your system. Now I’ve always perceived testing to be the most boring job in the world (sorry testers), but this is an area I think I would definitely excel in. My capacity for babychams is after all legendary. Check out http://drunkusertesting.com/.
So arm yourself with these basic skills and make your testers, project managers, and most importantly your users smile, after all making at least one person smile every day should be a goal to which everyone aspires. And then go to the pub.
Want to learn more? Download our guide to making software user-friendly