People underestimate the effort required to create a great web app. They tend to get blinded by the write-once promise but in practice it can quickly turn into a nightmare. Brian Leroux takes a deep look at in his presentation on how the mobile web is a mess. I have previously written a lot about this (see the related articles below).
However, there are still some types of project, particularly self-promoted information-heavy apps, where web apps can make sense. Think very very carefully if you really need a web app or whether a normal ‘desktop’ web site will suffice. Keeping with the latter will save a lot of pain. If you do decide to create an app using web technologies, here are some high level tips to get you started…
- Decide what devices you are going to support. No, you can’t support them all. Plan to fully test the devices you choose to support.
- Think about the implications of different screen sizes and orientations. More specifically, think about families of different graphics sizes. Consider using common layouts to simpify moving between horizontal and vertical orientations.
- Don’t make it look like iOS. It’s like asking Ford car owners to use a Mercedes steering wheel in their car. Try to give the app a generic web theme that uses touch gestures when available on the device.
- Consider what’s necessary to make the app secure. Motorola MOTODEV has a new article on Designing HTML5 Apps that includes tips on the security of offline storage, cross-origin resource sharing and web sockets.
- Web vs Native and the Enterprise
- HTML5 Bits and Pieces
- Selling Web Apps
- Native vs Web (again)
- Web-based Technologies
- Mobile Browser Usage
- Wired App vs Web
- Web App UI Fragmentation
- OS and Browser Fragmentation
- HTML5 Detection
- Maemo, iPhone, Android Cross-Browser Guidelines
- Tera-WURFL for Device Capabilities
- Mobile Apps vs Web