will running Google Latitude (or any similar app) in the background significantly affect battery life?
Specifically, the Latitude app (and other background location-updating apps) register themselves for location updates "on significant location change". 

How the phone knows the location has changed significantly is when the phone does a cell tower handoff. It's moved enough that it's out of range of the tower it was talking to and its service is handed to the next tower. At that time, if any apps are registered for location updates, the phone fires up its GPS, gets its coordinates, and feeds them to those apps. Those apps then get to do a LITTLE work with what they were told.

When iOS 4 came out, I wrote a little app to play with this API. Basically it just sat in the background and recorded lat/lng for every update it got. Between my office and my house (like 10 miles) it got eight or nine sets of coordinates.

That means eight or nine times (call it once a mile or so) that the phone has to fire up the GPS chip, listen for signals from outer space, and do something with them. That obviously takes up more electricity than if it didn't have to do that.

Is it MUCH more? You know what? Not really. I charge my phone when it needs it (rather than, say, nightly), and I didn't notice it needing it more than usual when my little app was running. So my guess is that Latitude won't be a major battery suck. But it'll definitely suck some.