I have been a Windows Mobile user since the early days of the PocketPC Phone Edition device, but with all of the new features coming to the world of iPhone and Android users, I just couldn’t resist moving over to the Android camp. So about 8 months ago, I purchased a Google Nexus One device and began migrating my Smartphone life to this new platform. There were many things I had to give up that I had gotten used to on Windows Mobile devices, but the lure of many other, more compelling features on Android was too tempting to resist.
Then in September of 2010, Microsoft released their comeback product into the Smartphone space, called the Windows Phone 7. Though I was quite happy with my Nexus One, I couldn’t just site idly by and watch everyone else sing the praises of my old friend that I had since dropped for the more attractive new comer. I wanted to give the Windows Phone 7 device a chance to win my loyalty, much as the Windows Mobile device had done so long ago with the introduction of the PocketPC Phone Edition device.
In this blog post, I chronicle my experience in moving to a Windows Phone 7 device from an Android device. As a software engineer, I think my perspective on this transition is different than that of a typical end user in that I tend to analyze what doesn’t work and speculate on how it might be improved. I also don’t use a Smartphone from the perspective of one who expects a mobile phone, and is grateful to experience the many other unexpected features. I make my Smartphone earn its monthly fee by becoming a constant companion, charged with providing a variety of services that begin from the moment I wake, to the moment I return home from my long commute. If my SmartPhone does not provide those services, it is not earning its keep and is subject to termination, which is how the Nexus One took over, and later the Windows Phone 7 device, bringing us to this blog post.
I mention this because if you are new to the world of Smartphones this post may not apply to you. It may present issues which do not reflect how you would use a Smartphone, and my criteria for selecting one Smartphone over another may be irrelevant to you. At a minimum, I may be able to introduce you to a new way of viewing your Smartphone as your “Auxillary Brain Pack”, so keep reading nonetheless.
It finally arrived, my HTC HD7 from T-Mobile. I carefully opened the rather attractive box, feeling like the recipient of the “Golden Ticket” in the movie “Willie Wonka and the Chocolate Factory”. After removing the phone, I transferred my SIM card from my Nexus One to the HD7, since I was still enrolled with the same carrier. The back cover was easy to remove, something which I can’t say about the Nexus One, which requires considerable pressure.I then inserted the battery and SIM card, and powered on the phone. All systems were go, and I began by configuring my existing email accounts.
This is one area that is far superior to what is available on Android. With Windows Phone 7, each email provider I service with my Smartphone was listed by name (Hotmail, Gmail, Yahoo!, and Microsoft Exchange) and simply required that I enter my email address and password. No additional server addresses or configuration settings were required. On Android, the process is significantly more complicated and required that I provide additional configuration settings which vary by provider.
The contacts and calendar entries (where provided) are synched and combined on the device for both Android and WP7, color coded to allow you to distinguish the source of the appointment. This is particularly useful, since I use Google Calendar for personal appointments and Microsoft Exchange for business appointments. Email is also combined into a single inbox, but this where WP7 beats Android. The speed at which email is synched on the WP7 device is notably faster, particular with the Microsoft Exchange Server. I could configure my Android device for automatic synching to avoid the wait time for the manual synch, but there are certain email accounts that I rarely check and I would not want to waste the airtime and battery power by polling these providers. In fact, I would say that my overall email experience with WP7 over the last few weeks has been superior to Android for this reason, and the ease of configuration indicated earlier.
Once I got email and calendar functions configured, I began experimenting with the other features common to all Smartphones, most notably the browser. The browser provided in WP7 is full featured and includes zoom functionality and reformatting to view a single, double tapped column. This is basically the same behavior provided by the Android browser. However, the time required before you can begin viewing some part of the web page is abysmal on WP7. Even with a WiFi connection, I find myself staring at a white background as the progress indicator advances. With the Android browser, I am able to begin reading text far earlier in the download sequence of the web page, while the remainder of the page continues to be downloaded and rendered. This is the same complaint leveled at Internet Explorer on the desktop when compared to Firefox, so its not that surprising that the same limitation would emerge on WP7.
Your next inclination, might be to attempt to synch with the contacts stored locally under Outlook, just as you might have done with a Windows Mobile device. Unfortunately, this capability does not exist for WP7. Since I have already migrated my contacts to remote servers (sometimes referred to as the “Cloud”) this was not a problem for me, but may be for others.
One thing that is just totally absent on Android is the notion of a media library that is automatically synchronized with your desktop. Yes you can copy your media files to your Android device manually, but it requires you to understand the notion of mounting the SD Card file system, while making it unavailable to running applications until it is remounted. This is hardly user friendly. I also find that even after I copy media files to my Android device, that I am required to wait a period of time until the device locates the files and makes them available to the media player applications. This period of time varies, and can be a source of frustration when trying to quickly confirm a successful file transfer.
With WP7 you simply indicate where you media files are located on your desktop and they migrate over to your device the next time you connect via USB or wirelessly (if enabled on your desktop). This includes the transfer of newly downloaded podcast media which resides on your PC. Unfortunately, podcast synching is only triggered when the synchronization process with the WP7 device is initiated, which means you will have to wait additional time for the download from the podcast provider to be completed, before the file transfer to the WP7 device can be initiated.
Also, if you listen to audio books in MP3 format, the only way to get them synched to your WP7 device is to include them in your music collection. This means, however, that you will not inherit the feature of resuming playback from where you left off on a particular audio book title. This is a shortcoming that could be addressed by another media player application purchased from the WP7 Marketplace. To my knowledge, however, no such application exists yet.
I am a casual Facebook user, as in someone who scans the Newsfeed and occasionally posts a witty comment. I also use Facebook to share pictures. That being said, I was initially reluctant to provide my WP7 with yet another account from which to access my cloud data. I was encouraged, however, by the apparent integration of the Facebook Newsfeed with contact information. When you access a contact, if they have a Facebook account, their Facebook profile picture is automatically downloaded, along with the posts to their Wall. This information is then integrated with their contact information in a separate “what’s new” section, along with the usual contact information. The information is very smartly segregated so you are not forced to read what your friend did on the weekend, if all you want to do is give them a call.
A suite of Office Apps are included out-of-the-box, including Word, Excel, PowerPoint and OneNote. To my surprise, I find myself using OneNote more than any of the other apps to make lists and take quick notes. A note can then be displayed as a Live Tile on the WP7 home screen, making it very easy to access.
My initial impression of the Live Tiles was that they appeared childish and unimaginative. Here was the 4-inch display on my HDC HD7 being used to display an oversized, monochromatic block. It seemed like such a waste of valuable screen real estate. What changed my mind about the tiles is two things, their active information content (thus the name “Live Tile”) and the speed at which I could easily access them.
If the application associated with the Live Tile provides such support, the tile can also be updated to indicate the status of the application, as in the number of outstanding emails or voice mail messages. On my particular device, scrolling of the Live Tiles is fast and smooth, to such an extent that I don’t feel the extra space that they consume is restricting the number of applications I might have access to on the Home Screen.
I generally confine my gaming time to PC games, but I heard good things about the XNA Framework and I wanted to check out the quality of the graphical content and the overall game selection. I must say, this is one area that WP7 is far superior to Android. From its introduction, the selection of available WP7 games was quite impressive. The games I tried performed well and the touch screen worked well as a game interface. I tried a few games with an orthographic perspective, and the level of graphical detail exceeded my expectations with no discernable impact on performance when compared to the simpler graphical content of 2D games.
Of all the criticisms I could level at WP7, my biggest is the lack of multitasking. If all you are doing is playing music with the built-in media player, you won’t notice the difference since music plays in the background, even as you access other applications. If, however, you want to quickly access the home screen to select a Live Tile for a particular application, and then return to the original application and continue where you left off, you might be disappointed. Depending on the application, when you return to the original application it might put you at the same point where you left off, or it might force you to endure the same splash screen just before you are dumped back into its top level screen.
The voice dialing feature on WP7 (activated by holding the Home Screen button for a second or two) is implemented just as it should be. Unlike Android which requires that you look at the device to read the recognized name and press an onscreen button to confirm and initiate dialing, Voice Dialing on WP7 reads the identity of the contact to you, along with the types of available phone numbers. You then respond by speaking the name of the desired phone number (e.g. “home”, “mobile”, “office”), if more than one is available. The key is that all of this can be accomplished without looking at the phone and taking your eyes of the road. And if you are using a Bluetooth headset, your conduct this conversation with your WP7 device through your headset’s microphone. The Voice Commander product included with most Windows Mobile devices provided similar functionality, and I was pleasantly surprised to find that it was not lost with WP7.
For sometime now I have been carrying both my Android and my WP7 device, Android clipped to the left side of my belt, and WP7 to the right. I wasn’t doing this just to appear the Uber Geek, but to provide certain applications that I could not obtain for my WP7 device. Those applications include the following (hopefully someone is listening):
Other than the lack of Multitasking support described above, there is nothing that WP7 couldn’t do to address these needs with the right application and in time such apps will begin to appear in the WP7 Marketplace. I for one will welcome this day, so that I can return to slinging a single Smartphone.
Re: Using the Kinect Sensor to Calculate Body Segment Angles
Hi Mr.James Thank you for this useful information. I just have problems in downloading the code. I...
-- Senior Student
i´m new in this kind of project with the kinect and i´d like to check your program, because i want to...
Thanks Mr. james for the reply, I'm very grateful with it. Do you mean that I should create a virtual...
You could just initialize the vector vectorJoint1ToJoint2 with a static value the describes the dimensions...
-- James Y. Wilson
Hi all, I understand that this work fine if we can have 2 vectors from the 3 joints position. But what...
Hello Browniee, Yes, ankle and knee segments are included in the skeleton. You can actually see these...
Hi Jim, Love to see more posting like this from you :)
is this possible with SDK v1.5.0 and can i also manipulate this to get angles for the knee and ankle...
Hello Sriram, You should download the complete SkeletonAnalyzer project file and build it to verify...