The menu button - an insight
The menu button. It's a button, that won't, just won't, go away. Google have already attempted to kill it by introducing the action overflow in Ice Cream Sandwich. They've removed it from the default roster of buttons on the Galaxy Nexus, and with good reason. But it refuses to die.
This mainly because app developers are not reading the guidelines and saying "Let's follow these." They're keeping with the archaic menu button. Worse still, the apps are not Holo themed, and in many cases, still made for Gingerbread. Take Google Currents. While a very nice app, it still has menu button support and is made for Gingerbread. This is an app BY GOOGLE, and it still has menu button support. This needs to - must - change.
I've seen people say 'this app is not an Android app, because it has no menu button'. The Instagram app is a perfect example of this. It has no menu button support, therefore people immediately assume that the app is an iOS port. This is simply not true. By and large, the Instagram app is an app that is made for Android. Not having menu button support is a good thing. Don't criticize apps that don't have it.
Of course, Instagram does not use the action overflow, which does cause me to criticize it. Instagram uses its own Settings menu, and not the SettingsProvider that Android provides. This is a bad thing, and we can only hope this is rectified soon.
Something like the Android Wikipedia app is an iOS port. It does not use the menu button, looks nothing like the Android design guidelines say it should, and uses its own Settings menu.
My point here is - don't criticize the app for not using the menu button, but do criticize it for not using standard Android buttons and services, like action overflow.
Now, most old devices - take my HTC Sensation, for example - have menu buttons. Back in the pre-ICS days, it was almost suicide for an OEM not to put a menu button on a phone. I have ICS on my Sensation - AOKP, in fact. The menu button on this phone still works for many apps that are Holo themed. Take an app I know very well (since I helped developed it!), Boid. On my phone, it does not show the action overflow button, and instead I use the menu button to get to what the action overflow would normally show. This is a good thing, for two reasons. Firstly; this makes the button on my HTC Sensation useful. In my mind, it is stupid to have a button that sits there but does not work. I might as well do something useful with it. Secondly; having action overflow on my HTC Sensation would clutter the screen up unnecessarily. I have a menu button; therefore I do not need action overflow.
However. On the Galaxy Nexus, which has onscreen buttons, in Boid (and all other apps that are Holo themed) the menu button is not shown. It would normally be shown on the software navigation bar, to the right of the software buttons. But because Boid has been made for ICS, it is not there. Instead, the action overflow button is shown on the action bar at the bottom of the app. This is what all apps should do. It's in the guidelines and they are there to be followed.
Now, there's one other approach. Take the HTC One series. The button layout is as follows; Back - Home - Multitasking. That's good; exactly how the design guidelines say they should be laid out. However, HTC have made these buttons physical, capacative keys. This choice by HTC, probably made very early in the design stage (as changing this would change the entire design of the bottom half of the phone), goes against the guidelines.
There is one glaring problem with HTC's approach - but something that might prove to be correct in the long run. And this problem is: there is NO menu button. At first glance, this is an absolute disaster. Of course, it isn't a problem for some apps - they can show the action overflow. It is a problem, however, for other apps that still do not conform to the design guidelines. Take the Facebook for Android app. We'll brush past how terrible it is and look at the menu button. Now, on a One series (on the X and S - look at Jamie Keene's comment for what the One V does), the menu button is shown on a black bar beneath the screen. The menu button is the solitary object on this bar, and at first glance, this was a terrible mistake by HTC. You lose screen real estate on the phone - more of a problem on the One S and the One V, since the One X has a behemouth of a screen, at 4.7". But when you look further into the issue, it becomes apparent why HTC did this. AS I've said before, Google are killing the menu button in apps. HTC have removed the button because Google are killing it. Hopefully, all apps will no longer have a black bar beneath them, because they will have finally got rid of the menu button! Then what would you do with your redundant menu button on your One X, S, or V? At first glance, this looks like a mistake - but the actual mistake was made by the likes of Samsung, who have included a menu button on their new flagship, the Galaxy S III. When most or all apps have removed the menu button, that button will be dead and redundant.