The Gingerbread MotoBlur launcher (No-one does fragmentation like Motorola) |
Android comes in many flavours. From community builds like
CyanogenMod, AOKP, and MIUI, to corporate flavours like Samsung’s Touchwiz,
HTC’s Sense and Motorola’s MotoBlur, there’s no shortage of variants – ‘pure’
Android is a rare thing to find in the wild, generally restricted to Nexus
devices and low-end handsets. Enthusiasts and power users praise the likes of
CyanogenMod for their plethora of customisation options and hands-off
approaches, while condemning Touchwiz and Sense et al for much the opposite.
This criticism is not restricted to esoteric cliques that trawl XDA-Developers
and Rootzwiki, however, as well-respected reviewers from the more mainstream
side of tech journalism regularly denounce these manufacturer skins as well.
Curious why anyone would defend the likes of Touchwiz and Sense? Read on, after the jump.
This seems to illustrate a knowledge gap in the mind of Joe
Consumer – Android is a confusing-enough playground for those with the interest
and patience to research it thoroughly, so imagine for just a minute being
confronted by all these variants side-by-side in a retail store. The HTC
devices have a big flipping clock, Samsung’s have toggles in the notification
window, Motorola’s have a universal messaging inbox, and so on and so forth. While
any self-respecting sales rep would be happy to inform Joe Consumer that, yes,
these all run Android, and Joe can transfer his contacts from his old,
entry-level Android smartphone, the concept of a core mobile operating system
with an increasingly-heavy set of manufacturer customisations atop of it is not
all that easy to grasp. Suffice it to say that these skins are created with the
intention of differentiating devices when compared side-by-side with a
competing manufacturer - both to make the sales rep’s job easier, and to offer
each manufacturer a chance to construct and control their own brand experience.
Indeed, Samsung recently released updates to Android 4.0 for the Galaxy S II
and Galaxy Note, yet seemingly did everything in their power to cover up the
stock Ice-Cream Sandwich experience. This, I believe, deserves further
investigation.
The power users and the tech bloggers differ from Joe
Consumer by having had in-depth experience with more devices than any average
person. Having gone through four phones in the past six months, I can certainly
relate to this. Additionally, power users will tend to delve more deeply into
the development communities for their devices of choice, while tech bloggers
often won’t have the time, or will need to return review units within a certain
timeframe – this is important because of the reaction each group has when
confronted with a heavily-skinned device should they not like the skin. The
former are likely to download and flash a community built Android build that is
closer to ‘pure’ Android, whereas the latter are likely to complain that the
device doesn’t run ‘stock’ and give it a poor review on the software side,
believing every device should be a Galaxy Nexus. Neither of these are bad
moves, merely interesting ones, for reasons I will go into in a moment.
The term ‘open source’ is bandied about a lot, but what does
this really mean for Android? Well, for those unaware, there’s an Open Handset
Alliance than manages the Android Open Source Project, or AOSP, which is the
core of the operating system that runs over the Linux kernel. As mentioned
above, there are also community-built variants of Android that are similar in
function to Linux distributions like Ubuntu or Solaris. A core operating system
exists, which anyone – be it a single person or a massive multinational
corporate - can download and use on any hardware that supports the software, or
construct their own devices to run it on. However, without the nod of approval
from Google, they will not be gifted with the Google application suite, or
‘Gapps’, which make the Android experience what it is today – this includes all
the Google experience applications such as Gmail, and the all-important access
to the Google Play store (Ne Android Market). These Google apps, crucially, are
‘not’ open source. An Android device without Gapps is a poor device indeed, so
all major OEMs seek Google’s approval before releasing their devices. As such,
Gapps are installed separately from CyanogenMod, as Google are kind enough to
provide updated Gapps on a regular basis after a brouhaha a few years back over
Cyanogen’s including Gapps directly within CyanogenMod.
We’ll take a moment, now, to jump back a few years to 2010, when
Android was technically still a fledgling OS –Android 2.1, or ‘Éclair’, came
out in January of that year with the launch of the Nexus One. The Nexus One was
the first device to be well publicised for running stock Android, and the
latest variant of it at that. It was released for sale to the US public
directly by Google itself, and was designed for use with the GSM-based T-Mobile
USA network, on which the first Android handset, the G1/HTC Dream, had been
released the year before. Sadly, this release of the Nexus One was a dismal
failure, and its later, quiet release on AT&T didn’t fare much better.
Google needed carriers to shift handsets, and carriers, as it turns out, don’t
much care for stock Android. US CDMA carriers Sprint and Verizon announced
intentions to carry a CDMA variant of the Nexus One, yet dropped it for the HTC
Evo 4G and the HTC Droid Incredible, respectively, both of which ran HTC’s
Sense suite overtop of Android 2.1. HTC even released its own Sense-skinned variant
of the Nexus One hardware internationally, the HTC Desire. Later that year,
Android really took off as a global platform when Samsung released the original
Galaxy S, which sported yet another heavy skin.
The stock ICS launcher look (On my S III) |
This article was entitled ‘In Defence of OEM Skins’, and I
cannot blame you, dear reader, for wondering when I am going to get to any
defending. Firstly, I have two words that perfectly encapsulate my feelings and
argument, and those words are Windows Phone. You see, Microsoft has gone for a
middle ground with Windows Phone, seeking some kind of happy medium between the
vertically integrated & tightly controlled ‘walled garden’ of the Apple
experience, and the free-for-all hardware & software playground that is the
Android device line-up. They have done so by allowing the manufacturers free
reign on hardware (Within a set of parameters), and controlling all software
themselves. This has resulted in a set of devices with mildly different form
factors, effectively the same internals, and all of them do the exact same
thing from a software perspective. In short, it’s boring as all hell. The OEMs,
with the notable exception of Nokia, certainly do not put their best foot
forward. If you’ve tried one Windows Phone, you have tried them all. While that
may speak to the success of Microsoft’s software consistency and encourage
claims of the first world problems that come with reviewing smartphones, I feel
it speaks to something larger, and if you’ve indulged me this far, I’m sure you
won’t mind if I elaborate.
HTC's HD2 Sense suite (As customised by yours truly) |
This is not to say that I love skins, but is more a
testament to the flexibility of Android. As I’ve mentioned before – when talking about Windows Phone, in fact – it is the modularity of the Android
experience that keeps me immersed in it. Essentially, if I don’t like any part of
my experience with my device, be it the browser, the camera, the messaging app,
or most crucially, the home launcher, I can change it, and will (generally)
work just as seamlessly as the stock application did, while offering all manner
of additional features. I can experience an Android device the way the
manufacturer intended it to be experienced, use all the stock apps, use the
launcher with the layout it shipped with, use all the default settings – and I
have the freedom to disregard that configuration entirely, to throw it all out
and to implement my own, comprised of whatever third party application
combination tickles my fancy. Apple have a rule that prevents applications with
duplicate functionality to stock apps being released on the App Store. Google,
on the other hand, encourage it, regularly featuring such apps on the front
page of the Play Store. This defines my Android experience.
The gorgeous Sharp SH-06D NERV Pinnacle of OEM skins, in my eyes..but it runs GB! |
support the idea behind it, that of software differentiation, and I certainly appreciate some implementations over others. Simply put, I feel that hardware manufacturers have a lot to offer on the software side. Be it design elements like wallpaper and system UI sounds, or innovative lockscreens, great widgets, beautiful icons, handy drop-down notification toggles, and excellent launchers, I sincerely believe Android would be a poorer ecosystem were it not for those enhancements. Few can argue that some of these implementations are superior to vanilla Android, especially the likes of HTC and Samsung’s camera applications. There is also a lot of redundancy, superfluous, poor design, difference entirely for difference’s sake, and places where the stock implementation would have been a lot better. To this end, I submit a list of five proposed requirements for Android OEM skins that, I feel, many would agree would add value while retaining the differentiation element and allowing the skilled individuals that reside within their respective corporate bodies to flex their design muscle.
1. Add a kill switch. Include the stock Android launcher, whatever iteration that may be, and the stock keyboard. These are key. Everything else is in-and-out, but these are two of the most often poorly duplicated elements of the Android device experience. While there are plenty of alternatives on the Play Store to whatever implementation OEMs have gone for, again, those aren’t really for Joe Consumer. Give everyone the option to try the vanilla flavour for themselves, and switch back to the OEM experience if they don’t like it. Don’t be afraid to be different, but leave a back door.
2. Do not change something if you aren’t improving it. If the stock Google calendar is better than yours, don’t include your own. Add value, don’t detract from it. And if you do choose to add your own version that isn’t significantly better, at least leave the framework intact enough for power users to side-load the vanilla experience. Bloatware also falls under this category, although – thanks to Ice-Cream Sandwich bringing the ability to disable applications – that has become less of an issue than it was in years past.
3. Support open development. This I cannot stretch enough. Unlock bootloaders through an official channel, release public beta builds, release your drivers, speak to the community that loves your hardware and they will stick with you over and above other OEMs. There is zero excuse for locking hardware down at this point, security concerns are null and void, and if consumers don’t like an OEM’s Android experience – and don’t have the ability to change this themselves – they will move to another manufacturer. Plain & simple.
4. Make your devices’ software interoperable. One of the greatest wins for consumers in the Android space occurs when one device’s killer features are ported to another device. Given the goal of OEMs is to hook consumers into ‘their’ Android experience, why not allow those users the ability to hot-swap elements of that brand experience when they upgrade? What if they jump from the Galaxy S II to the Galaxy S III, but miss their old launcher, or their old text messaging app? Where possible, why not allow for the transplant of core apps from one device to another? Would that not further encourage the upgrade to stick with the same brand? Sony are probably the best at doing this, albeit unofficially, as a number of their applications are cross-compatible. Here’s another thought – even Apple haven’t mastered the ability to transfer settings and home screen layouts from device to device just yet, why not make an upgrade assistant that does just that?
5. Don’t customise to the point where it severely interferes with the ability to upgrade the core OS unless there’s a really good reason for doing so. Really good reasons are generally hardware-related, things like the Galaxy Note’s S-Pen. There isn’t much else that washes, there, yet so many skins and apps are baked right into the framework. If a device is so heavily skinned and with so many applications replaced that an upgrade will take forever to code and test, you’ve done it wrong. Android is modular, so too should OEM skins be. The above-mentioned kill switch could combine with interoperability and allow for the independent updating of OEM apps and skins directly via the Play Store, just as Google provide updates to G-Apps – it could add value, reduce the complexity of porting new Android flavours, and allow for faster updates and bugfixes, just like third party launchers do.
The Galaxy S III Lockscreen |
same things, and I too don’t feel that every device needs to be a Nexus. As above, I do feel there’s an easily defined line, yet it shouldn’t be too hard to keep to that boundary. As long as there are regular updates (or the OEM is open enough that the community can provide those updates to the people that care), as long as it’s non-intrusive and serves to differentiate rather than cripple, why should OEM customisations be a bad thing?
To wrap things up, I’d like to provide a few choice examples
of OEM-customised launchers that are, I feel, worth your time. If nothing else,
it’s fascinating to compare the different manufacturers’ approaches – it’s the
closest to actually using those devices one can get without shelling out for
the hardware.
- The LG UI 3.0 Launcher (ICS+)
- The Sony Xperia S Launcher (GB+)
- Two different ICS MotoBlur launchers (ICS+)
- Dell's Stage UI from the Streak (2.2+)
Interesting. I liked the WP reference. I say wait for 2 years, and watch all WP vendors would turn into PC vendors -- all struggling with low margin, and zero identity.
ReplyDeleteI agree, Windows 8 seems to have a similar pitfall element. Considering HTC and SPB Shell were the only things that made Windows Mobile worthwhile (Until the Zune style Titanium interface in WM6.5), it seems odd MS have prevented it this time around. I get that they're trying to push their new unified design language, but my biggest problem with the Windows Phone experience is the inefficient launcher.
Deletea i the only person in the world who likes touchwiz (sgs2)? it simplify things...,
ReplyDeleteafter using sense or xperia arc for a while touchwiz looked better and better, and allot of features in touchwiz get incorporated in android.
now i follow xda allot (rss) and i always read about sense in the headlines as lag this lag that?
but nothing about touchwiz?
if it is not to your liking there are allot of launchers in the market.
great article as always
#foreveralone
Cheers, iTK. I don't mind Touchwiz from a functionality perspective, it adds a lot of nice touches without being as invasive as Sense. Their design language is pretty confused, though, and the new launcher on the S III is a bit naff vs. the SII implementation. Easily fixed, mind you. I do wish OEMs would stop making their widgets work only with their launchers, too.
DeleteGreat article. I tweeted it to Samsung and HTC lol. I wish they'd follow those five points you made. Good work dude!
ReplyDeleteHow did you get the stockics launcher on your galaxy s3?
ReplyDeleteTry Apex or Nova
DeleteYep, that's Apex.
DeleteYou know what else would be a killer feature?
ReplyDeleteAssuming OEMs included the option of running either stock Android or their own skin on a device and letting you choose between the two, it would be awesome if you could interchange certain aspects of stock and skinned versions; for example, you've chosen to run, let's say stock Android on an HTC device, but you like the Sense lock screen more than the stock one - and here's the cool part; you jump into settings and simply put the Sense lock screen to use instead of the stock. This is of course only an example, more features would be included here, but I seriously doubt this will happen at all; and even if it does, a poor implementation of it would be a disaster.
I really liked the article; very few people think that OEM skins actually benefit anyone - myself included because I really, really like the look of stock ICS and JB, but your article changed my opinion somewhat. If only Google bothered to consider suggestions like this :(
As a power user... power user, defined as being someone who uses their device for just about everything, from games, to running a business... I'll never own an OEM device that doesn't run stock Android, giving me access to OS updates in a timely manner.
ReplyDeleteWhy can't it be like the PC days of old?
You buy some kit dependent on your budget, and the OS installed runs on the hardware just fine with the correct drivers installed. If I or the OEM want to customise the experience, then the choice is there, but if I want a stock OS experience, that's MY choice, not that of the OEM!
The argument regarding a point of difference is counter intuitive. At the end of the day, the user just wants something that works... well. I see nothing wrong with an OEM making a throng of different devices, ala HTC, Samsung, etc, but if the hardware requires specific software to work properly, why not use a driver interface, and allow the user to decide which apps or skins they want to use?
Better still, if you're an OEM, don't reinvent the wheel every time you design a new device. If there was a set software-hardware interface protocol OEM's had to adhere to, surely that would be good for the end user in terms of simplicity.
If OEM's really want to go to all the trouble of bundling their own bloatware with their handsets, put the suit online and allow customers to download what elements of that bloatware they want to use, from the OEM website or Play Store.
If a customer doesn't have a particular OEM's hardware but still fancy a bit of the bloatware, allow them to obtain it for a fee on Google Play.
If I could get a Samsung Galaxy S3 with Stock Android, I'd cop the fee for ending my current contract early, and order one immediately.
But as it stands, I'm limited to the Nexus range of devices, with no memory expansion capability and a dodgy camera setup.
I'd put money on their being a large enough user base who want Stock Android, and, like me, will never buy a bloated OEM device while this tedious situation persists. To me, that's a lose/lose situation. Maddness!
Largely agree. The solution I've put forward for a long time is for the OEM skins to just be launchers like Nova/Apex etc. Then there are no baked in system dependencies, nothing to delay OS updates, and they can be switched off to reveal stock Android underneath. I can well imagine that if someone actually does this many like yourself would jump for that option.
Delete