pig-monkey.com

You are currently viewing all posts tagged with physical training.

Antisocial Activity Tracking

A GPS track provides useful a useful log of physical activities. Beyond simply recording a route, the series of coordinate and time mappings allow statistics like distance, speed, elevation, and time to be calculated. I recently decided that I wanted to start recording this information, but I was not interested in any of the plethora of social, cloud-based services that are hip these days. A simple GPX track gives me all the information I care about, and I don’t have a strong desire to share them with a third party provider or a social network.

Recording Tracks

The discovery of GPSLogger is what made me excited to start this project. A simple but powerful Android application, GPSLogger will log to a number of different formats and, when a track is complete, automatically distribute it. This can be done by uploading the file to a storage provider, emailing it, or posting it to a custom URL. It always logs in metric units but optionally displays in Imperial.

What makes GPSLogger really stand out are its performance features. It allows very fine-grained control over GPS use, which allows tracks to be recorded for extended periods of times (such as days) with a negligible impact on battery usage.

For activities like running, shorter hikes and bicycle rides I tend to err on the side of accuracy. I set GPSLogger to log a coordinate every 10 seconds, with a minimum distance of 5 meters between points and a minimum accuracy of 10 meters. It will try to get a fix for 120 seconds before timing out, and attempt to meet the accuracy requirement for 60 seconds before giving up.

For a longer day-hike, the time between points could be increased to something in the neighborhood of 60 seconds. For a multi-day backpacking trip, a setting of 10 minutes or more would still provide great enough accuracy to make for a useful record of the route. I’ve found that being able to control these settings really opens up a lot of tracking possibilities that I would otherwise not consider for fear of battery drain.

GPSLogger

Storing Tracks

After a track has been recorded, I transfer it to my computer and store it with git-annex.

Everything in my home directory that is not a temporary file is stored either in git or git-annex. By keeping my tracks in an annex rather than directly in git, I can take advantage of git-annex’s powerful metadata support. GPSLogger automatically names tracks with a time stamp, but the annex for my tracks is also configured to automatically set the year and month when adding files.

$ cd ~/tracks
$ git config annex.genmetadata true

After moving a track into the annex, I’ll tag it with a custom activity field, with values like run, hike, or bike.

$ git annex metadata --set activity=bike 20150725110839.gpx

I also find it useful to tag tracks with a gross location value so that I can get an idea of where they were recorded without loading them on a map. Counties tend to work well for this.

$ git annex metadata --set county=sanfrancisco 20150725110839.gpx

Of course, a track may span multiple counties. This is easily handled by git-annex.

$ git annex metadata --set county+=marin 20150725110839.gpx

One could also use fields to store location values such as National Park, National Forest or Wilderness Area.

Metadata Views

The reason for storing metadata is the ability to use metadata driven views. This allows me to alter the directory structure of the annex based on the metadata. For instance, I can tell git-annex to show me all tracks grouped by year followed by activity.

$ git annex view "year=*" "activity=*"
$ tree -d
.
└── 2015
    ├── bike
    ├── hike
    └── run

Or, I could ask to see all the runs I went on this July.

$ git annex view year=2015 month=07 activity=run

I’ve found this to be a super powerful tool. It gives me the simplicity and flexibility of storing the tracks as plain-text on the filesystem, with some of the querying possibilities of a database. Its usefulness is only limited by the metadata stored.

Viewing Tracks

For simple statistics, I’ll use the gpxinfo command provided by gpxpy. This gives me the basics of time, distance and speed, which is generally all I care about for something like a weekly run.

$ gpxinfo 20150725110839.gpx
File: 20150725110839.gpx
    Length 2D: 6.081km
    Length 3D: 6.123km
    Moving time: 00:35:05
    Stopped time: n/a
    Max speed: 3.54m/s = 12.74km/h
    Total uphill: 96.50m
    Total downhill: 130.50m
    Started: 2015-07-25 18:08:45
    Ended: 2015-07-25 18:43:50
    Points: 188
    Avg distance between points: 32.35m

    Track #0, Segment #0
        Length 2D: 6.081km
        Length 3D: 6.123km
        Moving time: 00:35:05
        Stopped time: n/a
        Max speed: 3.54m/s = 12.74km/h
        Total uphill: 96.50m
        Total downhill: 130.50m
        Started: 2015-07-25 18:08:45
        Ended: 2015-07-25 18:43:50
        Points: 188
        Avg distance between points: 32.35m

For a more detailed inspection of the tracks, I opt for Viking. This allows me to load the tracks and view the route on a OpenStreetMap map (or any number of other map layers, such as USGS quads or Bing aerial photography). It includes all the detailed statistics you could care about extracting from a GPX track, including pretty charts of elevation, distance, time and speed.

If I want to view the track on my phone before I’ve transferred it to my computer, I’ll load it in either BackCountry Navigator or OsmAnd, depending on what kind of map layers I am interested in seeing. For simply viewing the statistics of a track on the phone, I go with GPS Visualizer (by the same author as GPSLogger).

Rucksack Run

Yesterday I felt that I was becoming too complacent on my runs. I needed something to increase the challenge. So, this morning I tossed 20 lbs. into the FAST Pack and strapped it on. That made things interesting.

Rucksack Run

Dry heaving is a measure of success.

Motivation

Occasionally I get asked what motivates me to run on a regular basis. For me, running is fun. I wouldn’t do it if it wasn’t. During the run, I take pleasure in partaking in an activity that I believe Homo sapien sapien was designed to do, and after the run my body feels better.

If that’s not enough, try this: In his autobiography Mad, Bad & Dangerous to Know, Sir Ranulph Fiennes said that, now in his late sixties, the only way he can manage to keep up a decent level of fitness is to run at least 2 hours every other day. I’ll not be physically bested by an old man, even one such as Fiennes!

Mailbox Redux

Remember Mailbox Peak? The mountain that was supposed to provide one of the most difficult, thigh-burning day hikes in the region? When I climbed it last October my reaction was a cocky “Psch. That ain’t no challenge! Maybe will a full pack it’d cause some pain.” Yesterday, I climbed it again. This time with a 60lb rucksack on my back.

Reaching the summit took three exhausting, slow hours. I allowed myself only one 10 minute break each hour. For the last quarter of the hike I was just stumbling along, slowly plodding my way up higher and higher (thinking “Whose bright idea was this?”). The trail near the top was too covered with snow and ice to make it smart to attempt without some sort of traction device, so I opted for the neighboring boulder field. Scrambling up that required more leg power, balance, and mental facilities than I had left at the time, but I managed to make it.

Upon reaching the summit, I immediately dropped my pack and sat down. I could only relax for a minute before realizing that I was freezing. And so I had to exert myself further by grabbing more layers from my pack and tossing them on.

View from Mailbox

I realized that I was dizzy, shaking, and — despite having been constantly sucking on my hydration hose on the way up — not sweating as much as I felt that I should have been, so I took a packet of Emergen-C from my first aid kit, dumped it into one of the 1 liter water bottles I had been using for weights, and forced myself to drink it all down before starting my descent.

View from Mailbox

I felt better after that and, munching on some granola, wandered around the summit, enjoying the view. It had been a spring-like day, with only a few clouds and temperatures around 50F at the bottom. Gazing at the other peaks with their light dustings of snow, I decided that the hike had been worth it.

Mailbox Peak

There was only one mailbox up there this time. The black one must have blown away.

I decided to head down. The boulder field was tricky going, but, afterward, it was just a slow and steady plodding down the mountain. Near the bottom I had to poo, but, upon assuming the position, discovered that I didn’t have the length strength left to squat.

Finally, I made it back to the trail head, around two and a half hours after leaving the top. That night I had energy only to shower and eat a double serving of oatmeal before crashing. Today, I am stiff, but not as sore as I thought I would be.

Goat Lake

I wandered into the Henry M. Jackson Wilderness this morning, taking a 10 mile walk with full pack to Goat Lake. The lake is a popular destination for day trippers in the summer, which has always caused me to avoid the place. I figured the warm winter might give me a chance to enjoy the area with a few less bipeds around.

The trail was deserted, making it an enjoyable jaunt. As per usual for this unusual year, no snow nor ice was encountered. There was quite a bit of blow-down and a few land slides, most likely from this year’s storms, which caused me to misplace the trail now and again, but it was otherwise uneventful.

Hank's Country

I’ll say one thing about old Hank: he’s got some big cedars in his country. I mean, big. Some looked like they may almost match a sequoia. The going was slow, as every 10 feet or so I encountered another that required a pause, a bend of the neck, and a moment’s consideration. There was also evidence of past logging, such as Tree On a Stump. A nice little “fuck you” to humans from the forest, I thought.

From one particularly aged and gnarly specimen, I cut a branch of needles. I planned to make tea later and perhaps infuse some of that 1,000 vitality into myself.

Goat Lake and Cadet Peak

The lake itself had no ice, but Cadet Peak above was topped with snow. It was difficult to tell where mountain ended and sky began, for all the white clouds in the afternoon sky.

Lunch at Goat Lake

Lunch was intended to be couscous with a bit of curry, but ended up being curry with a bit of couscous. Afterward, I washed it down with warm cedar tea and a few chunks of dark chocolate — a combination most pleasing to my tongue.

Then: a walk back home as the sun set.

Sunset

I don’t know what the answer is. In time man gets used to almost anything, but the problem seems to be that technology is advancing faster than he can adjust to it. I think it’s time we started applying the brakes, slowing down our greed and slowing down the world. I have found that some of the simplest things have given me the most pleasure. They didn’t cost me a lot of money either. They just worked on my senses. Did you ever pick very large blueberries after a summer rain? Walk through a grove of cottonwoods, open like a park, and see the blue sky beyond the shimmering gold of the leaves? Pull on dry woolen socks after you’ve peeled off the wet ones? Come in out of the subzero and shiver yourself warm in front of a wood fire? The world is full of such things. - Richard Proenneke, One Man’s Wilderness

Lake Twenty Two

I tossed another 10lb weight in my pack and headed out to the Mount Pilchuck area. I ended up walking out to (the creatively named) Lake Twenty Two at the base of Pilchuck and bushwhacked around the research natural area a bit.

Lake Twenty Two

There was very little snow. It’s going to be a dry summer.