No, this sounds VERY accurate to me!
I know, for example, I downloaded the RSS reader software for the iPhone a while back, and configured it to update the list of feeds every 5 minutes. Right after that, I discovered that by the end of the workday, my battery was almost dead. Before that, it would typically still be around 80% or 90% charged, if I didn't talk much on it.
There's probably a "threshold", where you can run a background app that polls the Internet infrequently enough so the wi-fi (or edge) circuitry still gets to go to sleep between polling events. But doing it too often apparently leaves the radio running *all the time*, and drains the battery excessively quickly.
IM clients are probably notoriously bad for leaving the radio in an "always on" state, since unlike email checking, they're going to be polling more often than once every 15 minutes or so.
I think I like the guy's idea who mentioned SMS. How about an IM client that runs in the foreground like normal, but when you exit the program, it sends info to that effect to a "middle man" server. If you exit, telling it you wish to appear "online" to people still, it tells the server in the middle to keep up that appearance and to cache new incoming messages for you until you return. When new ones DO come in, it could use a single SMS message to notify you that you have new IMs to pick up.
I'm not so sure if we should believe Mr. Twitterrific... I have plenty of apps running in the background on my jailbroken iPhone. (Like IMAPidle)
And my iPhone lasts all day. And you shouldn't expect more than that... who said something about 5-10 days of standby time? you must be crazy. Any smartphone that I've had, I've needed to charge every night.
AND... the iPhone OS is running stuff in the background too !! Like, checking my email every 15 minutes. I'm calling BS... and maybe this Hockenberry guy can't code for ****. I mean look at Twitterrific... it's popular only because there's nothing better. And it sucks.
(I wouldn't mind seeing that mobile version, however) =D