The Mobile Web

The mobile web is the new wild west of web development. Within a few years most web access will be accomplished using handheld devices, primarily cellphones. Yet today's phones, PDA's and other wireless appliances are wildly divergent in display and interaction capabilities.

For developers, it's the Netscape Navigator vs. Internet Explorer situation all over again, vastly multiplied, with this crucial difference: the dozens of vendors involved are not competing by inventing incompatible, proprietary extensions; this time it's in the interest of all parties to standardize on a set of features, built upon XHTML document structure, designed to deliver the best possible mobile web experience to everyone.

Templates for Mobilization

Device independence is the born-again holy grail of web design as we move into the mobile age. Strategies for formatting useful pages for delivery to divergent client devices, whether desktop browser, cellphone, PDA or PSP, are debated: some say deliver the same XHTML page to all comers and let the device load the appropriate stylesheet. This may be the ideal, but how many cellphone browsers recognize stylesheets today?

An expensive alternative is to develop parallel sites, each page having a lavish, full-featured version for desktop browsers and a bare-bones version for handheld clients. Each page contains its own, separately-maintained copy of the same programming logic.

The third possibility, little discussed, is to build a template-enabled site: each page is really a program script, written in ASP.NET or Java and having no built-in HTML representation at all. When the page is requested the script detects the client type and then loads, populates and delivers the appropriate HTML page. Superficially, because there are multiple HTML representations, this looks like more work than the stylesheet approach, but is it really? Using a stylesheet to chop an elaborate, graphics-laden web page down to handheld size can be hard work, and error prone. By comparison, building a simple alternate handheld page from scratch is a piece of cake. The programming is the same either way.

Mobile web reading: