

Defending Android’s Hardware Buttons - hannesfostie
http://vbsteven.com/archives/521

======
Wilduck
My not so technically inclined mother just purchased an iPhone to "keep up
with the times." Her biggest difficulty with it so far is figuring out how to
move around within any application, specifically going back. It's hard for her
to realize that sometimes she has to hit the button called "back" sometimes
it's called "cancel" and sometimes it's called something else. She would love
a back button, even if it were inconsistent.

~~~
ajross
This is my intuition too. The iPhone model is a single app page swimming in a
top-level sea with others. For some things, that's fine. But for many apps
(browsers are obvious, but also games that have splash menus, anything with a
folder-like hierarchy, etc...) there is a clear and obvious "back" metaphor.
And iOS just doesn't do back.

That's not an excuse for Android apps that use it inconsistently obviously
(though the framework is pretty good about making sure obvious implementations
do the obvious thing). But on the whole I think it's a very good feature.

Likewise, "menu" is something that almost everything has and probably deserves
a hardware button (or at least a button with a persistent location and
presentation -- the Galaxy Nexus apparently has no "hardware" buttons outside
the touchscreen).

The "search" button that so many Android phone have, on the other hand, is
completely beyond me. Ridiculous.

~~~
Zhenya
Search button at first seemed superfluous to me also, however I have really
found a few great uses. I use it all the time now:

Instead of launching the browser and then going to an web address, I can punch
it in after hitting the search button. Opens browser with that address.

I never have to launch the browser and then search for something.

It's also great if you need to find someone in your contact list and dont feel
like scrolling

The search button is also contextual, so that if you're within an app you can
search for whatever(maps, sms etc)

Also long pressing on the search button brings up the voice commands.

~~~
ajross
Sure, but I don't think that's the right criteria. _Any_ task can be made
faster by associating a fixed button with it. But every fixed button has a
cost. If you do a ton of "searching" then sure, this is good. My personal
usage would be improved with a "go directly to email" button. Most people
don't search that much. Or if they do, they do it from a desktop widget (even
faster IMHO). I don't think it's an appropriate usage for the very precious
physical space on the front panel.

~~~
Zhenya
Interesting point about the desktop widget. Initially, i believe in 1.0 and
1.5, you could click in the widget and type.

After that the widget was updated to launch the search app just like the
search button. It basically became a 4 column wide search link.

------
div
There are 2 things being discussed here:

1) people being confused by the back button because they don't realize it will
always pop the current view of the navigationstack, which is systemwide.

2) the fact that the back, menu, search and home buttons are dedicated
hardware buttons.

Explaining how 1) works does not mean that 2 is not broken. Personally I find
2 to be the interesting discussion.

Seeing how these hardware buttons are being changed to be a dedicated part of
the Galaxy Nexus' touchscreen, and how not all vendors actually put all 3
buttons on there, it's not too hard to argue that something about the hardware
buttons is at least flawed, if not broken.

~~~
thebigshane
Even though #2 isn't the topic of the original article, I also find it
interesting. And looking over the comments it seems that most people prefer
_touch_ to hardware buttons.

I use my android mostly for calling, texting, music and instapaper (actually
instafetch). I hate how I can't easily feel my phone and push a button for
things like mute, or pause, or end call, or next song. Sometimes I actually
have to unlock the phone with the top button, then swipe to really unlock,
navigate to the right app/activity if it's not forefront, then look at the
phone to see where the appropriate touch button is located.

Am I one of the few that wants _more_ hardware buttons? And not the capacitive
(fixed touch buttons) but the real buttons that maggit mentions elsewhere in
these comments; buttons you can feel with your fingers.

------
nextparadigms
I'm an Android user and I'll continue to be one in the forseeable future, but
I have to agree that the back button "feels" inconsistent. There might be a
logic behind how it works (OS-wide back button), but that doesn't mean it will
make sense for the user. An app-level back-button makes a lot more sense to
me. It should work just like it works in the browser.

That being said, I hope Google will try to get rid of all the physical buttons
and "bottom bar buttons" in Android and replace them with gestures (learn from
N9 Meego), so we can fully utilize 100% of the screen (and of course no more
wasted front space with physical buttons, too). I think there are some phones
coming out like the LG U1, which will have both a physical home button _and_
virtual buttons with ICS. How does that make any sense? It wastes double the
space.

Another feature request would be getting rid of the icons, too. I don't think
icons belong in the touch world. You need bigger graphical elements, that are
also richer than just an icon. I see them moving in this direction with some
apps, but they need to move faster, preferably by Android 5.0.

~~~
joebadmo
To me it rarely feels inconsistent. I like that the back button remembers the
context for whatever my current action is. It means I don't have to keep it in
working memory. I just press back when I'm done.

I also disagree with Gruber's complaint:

 _Here’s one thing I don’t like about the Android Back button that I’ve never
seen a counterargument for: it presumes that you, the user, remember the
activity stack. If you turn your phone on and you’re looking at a web page in
the browser, if you don’t remember what you were doing immediately before
opening the web page you’re looking at, you have no idea where you’re going to
go if you hit the Back button. Could be another app, could be another web
page, could be the home screen. And if hitting the Back button takes you
somewhere you didn’t want to go, there’s no Forward button to reverse it. It’s
like leaving a breadcrumb trail in the dark — you have to remember where the
breadcrumbs are because you can’t see them._

[http://daringfireball.net/linked/2011/11/02/defending-
androi...](http://daringfireball.net/linked/2011/11/02/defending-androids-
buttons)

Actually, I think what's nice about it is that you _don't_ have to remember
the activity stack. You just hit back if you want to go to the previous
activity, and if you don't want to go to the previous activity, you go to the
home screen. Why would you hit back if you didn't want to go to the previous
activity and also didn't remember what the previous activity was?

Here's a common analogous scenario for me. I unlock my phone to a web page. I
finish reading the web page and then go, "How did I get here?" I hit back,
which usually takes me to the previous web page, to google reader, or to
twitter. I then go on with what I was doing, probably skimming feeds. It's a
great, natural workflow that allows me to pick up exactly where I left off.

I wonder how Gruber manages to use web browsers' back buttons without getting
confused. I mean, when you hit it, it can go to SOME RANDOM WEB PAGE!

As for the forward button, it's just a matter of hitting the exact same link
or button that you did the first time. Forward is redundant.

And of course, if you're ever confused, you can just hit the home button and
start over. This is your _only_ option in iOS. If you get routed to twitter
from another app, and then you want to go back? Hope you remember what you
were doing before. In fact, you'd better _make sure_ you remember if you want
to get back. Because you're going to have to go back through the home screen
to get there.

In my scenario above, ported to iOS, if I wake up my phone to a web page, I
basically have no way to go back to the activity I was doing before the web
page except to just remember. That, to me, is a much worse workflow. There
just aren't any breadcrumbs at all.

I also don't think there's any way to get rid of the OS-wide buttons, because
there are basically two axes of navigation. There's the OS wide one along
which the back button acts, and there's also the in-app one that takes you
between panes of an app. Swipes already move you between panes. How can they
also move you back in the activity stack?

I do agree with you that icons are outdated. I hope Android steals more from
Windows Phone 7. Those tile are gorgeous.

~~~
nextparadigms
But if I hit back to get out of an app, I don't want to return to the previous
one. I want to return to a default/home setting. And I'll usually want to use
a different app after that, so I'll use the homescreen or the multitasking
view anyway.

~~~
joebadmo
Then why would you hit back instead of home?

------
GiraffeNecktie
This is only about certain behaviours of the Back button. On my Samsung phone
I have four buttons on the front of the phone plus volume control and on/off
buttons on the sides. The four buttons are invisible in dim light and even
after using the damn thing for a year I'm uncertain of which button is where.
As far as I'm concerned the buttons are broken.

~~~
maggit
I have seen the Samsung Galaxy S, and the hardware buttons on the front have
several problems:

1\. They are capacitive, so there is no tactile feedback ever

2\. They are made to be near invisible, so you can't see them in dim light

3\. The icons on the buttons are not immediately crystal clear to me

My HTC Legend has none of these problems: I can find the buttons in the dark
by feel, and the iconography is clear. To me, the back and menu buttons (and
to a lesser degree the home button) are helpful tools that I use all the time.

I am planning on getting a Galaxy Nexus as soon as I can. The only worry I
have about this phone is the lack of proper hardware buttons that I can locate
and use by feel alone.

I love (some of) the hardware buttons.

So maybe it's just Samsung's implementation of the buttons that is broken, and
not the concept of Android hardware buttons. I don't know :)

~~~
imperialWicket
I have a Samsung Captivate (AT&T's Galaxy S) and while I have been quite
disappointed with the device at a high-level, my issues have not been with
android or the hardware buttons.

> 1\. They are capacitive, so there is no tactile feedback ever

You can enable haptic feedback or tones (cringe), neither of which has
substantial effect on battery life.

> 2\. They are made to be near invisible, so you can't see them in dim light

True.

> 3\. The icons on the buttons are not immediately crystal clear to me

While this may be true, they quite consistent with all the other android
phones. (Are you specifically concerned about the having an icon for menu
instead of the "menu" text?)

~~~
maggit
> You can enable haptic feedback or tones (cringe)

Both of which are a poor substitute for feeling the button depress.

However, I was mostly concerned about feeling the button and the edges of the
button before pressing it (to be able to use the buttons without looking), but
I realize now that this might not be included in the commonly accepted meaning
of "tactile feedback" ;)

> Are you specifically concerned about the having an icon for menu instead of
> the "menu" text?

No, but I am concerned about the poor choice of icon to represent the menu.

The back-button is understandable, but why does it go forward before it goes
back?

And finally, my biggest problem: What does the icon-less button in the center
of the Galaxy S do? I have no idea, and the only way to figure out is to test
it. (If I have to guess, I'd say it's the home-button, which is otherwise
lacking and is the closest in functionality to the icon-less iPhone-button)

(Image for reference: [http://androidspin.com/wp-
content/uploads/2010/07/Samsung-Ga...](http://androidspin.com/wp-
content/uploads/2010/07/Samsung-Galaxy-S-cell-phone-04.jpg) )

I was also thinking about what I suppose must be the home-icon on the Galaxy
Nexus. ( <http://www.google.com/nexus/img/content/introduction.png> ) This
icon exhibits the classical problem of over-abstracting. It is no more a home
or house than it is a shift-key, up-arrow or pointed rock.

Compare with HTC Legend: [http://cdn.cbsi.com.au/story_media/339301189/htc-
legend_1.jp...](http://cdn.cbsi.com.au/story_media/339301189/htc-legend_1.jpg)

From the left:

1\. Obviously a house (and therefore a home), even with a chimney, while still
being clear.

2\. Obviously a menu-button. You unfortunately have to read it, but it is at
least unambiguous.

3\. Obviously a back-button. (No forward motion)

4\. Assuming that the user has learned the weird currently popular icon for
search, obviously search. Otherwise not a good icon.

\----

I hope this clarifies my original post :)

~~~
Fliko
Haptic feedback is not a poor substitute for feeling a button depress, it's
just the current reality of having a phone with a large touchscreen. You have
the choice between a (relatively) much larger screen (with option of haptic
feedback), or some buttons you can depress that will eventually wear out
mechanically (I bet the touchscreen would outlast a mechanical button).

The only real problem I can find with not having a mechanical button is that
you may sometimes bump your finger onto one of the buttons, and will find
yourself suddenly in the home screen. This actually happens to me a lot in the
Nexus One, but I also blame that on failed multi-touch implementation that
ends up sensing my finger in some spot it's not in, or when the capacitive
sensor senses my palm holding the phone through the case.

The HTC Legend menu button isn't consistent with the design of the other
buttons, and it's very ambiguous. To me 'menu' is the equivalent of the home
button; I expect it to take me to the home menu. Another interpretation is
that it would take me to the home menu of the current application I am using,
but this function is very similar to the back button.

The back arrow doesn't symbolize a lack of forward motion (it just points
right to left). There are many languages (Hebrew, Persian, Japanese. Sometimes
Latin and Greek too) that read from right to left defeating the universalness
of the icon.

The search icon is actually designed very well as it is consistent with most
devices in the world.

On the other hand is the home icon isn't very well designed on the Galaxy
Nexus, but it would be very impossible to confuse the button for a shift-key,
an up-arrow, or a pointed rock (I don't understand how you got the connection
between a hardware button and a rock, I feel like you are just nitpicking at
this point, which is why I am nitpicking your post).

In defense of the Galaxy Nexus having 3 icons instead of 4 is really more
effective (why have a menu & home button, and I don't think a lot of people
use the search button), it's just too bad the icons weren't designed better.

------
eren-tantekin
"hardware buttons"? this article isn't defending android's hardware buttons.
it's defending navigation buttons. whether they are hardware buttons or
onscreen buttons is irrelevant in the context.

------
golgo13
I wish my HTC HD7 running Windows Phone had hardware buttons. 90% of the time
I've hit the capacitive search button, it was an accident.

------
billpatrianakos
The dominating theme here is how the button feels. This post is a great
defense and the facts are straight but in the end facts don't matter. Feelings
do.

Apple has done a magnificent job of creating loyal converts based on feelings.
Their devices have traditionally been behind Android on a number of features
(but always catch up later) because they focused on making people _feel_ like
they could accomplish the tasks they wanted to.

Android goes about adding features that are super coolnewawesometrendy and
they give it to you right away and it's your job to jump in and learn how to
use it. Apple will slowly introduce you to new concepts even if it means
limiting functionality. The Android and iOS approaches are both valid but one
is better for my mother while the other is better for me.

So when we talk about the back button on Android maybe we're missing the
point? Maybe instead of discussing whether the button is inconsistent or not
we should be talking about how to make the entire OS _feel_ like it helps you
get what you want to do done. I don't have all the answers but I do know a few
of the right questions.

Assuming you give someone an Android phone or tablet who has no previous
experience or expectations... How do you make the button feel like its
consistent? What is the intent of someone pressing the button? How will the
action of the button fit in with the rest of the user experience? How can we
get users to know what to expect after a single use of the button? Is the
button even necessary? Was the decision to include this button made because of
preconceived notions such as how phones used to function before touch screens?

This might be a tad bit off topic but I feel like these ideas are a natural
next step in the discussion.

------
falling
_> In the following article I will try to explain that this behavior is not
broken. Instead it is exactly what the Android developers had in mind while
designing the back button behavior._

Correct, but something being by design does not imply it not being "broken".
We have plenty of examples of things with flawed designs.

~~~
ShaunK
Yes, but the main argument for the hardware back button being "broken" was
that it was inconsistent. This article shows that the only thing it is
inconsistent with is the iOS model of multitasking.

~~~
falling
Personally, I think the model the designers built on activities makes perfect
sense an is very interesting on a technical level, but as much as you explain
them to me, it still doesn't do what I want, need or expect sometimes.

Activities are hidden, they are not a user visible concept, so you cannot
easily build a mental model without knowing and consciously thinking about
them. From the UI, it just looks that the button has been overloaded with two
functions: changing applications and changing views in the same application,
because applications and views are the two very obvious UI concepts.

I also think Matias Duarte and the Android designers agree that the back
button has some problems as Android 4 now has _two_ back buttons: the good old
one on the bottom and another one on the top left that behaves just like
iOS's. I'm not sure two buttons with similar but slightly different behaviors
are the perfect solution but we'll see if people like it.

------
torstesu
In my opinion, hardware buttons should be limited to only non-critical
operations or operations with limited usage frequency (which may be an
argument to why the button may be unnecessary in the first place).

A button such as the back-button on the android, is used to navigate in almost
all applications. With the amount of "load cycles" the back-button
experiences, it is bound to either fail or start operating inadequately [1].
If or when this happens, the phone becomes rather unusable as it is nearly
impossible to navigate in applications that do not have any built in user
interface options to perform the same action.

[1] I do not hold evidence for this to be true in general and my hypothesis is
only backed by personal experience and the notion of failure rate in a load
frequency perspective.

~~~
mikeash
Given how long keyboards last under _far_ heavier and harsher loads than any
phone button experiences, it's clearly not a _given_ that a hardware button
must start having problem during the lifetime of the product. But it does seem
clear that manufacturers aren't interested in putting the same durability on
phones as they are on keyboards, as I've seen these problems with iPhone sleep
and home buttons.

