Tuesday, July 27, 2010

Voyageur 50 mile race report

Weather was overcast, and a high of 21C. About as perfect as somebody can ask for in late July.

Race started off well. I got passed by about 100 people in the first half mile. I was utterly convinced they were going too fast, as my Garmin indicated that I was doing 9 minute miles!

After the first half mile on a bicycle path, the course ducked into some gnarly single track that was runnable if you were careful. And it was nearly impossible to pass anyone. Unfortunately, the people in front of me were too careful and walked almost the entire 3 miles to the Jay Cooke aid station.

After the first aid station, the track became much wider and grassy. I was much closer to the back than to the front, so all the morning dew had been mopped up by the faster runners. Win! I took this opportunity to pass a few people on the downhills (which I seemed to be very good at). Crossing a small hydro dam, I arrived at the Forbay's Lake aid station.

The next trail section started to school me in what hills were about. We took the Gull Creek trail which consisted pretty much of a 1.5 mile downhill (sweet!) followed by a 1.5 mile uphill (bogus). It was at this point that I took my first serious walk break. The Peterson's aid station was welcome, as I really needed a refill of my water bladder.

The next section to the Grand Portage aid station was fairly non-eventful, except it should be noted that it was 100% entirely downhill, and at a fairly healthy grade. After Grand Portage were the infamous Power Lines. You leave the aid station going up a large hill, then descent a ridiculously steep slope just to ascend another ridiculously steep slope. At this point, I thought "That wasn't too bad" as the trail veered off into the forest. Alas, those were just the teaser hills. The big hills lay about half a mile up the trail. I arrived at the real power line hills, and immediately laughed. It was obvious that whoever included this section as part of the race had a sense of humour. The ascents and descents were nearly vertical, large (350'), and repetitive. It was during the power lines that I met somebody on the trail who actually went to the same high school as me! Small world indeed! The Seven Bridges aid station was like a mirage in the desert.

The descent towards the Fond Du Lac aid station and ascent back up towards Beck's Road aid station was fairly uneventful. My legs were started to get trashed from the long continuous ascents and descents. Relief wasn't in sight when I arrived at Beck's Road, as we immediately began climbing an asphalt road towards Sniveley Park. It was during this section that I came across the leaders coming back. Everybody cheered them on as they zipped past us, letting gravity do all the work for them. It was the Sniveley Park section of trail that I detested the most. The trail was mushy, there were little mud bogs covering parts of the trail, and lots of horse tracks to trip up in. The Skyline Parkway aid station was a welcome sight, as it meant no more horse holes (at least until the way back!).

The descent from Skyline Parkway to Turnaround Zoo aid station was fairly uneventful. At the time, I thought I was making good time, making time for the slower sections of the course where I had to walk (Power Lines, etc). Dwayne and Murray were heading back when I was 1 mile away from the turnaround, which gave me hope that I wasn't as slow as I thought I was! It was at this point that things really started to turn south on me.

It started to rain about 10 minutes before I got to the Turnaround Zoo aid station. This of itself it no big deal, until you consider that this rain was all that was keeping the sun from shining on us. Once the rain stopped, the clouds had parted and the sun started to bake me. I got to the turnaround at 5:05. I figured that if I pushed myself a bit, combined with my newly found knowledge of the trail, I could finish in under 10 hours. I ditched my iPod (which didn't have any battery power at the start, and was just dead weight), decided not to change my socks (I didn't want to see what my feet looked like), ditched one of my untouched Cliff bars, and reloaded my supply of E-caps.

My way back, I was walking a lot more than I was running. The downhill runs had started to take their toll on me. My legs felt fine, but I couldn't catch my breath when my legs were moving that fast. So I had to start walking downhill. This pretty much blew my time expectations out the window. Skyline Parkway, Beck's Road, and Fond Du Lac were all a distant blur as I kept a forward shuffle going. By the time I got to Seven Bridges I felt dead on my feet.

I knew the next section would be the dreaded power lines, so I filled my water bladder until it was bursting at the seams with iced water. I rammed as many potatoes as I could down my throat, and grabbed a handful of pretzels. I was ready to wage war on the power lines. I'm not sure if it was the change in my head (making war on the trail), or the ridiculous amounts of food I ate at the aid station, but I found the power lines to be much easier coming back than heading out. The rain had made the trail very slippery, and I had to use the bushes and grass to pull myself up the hills and brake myself on the descents. I can only imagine what the people ahead of me had to do, as I had the advantage of seeing where people had slid out and knew to not step in those places.

When I arrived at the Grand Portage aid station, my energy had come back. I was eating much better, and moving much faster. I also knew that I "only" had a half marathon left to run, so I gunned it as best as my legs could go. My average pace started to creep faster, but it was too little too late. My 10 hour goal was long gone. On the other hand, I still had a good chance of finishing strong. I tried really hard to not walk any of the last section between Jay Cooke aid station and the finish, but had to slow down in a few dicey places. But overall, I made a very good show of it.

I crossed the finish line at 11:28 screaming my head off in joy and excitement. This was by far the hardest race I had ever done in my life!

Wednesday, July 21, 2010

Nervous but Excited

I'm both nervous and excited for my race this weekend. Nervous because I have only run 50 miles once before, and was done by doing loops on a 5km course (was a timed race). I also ended up injuring myself in that race, and had to take the next two months off running.

Excited because this is going to be my first "real" ultra. It is also my first race in another country. So right now, I'm trying to figure out what I need to pack for the race, and what I need to put in my drop bags.

Pack:
- Shoes
- Socks
- Shorts
- Shirt
- Hydration pack
- Water bladder
- Body glide
- Toilet paper
- E-caps

Drop bags:
- Shoes
- Socks
- Gu (at least 4 per bag)
- Vitamin I

I feel like I'm missing a lot.

Monday, July 19, 2010

Geek Out Time

A bit of a gripe today.

The more I read this one developer's code, the more I'm convinced he is was on drugs. Fortunately, this particular developer isn't working for the company I work for anymore, so I'm in little danger of him introducing more braindead ideas. Any single one of his eccentricities of programming is enough to cause a grown man to break down and cry, while all of them taken at the same time can cause such trauma to the brain that its only line of defense is retrograde amnesia.

Where do I begin? Well, for starters he doesn't like using constants. He has a Java class called "Constants", fills it with static variables, and capitalizes their names, but unfortunately they're not actually constant since he forgot to include the "final" qualifier. This in of itself would not be a problem if he used the variables as constants. But unfortunately, they get assigned and reassigned seemingly at random. Thus, just about every variable in the program is effectively a global variable.

Then there's his complete infatuation with Strings. Why bother storing a number in an int or double, when you can store it in a String? What else could String.valueOf() and Integer.parseInt() be used for?

There's also a complete lack of knowledge of data structures. Everything that can be put into an ArrayList is put into an ArrayList. It's by far his favourite data structure, and it seems to be the only one he knows. A few times he created a new class to encapsulate data, but they all only have one member: An ArrayList. Different pseudo-data members are implemented as indices into the ArrayList.

This is by no means a complete list of his deficiencies as a programmer. A lack of Object-oriented design (or understanding) cripples any readability in the code. No exceptions are handled. Memory leaks in all the UI, because instead of updating a field on a form, the form hides itself and creates a new form with the new value.

But one of the best facepalming issues I have come across is his method of populating a database from a flat file. Most programmers would read a line of data (which contains all the data required for a single database record) and write it out to the database. Since ArrayLists are his favourite data structure, he decided to load the entire flat file into an ArrayList of records. And since he likes to implement classes are ArrayLists, the database is actually stored completely in memory as an ArrayList of ArrayLists. Only after the entire file is read is the ArrayList iterated through and written to the database.

If you'll excuse me now, I'm going to drink myself into oblivion.

Thursday, July 8, 2010

Two and a half weeks out

Just two and a half weeks until Voyageur 50. I'm starting to feel completely unprepared.

My trail run last Friday with Dwayne and Murray left me drained. It was "only" 26 miles, which is just a bit longer than half of my upcoming race. And it was less hilly. Granted it was really hot, there weren't any aid stations, and we were hauling everything around on our backs. And I didn't take any planned walk breaks (only unplanned ones when the heat was starting to get to me).

Adding to my anxiety are a 5k road race this weekend, and a 6k trail race the following weekend. It is going to be tricky for me to get my long runs in, and taper at the same time.

In the end, I know I'm going to have fun. Isn't that the entire point?