Skip to content

Back to iPhone (Part 2)

November 16, 2011

Here is part two of the series for you, the first part is here.

The next part after this will mainly be some summary points and some opinion I feel should be put down about both companies.

OS Asthetics

No two ways about it, Android is not pretty. Android 4.0 attempts to fix some of this, but it still feels like it’s a skin over the ugliness behind. A lot of Android’s controls are modal, which shows its heritage of a platform initially for low-resolution phones and so there are constant sheets popping up in front of the main display which disrupts the flow. The scroller thumb also has to be one of the most annoying controls in any mobile OS. In addition, even though users can install new keyboard interfaces, the iPhone keyboard is still more responsive and has better hit zones and heuristics that any keyboard I could find on my Android, and believe me I tried a lot of keyboards.

I find the asthetics of the iPhone UI pleasing and, as I’ve said before, things tend to be consistent so you rarely have the “What do I do here?” moment. Input tends to be inline and the drag scrolling (with the velocity component) works as it should.

The iPhone shines here, you don’t spend time thinking that it works so well. The best interface is not one that someone consciously loves, it’s the one someone doesn’t notice. When people notice your interface, it tends to be because it gets in the way or some aspect of it annoys them.

The App Store

Here’s the topic I wanted to avoid.

Apple’s App Store is not fantastic, but it’s pretty good and reasonably well laid-out. Search is annoying at times, Genius seems random, but by and large it does what you expect. The policies put in place make it a closed ecosystem and in some ways that is good. Apps bought through the Apple App Store do what they say they do and they tend to be of pretty good quality due to the review process put in place. Although I concede that there is probably a majority of semi-useless rubbish on the store (preempting this comment), there is so much in there that there are a huge amount of quality, well supported and, yes, cheap applications for your iPhone. I still believe that some of Apple’s policies (like the in-app purchasing and Kindle saga) hurt consumers more than anyone else and I wish they’d change their mind on this, but it is their ecosystem, their rules, and you need to understand that if you want to take part. Apple has softened some of the other policies that previously annoyed me, such as the virtual machine restrictions, which has shown that Apple can listen to their customers and developers on some occasion.

Now. The Google Android App Store. Hmm. Before some smart-Alec decides to tell me that “the Amazon store kicks butt dude”, I’d like to point out that I’m not in the US, therefore due to some reason (US branded data flow?) I cannot buy and be sent electronically an application for my device from Amazon (even though they can send me processed dead trees by plane to my door), so the only real option is Google’s Android App Store. So. Here we go.

So this is an “Open” ecosystem. Why is it so hard to use, navigate and find decent software? There are few compelling apps (that are not games) in the store and so many, even top-selling, applications are poorly supported, ugly and crash all the time it’s just not funny. The major good applications are official ports of iPhone applications and/or sometimes copies (or blatant rip-offs) of iPhone applications. There are even copies of the same application, under different names, submitted by different people and there is seemingly no recourse to the poor person who actually spent the effort to write the application. The Android App Store provides the application uploader with the ability to exclude certain devices in a nod to the fact that compatibility between handsets is a problem. As for the “New Applications” section, just don’t go there. There seems to be no oversight in the store, I doubt anyone at Google spends any time or attention on it and who knows what is ending up in there. The trust factor started to be such a problem that I stopped buying, or even downloading free, apps altogether.

This brings us to a common topic between both these stores, which is the race to the bottom on price. If your application that you wrote sells for $0.99, how many copies do you need to sell to recoup your time including the time it takes to support the application? As a developer, I cannot believe that people expect this, and on both stores I see comments like “$5 is a rip-off for this”. Really, you can buy a cup of coffee and a donut for that amount, but an application that you may use for the next month is not worth $5? That shows that some people just don’t value their time.

The Android store is the worst; if you go to almost any paid app and look at the reviews, you’ll see things like “This app sucks and is too expensive, try ABCDE which is a clone of this I wrote and is free!” (Well you would if you could see the reviews through all the spam that is posted in there). The stereotypical Android user puts little value on paid software and wants everything for free. I’d hate to try and sell an app there.

Development

Here is where Android should have a chance with me. Why? Because I HATE Objective-C. I find the syntax unappealing and the extreme looseness of the C underpinnings awful. Late binding all function calls is an odd thing when you must compile a monolithic app and serves little purpose but to slow down the application needlessly. Android applications are based on Java and I like using the Java language on the whole. It’s syntax is easy for most people and I’m a fan of the idea of virtual machine compilation.

What I don’t like is the Android development environment. Let me state this clearly, I dislike Eclipse with an intensity I can barely describe (When I found out that a job I was going for was mainly Java, my first question was “Do I have to use Eclipse?”). Aside from that, UI layout follows that stupid expandy layout panel method which I’ve come to loathe from Swing and other Java UI toolkits. Testing your application on the emulator is painful. It’s slow, the debugger drops out unexpectedly and it takes forever to start.

One thing I’ll give some great credit to Apple for is XCode. I can code, build GUIs easily, debug, profile, simulate all in XCode and it feels easy. It has so many performance tools that are easy to work that come with it that you find yourself profile “just to check” which no-one ever does (people are prone to pretending they are dying in order to avoid profiling application performance). While some of the changes in XCode 4 were jarring, it quickly became apparent that some things had become much easier because of them.

If XCode does not make programming Objective-C fun for me, it at least makes it palatable. I tend to drop into straight C or C++ for the real guts of an app still, but I can do a passable job. GUI layout in Eclipse, however, makes me tear my hair out in frustration in contrast. In the end, you drop to XML, tweak like mad, and it still looks terrible.

Most importantly, even with the indirectness of Objective-C function calling, the people from Apple have made a pretty fast and responsive language to write applications in and at the moment, even on a dual-core 1.2GHz ARM chip, the Android Dalvik/Java thing still feels slow and laggy in comparison.

Stay tuned for the final part…

Advertisement

From → Technology

2 Comments
  1. I have to say the only two gripes I have with the AppStore on my iPad, aside from not having a version of iMame4all for non-jail broken devices, is the inconsistent filtering options depending on how you arrived at a particular search result and the fact that it loses it’s place on the AppStore when you buy an app and have to open up the AppStore again. Actually it would be great if did not exit the AppStore each time you made a purchase.

    Other than that it is easy to find the premium, must have, and good bargain apps.

    Looking forward to Part 3 : Mission To Moscow

Trackbacks & Pingbacks

  1. Back to iPhone (the Last Part) « Old Dog, New Tricks

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.