MOBILE

Programming the iPhone User : UX Anti-Patterns - Memory Lapse

10/8/2012 7:32:07 PM
Network-aware applications, such as RSS readers or clients for sites like Twitter and Digg, inherently depend on an Internet connection. Without web access, the data they display is off-limits.

The first time users launch such an application, they probably expect a load operation of some sort, preferably with a progress indicator to show that the application is doing something in the background. Notice should be given not only that a download is in progress, but also whether or not the download is successful. In most cases, a successful operation will simply display the downloaded data. Failures can be communicated with an icon, as in Twinkle, or with passive messaging, as in Shovel.

Figure 1 shows the first launch and network sync for the TED application. The translucent overlay and status indicator tell the user that the application is actively communicating with the TED web services, while the underlying screen gives a preview of the type of content. This approach is preferable to that taken by many applications that fail to store information when applications close, requiring users to have a network connection to continue reading content they have already downloaded at least once.

Figure 1. The first launch and network sync for the TED application


After the first successful download, user expectations change. Users expect that applications will store downloaded data between launches. This expectation comes from the overall feeling on the iPhone or iPod Touch that applications don’t start and stop, but rather are paused, waiting for users to switch them back to the forefront.

Generally, an application should not forget data—especially the most recent data successfully downloaded. Users should not be penalized for changing albums, making a phone call, answering a text message, or otherwise closing an application. The application should provide the same functionality when reopened as when it was last closed, despite access to networks.

Figure 2 shows the result of launching both Shovel and Tweetie in the absence of a network connection. Users would likely benefit from an option to read content from the most recent successful sync.

Figure 2. The network error handling in Shovel and Tweetie


The Facebook application uses a disk cache and does an excellent job of avoiding the memory lapse anti-pattern. Any data loaded into the Facebook application is saved to disk and redisplayed when the application is opened. This approach works very well to provide value to users without a network connection. It also has the side effect of improving speed for users who are online, because data is only pulled from the network if it is outdated or missing; otherwise, it’s served from the cache.

When the Facebook application is asked to display content that is not cached and there is no network connection, users are given a clear but non-disruptive notice. Figure 3 shows the Facebook application responding to a request for data that cannot be located.

Figure 3. The error screen for unavailable data in the Facebook application


Developers of networked applications should work to avoid the memory lapse anti-pattern. Mobile applications are far more likely than desktop applications to encounter unfavorable network conditions. A good rule of thumb for data persistence is to ensure that your application can be opened on an airplane or on the New York City subway and still provide value to your users.
Other  
 
Top 10
Review : Sigma 24mm f/1.4 DG HSM Art
Review : Canon EF11-24mm f/4L USM
Review : Creative Sound Blaster Roar 2
Review : Philips Fidelio M2L
Review : Alienware 17 - Dell's Alienware laptops
Review Smartwatch : Wellograph
Review : Xiaomi Redmi 2
Extending LINQ to Objects : Writing a Single Element Operator (part 2) - Building the RandomElement Operator
Extending LINQ to Objects : Writing a Single Element Operator (part 1) - Building Our Own Last Operator
3 Tips for Maintaining Your Cell Phone Battery (part 2) - Discharge Smart, Use Smart
REVIEW
- First look: Apple Watch

- 3 Tips for Maintaining Your Cell Phone Battery (part 1)

- 3 Tips for Maintaining Your Cell Phone Battery (part 2)
VIDEO TUTORIAL
- How to create your first Swimlane Diagram or Cross-Functional Flowchart Diagram by using Microsoft Visio 2010 (Part 1)

- How to create your first Swimlane Diagram or Cross-Functional Flowchart Diagram by using Microsoft Visio 2010 (Part 2)

- How to create your first Swimlane Diagram or Cross-Functional Flowchart Diagram by using Microsoft Visio 2010 (Part 3)
Popular Tags
Video Tutorail Microsoft Access Microsoft Excel Microsoft OneNote Microsoft PowerPoint Microsoft Project Microsoft Visio Microsoft Word Active Directory Exchange Server Sharepoint Sql Server Windows Server 2008 Windows Server 2012 Windows 7 Windows 8 Adobe Flash Professional Dreamweaver Adobe Illustrator Adobe Photoshop CorelDRAW X5 CorelDraw 10 windows Phone 7 windows Phone 8 Iphone
Visit movie_stars's profile on Pinterest.