If your Android phone is suffering from suboptimal battery life, you may be suffering from suspend_backoff problems. This happens when the phone is woken up by applications in quick succession, so it decides to keep the phone awake for a little while. For example, there is data to be sent over WiFi, so the WiFi connection is kept awake, which keeps the phone awake.
I previously wrote about reducing CPU usage for Firefox by disabling Firebug. Later, I wrote on disabling the YSlow extension also reducing CPU usage.
Now, the laptop is able to exceed 4 hours of battery time under Kubuntu Linux 12.04:
Four hours, seven minutes:
09:37:27 localhost pm-utils: Power source switched to battery, Battery: discharging, A/C adapter: off-line