So, I’ve been a WP7 owner for just a little over half a year, and here is what I think. In general, I really like the phone and I think I made the right choice getting this phone instead of the iPhone or the Android.
I chose not to get an iPhone because Apple products cost much more for the same hardware and they also never lower their prices over time. Also, I just don’t find the iPhone to be that attractive, ergonomic or practical. I also have this preconception that the iPhone is extremely fragile. I don’t know if that preconception is justified or not, but I just know that I’ve seen a lot of people using iPhones with shattered screens and not so much with other devices. People are so scared of damaging their iPhones that they put their “revolutionarily” thin iPhones in bulky cases and when you do that the shiny glass panel on the back becomes completely pointless.
I didn’t choose the Android because that platform is so fragmented. The Android OS has to support all of those crappy low end phones that don’t have GPUs so Android never got hardware accelerated and probably won’t for some time. As a result the OS is extremely choppy.
So, I went with a Windows Phone 7 and I really like it. The UI is buttery smooth, simple, and clean. On the development side, their SDK is really nice and easy to work with. You develop Windows Phone 7 apps in C#, which is a really nice language, and you don’t have to deal with pointless low level stuff that just eats away at your time. Out of all the operating systems out today, I think that WP7 has the most potential. As a developer I also got access to the Mango beta. Mango is going to be a really big update. A lot of things will unlocked to the developers. For the users of WP7, it adds a lot of features while maintaining its clean and simple layout. Everything is really well thought out. However, here is why I’m not recommending WP7 to all my friends just yet.
- Despite how good I think WP7 is, I am also aware that it is still a very risky thing to commit to. It is still an early adopter product and at the moment is still missing a lot of features. That is going to improve a lot with Mango, and I feel that as they push out more updates, the update process for users will get much smoother.
- Being on time – This has been my main concern with Microsoft recently. WP7 is pretty late to the market. Everybody already has an iPhone or Android. People are likely to stick with what works and so I feel many people will feel awkward switching to WP7. The updates to WP7 have also been massively behind schedule. I guess most of that is due to the phone carriers but people don’t care. People associate WP7 with Microsoft and that’s who they’re going to get pissed off at.
- Better betas – The Mango beta is great on the software side, but unfortunately, the firmware was not updated, and according to people on forums the device manufacturers are eventually going to have to do that. So while the beta SDK provides a combined motion sensor API, there is no way to actually access the Compass in real hardware and you have to develop it in the emulator.
- I hate developing things in the emulator. The emulator gives no indication how your app will perform on the phone. Sometimes code more optimized for the emulator will actually perform worse on the phone. One example is people using integer arithmetic to try to speed up their computationally intensive code. But surprisingly, in the phone hardware, double precision numbers perform just as well as integers. Also, I want to try out the Combined Motion Sensor API as there are some really cool things I want to do with it for the Grantophone. I don’t want to be late to the market, but I also don’t want to do the majority of the testing on the emulator. In the real world, sensors get all kinds of noise and I want to see if the Combined Motion Sensor API is really as good as I want it to be. When testing in the emulator, you don’t get noise.
- Better reports – I’ve resorted to 3rd party monitoring tools for my applications because the official reports are so bad. In fact, for the Grantophone, I still have no data as to how many downloads I’ve gotten. I’ve been e-mailing back and forth with the support team for a couple months now and they still haven’t provided a fix. Extremely frustrating.
- Firmware – This is something I got extremely pissed off about. After the NoDo update, multi-touch broke for a lot of phones. The phone is no longer able to sustain 3 or more fingers and has ruined a bunch of apps. I’ve gotten a few reviews for my Grantophone and I got extremely upset when somebody gave me four stars out of five with the reason being that my app doesn’t sustain for more than two fingers. It makes me feel extremely frustrated that there is this glaring bug that I can do nothing about. I am trying to push UX forward with my apps by really using multi-touch as opposed to single touch. One example of this can be seen in my Fluid app where I created a completely custom UI that allows the user to simultaneously adjust multiple sliders and drag the fluid. I have always tried to push technology forward and I just wish I could have some help from whoever is responsible for this bug.I guess with this problem I am kind of in the same situation as MS with their updates. There is somebody else responsible but you are taking all the blame for it not working correctly.
Anyway, these are my thoughts. I hope I didn’t paint a negative image for you if you’re considering a WP7. I am aware that this is an early adopter product and is going to improve quite a bit over time. I know that I am going to be recommending WP7 to a lot more people once Mango comes out.