Good point by Seattle Forest about GPS fitness watches, and smart phones.
Cyclemeter has been a good app for iOS, and it's on Android now as well. And there's Strava itself on smart phones, along with many other smartphone apps that'll upload to Strava. Some are free with lesser functionality. Cyclemeter, for instance, may not directly upload to Strava without the upgrade from free to elite -- I'm not sure on that.