View Single Post
  #1 (permalink)  
Old 03-17-2010, 11:23 PM
cohowap's Avatar
cohowap
PPCGeeks Regular
Offline
 
Join Date: Feb 2007
Posts: 137
Reputation: 395
cohowap is becoming a PPCGeeks regularcohowap is becoming a PPCGeeks regularcohowap is becoming a PPCGeeks regularcohowap is becoming a PPCGeeks regular
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Understanding what WP7 is and the true pros/cons.

NOTICE: THIS IS A LONG POST FILLED WITH OPINIONS AND FACTS. FEEL FREE TO EXPRESS YOUR OPINIONS AND THOUGHTS.

I've heard alot of people sitting around saying how much Windows Phone 7 will suck, and how complete of a failure it will be etc.. etc...

Now, I want to get it clear that in no way am I defending Microsoft in their decisions, as that is their part to do, all I am doing is taking the concepts provided to us and offering a developer and users view.

So everyone here knows, I am a certified .NET developer for a subsidiary of Microsoft (I am not affiliated with the Windows Phone Series, I am learning all this the same time you guys are). I have been using Windows Mobile since 2004 (iPaq) and had my first experience with a smartphone was the PPC6600 (had every keyboard phone in that series upto the TP2).

My goal here is to just provide a little insight to what everyone is complaining about and look at the positives. Since the negatives are easy to find (all you have to say is it doesn't have, obviously something that has it is better right?). The reason I really want to do this is because we are going to be the ones starting the hype, and it seems Microsoft doesn't want to explain where they are going with this quite yet.

To begin, Microsoft has always been a developer focused company. Their products always come with some sort of exposure to an API set or developer tools. This has proved to be a valuable asset to their products as it offers expandability to their products that other products usually don't offer or provide. By doing this, they draw more attention to people who can assist in support, expanding and selling their products. Now, it seems right now that Microsoft leaned away from this model, but I will try my best to inform you with a little more knowledge so you can better understand your opinion. And I am leaving it at that, you have your opinions and I have mine. I am not going to try to take your opinions away from you.

With that being said, I'll get started with a list of stuff we all are "disappointed with".

1) No Multi-tasking.
2) No Side-Loading Applications.
3) No Backward Compatibility.
4) No Copy and Paste.
5) No file system.
6) No removable storage.
7) No USB Drive Mode.
No 3rd Party UI Replacements/Customization.
9) No Native Code Execution.

If you think of more, feel free to PM me or reply and I'll do my research and add to this. But I think these are the major ones. So lets get into this.

1) I'll start with the hardest one, No Multi-Tasking.

First, what is Multi-Tasking (http://en.wikipedia.org/wiki/Computer_multitasking). In short, Multi-Tasking is the ability to share CPU cycles with other processes (or applications). In current windows mobile fashion, this would allow you to say run a task manager while surfing the internet. This concept isn't new, it's been around for quite a while, and the concept of it has led to great things such as Multi-Core/Threaded CPUs.

Now, the down side of multi-tasking other processes aren't being used are eating CPU cycles, which can only occur 1 at a time, away from processes that are currently being used. In most cases, this will severely cause performance decreases to a user (ever encode a video and try to do something on a P3/nonHT P4 CPU?). The concept that Windows Phone 7 took is to *Limit* the phones ability to multi-task. By doing this, they are allowing third party applications to get the most CPU Cycles it can to provide a faster, more user friendly and most important unlocking the ability to create more advanced and intensive experiences with your phone (things such as Video Streaming, Rich 3D Gaming, Speedy Button Presses, Faster browsing of emails, etc...)

Simply put, multi-tasking comes at an expense. For example, you goto ppcgeeks.com it takes 15 seconds to load so you do a quick dip and check your emails. The reason it is taking 15 seconds to load is because there are other processes eating away at the CPU Cycles. If you take that away, the page will load significantly faster, say 3 seconds, in which you wouldn't even have time to load your emails, thus negating the need of multi-tasking. Now it does and will have it's uses, but I hope one can understand the benefits gained and understand if you truly do need multitasking.

2) No Side-Loading Application.

The cons of this are pretty simple, you'll lose the ability to load apps just downloaded from our favorite sites. I don't see this as a big deal from a User standpoint, as you can easily flip over to the market place and install from there, no real biggy. It also gives you a place to store all your applications wherever you go, no need to waste storage on CAB files sitting around. Moreover, it will give you access to a central location to obtain these applications. Instead of having to dig around and googling, looking for working links, having 10 sites you have to register for, give credit card info to etc...

Where I see this as an issue is from a Developer Perspective. In order to post apps on the Marketplace, it will cost developers upwards of $99 per year. This will deter a lot of freeware developers, as they now are faced with a cost associated with the development of the application.

However, in return, Microsoft is giving a much larger audience to the developers to sell their applications. Something I am defiantly willing to drop $99 bucks on.

3) No Backward Compatibility.

There's a lot of useful stuff out there, but the main reason this was done is to get a fresh start on whats out there and have developers rethink their applications and how they are presented, coded and designed to provide a better experience. Moreover, after playing around with the development tools, it became rather apparent that Microsoft really wants a user experience that is common through out the phone. This will give people the ability to load an app and immediately understand how it works. This also provides a framework where Windows Phone can better manage and clean up resource which weren't properly cleaned up in the third party code (No more need for MemMaid type apps as memory will be released and cleaned up by the Garbage Collector).

4) No Copy and Paste.

This was disappointing news to me, and I am still having troubles understanding why it wasn't implemented. But, what came out of it, I don't have experience with, I can only imagine. So we're told that Microsoft has implemented this new "Smart Text" feature. Which makes URL's actual links, Phone numbers are shortcut to a contact, Addresses will open in Bing or something.

In the end, the only thing I can think of missing by this is tossing an address in an email to send to someone. Still, being at that, there are a lot of uses and there are some neat concepts of implementation that I believe this will be a feature added with due time.

5) No File System.

This isn't really true, there is a file system, it's just blocked off from third party applications. This isn't anything new, infact the Zune does it, XBox does it and several other pieces of hardware do it. What is offered is something called Isolated Storage (http://msdn.microsoft.com/en-us/libr...sy(VS.80).aspx) . What Isolated Storage provides is file security. This prevents corrupted files, virus's, data/file security and more. This can promise developers that their code won't be stolen, decompiled and hacked up (unless the Isolated Storage is compromised). In the end, I am impartial to this, this doesn't effect 95% of the users out there. The only people it truly effects are people who don't want to pay or are looking to steal code and other intellectual property from their owners.

6) No removable storage.

UPDATE: WP7 DOES have removable storage. What it does is combines the storage card with the internal memory and treats it as a single disk. Removing the memory card will essentially cause a "Hard Reset" to the phone.

I am not sure how I can provide positive to this, as more is better as far as storage goes. I don't see why Microsoft can't allow removable storage for media aspects. Songs and movies get big and it is a lot easier to manage on a removable median. Again, I am only going to say this might be something that is allowed in the future. Sell your SanDisk stocks, because with iPhone and now Windows mobile taking this approach, we're looking at millions upon millions of units that won't be sold from these companies. Moreover, I really would like to hear how Microsoft plans to be able to allow us to use Office Mobile when we can't easily transfer files from the PC to the Phone, and lets hope they don't say cloud syncing. I'm sure this will be done via the Sync Software.

7) No USB Drive Mode.

This is understandable with the concept of Isolated Storage. Thus, the ability to protect users assets comes at a cost, and this is one of them.

No 3rd Party UI Replacements/Customization.

This is interesting, but understandable. The customization efforts comes within the Hubs concept. This will keep the experience of the phone the same not only across the applications, but across the different handsets. It also guarantees that code written for an HTC device will work on a Samsung device. This is HUGE from a developers standpoint as testing on 100 different devices isn't really a feasable option. Prime example would be SPB Mobile Shell, who had a lot of difficulties getting the product to work correct on the different devices. This is resolved, and it will provide a way, not only to OEMs but other thid parties to develop better applications that work across all devices. Moreover, the UI Replacements out there require a significant amount of resources. Spawning hundreds of threads to do various stuff that just isn't needed since the user isn't even looking at the presented data. While some customization is nice, completely redoing the concept of the phone comes at cost and that cost is performance on the device. How many of you bitched that your phone is slow a lot of the times? That Sense UI is a resource hog, that Windows Mobile is crap because your phone is slow? Well a lot of that comes from this alone.

9) No Native Code Execution.

I don't see why this is even an issue to anyone, including developers next to developer who don't know .NET will have to learn. .NET has proven itself over and over, native code isn't needed anymore. The addition of Silverlight and XNA and the potential that it will bring to the table is well above anything that native code execution would bring. Granted, you won't be able to hook and consume processes that don't belong to the application, but the need for that is rare.

So I went over a lot of things that are being talked about on the forums. And no one is talking about the good things that this brings so I will touch on those.

1) XNA and Silverlight. Both of these technologies have been amazing at the very least. XNA has brought a robust and portable development to games. The ability to develop a game for Windows/Xbox/Zune and Windows phone, while maintaining 90% of the code base is amazing. This will allow us to see a lot of neat stuff on this phone. Silverlight has been only going up. This technology is one of the best products that have come out of Microsofts campus. Silverlight allows developers to create applications that function like windows applications but have the sleek looking design and looks of high end websites. It brings the best of both worlds into one place. Not to mention, we've already seen the Netflix app, which I personally have been waiting to see forever, and now that Silverlight is available, we have it.

2) All your life in one place. Yes I said it, this phone is really pulling all your interests, friends, family, work, business and entertainment into one spot. Something that has only been done by installing a ton of applications and flipping between them. With the implementation Windows Phone 7 has brought, we are now able to do what we all enjoy a lot faster. As presented, we will have access to a giant amount of data presented to us in an organized and easy to use fashion. I am truely excited about this.

3) Notifications. This was a cool concept that was previously used in desktop windows to inform us that our anti-virus is out of date or something is wrong with our system. The windows phone implementation is taking that to a new level, offering developers to consume and create notifications.

4) Zune. Zune. Zune. As I am a Zune HD owner, I am excited about this. I listen to FM Radio every morning and now I can do it wherever I am with my Windows Phone. Moveover, we will have access to the Zune Marketplace, which is by far the best Music market place out there. This functionality alone, puts the Windows Phone device into the category of top end/high notch PMP's.

5) All the other cool iPhone stuff. Yes I said it, iPhone stuff. Now, lets think about this. I hear everyone say if they wanted an iPhone they would have bought an iPhone. Now why is iPhone so popular? I'll tell you. 1) The iPhone is speedy, it loads apps fast and it functions great as a phone. You don't want this? 2) The amount of apps and quality of apps is up there. This is because the SDK for iPhone is intuitive and focused towards developers wanting to create applications. With the XNA and Silverlight SDKs, Windows Phone falls in this category, how can you not want this? 3) Sleek, Stylish and Universal design. This allows us to understand how to use an application, makes it feel like second nature to use any and all applications. This sounds pretty good no?

Now, I hope you can better understand what you like and dislike about Windows Phone 7. And I really hope I better equipped all of you in deciding which route to go. If this is a negative post to you, and you can't see the benefits of the decisions Microsoft made, then I will tell you WM6.5 or Android is probably best for you. However, if you are one to think through why you are upset over a feature and give it a second thought, maybe it's not that big of a deal?

Anyways, sorry for the huge post and thanks for reading. I just wanted to express my thoughts and give you guys (or people who don't know) and understanding of what is happening. Also keep in mind that it takes time for perfection, and I'm sure we'll see alot more with future releases.

Feel free to ask questions and I'll see if I can dig up answers and thanks for reading.

Last edited by cohowap; 03-18-2010 at 10:42 AM.
This post has been thanked 26 times.