I noticed that in the WiFi settings, if you press the "option" key and tap "advanced," the WiFi is set to be enabled when when the screen is off. Clearly, this wastes a lot of energy. Turning this feature off helped improve my battery life a lot.
Another program that helped is called Juice Defender. With this app, you can disable the APN and WiFi during the night, when the screen is off, and in many other situations.
For me, instituting these changes helped my battery life so much that my phone went from lasting 1/2 a day to 2-3 days!
Just thought I would share...