One of the most exciting features of OS 3.0 on the iPhone is Safari’s implementation of the HTML 5 spec for browser-based geolocation. This allows Web sites to ask the browser for the user’s location, a capability that has largely been limited to device-specific applications.
This new capability allows for easier-to-use location-based services. Flickr has jumped on this with a “photos taken nearby” application that will show you pictures centered around your location. Click on the “Photos taken nearby” link at m.flickr.com and you’ll instantly see a map of your location with nearby pictures.
The initial implementation is basic; you have no control of the pictures shown. It would be nice to see to search the nearby pictures for specific terms or to see pictures taken by someone. But as a proof-of-concept, it works great.
This is undoubtedly the first of many browser-based location services we’ve seen. Google has already announced that it will launch its Latitude service in a similar fashion. You can imagine other services such as local business search, movie showtime lookups, weather and local news provided automatically in the browser.
It’s a sign of how far we’ve come in mobile since the launch of iPhone 3G. It wasn’t long ago that I wrote asking carriers to set my location free. In principles of mobile design, I wrote “Don’t create an app if you don’t have to.” Now you don’t have to for location-based services.
My one complaint is that the browser sends back a very precise latitude/longitude. This is necessary for cerain applications, like mapping. But most applications don’t need that level of precision. Weather, for example, only needs a city level of precision. I’d like to be able to control what gets sent.
More on: geotagging
Mobile is an exciting new space with the opportunity to create highly personalized, immersive experiences. Here are some of the principles I follow when designing products for mobile devices:
- No shovelware — Mobile has very different constraints and user environments than the Web and your design should reflect that. Just as attempts to paste newspapers on to the Web failed, so will attempts to paste Web sites on to mobile. If a vendor pitches you a zero-effort solution that will automatically transcode your Web site, just say no. (The exception to this is mobile-specific templates for articles, blog posts, etc. stored in a content management system.)
- Focus on the here and now — Mobile users are looking for quick hits and aren’t likely to engage in elaborate planning tasks. Focus on the key tasks a user is likely to be doing while mobile. When possible, show what’s going on when and where the user is. Make the server do the work instead of the user. For example, if your site has a conference schedule and it’s the middle of the show, you should have a page that lists the tracks that are happening RIGHT NOW instead of forcing the user to look through days of listings.
- Don’t create an app if you don’t have to — Apps are great, but they also cause a lot of user friction. If you can accomplish the user’s goals with a mobile Web site, do that first.
- Every click matters — The difficulty of input on mobile devices makes it all the more important to ensure that every click counts. Mobile sites should use personalization and location information to get the user to her goal as fast as possible. Provide quick links on your home page to tasks that the user has recently done.
- Make every byte count — Wireless networks aren’t anywhere near the speed or reliability of home or work networks, making it even more critical to have tight pages without gratuitous graphics, headers, toolbars, etc. Many Web designers have gotten sloppy over the years as increasing broadband speeds have masked the slowness of their pages. You can’t do that on mobile.
- Be forgiving — Phones sometimes do things like automatically capitalize usernames. Accept the capitalized username. (Assuming, of course, that your namespace is case insensitive.) Recover gracefully from dropped connectivity.
- Auto detect mobile clients – If your mobile site is at “m.foo.com” and the user goes to “foo.com”, show the mobile version anyway. Deep links for stories, photos and other objects should also be rendered in the mobile version; if the user goes to “foo.com/articleid=32″, show “m.foo.com/articleid=32″. flickr does this correctly. The New York Times does not. But be sure to offer a link to the full version just in case your server guessed wrong. And cookie that state.
- Be cross platform — Carry over user data between the Web and mobile. If the user searched for something on the Web, that search should be included in the history and typedown on mobile. Let users easily create reminders on their mobile device for things they need to do when they go to your Web site. (e.g. write a review, read a long article)
- Think different – In the post iPhone era, handset manufacturers and carriers are providing more access to phone features than ever before. Designers have access to cameras, GPS, accelerometers, microphones and more. The best applications will take advantage of these capabilities to deliver experiences that can’t be created on PCs. For example, wouldn’t it be great if when you added a contact to your address book, it would automatically log where that happened?
I’ve been working in wireless application design for more than 10 years and it’s really exciting to see wireless data take off. Mobile applications and widespread connectivity are bringing oceans of information to our fingertips. In the last year I’ve been more informed, eaten better, taken public transit more and been more adventurous than ever before. I’ve also been less bored and less lost.
The explosion in the availability of data and the creation of data is going to be transformative, perhaps more than the wired Internet. Realtime information from our friends, neighbors and sensors will allow us to be more efficient and avoid a lot of everyday annoyances.
There are challenges:
- Network quality — Wireless networks in the U.S. aren’t nearly as fast or reliable as networks in the rest of the developed world. I’ve got a love/hate relationship with my iPhone. I love it works and hate it when I can’t use it because of network issues.
- Filtering and alerting — With all of the content that is being created through mobile devices (tweets, photos, videos, etc.) sorting through it all to find what’s important is becoming a big problem and the tools that we have today are crude at best.
- Platform overload — There are too many mobile platforms today. Developers have to choose among iPhone, Blackberry, Windows Mobile, Palm, Symbian. And that’s just the smartphones. It’s just not cost effective to develop for everything.
This blog will look at interesting (good and bad) applications of mobile technology and the good and bad of mobile user interfaces. If you have an application you’d like me to take a look at, please drop me a line.
My personal blog will continue to be an eclectic mix of pieces on social networking, search and media.