ADDUCIVE > User interface design consulting ABOUT
SERVICES — CASE STUDY: WHY MOOFUSLIST FOR IPHONE IS SO FAST
PHILOSOPHY
CONTACT
PORTFOLIO

Moofuslist Screenshot

CASE STUDY: WHY MOOFUSLIST FOR IPHONE IS SO FAST

To designers and developers who have gotten used to web application design, it might seem that UI design is just drawing pages and linking them together. After all, a web application has just a few ways of moving between pages (buttons and links) and nobody expects extreme responsiveness when they are using a browser.

Mobile applications must meet higher expectations. Users on the go don't have a lot a time to find the information they need. They know from the games that run on their smartphones that the devices can be graphically rich, fast to respond, and highly interactive. For a mobile app to be delightful, it has to look good, but it also has to seem fast.

The moofuslist app takes advantage of context, human perception, and good old fashioned software engineering to make the application seem fast.

About moofuslist

The moofuslist app helps you to find listings of bank-owned real estate from multiple banks, using the same data that's available on the moofuslist website (also designed by Adducive).

There are two ways to search the listings. You can run a quick-and-dirty search, called a Quick Search, which just shows you the most recently listed properties in a given city, state, or ZIP code. For a little more effort, you can set up an Automatic Search, where you can define a more complex location and limit the properties by price, number of bedrooms, and number of bathrooms. Because moofuslist collects its property information about from banks and not a typical MLS database, there is not as much information available and so the searching can be and has to be much simpler.

The app lets you create bookmark lists and e-mail property info. You can also map the property or call the agent. On the iPhone, this quits the app and starts up Apple's own map and phone apps. Learn more about the app from moofuslist.com.

Context

A user's history with the application and the application's own data, combined with all the sensors in a smartphone for location, ambient brightness, compass heading, etc. can make it possible to just give the right information at the right time.

  • The app always picks up where you left off. On a smartphone, anything can be interrupted by a phone call. If you are looking at a property, you will return to that property when you restart the app. If you have an unfinished e-mail message, it will be saved before the app quits so you can pick up where you left off.
  • When you send an e-mail message, the app uses the From address that you used the last time. This means that it only has to be typed once.
  • The app keeps its own list of recent e-mail recipients. Since most people will be sharing property info with just a few family members and their agent, this feature keeps you from having to scroll through your entire contact list every time.
  • When you run a search, the app fills in the last city/state/ZIP info you typed, assuming that the most likely thing to do is to run the search again to get the newest listings in the same area.
  • When you create an Automatic Search, the location is filled in from the last Quick Search you conducted. The other criteria for the search (price, number of bedrooms, number of bathrooms) is based on the other searches you've already created. For example, if your max price is $500,000 in your previous searches, your max price will default to $500,000 for any new search you create. Since the label is usually just the location, the label for the search changes automatically as you change the location, until you enter your own label text.
  • The keyboard appears automatically when needed. When addressing an e-mail message, the cursor goes to the message text after you've selected a recipient.

Perception

Using animation and setting expectations properly can be even more important than the absolute time a system takes to respond.

  • There is no splash screen. The app always picks up where you left off, and so the launch image is designed to seamlessly transition to the property info. (The moofuslist logo gets shown whenever a property has no photo available, so you are exposed to it frequently enough anyway.)
  • The app displays one property at a time, and avoids a list view. List views seem slow because you can see the data slowly loading and many people will wait for it to load completely before starting to navigate. Therefore, only one property needs to be ready for the app to seem finished with a search.
  • The app uses no progress bars. Under normal conditions, nothing takes more than a second to respond to.
  • The app uses animation after you conduct a search that takes just about the same amount of time as the search takes. So it seems to respond almost instantly.
  • Network activity not only takes place in the background, but is scheduled when your attention is directed elsewhere. The only place where you ever have to wait for the server is when conducting a Quick Search. For saved searches (called Automatic Searches in the app), the updates take place without user intervention.

Software Engineering

Even with perceptual tricks, nothing beats an app that really is fast. Under most conditions, the moofuslist app responds to Quick Searches in less than a second.

  • The app uses its own network communications conventions, instead of SSL and XML, which are less efficient. Inefficient use of the network on a mobile device not only keeps you waiting, but it drains the battery. Now that backlights use LEDs, the radio circuitry is the biggest power hog developers need to worry about.
  • Even the server knows what it needs to respond to first to keep you from waiting. Results of a Quick Search are returned before anything else, because you are always waiting for those to finish. Since properties are sorted in price order, the server sends lower-priced property photos first since you have to scroll past those to get to the more expensive ones.
  • The app was extensively profiled using the excellent tools Apple provides. It is efficient with memory. Several different methods of creating the reflection of the property photo were tested to keep the app responsive.

Results

Not many clients would accept the idea that a user interface designer should be specifying subsecond responses to client/server search queries. Not many apps follow Apple's Human Interface Guidelines to avoid splash screens and pick up where users leave off, but thanks to close cooperation on this project, the moofuslist app feels fast and responsive. Over WiFi, it is almost instantaneous. Over 3G, it still feels faster than other network applications, including Safari. You can spend almost all your time in the app with the property info you are interested in, and hardly any time on splash screens, progress bars, or administration.

Home  About  Services  Philosophy  Contact  Site Map
Last updated by Brian Krause, brk@adducive.com, February 3, 2010
Adducive   P.O. Box 240   Belmont, CA 94002   650-274-2415