Wednesday, November 19, 2014

Android vs iOS

This can be a nearly religious subject for many people. But I'll break my reasoning down to why I prefer iOS.

First there are the technical reasons. When an android device manufacturer get the latest version of android that does not fun on the device, they start with the device drivers. Many of them come from QUALCOMM and Texas Instruments. The OS does not work by default unless the phone is purchased through Google play and is a Google enabled phone. There are a few of those such as the Nexus and certain Samsung phones but you pay more since the price is controlled better so the price of the device is very equivalent to an Apple device. The Motorola phones are getting close to having the ability to upgrade the OS directly but they aren't quite there. Any bugs in the device driver must be fixed in android or the applications. After a month or two of fixing bugs finally the device manufacturer can deliver the newer version of android to their customers. What I don't like about this is where the fixes go. Sometimes it makes sense to fix a bug in a device driver in the application layer, but more often than not it should be fixed in the device driver because those fixes are not portable between devices. And since each device manufacturer makes the modifications themselves those changes do not get percolated back to the android code base. It's a problem that Windows has had for years, but because Microsoft made all of the changes in the OS those modifications went with the OS and weren't solely owned by the device manufactured.

Apple on the other hand has control of the entire stack, which enables them to fix the bugs in the device driver. If they can't fix it in the device driver and there have been cases of this, such as the change of accelerometer chips, then they fix it in an application (Or for a while left it up to the application developer which was absolutely terrible). But this is where having complete control of the devices and the OS comes in handy because they have a small subset of devices (although it is growing and fragmenting but not near as bad as android) and making a change in the application layer isn't a huge deal.

The second technical reason is fragmentation. Because there are so many different devices and device manufacturers and they have the problems mentioned above there is a huge amount of fragmentation within android. This makes it very difficult for developers because an app that works on one device may not work on another device. Windows has had this problem for a long time but came out with much fewer operating systems so the problem was mitigated and as I described above the changes for the device drivers were made in-house. And Microsoft actually did a very good job insulating the developer which android has not. What this means is that users of applications suffer because applications may not work from one device to another and application developers life is pretty difficult. Most users in fact are running an older version of the OS. It's very typical in android space for users to not upgrade their device from the default OS that shipped with it. Now this does have some advantages because it's typical that a newer OS is not faster and by upgrading to the latest OS the older hardware has performance issues.

The third and final nail in the coffin for me is security. As of the time of writing this blog post android has no security to restrict applications usage of services on the platform such as camera, GPS, contacts etc. personally I view this as a non sequitur because without security it isn't something that I can use. This is compounded because of the android app store model. Apple scrubs each app very thoroughly which is not fun for the developers because they don't know if it will get accepted to the app store. But the advantage of this is that generally apps with malicious intent don't get through. It also helps that Apple is very draconian and once they find an issue they remove it. So the chances of downloading an app that will maliciously use services of the device is very high. Now I know android is working on a fix for this, and there was a version of it that some beginning stage of implementation but it was removed to be implemented from scratch and has not returned that I am aware of.

So there you have it, the reasons I can't even consider android. I would consider Windows phone over android.

Now some of those reasons above are reasons why other people can't consider iPhone, such as the lack of openness of the platform and app store. Or the lack of a user changeable battery or upgradable memory. I hear you and I totally agree but as I mentioned the App Store is a blessing in disguise for most users, especially those that don't want to dork around with their phones endlessly, and the memory and battery issues usually aren't much of a problem because the conclusion I've come to is the phone really only last three years anyway and at that point the resale value of an iPhone is considerably higher than android.

The other reason is time. Let me tell you a story. Back in 2003 because of the MS bash virus and a few other things the Missus' computer needed tweaking nearly every weekend. A Windows update would come out and it would break the printer driver or something. After what seemed like a couple years of doing this it seem normal, then she needed a Mac. Long story short why she needed one is her work used Macs and fonts between Mac and Windows are not the same. After a couple weeks I asked how things were going and she said fine. In month went by and she didn't ask for any assistance. I asked her how it was going and she said fine. This happened a few more times and then she said something that stuck with me since then, "it just works." Since then I've switched and it was a difficult transition because I thought everything was on Windows but I found I use Windows less and less. I still use Windows for certain tasks but "it just works" and I find that true with iOS as well. I can't tell you how many friends are using android and are constantly fussing with things. IOS and Mac are not perfect and you will run into things but this is my experience.

No comments:

Post a Comment