Earlier this week while checking my usual RSS feeds, I couldn’t help be brought to read an article entitled Why So Many iPad Games Fail. It’s a great read, all of it entirely true, and it got me thinking about user interfaces and how people design them and further, why they’re designed the way they are.
In the wake of multitouch interfaces and so many devices having such an interface, it’s not unsurprising that everyone wants their products all over such devices. The problem is, not all of their products make sense for the medium, or even the size of the medium.
Enterprise Applications Sometimes Don’t Make Sense
Many complained about the iPhone not being ‘business friendly’ because you couldn’t edit Microsoft Word documents or PowerPoint presentations on it, but the fact is, it doesn’t make sense to. There isn’t really any feasible way to actually achieve a product that normally has such a robust UI on a screen that’s only 3.5″ and operates through a touch interface. That’s not to say that it’s impossible, just not practical. To put it in perspective: have you ever tried using the Notes application on the iPhone? Your keyboard takes up half your screen, and even then viewing a larger document on such a small screen would make it difficult to navigate and edit. Anything more than what the Notes application offers would possibly take up far too much of the screen and even still wouldn’t come close to providing the richness of using a enterprise word processor.
iPad != Big iPod Touch
One of the biggest criticisms of the iPad was that it was just a really big iPod Touch. Yes, it ran off of iOS and yes it offered very much the same experience in terms of operation as an iPod Touch but the fact is that the iPod Touch doesn’t have a 10″ screen. The iPad offers so much more screen real estate and many of the applications that just simply didn’t work in terms of a workable UI on the iPod, were suddenly entirely possible on the iPad. Now something like a word processor works and makes sense. Editing a slide show gives you so much more the same experience that you’d get on a PC. When you have 3x the screen space to work with, you’re no longer trying to cram everything into a tiny screen.
Consider Your Medium
But this leads to other issues in the design of your UI. There are two important principles to keep in mind for a tablet’s interface: just because it works with one method of input, like a mouse and keyboard, doesn’t mean it works with a touch interface, and just because it worked on a small scale doesn’t mean that it’ll work blown up.
What’s Your Input?
To argue the two points, I’ll use some examples. As the article I referenced at the beginning points out: “Virtual Joysticks Suck”. Joysticks are designed to be put on a controller and be physical. It’s intended so that you can feel them and interact with them directly. With touch interfaces, that just doesn’t work. Just because you’ve designated specific areas on the screen to ‘represent’ joysticks, doesn’t mean it works in the same way. Every first person shooter game on the iPhone that uses virtual joysticks leaves you with a terrible experience and cramped fingers. Without something to physically touch and move, you often end up missing the ‘joysticks’ and doing something completely unintended, like throwing a grenade in an enclosed space. They don’t work and they don’t make sense. Virtual joysticks are clumsy and a bad UI design feature.
Another example is bringing the PC experience to the multitouch world. Operating systems like Windows and Mac OSX were specifically designed with the keyboard and mouse as your main source of input. The window based experience works when navigating with a mouse, or even tabbing with a keyboard. When you try to bring that same experience into a completely different world where you no longer interact with the operating system through a mouse and keyboard, suddenly it doesn’t work out so well. The way they’ve designed the Android OS and iOS works and makes sense for the touch interface. A full screen experience much more neatly organized and linear experience. Window based OS’s have things everywhere that are messy and work with a mouse and keyboard input that don’t work with a touch interface. Why do you think it is that the HP Slate disappeared? Or laptops with touch screens never popularized? Or even HP’s line of Touch Smart desktops have all but failed? Because it was just porting a windowed experience that doesn’t work with a touch interaction. As a side note, desktops don’t work with a touch interface as well just because it’s bad ergonomics. That’s why the HP Touch Smart now slides downward.
Other examples are the BlackBerry Storm and Torch. BlackBerry designed the OS with the scroll ball as the only source of input. When they tried to move it into the touch world, things just got messy and left you with an overall bad user experience. Thankfully they’ve learned from their mistakes it seems for the BlackBerry Playbook and are designing an entirely new UI that looks like it will provide a good user experience.
Bigger Doesn’t Necessarily Mean Better
As for the scaling principle, we’ll use the example of one of my favourite games on the iPhone, Infinity Blade. The game is one of the best available on the iPhone because they actually considered the medium that they were working with when designing their game. There’s no clumsy interaction in this or virtual controllers. This game was made completely with multitouch in mind. You hold it with two hands and can easily reach all the areas of the screen that you need to interact with, your fingers don’t interfere with the screen at all, and it utilizes multitouch extremely well. You can watch this video to see what I mean. However, scaling this up to an iPad’s size and suddenly it doesn’t work so well. The iPad is a mobile device that’s fairly big and often will require you holding it with a spare hand. Not to mention the screen’s so much bigger that the time it takes to hit a button on the other side of screen or make a gesture suddenly takes a few more split seconds to get to. Split seconds may not seem like anything to normal people, but when you’re playing a game like Infinity Blade at higher levels, it really makes a huge difference.
For this same reason the iPad is left with a lot of horrible ports from iPhone and not just of games, of regular applications, though maybe not to the same extent. Fortunately, many developers already know this and that’s why there’s a whole new App Store entirely for the iPad where the apps have been designed entirely with the iPad in mind.
Websites are another huge subset of UIs where almost all the time, the website isn’t designed to be used on a mobile device. This really doesn’t matter a lot of the time but when you have a site that people are going to be visiting often like news or a blog, it’s important to know how your user base will be using it. It’s important that it’s optimized for not only a fully powered PC experience, but also a scaled down mobile experience. Thankfully, many have taken this into consideration and offer mobile versions of their websites that both load quickly and are easy to navigate on a mobile device.
Know Your End User
When it comes down to it all, it’s not you that will make your product great but your users. They’re the ones who decide whether you live or die. This is one of the reasons that Apple have been so successful in the past few years. They consider their end user and the experience that they’ll have. This is why they don’t adopt a lot of newer technologies right away because they know that they’re impractical for the user at the time. Sure we want some features to be available like Flash, but the fact is that they’ll ruin the overall experience of their product by hindering its capabilities because of something. They also don’t do things until they can do them properly. It’s unfortunate that an important feature like multitasking isn’t available to us right away, but why tarnish your name with a mediocre experience? Why not do it right the first time? Why make the user suffer?
So when making a user interface, consider what you’re building it on, consider how your customers will be using it and consider your customer. I know it all sounds really basic and obvious but a lot of these things are overlooked by developers just pushing product because there’s a small demand for it. But a lot of the time they over look these things to provide a failed product. Just because some people think that they need it, they probably don’t because it doesn’t make sense with their device.