This past week I went to a meeting at Trifork about Windows Phone 7, with very big expectations. As an enthusiastic .NET developer the prospect of Microsoft “getting in to the game” of phone development is incredibly interesting. My thoughts before the meeting was that I would probably be talked into buying one right off the bat, so I could get started with writing my own apps.
The meeting started out great with the presenter being all smiles, and with a lot of praise for the phone and the experience he has had playing with it and with the developer tools. He was also happy to show a little app he had written and talked about the nice experience of working with the developer tools and MVVM light. In spite of the presenter being happy about the product, quite a bit of the talk ended up revolving around limitations arund the software that you get out of the box, as well as limitations for the developer.
Tombstoning
One of the things that got a lot of attention was how WP7 uses a tombstoning model. This simply means that no two apps are really open at the same time (in order to save resoures and power usage) but it is possible to fake regular app switching. Shortly put an application has events that notify the developer when apps are activated and deactivated, so they can maintain state through eg. isolated storage.
The pros of this model are that it is possible to limit how many processes are running, and therefore the use of resources. On the downside it makes it hard or even impossible to do certain types of applications because you might need the application to continue loading/playing in the background.
Basic features missing
As I wrote above I was expecting to be impressed enough to want to buy a new phone after the meeting, but it didn’t quite go that way. Missing features like copy/paste, danish dictionary and danish keyboard along with no clue about when there will opened for services like Zune market in Denmark killed my buzz. I know all of these things will be part of the package eventually, but I really expedted that Microsoft had been further along. Even though iPhone had the same shortcomings at first, I really think Microsoft need to get there fast in order to catch up.
Silverlight is Silverlight is apparently not Silverlight
One of the important features of Silverlight for me is that it, as its original name WPF/Everywhere implies, should be able to run anywhere. Because WP7 was developed at the same time as Silverlight 4 it is running its own special version of Silverlight called Silverlight 3.7 – which naturally means compatibility issues. On top of this Silverlight can only be used to build apps on WP7 – not to be run from websites through the browser. Oh how sweet it would be if only Silverlight was just Silverlight as the name originally implied.
new Market()
It comes as no surprise that like Apple has Appstore and Android has Android market, Microsoft will also be starting their own marketplace that needs to start from scratch. The good news is that by enabling .NET developers to get started without much effort, I expect the market to grow very fast. The bad news on that front is that market will be the only way to install apps, it will cost $ 99 a year to be able to publish apps and in Denmark we can only “sell” them for a grand total of kr. 0,-. The thought that we will pay to work for Microsoft by improving their platform then kind of crosses my mind.
No more mr. Moody
Well not that I got the ranting off my chest, Ill get back to the good news – and the fact that I do believe the shortcommings will be corrected. Even though I was initially disappointed Microsoft has gotten the user experience, hardware and system updates right. I hope will turn out to be what will help this become a successful platform over time.
User experience
The user experience when using the phone has so far gotten standing ovations all around – at least from what I have heard. Of course this is the part that must not fail, but still it is nice to see Microsoft come through, and that it seems their choices around system architecture will provide a good base for the platform.
Hardware requirements
Microsoft have come up with a pretty specific list of requirements for the hardware on the phones that will be running Windows Phone 7. This is good news because it will make it easier to make apps that work across devices, and give a consistent experience.
Windows Phone Update
In classic Microsoft style they have developed update features that basically will enable them to do updates like we are used to in Windows. This is a feature that paired with the hardware requirements will help Microsoft avoid either of the issues that some feel exist with iPhone and Android. The iPhone has so far required users to change phones quite frequently to get the latest software. Android on the other hand is stuck with manufacturers having to handle updates and with some good old versioning issues.
Conclusion
My first look at the Windows phone 7 felt like a bit of a letdown, but it seems there is a good chance it can end happily after all. After all a fair amount of the problems are limited to the fact that I live in Denmark – which doesn’t make it less irritating but still… I would definitely love for this to be a success, and I hope that things will happen quickly and I will end up writing WP7 apps in the nearest future.