Find more information about developing mobile apps here.
The time has come to stop building separate websites for mobile.
Back in 1998, the Wireless Application Protocol (WAP) was released, described as "a complete software stack for mobile Internet access." This was the era of the insanely popular Nokia 6160, with its five-line monochrome display. WAP, combined with XML-based Wireless Markup Language (WML) was designed to be a lightweight way to put web on your mobile device.
Web developers built tiny subsets of their websites for mobile devices using WAP and WML. The browsers on these devices were called microbrowsers for a reason: They had very limited capabilities. So limited, in fact, that most people didn't bother with them. WAP tried to modernize with XHTML, which didn't help matters, and by the early 2000s, it had all largely gone away.
Palm and BlackBerry significantly upped the sophistication of mobile web with vastly improved (but still limited) browsers, but it was the iPhone that really broke the market loose. Starting with the iPhone, browsers on mobile devices were as sophisticated and powerful, if not more so, than the browsers on desktop PCs. The WebKit open source layout engine powers Safari and Chrome, which is found on desktops as well as all iPhone and Android mobile devices. In fact, the only real difference between today's mobile devices and today's desktop PCs is screen real estate.
So why do we still build separate mobile websites?
The day of building websites optimized for 1024 × 768 are past. Today's browser could be any resolution from the 320 × 240 of a Blackberry, 800 × 480 of the Windows Phone 7, 960 × 640 of the iPhone 4, all the way to 1920 × 1200 of a large desktop display. And for the most part, all these devices have web browsers of comparable (and compatible) capabilities. Why shouldn't every website take advantage of all of these resolutions and look great on them all?
A well-crafted modern website should be looking at the size of the browsing window and altering the content accordingly—adjusting fonts, switching to smaller or larger pictures, even condensing control elements from lists of links to dropdowns, and so on.
I want a website to work the same whether I'm viewing it on a Windows Phone 7 smartphone or in an IE9 browser window on my desktop shrunk down to 800 × 480. It should make no difference.
Creating a separate website for mobile is dooming that site to failure. What's next, a separate site for tablets? I want to see one website for all browsing devices, but a better website: one that respects the resolution I'm in, big or small, and gives me the best possible experience for the screen I have available. It's what the customer wants and expects, whether or not they articulate it this way.
There is only one Internet and one World Wide Web. It's time to treat mobile browsers as first-class citizens on the web.
Richard Campbell is technical director for DevProConnections and is also a cofounder of Strangeloop Networks. He has more than 30 years of high-tech experience and is both a Microsoft Regional Director and Microsoft MVP. In addition to speaking at conferences around the world, Richard is cohost of .NET Rocks! (www.dotnetrocks.com) and host of RunAs Radio (www.runasradio.com).