By combining the previously separate Mobile and Embedded developer conferences Microsoft have dramatically scaled up the conference from last year. The venue was the glittering city of Las Vegas in the Mandalay Bay conference centre. Windows Mobile 5.0 was released, representing a large step forward with not only new functionality for the end users but also major improvements to the APIs available to developers. There was a lot of detail on the upcoming .NET Compact Framework v2.0 and Visual Studio 2005 tools.
This year Microsoft combined the Mobile and Embedded conferences into a single event in the glamourous surroundings of Las Vegas, in this article I look back over the full duration of the event at all the cool announcements, along with highlights from the technical content.
The Road to Mandalay
This years event was held in Las Vegas, a very unique setting for the conference. Having never visited Las Vegas before, as I�m sure was the case with many other attendees, the venue in itself was an interesting experience, having to walk through the casino every morning on route to the conference centre. The Mandalay Bay is situated at the southern end of �The strip� very close to the airport.
The �Goodie� bag
Each conference attendee received a neat bag featuring a built in laptop compartment � a pretty smart design, and much better than last years which was way too �clever� having numerous compartments but soon fell apart. Also along with the obligatory pad of paper and pen (of course all true mobility nerds would use a device or laptop for note taking), there was the usual mix of marketing paperwork, and a selection of discs for Windows XP Embedded, Windows CE and Windows Mobile development.
The Windows Mobile 5.0 kit was distributed during the keynote and includes the SDKs, ActiveSync 4.0 and Visual Studio 2005 Beta 2. You can order the kit online along with the Mobile Application Developers Kits.
Bill Gates Keynote
Bill Gates' keynote was fairly lifeless but featured the much anticipated announcement of Windows Mobile 5.0 the latest platform for Pocket PC and Smartphone devices. The demos added some pizazz to the session, especially watching Mike Hall pull the plug on an XP Embedded terminal and watch it quickly restore from a hibernated image. If you haven't seen it already you can view the entire keynote online.
Windows Mobile 5.0 adds support for soft-keys to the Pocket PC interface making it closer to the Smartphone experience and allowing you full control over the device through keyboard and hardware keys. The productivity applications have been revamped as the Office Mobile suite - Outlook Mobile, Excel Mobile, Word Mobile and new for Pocket PC PowerPoint Mobile. The user interface in the built in productivity applications is dramatically changed with support for contact pictures and support for actions, such as sending a text message, from the contact screen via softkeys. Microsoft will also allow OEMs to incorporate Voice Command, previously a separate application, directly into the ROM on their devices.
Windows Mobile 5.0 requires a new version of ActiveSync � 4.0 which for Windows Mobile 5.0 introduces a new approach to synchronisation where the device is the �master� in the relationship rather than the PC. However ActiveSync 4.0 also supports previous devices and will work in the same way as ActiveSync 3.8 does at present.
For managed code (.NETCF) developers there is a whole suite of Windows Mobile 5.0 specific libraries including new common dialogs, configuration, telephony and full access to the Outlook Mobile data. The full listing can be found in this previous post. Robert Levy from Microsoft has also shared with us a detailed class diagram for these new APIs.
The new Visual Studio 2005 toolset, currently in Beta allows developers to create both native code (C++) and managed code (C# and VB) applications for Windows Mobile 5.0. The tools include powerful database management tools for working with the SQL Mobile database engine and quickly building database driven applications. During the keynote, Neil Enns demonstrated building a restaurant database application by selecting database objects and having the tools build the forms controls.
Windows Mobile 5.0 Security
The security model in Windows Mobile has been changed to bring the Smartphone and Pocket PC lines into closer alignment. Pocket PC now supports code signing with prompt mode, and applications and cab files can be signed to remove security prompts. However there isn't the two-level model found on many smartphones where applications must be signed to utilise specific "priviledged" APIs.
New Native Code APIs
Windows Mobile 5.0 introduces a unified API for image and video capture devices, previously developers had to work directly with APIs from individual hardware manufacturers. Also new is a GPS abstraction layer which allows you to connect up a GPS device and access it�s location information from multiple applications. You can also expose it as a standard COM port for existing applications. Having a standard API to program against which plays nicely with other applications should hopefully improve the developer experience and encourage greater use of GPS within applications. Adding to the Softkey support in the shell, the notification APIs now support soft-keys for Notification bubbles so that they can be easily dismissed one-handed.
Game development with Managed Direct3D
Direct3D is coming to devices and also will have a .NETCF library to create high performance 3D graphics with .NETCF v2.0 code. The support for Direct3D will only be available on Windows Mobile 5.0 devices and even then it will depend on the device and whether hardware support is available. Currently the device to use is the Dell x50 which has a dedicated graphics accelerator chip. The presenter Chris Muench displayed the basic technique of rotating a 3d object and went on to show us a fully animated 3D interface to a mahjongg game. The graphics were incredibly smooth and this marks a major step forward for games developers on the Windows Mobile platform. If you are interested in Managed Direct3D Mobile development I highly recommend checking out two articles by Casey Chesnut, /cfMDX and /cfWorldWind Casey showed me his World Wind application running on a device and it was incredibly smooth.
A new feature this year, though previously used at other conferences, were the cabanas, these were areas where speakers, Microsoft staff and MVPs could hang out and answer questions. I personally thought these were a useful addition to the conference, as many attendees were more comfortable with questioning speakers on a one-to-one basis rather than at the microphone at the end of each session. This also means there is more time between session changeovers so sessions are less likely to over-run. The only minor issue with the layout was that they did appear somewhat out of the way and perhaps not too inviting, it would have been nice if they could have been located somewhere central where everyone going to and from sessions would walk past.