Prior to the current generation of smartphone hardware, most users were relegated to using simple cellphones that could deal with calls, text messages, and possibly a handful of basic games or applications. More often than not, these applications weren't much more powerful than a glorified calculator. There was no app store, no programming interface was available to you, and unless you were an official partner with one of the major cell networks, you simply couldn't write custom applications for your phone, let alone share them with others. The original Pocket PC hardware teamed with the first version of Windows Mobile to change this.

The Windows Mobile platform came on the scene in 2000, on the Pocket PC hardware. It provided developers with some of the first legitimate opportunities to create applications for mobile devices. Although geared primarily toward power users and corporate accounts, this new mobile operating system offered versions of Word, Excel, Outlook, Internet Explorer, Windows Media Player, and more. Obviously, this was not going to be just your standard cellphone with limited capabilities. Along with the operating system, Microsoft released a set of developer tools that allowed those with a C++ background to develop native applications for the Pocket PC.

So if custom applications could be developed and the Pocket PC was available, why did it take the iPhone to make mobile computing catch on? For starters, although the Pocket PC and ...

Get Beginning Windows® Phone 7 Application Development: Building Windows® Phone Applications Using Silverlight® and XNA® now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.