« March 2008 | Main | May 2008 »

April 27, 2008

My Kneecaps Hurt

As most of the regular readers of this blog know my big vacation for this year is going to be a trek in Nepal. I've been training for awhile now doing a bunch of different conditioning. I started off with cardiovascular on my bike trainer and doing the stairs at Harvard Stadium. I then rediscovered the beauty of hiking in the Blue Hills after a less than ideal hike up Monadnock. This weekend I returned to Monadnock for a much more enjoyable hike and then ventured up into the White Mountains.

The Blue Hills are close, but I can only do them so many times. In total for April I made 3 trips and at this point have covered most of the major routes. For my own records I think they broke down as follows:

  • April 12: 4.5 mile, 1300 feet gain, 1h15m, Red Dot / Skyline loop between the Trailside Museum and the Reservation Headquarters
  • April 13: 11.5 mile, 2450 feet gain, 4h, Skyline from the Reservation Headquarters to Shea Rink and back
  • April 20: 8.9 mile, 2300 feet gain, 2h45m, Skyline from 28 to 138 and back

April 6 was the less than ideal hike up Monadnock. As you can see we had foggy conditions, snow on the trail, and a fairly brutal summit with high winds. Given the trail conditions the lack of crampons made for some slippery conditions. We ended up doing just the White Dot Trail up and back: 3.8 mile, 1807 feet gain, 3h25m.

Yesterday I went back to Monadnock and ended up going a little peak bagging nuts. Since I was hiking solo I left my route with my housemates but I ended up deviating from that a little (see below), which was bad since I did get lost for a short while... All the trails were snow free and the conditions were excellent. Besides needing to put my jacket on for lunch at the summit, I was fine in a t-shirt and shorts. I've yet to find a trail map with inter link distances to get the tally, but my route was: White Dot Trail, Cascade Link, Pumpelly Trail, Monadnock Summit, Dublin Trail, Marlboro Trail, Marian Trail, Great Pasture Trail, Monte Rosa Summit, Fairy Spring, White Arrow Trail, Do Drop Trail, Cliff Walk (with a little side adventure losing the trail and getting lost on the south eastern side and then finding the trail again after scrambling up some rocks), Bald Rock Summit, Smith Connecting, White Cross Trail, Spruce Link, White Dot Trail. ? mile, ? feet, 4h30m.

Today I braved a 50/50 chance of rain (I lost) weather report and headed north to hike Mt. Pierce. The hiking was great but with the weather the way it was, I had no views. The sun started to poke through about half way down and the roads were dry by the time I got back to the parking lot. Compared to my other hikes this was a very deserted route. I met two other solo hikers on my way up and one couple on the way down. The lower portion of the Crawford Path up to the Mizpah Cutoff was mixed wet rocks and the packed snow route. Everything north on Crawford from the cutoff to the peak and back via the Webster Cliff trail and the Mizpah Cutoff was just the packed snow route.

The rain made the snow route a little mushy and easy to ascend with just my boots. Near streams that crossed the path the snow was starting to crumble and I dropped at least one piece of the path into the water as I walked over it. Stepping off of the packed snow path plunged you at least knee deep if not waist deep as I unfortunately found out during one misstep. Descending I had to put on my crampons to stay on the snow path instead of slip sliding my way down.

I didn't spent that much time at the peak (besides snapping a few pictures) since visibility was very limited. Instead I descended to the closed Mizpah Hut and ate lunch on the rocks outside. I'll definitely want to head back sometime when the views are better, probably as part of hitting some of the other nearby peaks. 6.6 mile, 2450 feet, 4h15m.

Tags: hiking

April 21, 2008

The Omnivore's Dilemma

The Omnivore's Dilemma by Michael Pollan starts off strong but with each major section gets less informative and more autobiographical. This isn't to say that the later sections don't have worthwhile material, it's just that what material they do have is harder to find and not as thought provoking. I suspect if the book had started off with his tales of novice hunting and mushroom gathering I wouldn't have read the rest of it.

The writing style of each major section does match its theme. Which is why I may have found the Industrial (scientific) section the most interesting, while the Pastoral (pseudoscience) less so, and the Personal (new age) a chore to read. Despite the major differences in the quality of the material the book does prompt one to consider where your food comes from.

The first section focuses on corn. One of the key reasons that corn is grown so much is the seed market. Given parents A and B the seed they produce C (F-1) has better yields than either parent. But C's children (F-2) are genetically worse producing yields up to 1/3 as poor [31]. Big business has an interest in this because to get consistent high yields requires buying new seed from them every year.

Some other tidbits:

  • Approximately 50 gallons of oil per acre of corn are used in the production of it [45]
  • Thoreau's line: "Men have become the tools of their tools." [55-56]
  • Cargill is the biggest privately held corporation in the world. [63] (or 2nd by other metrics)
  • 60% of commodity corn goes to feeding livestock [66]
  • rumen is what allows cows to digest grass [70]
  • 32 pounds of feed into 4 pounds of gain [80] (livestock corn conversion rate)
  • 10 calories of fossil fuel are used to produce 1 calorie of processed food [88]
  • $1 buys 1200 calories of potato chips and cookies compared to 250 calories of whole food like carrots. $1 buys 875 calories of soda or 170 calories of fruit juice from concentrate. [108]
  • 19% of American meals are eaten in the car [110].

The second section had plenty of information about organic farming and the fact that the USDA organic guidelines specify an approved list of non-organic additives that maybe used. Another big take away form this section is that even though animals maybe fed organically it doesn't mean that the animals quality of life is any better or that it's being fed its natural diet.

The last section had a couple of tidbits I seem to think I knew but probably forgot. In both cases really not at all related to the subject matter.

  • Human brain in 2% of body weight but uses 18% of energy [291]
  • Tears are only produced by humans [292]

With all of that said, what will I change about my food buying or eating habits? Not much, at this time. I already eat healthy and try my best to support local businesses.

Tags: book food

April 19, 2008

The Partly Cloudy Patriot

It's hard to believe that it has been almost a month since I finished Sarah Vowell's "The Partly Cloudy Patriot". I know I've had some free time but it is only now that I'm getting around to jotting down my thoughts. This was a lighter read than most and as such it didn't generate as many notes, which has always been my primary motivation for writing about the books I read. I've lost track of the number of times I've done a Google search for something only to end up on my blog having forgotten I'd written down some thought a couple of years ago. Now back to the book. Overall I enjoyed the book but frequently found her writing to come off as whiny.

The wide range of essays in the book do give a great feel for her wit, voice, general curiosity, obsessive nature, and intelligent writing. Of all the essays, I found Part Two: Nerds v. Jocks of the piece The Nerd Voice to be the most intriguing. One of the first pieces I'd read that resonated with me why Gore didn't win.

The tie between The Nerd Voice and an earlier piece in the book, Democracy and Things Like That, hinted at the expanding and opinionated role media is playing in the elections. While many find it easy to blast Fox News the fact that The New York Times (the opposite side of the spectrum) was one of the key players in misquoting Gore demonstrated to me what I've often seen in technology, that the best doesn't always win. I see similar issues with Obama and can only hope this election doesn't end with the same result.

Tags: books obama

April 16, 2008

Flex 4

Some of the first hints about Flex 4 have been posted to the Adobe Open Source site. Great to see the future development of the Flex platform starting off this open.

Tags: flex oss

April 9, 2008

Debugging Bindings with BindingManager

At last night's BFUG meeting Peter Farland demonstrated an undocumented class called BindingManager that is handy for debugging bindings in Flex. This class exists in both Flex 2 and Flex 3. Below is a quick example of how it is used:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" preinitialize="handlePreInitialize();">
<mx:Script>
<![CDATA[
private var _counter:int = 0;

private function changeText():void
{
    text1.text = "Changed Text " + _counter++;
}

private function handlePreInitialize():void
{
    BindingManager.debugBinding("text2.text");
}
]]>
</mx:Script>
<mx:Text id="text1" text="Initial Text"/>
<mx:Text id="text2" text="{text1.text}"/>
<mx:Button label="Update Text 1" click="changeText();"/>
</mx:Application>

The magic is the call to BindingManager.debugBinding(). The argument is the destination of the binding. The translation syntax is a little clearer if you aren't using an inline binding. For example the text2 binding above could also be written like this:

<mx:Text id="text2"/>
<mx:Binding source="text1.text" destination="text2.text"/>

Using either syntax, when the program is run I get the following output:

Binding: destString = text2.text, srcFunc result = Initial Text
Binding: destString = text2.text, error = TypeError: Error #1009: Cannot access a property or method of a null object reference.
Binding: destString = text2.text, srcFunc result = Initial Text
Binding: destString = text2.text, srcFunc result = Changed Text 0
Binding: destString = text2.text, srcFunc result = Changed Text 1
Binding: destString = text2.text, srcFunc result = Changed Text 2

The most interesting part of this output is the "TypeError" message. Normally errors like this are hidden from you on purpose by the binding mechanism. Now instead of having to set breakpoints in the framework it's possible to easily see just what is going on when a binding fires.

Tags: bindings flex