Tech —

Sparrow leaps from Mac to iPhone, but Apple limits its appeal

Sparrow isn't just for Mac users anymore: Sparrow for iOS is a playful, but …

Sparrow's UI is packed with multitouch gestures for whipping through your inboxes with ease.
Sparrow's UI is packed with multitouch gestures for whipping through your inboxes with ease.

Apple's own Mail app is a serviceable mobile e-mail client on iOS, but it definitely lacks flair. The developers behind the popular OS X e-mail client Sparrow aim to address that with their new Sparrow for iPhone. The app offers a unique UI as well as compatibility with most IMAP accounts. But because of Apple's limits on background-processing APIs, the first version of Sparrow shipped without push notifications for new e-mails, which will undoubtedly limit its appeal as a true Mail alternative.

Inspired by top iPhone apps

Like the desktop version, Sparrow for iOS aims to make dealing with e-mail as quick and painless as possible. The main view is a list of e-mails in your inbox presented in a Twitter-like fashion. Swiping an e-mail reveals a contextual menu which lets you reply, star, label, archive, or delete a conversation or thread. The title bar is also swipeable, letting you easily switch between inbox, starred, and unread-only views.

Swiping to the left on any e-mail reveals a contextual menu similar to previous versions of Twitter for iPhone.
Swiping to the left on any e-mail reveals a contextual menu similar to previous versions of Twitter for iPhone.

Also like the desktop version, which owes much of its UI design to Loren Brichter's Tweetie/Twitter app, Sparrow for iPhone takes design cues from several other favorite apps from the developers. Its rounded corners were inspired by Twittelator Neue, and its conversation view is based on the Reeder RSS app. Sparrow's stacked navigation levels are also very similar to the most recent version of Facebook for iOS. Tapping the "list" icon on the upper left slides the main view to the left reveals a list of folders and labels to choose from. Tapping the "user" icon in the upper left again slides this list to the left, and lets you choose from your other e-mail accounts or a unified inbox.

You can see how Sparrow uses stacked panels, similar to Facebook for iPhone or Twitter for iPad.
You can see how Sparrow uses stacked panels, similar to Facebook for iPhone or Twitter for iPad.

Sparrow will pull in your contacts avatars from Contacts, Facebook, or Gravatar, depending on which one is available. It will show these avatars in your inbox list, and also show them when choosing who to send a message to. Using images this way helps users see e-mail senders and recipients at a glance, and is a major usability improvement for visually oriented people like me.

Swiping up or down will move among messages in a conversation. Sparrow also makes extensive use of avatars to make it easy to see who you are talking to at a glance.
Swiping up or down will move among messages in a conversation. Sparrow also makes extensive use of avatars to make it easy to see who you are talking to at a glance.

Other UI touches include using an up or down pull-swipe to move between messages in a conversation, tapping the top bar while composing an e-mail to quickly switch which account it is sent from, and tapping the top bar from any folder or label view to quickly jump back to the inbox.

Sparrow supports e-mail accounts from Gmail, iCloud and MobileMe, Yahoo, and AOL out of the box, as well as custom IMAP accounts using your own e-mail server. If your company uses Exchange, you can also add your work e-mail if your IT department has enabled IMAP support. It doesn't yet support POP e-mail accounts, though support may be added in a future version depending on demand from users.

No pushing

The most frustrating omission from Sparrow for iPhone, however, is that it lacks support for push notifications. Without this support, users will have to launch the app to find out if there are new e-mails. For folks who rely heavily on getting e-mail as quickly as possible, this could be a deal-breaker.

We spoke to developers Dominique Leca and Dihn Viêt Hoà to find out why push e-mail isn't supported. To use standard push notifications, Sparrow would have to store user names and e-mail addresses for each user's account on a remote server. That server would then check for new mail and send a push notification to a user's device.

"This is a responsibility we're not ready to take," Leca told Ars. "As a startup focused on iOS/OS X development, we do not have the skills to secure your data on our servers and we do not want to put sensitive information at risk."

Sparrow could, however, use a combination of IMAP IDLE and local notifications, and that's how the app was originally designed. Since all the login information is stored locally, Sparrow can simply use IMAP IDLE to wait for the server to alert it that there is new e-mail. When new mail comes in, Sparrow could update its icon badge and even send an alert to Notification Center with the "from" and "subject" lines.

"We used the VoIP API to put Sparrow in the background while keeping a network connection open to the server," Dihn told Ars. "Sparrow is then 'suspended,' which means it will not use any CPU cycles. iOS will take care of the persistent connection, and it won't use much battery since nothing will be going back or forth on the network," he explained.

When receiving a notice from the server that new e-mail has been received, Sparrow would then resume, doing just enough work to update the icon badge and send a notification.

If you get mass amounts of e-mail, that can still potentially cause a big drain on the battery. However, the developers took care to optimize Sparrow to use up as little of the battery as possible. "It took us 2 months to get it right," Leca said.

"After extensive optimization and testing, we made sure Sparrow had decent battery consumption," Dihn added. "The battery consumption of native Mail and Sparrow are quite the same when enabling push."

Unfortunately, Apple was having none of it. Sparrow got rejected on the grounds that it used the VoIP API without providing any VoIP functionality. After removing the push support, however, Apple approved Sparrow for sale.

"Just a year ago, Apple would have rejected Sparrow for 'duplicating functionality' of Mail, so we see this as positive," Leca said. Still, the developers are trying to gauge demand for push support in hopes that Apple may reconsider its stance on the use of the VoIP API.

"It's tricky for [Apple]. We've done all the optimization work, but my guess is not all developers would. So Apple is right to keep the limits tight," Leca added.

Playful, yet usable

Sparrow is still a great first effort, especially given the constraints that Apple places on iOS. For example, you can't set Sparrow as your default e-mail application as you can on the Mac. And the push notification issue means that only Mail has the ability to keep you alerted to incoming mail as soon as it happens.

"We tried to make e-mail friendlier, and make it playful, while keeping in mind that we're also trying as much as we can to improve user efficiency," Leca said.

Sparrow for iPhone is $2.99 and is available now via the App Store. For now, it is iPhone-only, but Leca said that he is not ruling out an iPad version in the future.

Channel Ars Technica