Part of the battery life issues stems from the msm_hsic wakelock. According to research done by XDA, this is because the modem of the Nexus 4 is connected to the USB bus. As a result any data transmission triggers this wakelock. It seems that this wakelock gets held longer than data transmissions and is exacerbated when you move from point to point.
I've been looking into the deep sleep time of my phone, for example over an hour I'll have about 10% of wake time. DUring that 6 minutes, the partial wakelocks for Gmail and other apps might add up to 2 minutes tops. The rest of the awake time is held by the msm_hsic wakelock. If I drive during that hour, the wake time is closer to 25%. msm_hsic seems to do worse with tower handoffs.
This has been largely improved since 4.2, but it's not perfect. There's also several wakelocks that can screw this phone over like wireless charging as well as the nlpcollector wakelock.
In terms of battery, this phone probably wasn't as well optimized as a GS4 or a HTC One. You can see the endurance rating on GSM Arena (was it 36 hours?) to be worse than the Moto X, HTC One, GS4, GS3, and GS2.
The other issue is the Wifi notification delay bug which Google never fixed. I believe the drivers are updated in 4.3, but build.prop lacks the correct setting in JWR66Y. JSS15Q fixes this finally. 10 months later.
Its biggest problems, the lack of storage and LTE, still exist.
Before people jump in and say "I have LTE," let's remember this applies to T-Mobile and WIND only. There's only a handful of operators that use 1700 AWS for LTE.