Thoughts about the Windows Phone 7 Series

First off, I need to say that these are my personal thoughts. They might contain erroneous information, they might be way off mark and they might be missing out on a lot of things, but this is what I am thinking of the platform at the moment. I also have to mention that however this post will sound, I have VERY high hopes for the phone, and I think that it will be very successful. One should also remember that it is not yet released so a lot can happen, and also that it is the first release of a whole new thing…

Please read the whole thing, don’t just take out small parts of the post. I will try to put down as much of my thoughts as I can in this post, and if you just read parts of it, you will probably get a somewhat distorted view…

The hardware

The phones hardware is speced pretty nicely, and by limiting the hardware that can be used, Microsoft can create a much more efficient OS. It also makes it a lot easier for us developers to build for the platform. We can make a LOT of assumption about it. We can assume that there will be a fast processor, that there will be a good GPU, that there will be a minimum 5MP camera, 4 point multi-touch and so on. Probably the most important piece of assumption that we developers can make is about the screen resolution. There will only be 2 resolutions, 800x480 and 480x320. This makes it a whole lot easier to build applications.

Apple has done this forever. They only build their OS to work on their hardware. And by doing so, the don’t have all of the problems that Microsoft has. They don’t have to build rich driver support and thus don’t get flamed when a partner creates bad drivers. They can make huge assumptions about the platform it will be running on. Microsoft can’t even make basic assumptions when building Windows. Not even about really critical things like CPU architecture or GPU architecture. So by limiting this on the phone, the can focus on building a nice user experience instead of building abstractions for the hardware…

The physical hardware looks quite ok. There are 3 different form factors specified. The first one shown is the iPhone like factor with a big capacitive multi-touch screen and on-screen keyboard. The second is “the same” but with hardware keyboard. And finally there is talk about a candy bar style phone, which has still not been demoed. The initial phones that have been shown have looked ok, with my personal favorite being the ASUS one…

The UI/UX

The UI is based on a new design foundation called “Metro”. Metro is all about simple, stylish layout with the user experience being the number one focus. It focuses on simplicity. It uses a lot of typography to convey the message needed. There is a lot of aggressive clipping going on, which looks awesome according to me. Microsoft is also trying hard to get developers to follow this foundation when building applications. There is no way for example for a dev to change the home page. I personally think this is a two way street. The user will always get the same experience on a Windows phone. Unfortunately, if the experience isn’t awesome, it will not be awesome on any phone. So it puts a lot of pressure on Microsoft to put out sweet things. It also limits the ways that the phone manufacturers can differentiate themselves, which probably sucks for a company like HTC that has managed to re-skin WinMo to look good.

Personally, I think the UI/UX looks good and will be appreciated by the end user. At almost every session at MIX, they said that the main focus had been to think about the user experience. The UX has been moved on the list of important things, from probably place 5-6 up to 1 or 2. That says a lot.

They have also made two HUGE changes in the UI compared to other phone UIs. The UI is data centric. It is all about the “hubs”. A hub is a central place where you find things about a certain type of data. If you want to know about or work with contacts, you go to the “People hub”. Here you can flick through your contacts, either local or on-line ones. You can then edit their info, call them, text them, comment on their facebook status and so on. If you want to look at or work with your pictures, you go to the “Pictures hub”. In here you can do whatever you want with your pictures. The important thing is that all of the functionality surrounding a certain type of data will be placed in one hub. Developers creating applications for a specific type of data, can integrate their apps in that hub. So if you build a image editor, this can be integrated in the pictures hub instead of being a separate application. So the user goes to the pictures hub, selects a picture and can the pull up the image editor from there. Very nice! I personally love the idea, I just hope that the general public will as well. And I think they will…

The developer experience

Now this is obviously where I’ve been the most curios. The developer will have two platforms to build apps on. Either you choose Silverlight, which is great for “applications” and easy to use, or you choose XNA. XNA will give game developers a sweet and rapid platform to use. I am not an XNA developer, so I will stay out of this area, but I think it looks very good.

The tools for creating the applications have just been announced to be free. So anyone can just download the tools and get started. There is even a phone version of Blend that is free. So the great tooling that we .NET devs love, is now free for those who want to build apps for the phone.

The applications can only be deployed through the Marketplace. This is not perfect in my eyes, but it does offer some security for Microsoft. It makes it possible for them to verify the code, which they will, and sign it to run on the phone. I would personally have loved a way to load applications on to a device without the Marketplace. But I do see why they are choosing not to offer this. You will however be able to “unlock” a device to try out an application on a phone for a period of time. I’m looking forward to seeing how this works…

The dev platform comes with an emulator to develop on. The emulator looks like any other emulator. As I understand it, it spins up a virtual version of the phone and runs the real phone OS in there which is supposed to give the dev as close to real world experience as possible. It will also integrate with Win7’s multi-touch and offer multi-touch testing on the emulator…sweet! The emulator however does not offer us a way to work with the location api or the sensors on the phone. I hope that this get fixed before release. If not, it is apparently possible to mock those features, so there will probably be a bunch of projects for this on Codeplex if that should be the case.

Looking at actually building an application for the phone, it looks nice. Great tooling support, easy platform to work on (Silverlight) and so on. There are however some things that I feel is odd. These observations are based on the demos from MIX, so they might be off or fixed by release, but I did react to the following things.

- No default navigation animations without using behaviors. The navigation model of the application is based on page navigation. Unfortunately it seems as though the navigation won’t automatically create the sweet default animations. Instead this seemed to solved by using a behavior in one of the demos. I would personally have liked those to be the default…

- Weird little implementation detail when rotating the phone. When changing the layout of the phone from portrait to landscape (or the other way around), the UI will just “snap” to its new position. No animation. And if you wished to add an animation, you will have to create an animation and then hook up a handler in code behind to start it. This is not that odd, but with the VisualStateManager, I would have assumed that this would be handled using a couple of states. And also that the default rotation animation would have been implemented and then possible to override…

- No Bluetooth API. There is no way to access the Bluetooth as well as a few other things. So, there are some API’s missing, but once again, they might be added before launch or at least in a future update…

- No way to for example send text messages from an application without launching another window and getting the user to click send. This is really sad. I can once again understand that this feature is a problem and could incur cost to the user and so on. But I would have loved the possibility for my application to request this functionality during installation. Give the user a big ass warning with a skull and bones and so on, but at least give me the option.

There are probably a few more, but these are the ones off the top of my head. I hope and do believe that these things will be handled. Maybe not before release, but in an later update.

“Conclusion”

Even though I have highlighted a couple of dev things, I think the phone will be awesome. I think that Microsoft’s choice to focus on the user and the user experience is great. It has probably cost us devs some of the flexibility that we are used to having in Microsoft products, but I can take that. If that is the cost of creating a good experience for the user, then so be it. The most important thing with a phone isn’t the dev’s flexibility, but the end users experience. If you don’t get that right, the phone will not be a hit. I think that we can all agree on this by just looking at Microsoft’s previous phone endeavors. Windows Mobile was, to be very honest, extremely capable and flexible, but the user experience was lacking. A lot. And I include the sometimes lacking stability in the lacking user experience. So even if you have a great phone OS, without the user experience you will not attract the users. And without users there isn’t much to do…

Besides, any of the “issues” I have brought up can be fixed in the future. Some of the might even be fixed before the launch. Considering how early in the Windows Phone 7 Series era we are, any, and I mean ANY, talk about the platform should be digested with the knowledge that it might change.

I personally think that we might end up in a situation that is close to the Windows Vista launch. Vista WAS a good operating system even if it was a bit slow. People had just hyped it a bit too much and peoples expectations were a bit high. It was a BIG change from XP, with a lot of core things being changed. But a generation later, we got Windows 7. They had fixed a lot of things people didn’t like and a LOT of people love it. The phone might be the same thing, with a few exceptions. It won’t get flamed for being bad due to problematic drivers (which is not Microsoft’s fault). It will offer a great user experience that I think will be liked by the general public and cause the phone to sell well. And if the dev features lack in some small areas, this will be fixed with updates or in a second release.

And then the obvious…

I know I have to comment on the copy-paste thing. The phone currently has not got copy-paste for some reason, and might not have it at launch. It seems very likely though that it will get it at a later time if not at launch.

So, is this a problem? Well, for me not really. Of course I would have expected copy-paste. It has been in WinMo forever. It is just one of those things that should just be there, but isn’t.

So why has this become such a big deal? Well, I think we have Apple to thank for that. It took the iPhone 2 years to get it. And during those 2 years, a bunch of people used that as way to express that the iPhone wasn’t perfect. It lacked in some areas and copy-paste was an easy target for non iPhone people. Now that the WP7 comes without support for it, it becomes an easy target for iPhone people.

And what do I think? Well, I think that Microsoft has looked a lot at what people wanted and given it to them. In this case they should have realized that even though the feature isn’t the worlds most important feature, it was feature that would get the phone flamed if missing. So I think it was an error in judgment that will be fixed ASAP. But at least WP7 will have MMS from the beginning…another point that I personally used when talking about the iPhone in the beginning.

I personally don’t dislike the iPhone at all. I think it is a great device and if WP7 wasn’t coming out very soon, I would have bought one. But I still think it is/has been lacking in some areas and that it isn’t the one and only phone that a lot of people say. Best UI in the business? Absolutely! Best functionality? No… WinMo 6.5 for example has more functionality as far as I know… I do however, think that the iPhone, as well as a lot of Apple products, get away with a lot more problems and issues than other vendors.

If Microsoft had started sending off broken computers the way that Apple has done lately with the iMacs, they would have been the headline for every big newspaper in the world. Especially if the had continuously charged 30-50% more for there products than other vendors, and defended this by saying that their products are just better. But when Apple does it, it ends up on a bunch of blogs and in a few magazines and so, but the general public won’t hear it.

 

That’s it for now. Feel free to flame me in the comments and tell me that I am wrong. This is just a couple of my thoughts and opinions about the subject, and there are more…trust me… Cheers!

Comments are closed