We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Don’t Make Me Feel Stupid – A. User

00:00

Formal Metadata

Title
Don’t Make Me Feel Stupid – A. User
Title of Series
Number of Parts
133
Author
License
CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
If every developer had read Alan Cooper’s book, ‘The Inmates are Running the Asylum’, we would have a lot less crappy software in the world. Fact! In this UX orientated talk we’ll focus on how anything we design, physical or software, should not cause the user to be made to feel stupid. It’s a simple rule and yet frequently ignored. This will be a subjective look at UX, from poor design in the physical environment, to some of the common pitfalls developers encounter and that can be easily avoided once you consider how the end users will interact with your software. You won’t leave the session being a UX expert (I’m not claiming to be one either) and none of this will bring about world peace, but it sure would improve a lot of people’s lives when they interact with your software.
36
61
Thumbnail
1:11:04
73
107
Software developerComputer-assisted translationRule of inferenceWindowConnected spacePresentation of a groupLaptopContinuum hypothesisJSONXMLUMLComputer animation
Software developerCommutative propertyCartesian coordinate systemCycle (graph theory)CollaborationismNetwork topologyService (economics)Multiplication signSelf-organizationReal numberComputer animation
Mobile WebAndroid (robot)Software developerLine (geometry)WindowBitStructural loadCartesian coordinate systemServer (computing)Graphics tabletShared memoryAndroid (robot)Front and back endsoutputRight angleLaptopComputer animation
Software developerComputer-assisted translationMobile WebAndroid (robot)Tablet computerWindows PhoneLaptopCNNTablet computerWindow2 (number)Android (robot)Axiom of choiceBitGrass (card game)Network topologySoftwareInheritance (object-oriented programming)Real numberType theoryPatch (Unix)Vapor barrierComputer-assisted translationData structureMessage passingPresentation of a groupRevision controlSpherical capExtension (kinesiology)Computer animation
Software developerBounded variationExtension (kinesiology)BitRoundness (object)Covering spaceMultiplicationForcing (mathematics)Message passingAmsterdam Ordnance DatumGame theoryGame controllerWordProgramming paradigmOvalText editorComputer iconTwitterBookmark (World Wide Web)User interfaceSoftware developerPhysical systemMobile appSoftwareDifferent (Kate Ryan album)Bounded variationRevision controlComputer fileSystem callPlanningQuicksortDialectComputer animation
WhiteboardSoftware developerMedical imagingShared memoryTouchscreenWebsiteArithmetic meanWordWhiteboardWritingBounded variationGreen's functionRevision controlSoftwareGraph coloringCodeDifferent (Kate Ryan album)Reading (process)Right angleComputer animation
Software developerAxiom of choiceDifferent (Kate Ryan album)WindowEmailMathematicsData miningCartesian coordinate systemDecision theoryCuboidFunctional (mathematics)Structural loadOperator (mathematics)Computer animation
Software developerAxiom of choiceMenu (computing)InformationMenu (computing)Computer iconBitComputer configurationWindowCartesian coordinate systemInformationType theoryAreaAxiom of choiceCuboidSet (mathematics)NumberDecision theoryMultiplication sign1 (number)Process (computing)Computer animation
Software developerInformation overloadTouchscreenStreaming mediaCycle (graph theory)Flow separationMultiplication signGreatest elementBitEvent horizonLogicComputer animation
InformationSoftware developerDatabaseObject (grammar)Key (cryptography)View (database)Category of beingHeat transferInformationWebsiteMessage passingField (computer science)NumberCodeFront and back endsDressing (medical)PlastikkarteWindowState of matterMultiplication signProjective planeCartesian coordinate systemLie groupRing (mathematics)Term (mathematics)BitData managementAddress spaceBusiness objectComputer fileError message
InformationSoftware developerTerm (mathematics)Multiplication signDesign by contractTwitterRight angleData managementNeuroinformatikMessage passingMoment (mathematics)QuicksortComputer fileMobile appTraffic reportingAbsolute valueEmailInformationProduct (business)Keyboard shortcutLevel (video gaming)WindowRevision controlPoint (geometry)SoftwareProcess (computing)TouchscreenBitSubsetSet (mathematics)Real numberStructural loadWell-formed formulaReading (process)Maxima and minimaNoise (electronics)PiSpacetimeGraphics tabletConvex hullWater vaporComputer animation
InformationSoftware developerAuthenticationStructural loadTwitterDigitizingFilm editingSign (mathematics)InformationIP addressStaff (military)Information securityPoint (geometry)Network topologyAxiom of choiceBus (computing)Information overloadComputer animation
InformationSoftware developerCASE <Informatik>WindowoutputAndroid (robot)Keyboard shortcutInformationTouchscreenPasswordType theoryMathematicsInformation overloadCuboidIRIS-TShift operatorUniform resource locatorComputer virusGraph coloringReal numberNumberComputer animation
InformationSoftware developerKeyboard shortcutForceConsistencyReal numberInformationTouchscreenCartesian coordinate systemSign (mathematics)BitDisk read-and-write headKeyboard shortcutMultiplicationMessage passingAndroid (robot)Office suitePoisson-KlammerLocal ringComputer hardwareWindowFreewarePoint (geometry)EmailCausalityComputer animation
Software developerAndroid (robot)Set (mathematics)Android (robot)Symbol tableMenu (computing)Computer animation
Android (robot)Software developerAndroid (robot)Equaliser (mathematics)Axiom of choiceSymbol tableTouchscreenSet (mathematics)Web 2.0MathematicsGraph (mathematics)Online helpTablet computerBitRevision controlComputer animation
Software developerAndroid (robot)BitEqualiser (mathematics)Set (mathematics)Right angleAndroid (robot)TouchscreenRevision controlMultiplication signMenu (computing)CurvaturePoint (geometry)Process (computing)Computer animation
ConsistencyComputing platformSoftware developerAndroid (robot)Web browserKey (cryptography)Type theoryComputer iconAndroid (robot)Functional (mathematics)Computing platformSet (mathematics)Video gameMenu (computing)Product (business)Interactive televisionConsistencyWeb applicationOperating systemEmailKey (cryptography)Web browserComputer fileElectronic mailing listClient (computing)YouTubeoutputMobile appDefault (computer science)WindowTouchscreenQuicksortLevel (video gaming)Computer fontMobile WebSoftwareWebsiteTrailSoftware testingMusical ensembleTranslation (relic)Symbol tableComa BerenicesGame controllerOnline helpRoyal NavyPhysical lawUniqueness quantificationLogic gateRight angleComputer animation
TouchscreenMotion captureWindows PhoneSoftware developerConsistencyTouchscreenMessage passingWindowSemiconductor memoryProjective planeMotion captureMultiplication signPattern recognitionWeb pageData managementStreaming mediaMathematicsOffice suiteMenu (computing)Key (cryptography)Volume (thermodynamics)System callWordPower (physics)Speech synthesisMobile appComputer hardwareType theoryTwitterBitComputer animation
PlastikkarteSoftware developerTouchscreenSoftwareInteractive televisionSingle-precision floating-point formatRoundness (object)System callRight angleDrop (liquid)WordBitElectronic mailing listRow (database)Physical systemDemosceneDatabaseCodePattern languageComputer fileSequelForm (programming)Physical lawMedical imagingOrder (biology)Different (Kate Ryan album)TwitterMultiplication signPoint (geometry)Address spaceFreewareCodeNormal (geometry)Structural loadStokes' theoremWorkloadWebsiteWeb 2.0File systemProcess (computing)Video gameSoftware developerQuery languageMotion captureType theoryShift operatorCartesian coordinate systemComputer animation
PlastikkarteSoftware developerDecision theoryComputer fontLiquidDecision theoryGoodness of fitRevision controlSoftwareOffice suiteBitFormal languageComputer iconMatching (graph theory)Computer architectureVapor barrierSoftware bugData managementProjective planeRoundness (object)Term (mathematics)Presentation of a groupWeb crawlerFreewareLimit (category theory)Demo (music)WordLocal ringProgrammer (hardware)WebsiteComputing platformBuildingGraphic designMessage passingThomas BayesInformationLaptopPole (complex analysis)Coma BerenicesGraph coloringMobile appComputer animation
Software developerAxiom of choiceInformationConsistencyConvex hullPoint (geometry)Cartesian coordinate systemGodMobile appArithmetic meanInformationShared memoryGraphics tabletWeb pageLine (geometry)Computer iconEmailNeuroinformatikWeb applicationDecision theoryAxiom of choicePlanningWindowUniform resource locatorProcess (computing)Computer configurationVideo gameSimilarity (geometry)Revision controlReal numberAndroid (robot)Staff (military)Computing platformPower (physics)Easter egg <Programm>SoftwareOpen setConfiguration spaceArrow of timeComputer fileoutputComputer animation
Software developerMultiplication signRight angleFigurate numberPresentation of a groupEntire functionGraph coloringTablet computerSocial classComa BerenicesComputer animationLecture/Conference
Software developerComputer animation
Transcript: English(auto-generated)
I think we will get started. Obviously, this is a talk about crafting with cat hair. You can collect your cat hair and make it into various craft items. This was meant to be a talk about front-end, about ReactJS and things. It's not a talk about that because unfortunately the speaker had to drop out.
So this is a talk I have given in NDC Oslo. So it's a talk about user experience. It's a talk about not making users feel stupid, which is a phrase I got from Alan Cooper's book The Inmates Are Taking Over the Asylum.
It's also the first talk where I've ever given a presentation using Continuum off a Windows 10 mobile phone. So it drops out halfway through because of the Wi-Fi connection. I'll go back to the laptop, but hopefully it'll last an hour, and you can go, ooh, I've seen Continuum. And that's about the one use of it you ever can think would be useful.
But yes. So who am I? Well, I'm an application architect at a company called Huddle. We do a document collaboration service so that people can share documents both inside their organization and outside their organization and make it easy to use.
I cycle to work. So last year, that bike did four and a half thousand miles, getting me to and from work, which given I only drive six and a half thousand miles isn't too bad in the car. Something like 7,000 kilometers for anyone in real money, which means I don't need the gym. And then if I do do extra exercise,
it's my children dragging me on treetop walks and scurrying the crap out of me in my leisure time. But more relevant, when I'm at Huddle, I'm an application architect. What do I do? I help the iPhone, the iOS team, the Android team, and the guys who do our desktop client, which is both Windows and OS X,
to design their software and make sure it works with our backend servers, share crucial bits of infrastructure, and hopefully get the UX right as well, working with the design team. I also own too many devices. I would normally bring a load. I do have down here my iPad mini.
See, I knew it was gonna go halfway through. That's what happens when you rely on new tech. That's it. Switch to the laptop, it'll work. So I own too many devices, frankly.
Come on. PowerPoint. Yes, so I own far too many devices. I've got Windows phones, I've had Android phones from when they were cheap enough that I could just keep buying them as second type phones.
Tablets, laptops, everything. It's really irritating for all my children who get annoyed how much stuff I have. As well as a cat picture, which you've already seen, you've always gotta have a bit of poetry in a presentation, so this is a bit of poetry. Was anyone at Kevlin Henny's talk about trees
and tree structures, near the day, yesterday? He talked about a path in his parents' garden and how does the user experience of a path in a park, well, though they built pathways and put tarmac down and paving, everyone walks across the grass and there's this patch of grass. This is why I decided to go for this quote.
I have two roads diverged in wood and I took the one less traveled by. Because here in Cubo Botanic Gardens in London, here's the path that everyone made. This is under the treetop walkway. There's real paths just behind this tree and they've even put up a barrier saying
you're not meant to walk here and yet everyone walks there. So this is your software being used in a different way to you expected. So, you know, is that really the path, not the path you're looking for? Well, to some extent it might be,
it just might be the path that Kew Gardens wants you to use. Possibly they should build a path here, so you go, our users are doing this, I think we need this feature. But that's not necessarily true. Maybe you should improve the path you wanted them to take and not force them a long way round. No one wants to use that path, it's covered in mud.
If you made a better path and an easier way of doing something, they'd probably use that and that'd be a bit more successful. So one of the things about UX is I think that multiple paths are okay. Nothing wrong with multiple paths in an app. Have a think about Microsoft Word, just as an example.
You can print from Microsoft Word. How do you print? Control P. Anyone else use Control P or do they use something else? Control P, but there's a printer icon. No one hit the printer icon. No one go, is anyone old enough that they go alt F P because they remember the keystroke
that you used to have to do to do the file menu? There's at least three ways of getting to that printer dialogue. And they're for different users. This is different personas who might use your software. So it's always good to consider who's using your software. And if you don't build it, be really ready for users to try and build it.
So original version of Twitter, there was no retweet. So users put the word RT in front of a tweet that they wanted to retweet. In fact, you can probably tell the age of a Twitter user but they still put RT in front of a tweet. Because no one in the modern world does that.
So that's how they did it. So the users of Twitter created their own syntax for doing things like retweets or favorites or mentions and could do things like that. And they will do that with your software because you may not have thought of everything that people want to do.
And users don't think like developers. I hate to tell you this. They don't all think like developers. They don't all know instantly about all the latest user interface paradigms and iconography and things like that. Even if it's a developer tool, have you met developers who will all agree on which is the best text editor?
Mm, not really. I can get at least five text editors that they will die fighting for as being the best text editor. So you've gotta think about who the most important people are who are using your software, how they're gonna use it. They may use it completely differently. So the example in Alan Cooper's book, The Inmates Taking Over the Asylum, was a playing system, a playing entertainment system.
If you have an 80-year-old trying to use it and watch a movie, that's different from the 12-year-old who wants to play games on it and is quite happy scrubbing movies backwards and forwards and doing video on demand. Whereas the chances are an 80-year-old just wants to play the movie and listen to it and that's it. So they might want more simple controls.
And you get regional variations. So what's an example of a regional variation? In the UK, anyone know about creme eggs? Creme eggs are these little chocolate eggs and inside it's kind of got white and yellow gloopy sugary thing
and it's meant to look like a creme egg. They have them at Easter. And they call them scream eggs in Halloween. They give them a green middle. There was a complete outrage because they changed the chocolate to be U.S. chocolate instead of UK-style chocolate.
It was so important it was mentioned in a debate in Parliament. So you can go onto the web and look at the debates in Parliament and there will be discussion about the chocolate being used in creme eggs. Now that's a silly one. This week, the Chinese stock markets have been going a bit funny in last week.
What's that board showing, do you think? Right, that's share prices going up in China. If you look back about six months, this is the image everyone put on their websites and news sites about share prices going down
because in every other country, red means the share price has lost money and green would mean it's going up. In China, green means it's going down and red means it's going up because red is the lucky color in China. So you've got to be ready for those regional variations in your code. If you ship internationally, that's a complete regional variation that's unexpected.
We all know if you've ever developed software for the European market, you pretty much want to go for German or Dutch for the longest words you can possibly fit on a screen. So if you're gonna do a button, German's a good one because they add words together and together and together and you get this really long word on the button
and it will probably break the English version that you've written. So I say embrace the different paths. If people are using horses to go across at Hyde Park Corner, put a light for the horses. They've even put a button up here so that if you're on horseback, you can press the button to cross the road.
It's quite cool. It's not a surprise it's next to the Buckingham Palace and the Horse Guards cavalry. So let's have a look at something else. So that's different paths. How about pointless choices? Right, now Microsoft Outlook
is a mine of terrible UI, let's be honest. It's quite a complicated application. It's got loads of functions. If you are editing an email and you quit Outlook, you get this dialogue because they'd like you to know that you've got unsaved changes.
So this is not a bad idea, you know? Yes, save the changes, whatever you were working on. Chances are it's in front of you. Maybe it's in front of you, the email, and you've got a yes. No, throw the changes away, that's fine. Cancel, cancel's what most people would probably hit because they want to see what it was
they might have edited and make a sensible decision on what they were about to do. The only problem is when I close down Windows and I've got an unedited email in it, I get this dialogue box after it's shut down the main Outlook window
and you can't hit cancel because if you hit cancel, it comes up again. If you hit cancel, it comes up again. If you hit cancel, it comes up again because you can't go back to the Outlook window because it's not there anymore. So you now have no way of making a sensible decision. You've given someone a completely pointless choice. All they can do is panic and say yes because they're not sure what the hell they were editing
and maybe we should just save stuff. So yeah, so that closing dialogue is a horrible, horrible thing. It looked sensible but no one tested it when you closed the entire Windows down. So I think, personally, maybe they should just save
everything you haven't saved as drafts when you're out in Outlook again. It says hey, there were all these things you didn't save and restore them. Wouldn't that be a sensible way of dealing with it instead of a dialogue box that you can't make a decision on? And it's those kind of things that really kind of annoy people. One of the other ones, cash machines.
Anyone used an ATM in the old days where you got a menu of how much money you could take and you chose 30 quid or 50 quid or euros and it said, no, there's no 10 pound notes. No, no, type in a amount that doesn't have 10. It knew there were no 10 pound notes and it didn't care, right? It gave you a set of menu options
it knew you couldn't pick and still let you do it and made you feel stupid. So one of the things is don't make users feel stupid by giving them things that when they press it says no, you can't do that, don't be an idiot. Because you knew that. So that's pointless choices. So one of the other areas we get in our applications
is too much information and we are in a fire hose information age where you get splurged with so much information it's unbelievable. This is a Nexus 9 which I don't use as much as I should so it's left in the drawer for a few days and I pull it out and I get it out to test a bit of the Huddle application
and I look at the top notification bar and there must be something really important going on because look at the number of icons I've got up there. What it actually is is calendar reminders from Outlook. It's a bit naughty, it puts the most separate events in the notification stream which it shouldn't,
it should bunch them together. And then when I look at them I get this. There is no way to clear all my notifications on that screen. I can either pick one off at a time and you just go swipe, swipe and move along or I have to scroll all the way to the bottom
to find this little thing just here that clears them all, not a clear at the top. And the reason I suspect the reason the developer kind of thought like this said, notifications are important, you should be forced to read them all before you get rid of them.
Because that's, you know, they must be important, they're a notification, therefore we shouldn't allow you to clear them without seeing them. That kind of makes logic to you've got 100 reminders and now it's an absolute pain in the backside because you're never gonna read them all. So that's too much information just overloading and then there's the, you know,
showing people your underwear inside the code. This is a Windows Phone file manager. It's a kind of hobby project probably from Microsoft Research so it was written by someone over summer. They didn't actually write a proper one originally. And when you go back to it on the phone it actually comes up with restoring view state
because users want to know there's a view state behind their application. They can't just say resuming. Someone has actually put the exact technical terminology for what it's about to do, restoring view state. This, has anyone ever hired the bicycles in London where you put a little key in and you go riding on them for half an hour?
This is the website. This happened not just on mobile, this is actually a proper full website. It just happens to be on a mobile device. And I was trying to update it so that I could just put a key in and it would automatically take two pounds a day off my credit card. And every time I tried to enable the feature I got this message.
I got told that there was a problem updating my details because of a SOAP error encoding problem. My object didn't have a province property. What's an end user being given a message like that for? A nice friendly message with a reference number and telling someone to call someone
and maybe they would then know what that message was. The interesting bit is that helped me solve it because what had happened is they used to only allow UK people to hire bikes and then they allowed people outside the UK to hire bikes and they added fields to the database. And when they added fields to the database
they made them not null when you save it. So if I tried to enable my bike key for daily use it couldn't save the domain object at the backend I suspect because there were null fields in the province property. But it was okay because all I had to do was go to my address and hit save without changing anything and it put blanks in the province property.
Because whoever designed the database decided to enforce a not null but forget to actually transfer all the old data over. So too much information, I think we've gotta be really careful with too much information. We really mustn't spam people. Has anyone got an app on their phone
that they've finally gone, I don't want notifications from you because you tell me about all sorts of crap? Yeah, right. The moment you do that you're missing supposedly important things. And that's the point. If you give them too much information, too many notifications, they'll eventually just switch you off completely
and then you will lose them as a customer. Because one of the things you want on a mobile device is to kind of engage people and get them back using your product. So you want notifications but you want them at just the level where they're helpful but not annoying. So it's really important we don't do that.
Too many confirmation dialogues also trigger auto acceptance. This is a known thing in UX. If you keep saying to people, are you sure you want to delete it? Are you sure you want to delete it? They will eventually hit yes every time, including the time they weren't sure they wanted to delete it but they're so used to hitting yes, they're just gonna hit yes. Anyone seen the Simpsons episode with a little nodding duck hitting Y
on the keyboard all the time because that's all he ever did at work and then the nuclear power plant blew up? That kind of thing. So it's not a good idea to make people think too much because what you're doing is stopping what their real work is, their real business work is, to make them think hard about what they're trying to do.
And half the time you can work it out yourself. And just be careful with that geeky terminology. It's really easy for us to say, yeah, people understand these technical terms now. It's fine, it's fine. They should understand when in a modern age, they understand. Who has bought a house or rented a flat
or had a contract where they had to read a legal document from a lawyer? Did you enjoy the terms they used? Because that's what you're doing to people. You're forcing legal technical terms like a lawyer would at you and you hate reading those contracts as a normal, oh God, why do they write in this drivel? Why can't they just say I'm buying a house and things?
Or this contract for this job is gonna be six months long and has loads of clauses in it and everything. And that's what we do with our geeky terminology. And it works, just the other day we're designing an API that will download a CSV file of all the members who have got access to a workspace in Huddle.
So that a manager or the HR department can work out who's using the product, who can access which files, all that kind of thing, and who's the company managers. So the point about CSV files is they're a kind of human readable version of your data. It's not a set of JSON that you're gonna import into another bit of software.
So the chances are with a CSV, people are gonna open it in Excel, they're gonna start working on it. In the middle of the spec that was written was an is company manager column where the value would be true or false in the CSV. And they just went, maybe yes or no.
And they went, no, everyone knows true or false. Not when they're reading it in an Excel in a HR department. What will probably happen is they'll write a formula to convert true or false into yes and no so they can have nice reports. Why don't you export it as yes and no? Because believe me, someone who can program a computer who can download that CSV in Python or PHP
or anything will be able to translate yes or no into true or false. It's much harder to go the other way for humans. So the too much information can be solved. The iPad solves it. It has badging. So I can see now on that iPad mini that I've got four Twitter messages or notifications.
My Outlook is full of absolute drivel and I've got even more stuff down in the mail. So that supports badging. If you go to Windows Phone, I think they do a much better job of kind of badging. Still looks a bit like this in Windows 10. Now I can really see what's happening. This screen gives me a huge amount of information
with a minimal amount of noise, I think. I can see I've got emails and texts. I can even see that my other half is one of the people who sent me something up there. So that's kind of more important than just this 500 emails. I can actually see she sent me an email. And even when it's locked on Windows Phones,
they can show you this on the glance screen and I can see what's happening all the time. So you can solve this kind of thing. It is doable. This, by the way, is the bus stop outside my house telling me what IP address it's trying to use when it rebooted.
So it's interesting, there's a load of people at the bus stop to find out what IP address you're in. I kind of tweeted this and it became one of the most retweeted things I'd ever put on Twitter. And one of the things that picked up, some people went, God, security. You're actually just starting to leak out what IP addresses that might be using. And it's only the last three digits, so maybe okay.
But there was about 20% of people said, I can't believe that sign. They're still using IPv4, not v6. And that was what they were concerned about. So they're missing the point. So the other thing you can have, we've got too much information overload
and we've got too much information being geeky. You can also have too little information. Now, this is iOS 8 on a phone. One of these gives you a capital letter if you press the keyboard. Anyone know which?
The left one. Well, if you're used to Apple devices a lot, you'll know it's the left one. It's really obvious, because obviously, if that's white, you get uppercase, but if it's gray, you get lowercase, clearly. Interestingly, with my advice, upgrade to iOS 9,
it changes the keyboard like Android does, like Windows Phone does, like Windows does, like anything would that does a soft keyboard. It actually goes into lowercase on the keyboard so you know what you're typing. That's, by the way, horrendous in a password box that you're not sure what case you're typing in a password that's case-sensitive and you're trying to type it in on your iPhone.
I believe, someone said it was a lawsuit, which I don't believe, and they said BlackBerry was gonna sue them for a patent that on-screen it would change the letters. I can't find any evidence of that. Neither can I find any evidence of my supposition, is the reason they did it was, in those days,
remember how everything in iOS had to be skeuomorphic? So there was a design mantra. We're gonna have things look like the real world. Someone said, I reckon, in the real world, my keyboard on my desk doesn't change the capitalization of the letters when I hit shift, so we're not gonna do it on the keyboard on screen.
To be honest, it used to be more obvious. The coloring was more obvious, but when they went to a flattened design, it became really hard for someone who switches between devices to understand what the hell's going on. So, too little information. My recommendation is upgrade to iOS 9 and have a proper keyboard,
but it should have had ages ago. That stupid Outlook dialog, which does not give you enough information to make a decision on whether you should hit yes or no or when you close down Windows, because it doesn't even tell you it's an email you've left open or an appointment you've left open, and it could have done that.
And the point is that too little information is gonna cause people to have to navigate further in your application. It makes people have to think, they have to cancel, go back, try and work out why they got told this. So, if you can help them in any way, it'll be good. So, that's information. Multiple paths for an application.
We've got too little information, too much information. The other thing we'd like to be in our applications, I think we'd like to be, is we'd like to be consistent. We'd like the users to find when they go to a second screen or this screen, it looks fairly similar and we're using the same kind of metaphors. So, I was at a conference in Leeds,
a developer conference, free one at the weekend, and I was in, to avoid Sue, any lawsuits, I was in an Aloft Premier Travel in Travel Lodge Holiday Inn thing, and I went into the lift, and there's a sign on the lift, standard thing, telling you where all the rooms are,
where all the things are, and right next to it is the buttons that you press, and the button on the lift is a zero, and the sign says G. So, because of that, they had to then add a little note on the sign, saying that if you want to go to the G floor,
press the zero button on the lift. They didn't even put the zero in brackets over here, which they could have done. So, basically, there's a hardware problem, the lift manufacturer put a zero on instead of a G. That's hard to change, probably, because lift manufacturers are kind of real people
with real bits of things on shelves and have to come and fit it. They could have just printed zero on the sign, but no doubt someone at head office says, we're never gonna use zero, we always have ground, and so they have to put an explanation, and the really nasty bit, obviously, is they now have a localization problem because you've got to understand English
to understand that message. So, the assumption is everyone can read English. So, we have similar things happened in Android. If anyone was using very early Android phones, they had real buttons down here.
They even had a button with menu written on it that you clicked to get the menu instead of a little home symbol. So, if you wanted to get to the settings on your Android in the old days, you hit the menu button, and there was a settings cog just down here. Now, the nice thing about Android, obviously, is it gets updated regularly.
If you're lucky, your phone manufacturer probably allows you one update, maybe two. If you're really lucky, you get three, but that's unusual, and the nice thing about every Android update, it comes in over the air, and when you turn it on, it completely changes everything you were previously used to without telling you what they've done. You'd have to go to the web to find out
because there's no help screen. There's nothing that says, hey, we did this, did that, changed this over here. So, I go to Android. I get my next handset, and I go, well, I'll go to settings now. There's no physical buttons anymore, but there is that kind of home button on the bottom, but that doesn't really do it, but you find out that you can drag from the top of the screen on this one,
and then you get this. They decided that the cog wasn't a kind of setting symbol. They'll go for a graphic equalizer, which is an odd choice because no one really uses graphic equalizers anymore. You have to be of a certain age to have had graphic equalizers on your hi-fi at home
and gone, oh, look, I can make it sound really bassy or tinny and whatever, and you had to hit that to get this screen, and then you have to hit it again to get to the real settings screen, which has everything in it. So, that's fine. I've learned that. I've gone from one phone to the next, and that's fine. I can cope with that.
So, I then get a Nexus 7. It's a tablet, but it's Android. It's the next version of Android, so you swipe down the middle, nothing. Nothing, a bit of the notifications comes up, but nothing else. So, you go, right, okay. Oh, yeah, of course, you only swipe down from the top right third of the screen where the time is.
That's how you get to the settings menu, and when you do that, you get this. It's a cog. They've given up on the equalizer. Why? No, that was a mistake. We'll just roll back. Cogs, cogs are it. So, you hit cogs, and you get into the settings menu, and then you get your Nexus 9, which is all lovely, flat from material design,
and you go, well, I know I've got to swipe from the, oh, no, I can swipe anywhere from the top again. It now opens notifications. Now, if I swipe again or hit the top, then it opens an extra little bar that now has this little settings cog up here, and I can get to my settings.
At no point when they changed from one version of the OS to the other did they ever tell you what they did, how they moved the settings, how to find it, how they'd gone and moved everything. There's a book called Who Moved My Cheese about businesses who change processes and frighten the crap out of people who work in businesses.
This is software doing Who Moved My Cheese. You have no idea where the developer went with it. And I'm always amazed, because that got through user design, testing, who just, hmm, unbelievable. So, yeah, so a hotel lift. Naught on the button, G on the notice.
We now need translations. Possibly. Android settings is a classic Who Moved My Cheese, and changing symbols and things. Right, what does Control-F do in any app? Find. What does it do in Outlook? Anyone know what it does in an Outlook email if you hit Control-F?
It forwards the email. It doesn't do find. No, find, people don't use Control-F to do find. You know that. They use it to forward emails. You have to use F4 or something. There's an F function key that does find if you don't wanna do it off the menu. Google, there was one user who wanted Control-F to forward it,
and he was important enough that they changed it. If you Google it, you'll find Bill Gates replied to it, saying, my old mail client used Control-F for forward. It does find. Can we put it back to being forward? So it's the only app in the world that doesn't do bloody find on Control-F.
And they still haven't fixed it. However, you're kind of going, yeah, but that's old. It's a very old product. Bill Gates is quite an old commudgen, you know, so life moves on. Anyone trap accelerator keys in browsers in their web apps? So has anyone done a web app where you have fast keys to do things?
Or has used a web app where you can hit S for save and you can press Escape to cancel out and things like that? No. If anyone uses Alt-F to get to the file menu in a browser, then if they're watching YouTube in that browser and they hit Alt-F to get to the file menu,
YouTube goes full screen and nicks the keystroke. Because they didn't think, oh, someone might actually want to be using that for something else. So they could have checked the modifier key, they could have done all sorts of things to check what was actually happening with that F, but no, they went full screen and stole it. And have a go, it's really irritating if you still use menus.
So that's kind of consistencies in a base level just in your software. You also have the kind of things with mobile devices and even with the desktop OS's between Windows and OS X. Consistency of should your app look like your app
on all platforms or should it kind of blend itself into the ecosystem that that phone is on or that device uses. This app doesn't exist anymore, it was Outlook.com, it was Microsoft's Outlook client before they bought in an Outlook client and then used that as a default one on Android and iOS.
So this is Outlook on an Android device. It doesn't look like Outlook on an Android device because they've got Windows Phone icons here, a Windows Phone style menu, they've used Windows Phone fonts and they've even used Windows Phone type icons
for everything. I don't believe Outlook is big enough to say to Android, I'm not gonna use how you do all your other apps, we're gonna have our own unique design. However, this may be subjective, Spotify, this is Spotify on Android,
the one thing you can say about this is it looks like it's written on iOS. All these lozenges are iOS based, but Spotify is big enough, if you look at it on Windows Phone or Windows 10, it looks like that as well. So Spotify, and I think they're right, have concluded it's okay to have one UI
across all their products. Then you get a consistent user experience, but the consistent user experience is on a very small bit of functionality. It's finding tracks, creating playlists, playing music. Outlook.com has a lot more interaction and possibilities with it, so by breaking with it and having folder lists that don't look like folder lists from Android
and you can't scroll them like an Android scrolling list, that's a bad idea in my book and it's using wrong fonts, whereas Spotify, you can live with it. That's actually not a bad idea because then all your help, all your support could be quite the same because it all looks about the same and it all makes sense and no one needs to learn anything new.
With consistency, you can surprise the user, which is nice. Windows Phone, because they got rid of the Windows key being on a hardware on the front of the phone, they changed how you could capture a screen because you used to hold the Windows key and the volume down button. So what they did was every time you hit
the old keystroke, it comes up with this to tell you what the new one is. When I tried to screen capture this, it was about six months into them having changed it, I couldn't even remember what the old keystroke was and it took me, I had to Google how to make it do this message because it had taught me the muscle memory of oh no, it's now always power and volume down.
So things like that are quite nice. If anyone changes things in their app, a three or four page onboarding screen, which you see all the time in mobile apps where they go, there's a new feature, it's over here or we've moved this, it's no longer in this menu, it's over here with a few graphics, just gets people to understand that you've changed something,
where to find it and helps them out. Another example, voice recognition on this one, is Siri versus Cortana. So one of the really irritating bits with Windows phones is if you lean on the search button long enough, it goes into Cortana and then it goes and says,
I didn't hear what you said and it does it in the middle of the office and everyone laughs at you because your phone's talking to you and you didn't mean to do it. So my project manager, who has an iOS, fired up Siri, took him four goes to get the message sent, didn't recognize his voice, unbelievably, and he said, you should have bought an iPhone. So that's what he sent me as a text.
So immediately I went into Cortana and replied, piss off. Cortana puts asterisks in swear words. If you do speech recognition on text messages in Cortana and swear like a trooper, somewhere on my Twitter stream of Wesley L,
you can find one that Mark Rendell did, of which only the word mother hasn't been asterisked out at the whole message, and there's asterisks everywhere. This is a great drunk filter because you know you can type it in if you really want to say it, but the fact that it's done it is probably not a bad idea. Maybe you didn't really want to swear in a text message.
So that's quite funny and I didn't even know it was gonna do that. So there's other ways you can surprise users in user interaction. Everyone must have had a kind of search form or something with low and high dates. Have you ever had users put the dates in the wrong way round?
Yeah, no? So one of the examples that I had was you put the dates in, you hit search, nothing came back, we think the database is broken. Oh no, the search dates are the wrong way round because the guy who programmed it decided to put the end date at the top and the start date underneath and then just pumped it into a SQL query
that said between these two dates, which are completely mutually exclusive so it will never find any records. So one of the things you can do and one of the things a lot of people do is swap the dates round because there's no way a person meant to have the dates that way round, so just swap them and do the search. So that kind of thing is really nice for users.
You could even tell them on the screen, by the way, the dates are the wrong way round. Now, what you might do is the dates are the wrong way round, type them in again. Yeah, that's a bit crap because if you know the wrong way round, why don't you just put them in the right way round and then do the search? Unless you're doing a delete, then I'd probably put the dates are the wrong way round,
what did you mean to do rather than delete a load of records which may be the wrong thing to do completely. So be smart about it but help them. If you think the dates are the wrong way round, flip them round, do the search anyway, and tell them that you swapped the dates to make it work. That's not a bad idea. And one of the things in an NHS system for booking doctors, so doctors had shift patterns
of one week or two weeks or three weeks and they start on different days. And so they'd put in a start date and an end date for filling the diary up with a load of blank appointments which are first referral, follow-up appointments, all that kind of thing, so they balanced their workload.
And what we did was, if they put the wrong date in, there wasn't a Monday, we moved it to nearest Monday. If they put a date in that wasn't a full three week or two week for that doctor, we'd move that date and then we'd tell them, by the way, we've adjusted the start date to this, we've adjusted the end date for this, is this what you meant to do? And if they hit yes, it copied the diary in.
People were amazed at how useful that was. Given previously, they were having to look upon calendars to try and get the exact dates right and work out exactly what it was and they weren't quite sure. So I like things like that. Another one, I've done a ticketing system for a TV company for going to TV recordings.
And they get phone calls from a customer who wants to, and they're trying to search for them, and they ask for their postcode and surname in order to find them out, their zip code, if you're from America, and just to find out who they are in the system. And what we did was, if it found one person,
it would go straight to that person's details, full details of the whole address. If it found no one, it would go to a new user entry screen where they could fill in the zip codes already filled, the data that entered's already filled and they could fill in the rest. And if it found more than one, it did a list. So depending on what it found, it did a different UI for all the three paths of adding a customer
who isn't in yet, finding a single customer who's already in and you've uniquely identified, or finding a list of customers and trying to pick the right one. And things like that, those little surprises for users, is where your software makes the difference to people's lives, right? Because they don't really like using software
in normal businesses, developers like it. Developers like fighting software and working out funny tweaks and how to make it work. But you're just something in the way of doing the job. So this kind of thing is really good. Outlook 2016, I went to it, I'd got a screen capture
that I wanted to send to someone. So I'd screen captured, snipped it, resized it, done a little red squiggle on it to show the problem with the screenshot, went into Outlook, hit attach to find it, where to browse to the file system. Outlook 2016 shows you on a drop down the last 10 files you've just edited in any application.
And guess what, that's the image I wanted to attach. So I clicked attach, went click, send, done. And you went, how has it not done that for years? Right, how have we got to the point where when we do attach, it throws you into a file system dialogue to find the file when it knew the last 10 files you've been editing
and it has done for about 10 years. So whoever put that in, unbelievable, fantastic piece of work to just make my life smoother and easier and guess what I'm doing next. And what we don't want to do is a bad surprise for the user. Is anyone, everyone books airline flights.
So you book airline flights and they're pretty much, you might spot that a lot of the websites look pretty much the same because there's one company that supplies about two thirds of the airlines with all their web software and booking and all that kind of thing and all the tickets. Right, there's a bit of a problem
with one of the forms on it. And I thought I might have been dumb, you know, because it's quite easy to make these kind of mistakes. So I was booking a trip to Seattle and I was booking it in February. So I was booking it from something like the 21st of February to the 28th of February, something like that. And I was coming back on Saturday the 28th
and I went through the form. I went, put the start date, end date. I don't book a lot of flights. I'm always really careful and try and double check it all because it's a lot of money, you know, 700 pounds and I don't normally do this and I only have two flights a year. It's not like I'm a business traveler. So it worries me more. So I'm checking it all, I sent it all off.
And I said to a fellow colleague who I was going to Seattle with and I said, yeah, I'm on the seven o'clock on Saturday the 28th. And he went, you mean the six o'clock flight? I goes, no, the seven o'clock. He goes, there isn't a flight at seven. I'm sure there isn't, I'm on six. I go, let's have a look. No, it is a six o'clock flight.
Unless it's the 28th of March and the clocks have gone back or forward, the clocks have gone forward and then it's a different time departing Seattle because America's got a different time switch to the UK and they're slightly out. What I'd done is accidentally, because there's 28 days in February in that year, had rolled over to March and not spotted the fact
that it had gone to the next month. And you think, I'm an idiot. That's me, that's me, completely me. On the 20th of February, we're checking out the hotel and we're getting ready to go to the airport and there was someone else who'd come over from the UK who was there and we said, yeah, we're getting the BA flight, it goes at six. And he goes, no, it goes at seven.
No, it doesn't. He found out two hours before he was meant to be flying that he was flying in a month's time. That cost him one and a half thousand quid and he had to go via Orlando and arrived a day and a half late compared to what he thought he was gonna do because he did exactly what I did.
And Niall Merrigan, who's from Norway, did it with SAS's website. So why the software doesn't say, are you really sure you're meant to be going away for five weeks? Because it's an unusual thing to have a flight that long. So it could have just, in the reply to your confirmation said, you are going away for five weeks on this flight
and you go, no, I'm not five weeks, bloody hell, there's a date wrong. But no, it books it. Fortunately, I found out within hours and I got a free refund off BA and then had to rebook with the correct seat. But that is scary and it's still there on the flight website. It's really easy to do. And I think what happens is someone thought
it was intelligent to roll your second date over by a week automatically and pushes you into the next month so that when you pull the calendar down, you haven't realized you've moved months. And it only happens with February having 28 days because the day and the day of the week match. So it's a really weird bug that you get three years out of four.
So one of the things I found while I was writing this presentation at work, I was chatting to the UX team and the designers and the designers said, I wanna work more with the technical guys. We're meant to be a team creating this software. We should be working quite well together.
And he said, I know we should understand the technical concepts. We should understand the limitations of the mobile platforms that are gonna force our design decisions onto us because we can't do everything we'd like to do. But he did say, we do owe them a bit of a duty though the other way. We need to understand concepts in design
and things that they would want to talk about and not go, oh, but that's just colors, that's just font size. The interesting bit is that I actually, because I started off working in a TV company on a news channel at Sky TV, be Sky B now, I worked with graphic designers who cared about fonts.
I screwed, like, crawl up in horror programmers who decide to change the aspect ratio of fonts and make them narrow against the person who designed the font and things like that. So I get squeamish about things with the wrong fonts on. And we should be happy to talk about it with designers and have them understand it.
So terms like affordance. So this is where you provide a guiding hand to users. One of the examples of this is the bizarre example, which you're gonna laugh at a bit because it is a bit weird, that the handle on a cup or a mug when you're having hot tea is an affordance
that helps you hold the mug when it's got a hot liquid in it to stop you having to just use a beaker where it would actually burn your hand. That kind of thing is what they talk about. As a good example of it, which I'm gonna move on to, I've got a demo of it. One of the affordances, if you're going through a door, how do you know to pull or push a door?
There, handle or a flat panel. It's really easy. Put a handle on, you pull it. Flat panel, you push it. That door doesn't obey it because that's got a handle but I can't pull it. I bet you if I pull that door, it'll just jam and I can't get through. It's really easy to design stuff that's really obvious like that and it's really easy to design stuff that's wrong,
which that one is. One of the comments he made was we are the gatekeepers. We're the last people who can stop bad design leaving the building. We should be willing to actually stand up to a project manager and go, this is a crap way of dealing with this problem. That is not the message you wanna give our users.
That is not the way you should be delivering our software because people won't enjoy it. So the affordance, pull me, push me, you see. This, I was all ready to talk about the doors with no pictures in Oslo and I went round museums. I had a day off and I went round the national museums
in Oslo in Norway and I went to the Museum of Architecture who ironically have a door with pull and push written on it because in the Museum of Architecture, they haven't put in doors that have flat panels and pull handles and have to put labels on.
Here's the really funny bit as well. It's in Norway and they've put English labels on the door. They're not even in Norwegian. So by not having to do the flat panel and the pull handle, that's really obvious, you now have a language barrier
of how you're meant to use that door. You've introduced localization. So if you don't like localization in your apps, make the icons and messaging and layout so obvious on how it works, you don't need to put words next to it to explain what it does. One of the examples when Office was about version 2010,
an IBM UX designer said everyone really likes the fact that the buttons on the toolbar in Office have got tool tips to tell you what they do and he went that's an admission of failure. There is no way an icon should need to tell you what it does with a tool tip
because it should be obvious straight away from the design of the icon and the reality was they'd made the icon so small to fit so many on, they were then having to put tool tips on to tell you what that icon did because it wasn't obvious. So the kind of takeaways I have from this,
oh, I'm finishing early, are there's more than one way of doing the same thing. Users will kind of create their own way of doing things but you should give them options, you should make them have different ways of doing the same thing because they'll kind of like that. People aren't all the same. Try and reduce the pointless choice thing.
Don't ask people questions that you know they should never have answered and they can't make the decision. There was one point where you'd edit something in Windows and it would say, by the way, you've got to edit this config file and it'd tell you the exact location of that config file, the line to edit, the line you should put in
but it wouldn't save it for you, you had to open Notepad and go and edit it, that's insane. Computers are meant to make people's life easier, you should be doing that automatically. So we want a Goldilocks version of information, not too little, not too much, just about right, just give them the information they need. If someone's a power user,
there might be two paths, one with more information given to them and one with less information, you can happily cope with that. Be consistent, that's the hardest one by the way. If you have an iPhone app and an Android app and two desktop apps and a web app and there's God knows how many pages and everything, but if you change the icon in one of them
on what the share icon looks like, do you realize how long it takes to push all the updates out for everything to make all the icons the same? It takes months. So that's not easy to be consistent and you have to be consistent in really careful ways. In Cuddle, you can share a document with someone
and we said to one of the support staff, it's this little arrow button jumping out and you can share a document and it tells people, it sends you an email saying, hey, Liam's just shared the Christmas party details with you in Cuddle and they said, can't you use the share icon that Android has? Because Android has its own little share icon and so does iOS and so does Windows Phone
and they're all kind of similar kind of looking things in a way and we said, but that shares it by opening it in another application. This is a share of sharing it in Cuddle and giving someone permission to read it and telling them about it. So it's not the same thing. So you've got to be careful with what consistent means. So we want to be consistent of what huddle sharing means,
not if you want to share the item by attaching it to an email, we'll use the share for app platform. Surprise your users in a good way. That's not an Easter egg, it's not a funny joke in the about box, unless you're a consumer app that needs Easter eggs and funny jokes, but do things that actually they go,
wow, it just knew exactly what I wanted to do and got it right and it's really easy to use. And I would advise you to make friends with your designers. You know, if you think there's a good way of designing software and laying it out, chat to them, have a chat with why you think it works like this, why you as a user would want to use it,
but do remember that not every user is a developer and they don't all want it to work in a really geeky way. So, and as an end user of your software, as in a real end user, I think we have a duty that you don't make me feel stupid.
Like I didn't know, I pressed the wrong button. And if you do that, you'll be much happier and so will your users. So, if you need to get hold of me, I'm on Twitter, Wesley L, and I'm Liam.Wesley.Huddle.com.
And I have to thank Huddle and Betsy Weber for giving me a little mini figure of me holding a tablet, which she gave to the entire architect team all with the right color hair and glasses and the amount of stubble or beards. Because Huddle allow me to spend 20% of my time doing things like talks and presentations and research,
which is why I'm allowed to come here and so it's a nice company to work for. So, any questions? Okay, well, thank you for coming to a talk that was a last minute one. Thanks.