Quick disclaimer, Linux tends to use more power then windows because it does "more stuff" and uses the hardware different. You may not be able to get the same amount of time in Linux as you did in windows, or you may get more.
These are listed in the order of importance to me. That is the easiest to do with the most gain first.
The largest impact on my battery is CPU frequency. When I am plugged in I want full speed, but when I unplug I want as much battery as I can muster. This is mostly automatic, these days, however to give it a bit of a hand, and to let me see it, I installed jupiter. This auto does stuff when on battery and when on power. It also gives me some direct control over some power management features.
Just turn it down as far as you can. This made a large difference to me. If you want to do this via a script then
echo -n 100 > /proc/acpi/video/VGA/LCD/brightness should would with a little adjustment. The path will likely be different depending on build/kernel/hardware.
On My Mac Book Pro, this has only a little gain, but turning off the keyboard backlight is super easy.
Idle Time and Screen Blanking
Turn them way down. From "Power" in unity, set suspend when inactive to 5 minutes, and when the lid is closed suspend. There is a link in the Tip at the bottom of the window. Click it and make sure that Dim Screen to save power is checked. Turn screen off after 2 Minutes.
Turn Off Bluetooth
Again an easy one that doesn't save a lot. From Jupiter indicator, disable Bluetooth when on battery.
Edit /etc/fstab and add noatime to all local partitions and mount points. This "should" prevent your drive from spinning up as frequently. Read up on it first. This doesn't give the benefit it once did, but it keeps my drive from spooling.
Do less stuff
This one is kinda tricky, but can give you a ton of savings. Basically Linux does a ton of stuff in the background. This is one of the best things about it. However it can also lead to higher then needed power usage. The easiest thing to do here is disable cron on battery but turn it back on when on power. This can be dangerous if you don't know what you doing. Basically it shouldn't hurt anything if you miss a few cron jobs, but leaving it off all the time will cause problems.
Also take a look at/keep an eye on htop. Reconsider the apps that are using a large amount of CPU.
I have no idea if this actually does anything so I put it last. Turn nvidia's (if you have it) powersaving on high.
nvidia-settings -a [gpu:0]/GPUPowerMizerMode=0 should accomplish that. Side rant, compiz keeps my card from going below the max an awful lot. They need to fix that.
These should help you get a reasonable level of battery performance from your ubuntu laptop.