I use GPS Logger on my Android phone. It’s a simple app that just records your position to a KML data file regularly. Interpreting it in an useful manner is another matter tho.
Here’s a simple script I wrote in one night at Edinburgh Hacklab to take a KML file, and calculate the total distance traveled between all points. For the actual maths I used a script from here. It also displays all the points on an OpenStreetMap using OpenLayers.
This allows you to use GPL Logger when out cycling or walking, and then work out how far you went when you get home. GPS logger is designed to preserve battery life – I’ve used it over a day and a half cycling trip before with no charge.
It would be cool to add animation and graphs of distance travelled over time, or speed.