Kevin Hoffman is an enterprise programmer who straddles two worlds: Windows, including Windows Mobile and now Windows Phone 7, and Apple iPhone. His day job is chief systems architect for Oak Leaf Waste Management, where he focuses on mobile and cloud application development.
"Every framework has advantages and disadvantages," he says. "You can't make blanket statements that one is better than the other; you have to qualify it."
He has extensive background in Windows development, and writes The .Net Addict's Blog, where he's currently writing about his Windows Phone 7 experience. He has co-authored several books, including WPF Windows Presentation Foundation Control Development Unleashed. Hoffman also has a page at Amazon's website.
But until recently he's also been editor-in-chief of Sys-Con's iPhone Developer's Journal, and does contract work writing iPhone apps. He has presented at Apple's Worldwide Developer Conference, comparing programming for iPhone and for Microsoft .NET Compact Framework.
We caught up with him to ask him his impressions of Windows Phone 7 (WP7) and the differences and similarities between that platform and iPhone.
Given your background, how does WP7 stack up against iPhone?
In the market of high end mobile applications, iPhone has had a monopoly until now. If you have to choose a target device [for your applications], you choose the one with the most users. The iPhone has that.
Now Microsoft is in that market, with a device [platform] that does everything the iPhone does and some things it doesn't. But from pure developer standpoint, I think in general, especially for people new to mobile development, it will be easier to build apps for Windows Phone.
Mainly because development is lower level on the iPhone than on Windows Phone 7. For example, memory is not managed for you on iPhone but it is for WP7. So there will be inherently less crashes, and developers [therefore] can spend more time on what they want their app to do rather than tracking down memory leaks.
Because of Silverlight [Microsoft's interactive web application environment] and XNA [for developing games on Windows and Xbox], of all these available design tools, including Microsoft tools that let you import directly from Photoshop and Illustrator, all of this means that people can go directly into a WP7 development cycle. You don't get the same kind of design experience from the iPhone.