It's not a hardware issue. I've gotten spectacular usage out of it, and battery issues are plaguing not just iPhone 4S users but also 4 and (to a lesser extent) 3GS users. I've turned off location specific iAds and something else in Location settings, and I've restored to a clean phone. I've also calibrated by running the phone off battery until it shuts down. Now, I get about 8 hours of normal usage and 9 hours of standby time. Granted, it shouldn't take so much user effort to make the phone run well, but it's proof that the problem is not hardware based.