<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Daniel R.</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/" />
    <link rel="self" type="application/atom+xml" href="http://life.neophi.com/danielr/atom.xml" />
   <id>tag:life.neophi.com,2008:/danielr//1</id>
    <link rel="service.post" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1" title="Daniel R." />
    <updated>2008-07-03T15:15:38Z</updated>
    
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type 3.3svn-20070408163858</generator>
 
<entry>
    <title>Wow</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/07/wow_2.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1065" title="Wow" />
    <id>tag:life.neophi.com,2008:/danielr//1.1065</id>
    
    <published>2008-07-03T15:00:36Z</published>
    <updated>2008-07-03T15:15:38Z</updated>
    
    <summary>While I&apos;m still in a jet lagged stupor, I am back home. In summary, the trip was phenomenal. The varied Nepal landscape was a lush rich green fed by the first rains of the monsoon season. It made for hiking...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Kitchen Sink" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>While I'm still in a jet lagged stupor, I am back home. In summary, the trip was phenomenal. The varied Nepal landscape was a lush rich green fed by the first rains of the monsoon season. It made for hiking in cloudy mornings and rainy afternoons but the weather cleared during our summit of Kala Patthar and provided mesmerizing views of Everest along with the other almost countless peaks in every direction. I've got over 700  pictures I need to wade through so it will take some time to get the photos online but I'll try to get a few up in the near future to wet your appetite :)</p>]]>
        
    </content>
</entry>
<entry>
    <title>Off to Nepal</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/06/off_to_nepal.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1063" title="Off to Nepal" />
    <id>tag:life.neophi.com,2008:/danielr//1.1063</id>
    
    <published>2008-06-11T02:53:28Z</published>
    <updated>2008-06-11T02:55:20Z</updated>
    
    <summary>Tomorrow I leave for an extended vacation trekking around Nepal. I don&apos;t expect to have any connectivity while I&apos;m there so be advised any email or comments will be delayed even worse than usual. See you in July!...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Kitchen Sink" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>Tomorrow I leave for an extended vacation trekking around Nepal. I don't expect to have any connectivity while I'm there so be advised any email or comments will be delayed even worse than usual. See you in July!</p>]]>
        
    </content>
</entry>
<entry>
    <title>500!</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/06/500.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1061" title="500!" />
    <id>tag:life.neophi.com,2008:/danielr//1.1061</id>
    
    <published>2008-06-03T03:21:52Z</published>
    <updated>2008-06-03T04:12:01Z</updated>
    
    <summary>MovableType tells me this is my 500th post. I think only a couple posts never made it out the door so you have that much drivel of mine for your reading pleasure. Should you want to, you can start at...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Kitchen Sink" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>MovableType tells me this is my 500th post. I think only a couple posts never made it out the door so you have that much drivel of mine for your reading pleasure. Should you want to, you can <a href="http://life.neophi.com/danielr/2004/08/totally_gridbag.html">start at the beginning</a>. Many of my early posts were links until I <a href="http://del.icio.us/DanielR">discovered del.icio.us</a> and started using that to capture all my links. Along the way to 500 posts I switched jobs and started writing more technical articles (hint if you only want RSS notifications for technically related stuff try the <a href="http://life.neophi.com/danielr/flex.xml">Flex Feed</a>). Lately I've been more on the personal side, too lazy to setup a separate blog for that, unlike some <a href="http://www.bit-101.com/blog/?p=1258">more motivated bloggers</a>.</p>]]>
        <![CDATA[<p>The fact that this is post number 500 is perfect timing since I just cashed in my Mountain Dew coin bottle and came up just shy of $500 in coins ($499.03 to be exact). I've been saving coins in that bottle since about the time I came to Boston in late 1995. Having needed quarters for laundry and parking meters over the years the bottle was almost 100% pennies, nickels, and dimes. It weighed in at 90 pounds. The final tally from Coinstar was 1 dollar coin, 2 half-dollar coins, 5 quarters, 2995 dimes, 2330 nickels, and 7978 pennies. Which based on some calculations Brian and I did in the past using <a href="http://www.csirik.net/coins.html">coins weights</a> is about right. The only odd thing is I had more nickels than I should have, assuming standard change amounts, 17.5% versus 12.5%. Pennis were 60% versus 62.5% and dimes 22.5% versus 25%. The difference maybe due to many convenience stores giving out a nickel instead of 4 pennies.</p>

<p>I went with an Amazon gift certificate since I want to buy a new camera (suggestions welcome as I need to order real soon now) before my next trip and getting a gift certificate avoids the 9% counting fee normally charged. With the help of John I <a href="http://photos.neophi.com/v/DanielR/coins/">captured the redemption efforts</a>.</p>

<p>In other random updates, over the long weekend all of Gilman Manor, both past and present, went out to California for Shaun and Meg's wedding. It was a wonderful custom ceremony in a beautiful bay area setting. Minus some very stiff winds the weather was perfect. I captured a few <a href="http://photos.neophi.com/v/DanielR/ShaunMeg2008/">pictures during the festivities</a>.</p>

<p>While out there for the long weekend we also explored San Francisco and visited a few places I'd not been on my previous excursions around the city. In particular we walked around and explored Golden Gate Park. My camera doesn't do macro very well (hence part of my desire to replace it) so only a couple of shots from the Conservatory of Flowers <a href="http://photos.neophi.com/v/DanielR/Conservatory/">were worth posting</a>. I didn't take any at the Japanese Tea Garden, but exploring the area reaffirmed by desire to visit that part of the world.</p>

<p>Lastly, in between fighting colds, food poising, and bad weather my hiking has been suffering. One weekend just to do something I took a trip up to <a href="http://www.mass.gov/dcr/parks/metroboston/breakhrt.htm">Breakheart Reservation</a>. No difficult climbs but a nice woodland stroll with many <a href="http://photos.neophi.com/v/DanielR/Breakheart2008/">nice views of Boston</a>. The top of Castle Rock had the best views (if you ignore the nearby power lines).</p>]]>
    </content>
</entry>
<entry>
    <title>Wonder who I wronged?</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/05/wonder_who_i_wronged.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1060" title="Wonder who I wronged?" />
    <id>tag:life.neophi.com,2008:/danielr//1.1060</id>
    
    <published>2008-05-28T14:00:55Z</published>
    <updated>2008-05-28T14:11:29Z</updated>
    
    <summary>I woke up this morning to find over 4,000 messages in my inbox. Seems I was on the receiving end of an email bounce bomb. Basically someone was sending out thousands of spam email messages and forged my email address...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Kitchen Sink" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>I woke up this morning to find over 4,000 messages in my inbox. Seems I was on the receiving end of an email bounce bomb. Basically someone was sending out thousands of spam email messages and forged my email address as the sender/return-path for the messages. Given how these things work I'm sure my address was randomly selected out of some list, but my cynical side makes me wonder who I wronged :) At last count I've gotten over 17,000 messages. The incoming message rate is subsiding but at its peak they were coming in at 40-50 a second. Crazy.</p>]]>
        
    </content>
</entry>
<entry>
    <title>Adobe&apos;s David Coletta on Buzzword&apos;s Automated Testing Framework</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/05/adobes_david_coletta_on_buzzwo.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1056" title="Adobe's David Coletta on Buzzword's Automated Testing Framework" />
    <id>tag:life.neophi.com,2008:/danielr//1.1056</id>
    
    <published>2008-05-16T13:26:42Z</published>
    <updated>2008-05-16T13:50:27Z</updated>
    
    <summary>This past Tuesday the Boston Flex User Group held its second meeting. David Coletta from Adobe&apos;s Buzzword team spoke about Automated Testing Framework. This was a deeper dive into the topic he presented at Flex Camp Boston 2007. I counted...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Flex" />
            <category term="Programming" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>This past Tuesday the <a href="http://www.bostonfug.org/">Boston Flex User Group</a> held its second meeting. <a href="http://www.colettas.org/">David Coletta</a> from Adobe's Buzzword team spoke about Automated Testing Framework. This was a deeper dive into the topic he presented at <a href="http://life.neophi.com/danielr/2007/12/flex_camp_boston_2007_building.html">Flex Camp Boston 2007</a>. I counted about 50 people at the meeting. It was a very interactive session with a bunch of good questions coming from the audience. Below are my rough notes from the presentation.</p>]]>
        <![CDATA[<p>David's has a long background in development but hasn't programmed in Flash. Sees work done in Flash and wonders how that was possible, gets same reaction for work he's done in Flex.</p>

<p>Rough Buzzword time line: Jan 2006, started coding; Oct 2006, First public demo; Fall 2007, opened up for real use.</p>

<p>He gave a quick demo of Buzzword. On startup that an issues with new unsupported browsers. They have support for latest Safari but it isn't released yet. Big advantage of online word processor is like Google Docs you can get at it from anywhere. Better than Google Docs because you aren't confined to email only like editing capabilities.</p>

<p>Document browser with support for sorting by last changed, last viewed, role on document, date, number of pages.<br />
Google can't do pagination. Showing picture import, resize, and text wrapping around it. Layout is all done on the fly. Has a nice ruler that no one knows about.</p>

<p>Three models (in the MVC sense used):<br />
document (persistent user content, hierarchical, moving text is just a tree operation), layout (transient position of content, updated after every keystroke), and display (flash/flex objects on the display list, mostly tracking what is part of the flash player).</p>

<p>Primary loop is: hit a character, inserts into document, fires events, triggers layout, visuals, and redraw.</p>

<p>Document internals: Containment (document) versus Inheritance (run).</p>

<p>Buzzword has a built-in inspector. View and set properties manually. Exposes raw data structure.<br />
Typically when using a tree component you can hook it up to XML. With ITreeDataDescriptor you can plug directly into your own custom data structures. Your application should have debugging tools built into it. Flex's easy to use out of the box components without much styling are a good enough interface to create these tools quickly.</p>

<p>Question about why should someone trust Buzzword for documents?: Basically just need to "trust us". SWFs are not over SSL but all documents are. Adobe practices good data security. Need to ask "how bad would a security breach be for Adobe?" and understand they don't want that to happen.</p>

<p>Created a way to test the real application through a system called "LiveTest". Needed to test correctness of document model after every command. Not a replacement for QTP as it is focused on state of internal models. Internally everything is done via command pattern.</p>

<p>To test some feature it records document model after changes to create known good state. Windows/IE used as platform using ActiveX control to write out state into files. These can later be rerun to compare that the same results are produced each time.</p>

<p>Question about how much effort it took to build the test harness? Not sure, maybe 10% of total time.</p>

<p>Comment made about inability to type in full screen mode. It's a security concern which is why its disallowed.</p>

<p>Commands run during a live test know how to output an ActionScript version of themselves that can be pasted into a .as file to create the test file. Could send to server and compile and send back a SWF, but wanted a light-weight solution. Pieces of test are broken into anonymous function, one for each part. Done to work around issue that if ActionScript runs for too long Flash player freezes. Cooperative multiple tasking. Separate functions can run and return control back to UI.</p>

<p>Question about generating ActionScript code versus interrupting XML? Going through API on top of Buzzword to make testing possible. Built this way to ensure you have a good API. Being bale to set breakpoints in code versus XML is very handy.</p>

<p>New code needs to be referenced so they have a file that pulls in all of the tests so they are compiled in.</p>

<p>Manual training of the test. Took XML snapshots of document and layout and wrote them to disk. XML documents have representations of model objects. Has green thumbs up or red thumbs down. Good discipline about running all test before doing a check in.</p>

<p>Test success based on final XML matching checked in XML. On test failure outputs error files and do text compare of expected and actual. Almost no test is visually analyzed, mostly look at raw XML.</p>

<p>Question about sharing the tests? Yes, every developer has all tests, checked into source control.</p>

<p>Question about if you started over today would you change anything? Wouldn't use IE to write files, probably use AIR instead. Might consider an  XML representation for capturing test steps. Do use FlexUnit for lower level API testing.</p>

<p>Question about why not QTP? Why doesn't Adobe provide more testing frameworks? Testing tool capturing at a much lower level than QTP. Could refactor testing tool to be more generic. </p>

<p>Question about how something gets retrained? New kind of break, causes document model to change. May cause new XML to be written out and tests will fail. Now need to generate new XML.</p>

<p>Question about how much of the code is covered by the tests? Look to <a href="http://code.google.com/p/flexcover/">FlexCover</a>.</p>

<p>Question about handling documents from older versions? Can upgrade documents when opened. Have tests that exercise that process. May have fringe cases that cause problems but hasn't been an issue, yet.</p>

<p>Document organizer testing is harder, need to get into correct state, initialize test user with known set of documents.</p>

<p>Browser tests are only running in IE. Haven't really looked at memory profile under multiple browsers.</p>]]>
    </content>
</entry>
<entry>
    <title>Returning</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/05/returning.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1055" title="Returning" />
    <id>tag:life.neophi.com,2008:/danielr//1.1055</id>
    
    <published>2008-05-07T02:04:00Z</published>
    <updated>2008-05-07T02:20:50Z</updated>
    
    <summary>I&apos;m finally feeling like I&apos;m returning to the real world after a multiple day buildup and long weekend spent watching prodigious amounts of television while battling the worst cold I&apos;ve had in a long time. I frequently suspect that when...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Kitchen Sink" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>I'm finally feeling like I'm returning to the real world after a multiple day buildup and long weekend spent watching prodigious amounts of television while battling the worst cold I've had in a long time. I frequently suspect that when I over extend myself too much my body fights back and lets a cold in since it knows that will slow me down. Well it worked. I'm completely off my <a href="http://life.neophi.com/danielr/2008/04/my_kneecaps_hurt.html">training schedule</a> as even biking to work brings out coughing fits, but thankfully I've still got over a month to get back into the swing of things. Besides generally being lackadaisical when responding to email my hermit nature over the past week only exacerbated the problem. Very tempting to just hit delete all and try an <a href="http://www.43folders.com/izero">inbox zero</a>.</p>]]>
        
    </content>
</entry>
<entry>
    <title>My Kneecaps Hurt</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/04/my_kneecaps_hurt.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1053" title="My Kneecaps Hurt" />
    <id>tag:life.neophi.com,2008:/danielr//1.1053</id>
    
    <published>2008-04-28T02:09:39Z</published>
    <updated>2008-04-28T03:24:58Z</updated>
    
    <summary>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&apos;ve been training for awhile now doing a bunch of different conditioning. I started off with...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Kitchen Sink" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>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.<br />
</p>]]>
        <![CDATA[<p>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:</p>

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

<p>April 6 was the less than ideal hike up Monadnock. <a href="http://photos.neophi.com/v/DanielR/Monadnock2008/snow-hike.jpg.html">As you can see</a> 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.</p>

<p>Yesterday I <a href="http://photos.neophi.com/v/DanielR/Monadnock2008/">went back to Monadnock</a> 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.</p>

<p>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.</p>

<p>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.</p>

<p>I didn't spent that much time at the peak (besides <a href="http://photos.neophi.com/v/DanielR/Pierce2008/">snapping a few pictures</a>) 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.</p>]]>
    </content>
</entry>
<entry>
    <title>The Omnivore&apos;s Dilemma</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/04/the_omnivores_dilemma.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1052" title="The Omnivore's Dilemma" />
    <id>tag:life.neophi.com,2008:/danielr//1.1052</id>
    
    <published>2008-04-21T23:53:56Z</published>
    <updated>2008-04-22T00:52:41Z</updated>
    
    <summary>The Omnivore&apos;s Dilemma by Michael Pollan starts off strong but with each major section gets less informative and more autobiographical. This isn&apos;t to say that the later sections don&apos;t have worthwhile material, it&apos;s just that what material they do have...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Books" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>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.</p>

<p>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.</p>]]>
        <![CDATA[<p>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.</p>

<p>Some other tidbits:</p>

<ul>
<li>Approximately 50 gallons of oil per acre of corn are used in the production of it [45]</li>
<li>Thoreau's line: "Men have become the tools of their tools." [55-56]</li>
<li>Cargill is the biggest privately held corporation in the world. [63] (or 2nd by other metrics)</li>
<li>60% of commodity corn goes to feeding livestock [66]</li>
<li>rumen is what allows cows to digest grass [70]</li>
<li>32 pounds of feed into 4 pounds of gain [80] (livestock corn conversion rate) </li>
<li>10 calories of fossil fuel are used to produce 1 calorie of processed food [88]</li>
<li>$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]</li>
<li>19% of American meals are eaten in the car [110].</li>
</ul>

<p>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.</p>

<p>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.</p>

<ul>
<li>Human brain in 2% of body weight but uses 18% of energy [291]</li>
<li>Tears are only produced by humans [292]</li>
</ul>

<p>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.</p>]]>
    </content>
</entry>
<entry>
    <title>The Partly Cloudy Patriot</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/04/the_partly_cloudy_patriot.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1051" title="The Partly Cloudy Patriot" />
    <id>tag:life.neophi.com,2008:/danielr//1.1051</id>
    
    <published>2008-04-20T02:46:01Z</published>
    <updated>2008-04-20T03:31:28Z</updated>
    
    <summary>It&apos;s hard to believe that it has been almost a month since I finished Sarah Vowell&apos;s &quot;The Partly Cloudy Patriot&quot;. I know I&apos;ve had some free time but it is only now that I&apos;m getting around to jotting down my...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Books" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>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.</p>]]>
        <![CDATA[<p>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.</p>

<p>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.</p>]]>
    </content>
</entry>
<entry>
    <title>Flex 4</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/04/flex_4.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1050" title="Flex 4" />
    <id>tag:life.neophi.com,2008:/danielr//1.1050</id>
    
    <published>2008-04-16T11:50:10Z</published>
    <updated>2008-04-16T11:53:33Z</updated>
    
    <summary>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....</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Flex" />
            <category term="Programming" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>Some of the <a href="http://opensource.adobe.com/wiki/display/flexsdk/Flex+4">first hints about Flex 4</a> have been posted to the <a href="http://opensource.adobe.com/">Adobe Open Source</a> site. Great to see the future development of the Flex platform starting off this open.</p>]]>
        
    </content>
</entry>
<entry>
    <title>Debugging Bindings with BindingManager</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/04/debugging_bindings_with_bindin.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1048" title="Debugging Bindings with BindingManager" />
    <id>tag:life.neophi.com,2008:/danielr//1.1048</id>
    
    <published>2008-04-09T12:25:23Z</published>
    <updated>2008-04-09T12:41:16Z</updated>
    
    <summary>At last night&apos;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...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Flex" />
            <category term="Programming" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>At last night's <a href="http://bostonfug.com/">BFUG</a> meeting <a href="http://blogs.adobe.com/pfarland/">Peter Farland</a> demonstrated an undocumented class called <strong>BindingManager</strong> 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:</p>]]>
        <![CDATA[<pre class="code">&lt;?xml version=<span class="quote">"1.0"</span> encoding=<span class="quote">"utf-8"</span>?&gt;
&lt;mx:Application xmlns:mx=<span class="quote">"http://www.adobe.com/2006/mxml"</span> layout=<span class="quote">"vertical"</span> preinitialize=<span class="quote">"handlePreInitialize();"</span>&gt;
&lt;mx:Script&gt;
&lt;![CDATA[
<span class="category1">private</span> <span class="category5">var</span> _counter:int = 0;

<span class="category1">private</span> <span class="category2">function</span> changeText():<span class="category1">void</span>
{
    text1.text = <span class="quote">"Changed Text "</span> + _counter++;    
}

<span class="category1">private</span> <span class="category2">function</span> handlePreInitialize():<span class="category1">void</span>
{
    BindingManager.debugBinding(<span class="quote">"text2.text"</span>);
} 
]]&gt;
&lt;/mx:Script&gt;
&lt;mx:Text id=<span class="quote">"text1"</span> text=<span class="quote">"Initial Text"</span>/&gt;
&lt;mx:Text id=<span class="quote">"text2"</span> text=<span class="quote">"{text1.text}"</span>/&gt;
&lt;mx:Button label=<span class="quote">"Update Text 1"</span> click=<span class="quote">"changeText();"</span>/&gt;
&lt;/mx:Application&gt;</pre><p></p>

<p>The magic is the call to <strong>BindingManager.debugBinding()</strong>. 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 <em>text2</em> binding above could also be written like this:</p><pre class="code">&lt;mx:Text id=<span class="quote">"text2"</span>/&gt;
&lt;mx:Binding source=<span class="quote">"text1.text"</span> destination=<span class="quote">"text2.text"</span>/&gt;</pre><p></p>

<p>Using either syntax, when the program is run I get the following output:</p><pre class="code">Binding: destString = text2.text, srcFunc result = Initial Text
Binding: destString = text2.text, error = TypeError: Error #1009: Cannot access a property <span class="category1">or</span> <span class="category1">method</span> of a <span class="category1">null</span> 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</pre><p></p>

<p>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.</p>]]>
    </content>
</entry>
<entry>
    <title>Adobe AIR Linux Alpha</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/03/adobe_air_linux_alpha.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1046" title="Adobe AIR Linux Alpha" />
    <id>tag:life.neophi.com,2008:/danielr//1.1046</id>
    
    <published>2008-03-31T12:27:26Z</published>
    <updated>2008-03-31T12:31:15Z</updated>
    
    <summary>Adobe has dropped the first public bits in their effort to port Adobe AIR to the Linux platform. You can download them from Adobe Labs. Keep in mind this is an alpha release and everything definitely isn&apos;t there, yet....</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Flex" />
            <category term="Helpful" />
            <category term="Links" />
            <category term="Programming" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>Adobe has dropped the first public bits in their effort to port Adobe AIR to the Linux platform. You can download them from <a href="http://labs.adobe.com/technologies/air/">Adobe Labs</a>. Keep in mind this is an alpha release and everything definitely isn't there, yet.</p>]]>
        
    </content>
</entry>
<entry>
    <title>Priorities</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/03/priorities.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1045" title="Priorities" />
    <id>tag:life.neophi.com,2008:/danielr//1.1045</id>
    
    <published>2008-03-31T01:41:16Z</published>
    <updated>2008-03-31T12:40:21Z</updated>
    
    <summary>Lately I&apos;ve been trying to figure out what my priorities are. This has been prompted by a number of factors one of which is that it is just the phase I&apos;m in. It started off with borrowing the book &quot;Getting...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Kitchen Sink" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>Lately I've been trying to figure out what my priorities are. This has been prompted by a number of factors one of which is that it is <a href="http://life.neophi.com/danielr/2006/11/phases.html">just the phase</a> I'm in. It started off with borrowing the book <a href="http://www.davidco.com/">"Getting Things Done"</a> by David Allen. I started reading it but then "other things" came up and it has been sitting on my desk unopened for some time now.</p>

<p>It isn't that I don't want to read the book or think that it won't help. Almost anything I read I expect to generate some tangential ideas or realizations. My hangup is that reading it would be conforming too much to a pragmatic life, which I already associate myself with. Rash is not a word people typically <a href="http://life.neophi.com/danielr/2006/02/johari_window.html">use to describe me</a>.</p>]]>
        <![CDATA[<p>I find myself writing this blog entry instead of reading that book or possibly working on a project of interest. The latter causing no end of "why didn't I" moments when I see others producing what I was thinking about. I say thinking about not planning or working on since very rarely does an idea go beyond thinking for me. The act of writing that prompts me to add that some projects do get done as most of my previous blog entries for this year attest to.</p>

<p>This maybe just a feeling that I could be doing more? That brings to mind the concept of "personal velocity" as introduced to me in <a href="http://www.amazon.com/Acorn-Principle-Know-Yourself-Grow/dp/0312242840">"The Acorn Principle"</a> by Jim Cathcart, another book I started to read, put down and haven't picked up again. While I know some of my own limitations and am mostly comfortable with them, I'm positive in other areas I'm my own harshest critic and think that I could be doing more when in fact I may already be operating at 110%.</p>

<p>While this entry hasn't done much beyond ramble somewhat coherently over a few short paragraphs, the behind the scenes process has been much more cathartic. It has helped me remember some great articles from writers more eloquent then me that address similar material. In particular <a href="http://www.paulgraham.com/procrastination.html">"Good and Bad Procrastination"</a> by Paul Graham and tangentially related <a href="http://www.joelonsoftware.com/articles/SetYourPriorities.html">"Set Your Priorities"</a> by Joel Spolsky.</p>]]>
    </content>
</entry>
<entry>
    <title>User experience considerations with SQLite operations</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/03/user_experience_considerations.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1043" title="User experience considerations with SQLite operations" />
    <id>tag:life.neophi.com,2008:/danielr//1.1043</id>
    
    <published>2008-03-10T22:00:24Z</published>
    <updated>2008-03-10T22:06:12Z</updated>
    
    <summary>An article I wrote for the Adobe Developer Connection entitled &quot;User experience considerations with SQLite operations&quot; has been published. Its focus is on issues Allurent uncovered while working with a SQLite database on the Allurent Desktop Connection application for Anthropologie...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Flex" />
            <category term="Programming" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>An article I wrote for the <a href="http://www.adobe.com/devnet/">Adobe Developer Connection</a> entitled "<a href="http://www.adobe.com/devnet/air/flex/articles/air_sql_operations.html">User experience considerations with SQLite operations</a>" has been published. Its focus is on issues <a href="http://www.allurent.com/">Allurent</a> uncovered while working with a SQLite database on the <a href="http://www.allurent.com/page.php?id=70">Allurent Desktop Connection</a> application for <a href="http://www.anthropologie.com/">Anthropologie </a>that was demoed at <a href="http://adobemax2007.com/na/">Adobe MAX 2007 in Chicago</a>.</p>]]>
        
    </content>
</entry>
<entry>
    <title>Antennae 1.2.0 Released</title>
    <link rel="alternate" type="text/html" href="http://life.neophi.com/danielr/2008/03/antennae_120_released.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://life.neophi.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=1/entry_id=1042" title="Antennae 1.2.0 Released" />
    <id>tag:life.neophi.com,2008:/danielr//1.1042</id>
    
    <published>2008-03-01T21:15:53Z</published>
    <updated>2008-03-01T21:21:20Z</updated>
    
    <summary>Antennae version 1.2.0 has been released. Grab it from http://code.google.com/p/antennae/. Highlights of this release include: Changed to standard naming conventions for properties, targets, tasks, and directories Updated support for AIR 1.0 For anyone not familiar with Antennae here is a...</summary>
    <author>
        <name>Daniel Rinehart</name>
        <uri>http://danielr.neophi.com/</uri>
    </author>
            <category term="Flex" />
            <category term="Programming" />
    
    <content type="html" xml:lang="en" xml:base="http://life.neophi.com/danielr/">
        <![CDATA[<p>Antennae version 1.2.0 has been released. Grab it from <a href="http://code.google.com/p/antennae/">http://code.google.com/p/antennae/</a>. Highlights of this release include:</p>

<ul>
<li>Changed to standard naming conventions for properties, targets, tasks, and directories</li>
<li>Updated support for AIR 1.0</li>
</ul>

<p>For anyone not familiar with Antennae here is a brief description:</p>

<blockquote>Antennae is an open-source project designed to automate the building and testing of Flex applications. It uses Ant and Java to provide cross platform utilities to compile Flex libraries, Flex applications, generate FlexUnit TestSuites, and run FlexUnit tests in an automated manner. Antennae also defines a framework for building complex projects with multiple dependencies and intelligently handling recompilation.
</blockquote>
]]>
        
    </content>
</entry>

</feed> 

