The Bouncer

The App Store contains many great applications that act as clients for web applications. For example, there are several excellent applications for interacting with social services like Twitter or publishing content to blogs.

A requirement for most Cocoa Touch web application clients is to provide authentication credentials, such as a username and password, for an account on the remote web service with which the mobile application interacts.

The bouncer anti-pattern occurs when the Cocoa Touch application requires authentication credentials for operation, but doesn’t offer the option for creating those credentials inside the application. Instead, the application opens Safari and forces registration through a web page, or worse, offers no option for registration at all.

There are cases in which registration from a mobile application makes little sense. For example, an application that allows you to check the balance in your savings account or retirement fund would require that the accounts already exist at the financial institution. The WordPress application requires external authentication using a WordPress-powered blog hosted on the Web. Because of this externality, creating an account using only the iPhone application would be impossible. Rather than simply blocking access for new users, the WordPress application allows access to information about the application and about WordPress. Figure 9-11 shows the WordPress application.

Figure 9-11. The initial screen for new users ...

Get Programming the iPhone User Experience now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.