The "D" is for "Different," silly people. Back to the real purpose of this article: there are several issues with different UIs for Android. The first of these being the confusion it creates for the uneducated user. The second is the wait for these custom UIs to be updated to include changes made to the Android platform. And the last issue is the difficulty that carriers and communities will experience in attempting to support all of these custom UIs.
The default (or development) Android platform, as seen on the G1 and myTouch3G, is very easy to spot. Most users who familiarized themselves with the G1's desktop(s) can readily tell that the myTouch3G is running the same OS. However, with Motorola introducing MOTOBLUR and HTC with its Sense UI, spotting an Android device can be a bit more difficult. Perhaps these changes are considered necessary by some companies when they think about moving forward in today's market to attract the average consumer. If every phone offers the same stock OS, then the big decision for the consumer is the hardware. If hardware becomes the focus, then the price point for the device usually rises. Remember when flipphones first hit the market? The two big decision-making factors for the consumer were the style of the phone and the way the menus worked. It is hard to build excitement for a certain product when different variations of it are continually being released. This is especially difficult when the product is actually an OS, and not a tangible object.
In recent weeks, users just barely finished getting their Android 1.6 update. Then, on October 27, 2009, the Android 2.0 SDK was announced, which means that the users will be experiencing another update in the near future. With so many updates rolling out, how will companies with custom UIs keep up? The answer is pretty simple: it's going to take a lot of focus on Android. Every time a new version of Android rolls out, the custom tweaks that a manufacturer has added to their version of the UI will have to be adjusted to incorporate the new native app and "behind-the-scenes" features. However, there is little evidence that all companies with custom UIs are allowing this much focus on Android just yet. Why does this matter? Well, the user will not have access to certain apps that are only supported on a newer platform. This also means more work for devs, because they totally need more things to battle in all their massive free time. And lastly, users have no control over how fast their phone can get updated and have to wait on the creators of these custom UIs to update, which leads to a lot of unhappiness (read: whining, complaining, CAPS LOCK on carrier/manufacturer forums). No one wants unhappiness.
Carriers and Android communities are desperately trying to keep up with all of the different UIs being released for Android-based phones. With a handful of different UIs already seen by the public eye, it is becoming more and more clear that this fragmentation could be a nightmare for both carriers and communities. For a tech savvy user, switching from one Android device to another, no matter the UI, will most likely be a snap. But then there's your non-tech savvy user, the one who often calls into Customer Service or stops by their local carrier's retail stores for help operating their device. In the case of Android, user manuals aren't too helpful; most of them focus on hardware, not what Android can do for the user. Therefore, any confused customer is likely to use the real-person resources they have to figure out how to work their device. This means that reps for their companies will need to be trained across all UIs that their devices offer. Hopefully this isn't too much to ask, but where does that leave communities? It seems that communities will need to fragment their existence, as well. Meaning, they will have to add sub categories to their forums and websites, relating to the different UIs available. The introduction of these different UIs won't bother the news sites too much (if at all), but will definitely make an impact on the way that sites offering support will function.
So tell us what you think: Will these custom UIs lead to the popularity of Android growing at a slower pace? Will we see tons of unhappiness concerning updates to the custom UI tweaks to stay in line with Android's advancement? And how do you think these custom UIs will weigh in on the carriers and communities? All that's left for me is to sit back and watch as things continue to chug along or break out into utter chaos.



26 Responses to “Android’s DUI Issues” Leave a reply ›
So far I don't see this being a issue yet. While HTC has Sense UI, aside from the apps that HTC reworked, your app should be fine. I know one of ours is almost identical minus one activity. The bottom line is during development you have to decide if you're going to use all system provided UI controls/graphics or your own, and you need to do 100% of one or the other but not both. If you build out a custom view and utilize some icons from the system and then some of your own styles for the background highlights and stuff, it may look fine on the phone you're developing on but as soon as someone releases a phone that changes those system icons, the styles you created to go with them can and will probably not look that great.
For instance, in an app we're working on, we began to use just a small bit of custom defined views/graphics so then we went through the rest of our app and even though we were using system stuff in 98% of it, we pulled those resources into our specific app, that way when someone gets a different phone our app will still operate and look fine. It's kind of a pain, but I think the development community will come up with ways to deal with it, and hopefully device manufacturers will figure out that the maintenance on their end by totally customizing something may not be to their benefit down the line... it may take a year or three to get there though.
Well, it is possible this will not be as much of a problem for developers, but I still stand behind the other claims I made. It is almost impossible to support novice users on their devices with the many UIs coming out. For instance, if they post on a forum, "How do I send a text message?" Well, depending on the UI, this can include many different steps--especially on MOTOBLUR where you need to select the kind of message after selecting the messaging icon.
This is the fundamental of an Open Source OS: to leave people do whatever they want with it, generally improving it. The point you are missing is that when a manufacturer (HTC, Motorola, Sony-Ericsson), a carrier or a group of enthusiastic skilled users (Modaco, Cyanogen) is spending money and/or time on improving Android, it is to create a better user experience and to give us more choice.
Fragmentation will happen (has started already) but it will not because of the customised UI (I don't think of many apps not working because of HTC Sense for example). It will happen because we have different devices, screen sizes or releases of Android. I think it was a mistake to release a 1.6, not that much different from 1.5 and WAY too close to 2.0.
An average Joe user, who is more likely to be using the same device for 2 years, will not be lost with a customised Android because he/she will not have any point of reference (Verizon is not targeting the G1 users with the Droid!). A power user, will find a way to revert the device to a stock Android if he/she doesn't like the customised one.
If you want to avoid customised OS and have a limited choice of devices to get away from fragmentation, there are alternative to Android!
Android 2.0 is already supporting new screen sizes, and that will be the base for all UIs to be built to work with. As for it not being a problem, it is when it comes to supporting those devices for inexperienced users. You're right, they have no reference point, and that IS the problem. It makes support confusing for them if they want to learn how to use something.
Right now, as David from Tmonews once said, "Android is confusing to grandma." We need to worry about it being confusing to grandma... iPhone sells because it is user-friendly to ALL ages. I think only being concerned with whether or not it will affect the tech-savvy people is a bit narrow of a focus.
I agree with Raphaels that fragmentation is both inevitable and in many ways a good thing, but I also see the issues c0z described as real issues right now. I tried to help out a guy earlier today who recently bought a Hero. Most of his issues came down to the fact that it's running 1.5, and the best I could do was say, "hang on a few months and you'll get 2.0!"
There's an analogous situation with PCs: not all Windows software is going to run on your particular Windows computer (more due to hardware specs than OS, but it's a similar situation). We don't question it there; maybe Android developers will need to move to more explicitly laying out minimum/optimal requirements, and users will have to lose the expectation of universality.
Good ol' "System Requirements." I am kind of worried for the day when that needs to be specified for Android-related software, but it looks like it's coming up really soon.
c0z wrote:
'[...] the user will not have access to certain apps that are only supported on a newer platform.'
Please, enlighten me - which apps would thosbe, specifically? I'll make it easy, for you; name two. And I mean true 'apps' (applications), not icon-sets, animated screen effects, etc.
Oh, and let's recall that your use of 'newer platform' refers only to variations in UI, as created & installed by handset manufacturers. I look forward to your response.
I admire yr level of snark, I really do, but it's embarrassing when it comes from your misunderstanding of the point. "Newer platform" refers to a newer version of Android-- such as 1.6 vs. 1.5. C0z's point is that it will likely take longer for users of phones with custom UIs to get updated to a newer version of Android, because the custom UI itself has to get updated first. Apps written for the newer version may not work well or at all if they use APIs that are new/have changed in the new version of Android.
See the comment from Daniel below for a case in point.
"I admire yr level of snark..." Nice one Chuck. I laughed silently.
the issue isn't the UI interfering with the app, but the updates to the OS, like how g1 and my touch's are now on 1.6 and heroes are on 1.5. If manufacturers put in their own UI that is as intertwined with the core Android OS as sense and motoblur, they will need to make updates to their UI as Android is updated, which could cause lag time. A good example of this is the CyanogenMod moved to 1.6 before it was sent as an OTA to the rest of the phones, as a result, we couldn't use apps like the T-mo My Account app becasue it was based on 1.5. It won't affect all apps, but there are some that just won't work if you are running a newer or older version of Android.
You'd think that Google would give phone manufacturers a little extra time before they officially release the latest version of Android so that they can slap on their customizations.
If they worked together, I think this could become a non-issue. If not, it will be disastrous.
I think the problem is that the newer Android versions would leak out from the manufacturers before Google was ready for "the wild" to have it, you know? Just a guess, really, but seems like that could get REALLY messy, especially legally
I would go for maintaining the same UI over different phones but adding maybe custom apps if the manufacturer/carrier decides to do.
I see this topic as the small app pre-loaded on many computers. You buy a Dell and you get a bunch of apps that "customize" in some way "the system". And you buy an HP and you will find another set of that custom apps. The average users never uninstall these app because "they came with the system!!". But the OS/UI it still remains the same: XP for example. All users in this case know they have XP as their OS.
I know this is an Open Source project but we have the risk that we get that many different versions of the UI that nobody knows what is using. Yes, for the savy users this may not be a problem... but think that the vast majority do never go further than changing the wallpaper.
And I talk of UI and OS as if they were the same thing because most people will not recognize that all these different UI have behind the same operating system.
Yes, I see an issue here. I'm an app developer and I'm currently working on a new version that supports both 1.6, but guess what? HTC Hero users won't be able to get the update, or it will force close on them or it won't even appear on the market for them, because my app does not support 1.5 anymore, it's using newer APIs. So either I have to delay the release until these manufacturers update their Custom UI (when? next year?), or I just release the update and tell hero users not to update and screw them....
So yes, this issue IS very annoying. They need to get better & faster.
If you post an update to your app on market, which specifies the minimum SDK version is 4 (1.6), then devices running 1.5 simply won't see it and I don't think any of your current users with a 1.5 will see the update of your update until their platform is updated to your minimum version.
Dealing with multiple versions of a platform out in the wild is just a fact of life, and app developers handle this. (See for example windows XP, Vista, and now 7.) This has little to do with people creating custom UIs.
Oh yes, I know that, I have pushed updates for 1.6 already.
Let's not forget the role the carrier plays in this too. My example: I'm currently using a BalckBerry Pearl 8100 on T-Mobile. RIM has released newer firmware for it, but did this after T-Mobile stopped selling the 8100 and had switched to a new version of the Pearl. They did not want to spend time testing it on their network, so never released it.
This same thing will happen to us. The power user will (hopefully) be able to root and load on new firmware, but it will leave a large part of the user base on old firmware. I think this is one of the best advantages of Apple's closed ecosystem. The day an update comes out for the iPhone, all users come along for the ride.
--Bill
I just posted something about this without first reading your post!
I totally agree with you. My main fear for Android, which I have voiced from the beginning, is that it will end up like Windows Mobile, where people get stuck with antiquated versions of the OS.
Great article, c0z. I can certainly see this as being an issue in the future. That is why, although many people may consider this to be a blasphemous statement, "closed" operating systems may be the best for the end-user.
I HATE the custom UIs, because they should not exist.
OEMs should focus on differentiating themselves by doing three things and ONLY those things:
1. Release really great hardware.
2. Contribute (as in write, openly, and support, constantly) great hardware drivers.
3. Control costs.
Those are listed in order of decreasing priority, by the way.
Doing #1 (great hardware) without making sure #2 (great drivers) is also covered won't get you sales. If your phone can do great 3D graphics, but the software can't take advantage of the hardware, then it can't really do great graphics. See how that works? And if you make me choose between great graphics and getting rid of your ridiculous UI, I'm probably still going to ditch the great graphics in favor of getting back to stock Android by rooting the device.
A custom UI done by an OEM is NEVER a plus when I'm considering a phone to buy. It's always a negative.
You want to sell more phones? Here's how:
1. Stop hiding the microsdhc slot.
2. Stop making bad keyboards. The G1's key layout is actually really good -- seldom do I ever need to press an 'alt' key. It's only missing left/right arrow keys. By contrast, the moto droid keyboard is horrid. No one is ever happy to see that thing.
3. Put in permanent on-board storage and fix the stupid 250MB-for-applications crap. Make a hugely public fuss about how you will promise to do this in all of your android phones AND how you will support OpenGL with great drivers. Bring on board a good 3D game company. Put a mind-blowingly good game on that onboard storage for free, as proof to developers of what awaits them.
4. Release your custom drivers as GPL code and dedicate a full-time staffer to coding on them and incorporating community fixes and suggestions.
5. Make a camera that doesn't suck, and that also doesn't cause the rest fo the phone features to suck.
6. Put in an FM tuner. Include a recording app.
7. Include a set of movie teasers and free video content on the onboard storage.
Do those things and the community will flock to you ten times more quickly than what Verizon is even HOPING will happen with the droids.
One more killer attention-getting feature that could easily be added to a phone?
An FM transmitter. Think "mister microphone" (google it) and think of all the mischief / fun you could cause while driving down the interstate.
... I choose the HTC Hero for mainly for 2 reasons: the 3.5mm jack and HTC Sense.
Yes, I won't have 1.6 on my phone and I will have to wait to few months to get 2.0 but is it a big deal?!
QUESTION:
Who here would support a standardized release schedule like Ubuntu does?