<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>richwklein.com</title>
	<atom:link href="http://richwklein.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://richwklein.com</link>
	<description>A blog about nothing</description>
	<lastBuildDate>Tue, 05 Apr 2011 02:07:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
	<atom:link rel='hub' href='http://richwklein.com/?pushpress=hub'/>
		<item>
		<title>Revisiting the New Year</title>
		<link>http://richwklein.com/2011/04/04/revisiting-the-new-year/</link>
		<comments>http://richwklein.com/2011/04/04/revisiting-the-new-year/#comments</comments>
		<pubDate>Tue, 05 Apr 2011 02:07:01 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[Editorial]]></category>
		<category><![CDATA[Me]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Family]]></category>
		<category><![CDATA[Fitness]]></category>
		<category><![CDATA[Goal]]></category>
		<category><![CDATA[Health]]></category>
		<category><![CDATA[House]]></category>
		<category><![CDATA[New]]></category>
		<category><![CDATA[New Year's Resolution]]></category>
		<category><![CDATA[Plan]]></category>
		<category><![CDATA[Resolution]]></category>
		<category><![CDATA[Status]]></category>
		<category><![CDATA[Success]]></category>
		<category><![CDATA[Tweet]]></category>
		<category><![CDATA[Weight Loss]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[Year's]]></category>

		<guid isPermaLink="false">http://richwklein.com/?p=1841</guid>
		<description><![CDATA[Now that we are a few months into the new year I thought I would revisit the New Year&#8217;s Resolutions I posted earlier. At this point I&#8217;m not real happy with the progress I&#8217;ve made, but I&#8217;m willing to keep them in mind and continue to work toward these goals. I’m going to get these [...]]]></description>
			<content:encoded><![CDATA[<p>Now that we are a few months into the new year I thought I would revisit the <a hre="http://richwklein.com/2011/01/03/new-years-resolutions/">New Year&#8217;s Resolutions</a> I posted earlier.  At this point I&#8217;m not real happy with the progress I&#8217;ve made, but I&#8217;m willing to keep them in mind and continue to work toward these goals.</p>
<p>
<dll>
<dt>
<blockquote>I’m going to get these cleaned off my desktop and into a comprehensive list where I can then focus on completing one of these tasks at a time.</p></blockquote>
</dt>
<dd>This is the one I&#8217;ve made the most progress on.  I&#8217;m down from half a dozen lists to just two.</dd>
<dt>
<blockquote>I’m going to communicate early and often.</p></blockquote>
<dt>
<dd>As you can tell from the lack of post between January and now I haven&#8217;t kept up with this one at all.</dd>
<dt>
<blockquote>I want to work more.</p></blockquote>
</dt>
<dd>Between moving into the new house including the unpacking and finalizing work, spending the time with the family, and working at a startup I&#8217;ve had less time this year to work then in years past.  I&#8217;m really trying to start focusing on this one more now</dd>
<dt>
<blockquote>Spend more time with my family</p></blockquote>
</dt>
<dd>At this point I&#8217;m not spending any less time with the family, but I haven&#8217;t been able to increase the time either.</dd>
<dt>
<blockquote>Lose 40 pounds by the end of the year</p></blockquote>
</dt>
<dd>At this point the weight is staying the same.  The treadmill still hasn&#8217;t been unpacked yet so I&#8217;m not getting the walking time.  However, it does feel like I&#8217;m working on or around the house more again.</dd>
<dt>
<blockquote>it&#8217;s time to come up with a working quit plan that I can stick with.</p></blockquote>
</dt>
<dd>The plans are starting to formulate.</dd>
</dl>
]]></content:encoded>
			<wfw:commentRss>http://richwklein.com/2011/04/04/revisiting-the-new-year/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Smooth Criminal</title>
		<link>http://richwklein.com/2011/01/26/smooth-criminal/</link>
		<comments>http://richwklein.com/2011/01/26/smooth-criminal/#comments</comments>
		<pubDate>Thu, 27 Jan 2011 03:52:08 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[Media]]></category>
		<category><![CDATA[Alien]]></category>
		<category><![CDATA[Alien Ant Farm]]></category>
		<category><![CDATA[Ant]]></category>
		<category><![CDATA[Cello]]></category>
		<category><![CDATA[Cover]]></category>
		<category><![CDATA[Criminal]]></category>
		<category><![CDATA[Farm]]></category>
		<category><![CDATA[Jackson]]></category>
		<category><![CDATA[Michael]]></category>
		<category><![CDATA[Michael Jackson]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[Smooth]]></category>
		<category><![CDATA[Smooth Criminal]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://richwklein.com/?p=1832</guid>
		<description><![CDATA[I&#8217;ve never been a fan of Michael Jackson&#8217;s Smooth Criminal. I have always liked Alien Ant Farm&#8217;s cover of it though. It looks like I may have a new favorite cover. These cellists completely rock out. Who knew?]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve never been a fan of Michael Jackson&#8217;s Smooth Criminal.  I have always liked <a href="http://alienantfarm.com/">Alien Ant Farm&#8217;s</a> cover of <a href="http://www.youtube.com/watch?v=CDl9ZMfj6aE">it</a> though.  It looks like I may have a new favorite cover.  These cellists completely rock out.  Who knew?<br />
<span id="more-1832"></span><br />
<object width="532" height="323"><param name="movie" value="http://www.youtube.com/v/OlVbEclPj4c?fs=1&amp;hl=en_US&amp;color1=0x3a3a3a&amp;color2=0x999999"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/OlVbEclPj4c?fs=1&amp;hl=en_US&amp;color1=0x3a3a3a&amp;color2=0x999999" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="532" height="323"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://richwklein.com/2011/01/26/smooth-criminal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Python List Filter Helper</title>
		<link>http://richwklein.com/2011/01/13/python-list-filter-helper/</link>
		<comments>http://richwklein.com/2011/01/13/python-list-filter-helper/#comments</comments>
		<pubDate>Thu, 13 Jan 2011 19:22:14 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[Work]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Django]]></category>
		<category><![CDATA[Filter]]></category>
		<category><![CDATA[GAE]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google App Engine]]></category>
		<category><![CDATA[Helper]]></category>
		<category><![CDATA[List]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Tip]]></category>
		<category><![CDATA[Trick]]></category>

		<guid isPermaLink="false">http://richwklein.com/?p=1827</guid>
		<description><![CDATA[In a previous post, I mentioned I&#8217;ve been doing a lot of datagrid work lately. In addition to column sorting another feature I&#8217;ve added is the filtering of the datagrid by a specific value in a column. Most of these columns contain string values that we can use the same logic on, over and over [...]]]></description>
			<content:encoded><![CDATA[<p>In a <a href="http://richwklein.com/2011/01/06/python-in-memory-sort-helper/">previous post</a>, I mentioned I&#8217;ve been doing a lot of datagrid work lately.  In addition to column sorting another feature I&#8217;ve added is the filtering of the datagrid by a specific value in a column.  Most of these columns contain string values that we can use the same logic on, over and over again.  I&#8217;ve come up with a helper function that generalizes the string filtering and can be used for this.  The helper does a couple of special things.
<ul>
<li>It allows you to filter by returned values of object methods.</li>
<li>It searches for the term anywhere in the value.</li>
<li>It does a case in-sensitive search.</li>
<li>It does some basic value clean up.</li>
</ul>
<p><span id="more-1827"></span><br />
The code is commented fairly extensively so you should be able to figure out what I’m doing.</p>
<pre>
import re

FILTER_RE = re.compile('[-[\]{}()*+?.,\\^$|#\s]')
REPLACE_WITH = ''
def filter_helper(object_list, attr, term):
    """
    Helper method for filtering object_lists.

    @param  object_list     An array of objects to filter.
    @param  attr            An attribute on the object to filter the list by.
    @param  term            The filter term to look for in the attribute.
    @return The filtered list
    """

    # remove special characters from the filter term
    escaped_term = FILTER_RE.sub(REPLACE_WITH, term)

    def compare(x):
        """
        Function that compares the value to the filter term.

        @param  x    The object we are looking at.
        @return True if we have a match otherwise False.
        """

        # get the attribute off the object
        v = getattr(x, attr)

        # attribute is a method so get the return value
        if callable(v): v = v()

        # remove special characters from the attribute value
        ev = FILTER_RE.sub(REPLACE_WITH, v)

        # if the term is an exact match or the escaped term is in the escaped attr
        if term == v or re.search(escaped_term, ev, re.I):
            return True
        return False

    # run the compare function through the list to create the filtered list
    return filter(compare, object_list)
</pre>
<p>To use the helper you would do something like:</p>
<pre>
object_list = Users.all().fetch(1000)
filtered = filter_helper(object_list, 'display_name', 'Rich')
</pre>
<p>This would filter a list of users to only users with the word &#8220;rich&#8221; in it&#8217;s display name.</p>
<p>You can download the full source <a href="/wp-content/uploads/2011/01/grid2.py">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://richwklein.com/2011/01/13/python-list-filter-helper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Folsom Prison Gangsta</title>
		<link>http://richwklein.com/2011/01/11/folsom-prison-gangsta/</link>
		<comments>http://richwklein.com/2011/01/11/folsom-prison-gangsta/#comments</comments>
		<pubDate>Wed, 12 Jan 2011 03:00:19 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[Media]]></category>
		<category><![CDATA[DJ Topcat]]></category>
		<category><![CDATA[Eazy-E]]></category>
		<category><![CDATA[Johnny]]></category>
		<category><![CDATA[Johnny Cash]]></category>
		<category><![CDATA[Mashup]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://richwklein.com/?p=1820</guid>
		<description><![CDATA[Those of you who have been around for a while know how much I love mashups. I especially love it if the mashup is some unusual variation on a rap song. I&#8217;ve had a copy of this one laying around for a while and it&#8217;s still one of my favorites. DJ Topcat put together this [...]]]></description>
			<content:encoded><![CDATA[<p>Those of you who have been around for a while know how <a href="http://richwklein.com/2009/10/29/yip-yip-martians-tries-gangsta-rap/">much</a> <a href="http://richwklein.com/2009/01/16/if-i-were-a-free-fallin-boy/">I</a> <a href="http://richwklein.com/2008/10/31/508/">love</a> <a href="http://richwklein.com/2008/01/28/accoustic-gangsta-rap/">mashups</a>.  I especially love it if the mashup is some unusual variation on a rap song.  I&#8217;ve had a copy of this one laying around for a while and it&#8217;s still one of my favorites.  <a href="http://www.youtube.com/user/theonlydjtopcat">DJ Topcat</a> put together this great mix of Johnny Cash and Eazy-E.  Enjoy!!!!<br />
<span id="more-1820"></span><br />
<object width="532" height="323"><param name="movie" value="http://www.youtube.com/v/3y0Yo3yZrPA?fs=1&amp;hl=en_US&amp;color1=0x3a3a3a&amp;color2=0x999999"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/3y0Yo3yZrPA?fs=1&amp;hl=en_US&amp;color1=0x3a3a3a&amp;color2=0x999999" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="532" height="323"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://richwklein.com/2011/01/11/folsom-prison-gangsta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Python In-Memory Sort Helper</title>
		<link>http://richwklein.com/2011/01/06/python-in-memory-sort-helper/</link>
		<comments>http://richwklein.com/2011/01/06/python-in-memory-sort-helper/#comments</comments>
		<pubDate>Thu, 06 Jan 2011 22:08:31 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[Work]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Django]]></category>
		<category><![CDATA[GAE]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google App Engine]]></category>
		<category><![CDATA[Helper]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Sort]]></category>
		<category><![CDATA[Tip]]></category>
		<category><![CDATA[Trick]]></category>

		<guid isPermaLink="false">http://richwklein.com/?p=1796</guid>
		<description><![CDATA[I&#8217;ve been doing a lot of work on datagrids lately. My datagrid work is originally based off of Djblets datagrids. One of the cool things about these datagrids is the ability to sort by any column in the grid. This is a problem if the sorting occurs at the query level and you are dealing [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been doing a lot of work on datagrids lately.  My datagrid work is originally based off of <a href="http://www.chipx86.com/blog/2008/07/25/django-development-with-djblets-data-grids/">Djblets datagrids</a>.  One of the cool things about these datagrids is the ability to sort by any column in the grid.  This is a problem if the sorting occurs at the query level and you are dealing with <a href="http://code.google.com/appengine/">Google App Engine</a> data models.  You could mitigate this by putting an index on every property on the model, but that isn&#8217;t a realistic solution.  I&#8217;ve come up with a different solution.  I pass an array of objects into the datagrid instead of a query and I have a helper function that sorts the objects in memory.  This helper has some cool features.</p>
<ul>
<li>It allows you to sort by returned values of object methods.</li>
<li>It allows you to sort the objects in ascending or descending value order.</li>
<li>It allows sorting by multiple attributes.</li>
<li>It does some basic value clean up before sorting for sort consistency.</li>
</ul>
<p><span id="more-1796"></span><br />
The code is commented fairly extensively so you should be able to figure out what I&#8217;m doing.</p>
<pre>
def sort_helper(object_list, sort_list, db_field_map=None):
    """
    Helper method for sorting object_lists.

    @param  object_list     An array of objects to sort.
    @param  sort_list       An array of names to sort by.
    @param  db_field_map    An optional dictionary that maps a sort name to an object's property or method.
    @return The sorted list
    """

    def clean(x):
        """
        Function that cleans the value to sort by.

        @param  x    The attribute on the object.
        @return The cleaned up value for sorting.
        """

        # attribute is a method so get the returned value
        v = x() if callable(x) else x

        # attribute is a string so convert it to lower case
        if type(v) == str or type(v) == unicode:
            v = v.lower()

        # attribute is a datetime so convert it to an epoch value
        elif type(v) == datetime.datetime:
            v = time.mktime(v.timetuple())

        # return the value
        return v

    # reverse the sort order so we get the correct sub-sorting
    sort_order = reversed(sort_list)

    # Generate the actual list of attributes we'll be sorting by
    for sort_item in sort_order:

        # -name so sort this attribute descending
        if sort_item[0] == '-':
            base_sort_item = sort_item[1:]
            reverse = True

        # Otherwise sort in ascending order
        else:
            base_sort_item = sort_item
            reverse = False

        # Check if the name is in the db field map
        if db_field_map:
            if not base_sort_item in db_field_map:
                continue
            db_field = db_field_map[base_sort_item]
        else:
            db_field = base_sort_item

        # Do the actual sort now
        try:
            object_list = sorted(object_list, key=lambda x: clean(getattr(x, db_field)), reverse=reverse)
        except Exception, e:
            logging.exception('sort_helper - %s' % unicode(e))

    return object_list
</pre>
<p>To use the helper you would do something like:</p>
<pre>
object_list = Users.all().fetch(1000)
sorted = sort_helper(object_list, ['-created', 'display_name'])
</pre>
<p>This would sort a list of users in decending created order then ascending display name.</p>
<p>You can download the full source <a href="/wp-content/uploads/2011/01/grid.py">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://richwklein.com/2011/01/06/python-in-memory-sort-helper/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Treadmill Desk Version 2.0</title>
		<link>http://richwklein.com/2011/01/04/treadmill-desk-version-2-0/</link>
		<comments>http://richwklein.com/2011/01/04/treadmill-desk-version-2-0/#comments</comments>
		<pubDate>Tue, 04 Jan 2011 19:14:15 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[Me]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[2.0]]></category>
		<category><![CDATA[Desk]]></category>
		<category><![CDATA[Exercise]]></category>
		<category><![CDATA[Loss]]></category>
		<category><![CDATA[Treadmill]]></category>
		<category><![CDATA[Version]]></category>
		<category><![CDATA[Weight]]></category>
		<category><![CDATA[Weight Loss]]></category>
		<category><![CDATA[Work Out]]></category>

		<guid isPermaLink="false">http://richwklein.com/?p=1788</guid>
		<description><![CDATA[The last time I was motivated to lose weight I setup a table over my treadmill and walked while I worked. This was very productive and I ended up losing about 40 pounds. Now, that I&#8217;m getting back into the work out routine I thought I would do the same thing. There was just one [...]]]></description>
			<content:encoded><![CDATA[<p>The last time I was motivated to lose weight I setup a <a href="http://richwklein.com/2008/04/28/treadmill-desk-update/">table over my treadmill</a> and walked while I worked.  This was very productive and I ended up losing about 40 pounds.  Now, that I&#8217;m getting back into the work out routine I thought I would do the same thing.  There was just one small problem.  We don&#8217;t have that table anymore.  So being a little creative I made a new treadmill desk.  It&#8217;s pretty rough, but it gets the job done.</p>
<p><a class="thickbox" rel="same-post-1788" title="Treadmill Desk with Computer" href="http://richwklein.com/wp-content/uploads/2011/01/100_1147.png"><img src="http://richwklein.com/wp-content/uploads/2011/01/100_1147.png" alt="Treadmill Desk with Computer" title="" width="640" height="480" class="size-full wp-image-1790" /></a></p>
<p><a class="thickbox" rel="same-post-1788" title = "Side View" href="http://richwklein.com/wp-content/uploads/2011/01/100_1146.png"><img src="http://richwklein.com/wp-content/uploads/2011/01/100_1146.png" alt="" title="Side View" width="640" height="480" class="alignnone size-full wp-image-1789" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://richwklein.com/2011/01/04/treadmill-desk-version-2-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Year&#8217;s Resolutions</title>
		<link>http://richwklein.com/2011/01/03/new-years-resolutions/</link>
		<comments>http://richwklein.com/2011/01/03/new-years-resolutions/#comments</comments>
		<pubDate>Mon, 03 Jan 2011 19:10:57 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[Around]]></category>
		<category><![CDATA[Editorial]]></category>
		<category><![CDATA[Family]]></category>
		<category><![CDATA[Me]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Fitness]]></category>
		<category><![CDATA[Goal]]></category>
		<category><![CDATA[Health]]></category>
		<category><![CDATA[House]]></category>
		<category><![CDATA[New]]></category>
		<category><![CDATA[New Year's Resolution]]></category>
		<category><![CDATA[Plan]]></category>
		<category><![CDATA[Resolution]]></category>
		<category><![CDATA[Status]]></category>
		<category><![CDATA[Success]]></category>
		<category><![CDATA[Tweet]]></category>
		<category><![CDATA[Weight Loss]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[Year's]]></category>

		<guid isPermaLink="false">http://richwklein.com/?p=1777</guid>
		<description><![CDATA[With the passing of the old year and the beginning of the new, many people make their traditional &#8220;New Year&#8217;s Resolutions&#8221;. I&#8217;ve usually eschewed these resolutions that more than likely will fail anyway. This year I&#8217;ve decided to give this whole resolution thing a go. I’m going to be successful at it too. I’m not [...]]]></description>
			<content:encoded><![CDATA[<p>With the passing of the old year and the beginning of the new, many people make their traditional &#8220;New Year&#8217;s Resolutions&#8221;.  I&#8217;ve usually eschewed these resolutions that more than likely will fail anyway.  This year I&#8217;ve decided to give this whole resolution thing a go.  I’m going to be successful at it too.  I’m not holding myself to anything that I can’t do or haven’t done before and I’m going to focus on one thing at a time.</p>
<p><span id="more-1777"></span>
<ol>
<li>My desktop is littered with different todo lists (Work, Home, Consulting, etc&#8230;).  I’m going to get these cleaned off my desktop and into a comprehensive list where I can then focus on completing one of these tasks at a time.</li>
<li>The open source community has a saying “Release early and release often”.  I’m going to take this saying to heart but in the form of communication.  I’m going to communicate early and often.  Expect to see a lot more blog posts, tweets, status updates and the like from me in 2011.  My goal is 1 blog post and 3 tweets a day.</li>
<li>I want to work more.  This seems like a strange goal since most people make resolutions to work less.  I plan to work an extra 14 hours a week for the next 4 months.  There are a couple of really simple explanations for this goal:
<ul>
<li>We are in the process of building a new house and I want to make sure to cover the expenses until our old house is sold.</li>
<li>I have a couple of personal projects that I’ve been meaning to work on but just haven’t found the time to do.</li>
<li>I want to finish up some of the projects I’m working on so I can focus on my next resolution.</li>
</ul>
</li>
<li>Spend more time with my family is always a perennial resolution for most people and it’s made my list as well.  If I can pull off my previous resolution then I’ll have more free time.  That free time is going to be spent with my wife and kids.  I’m going to take those extra 2ish hours a day to play with my kids.</li>
<li>I’ve lost close to 40 pounds before.  I’m about 15 pounds heavier now then I was after that first weight lose.  My next goal is 4 fold and must go hand in hand to achieve it.
<ul>
<li>Walk on the treadmill at least 3 times a week.</li>
<li>Eat at least 2 fruits and vegetables a day.</li>
<li>Decrease my portion sizes by 1/3.</li>
<li>Lose 40 pounds by the end of the year.  Sticking with these first 3 goals will get me down those 40 pounds.  That would put me on or about where my original weight lose goal was.</li>
</ul>
</li>
<li>At this point in my life I&#8217;ve been a smoker longer than I haven&#8217;t been.  Once we&#8217;ve settled into the new house and things have calmed down it&#8217;s time to come up with a working quit plan that I can stick with.</li>
</ol>
<p>These are some lofty goals for the next year, but they should be eminently doable with a strong commitment on my part and support from friends and family.</p>
]]></content:encoded>
			<wfw:commentRss>http://richwklein.com/2011/01/03/new-years-resolutions/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Broadband Update</title>
		<link>http://richwklein.com/2010/11/10/broadband-update/</link>
		<comments>http://richwklein.com/2010/11/10/broadband-update/#comments</comments>
		<pubDate>Wed, 10 Nov 2010 16:07:24 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[Family]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[Broadband]]></category>
		<category><![CDATA[Home]]></category>
		<category><![CDATA[Iowa]]></category>
		<category><![CDATA[Local]]></category>
		<category><![CDATA[New House]]></category>
		<category><![CDATA[Rant]]></category>

		<guid isPermaLink="false">http://richwklein.com/?p=1774</guid>
		<description><![CDATA[I ranted about my broadband frustrations in the previous post. An update to the story. Apparently the question to ask is not if I can get service to the home, but how much would it cost to get service to the home. After I talked with Mediacom a couple of more time I found out [...]]]></description>
			<content:encoded><![CDATA[<p>I ranted about my <a href="http://richwklein.com/2010/11/04/broadband-frustration/">broadband frustrations in the previous post</a>.  An update to the story.  Apparently the question to ask is not if I can get service to the home, but how much would it cost to get service to the home.  After I talked with <a href="http://mediacomcable.com/index.php">Mediacom</a> a couple of more time I found out that service can be brought to the home for $5,700.  Given that cable is really about the only broadband option I can work with, that is what we are going to do.</p>
]]></content:encoded>
			<wfw:commentRss>http://richwklein.com/2010/11/10/broadband-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Broadband Frustration</title>
		<link>http://richwklein.com/2010/11/04/broadband-frustration/</link>
		<comments>http://richwklein.com/2010/11/04/broadband-frustration/#comments</comments>
		<pubDate>Fri, 05 Nov 2010 03:57:49 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[Family]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[Broadband]]></category>
		<category><![CDATA[Home]]></category>
		<category><![CDATA[Iowa]]></category>
		<category><![CDATA[Local]]></category>
		<category><![CDATA[New House]]></category>
		<category><![CDATA[Rant]]></category>

		<guid isPermaLink="false">http://richwklein.com/?p=1767</guid>
		<description><![CDATA[I&#8217;m a software engineer and one of the few fortunate individuals who gets to work out of their home. We purchased some land a couple of years ago with the intention of building a new home. We are now in the process of building that house. Being a remote employee doing software development, I need [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m a software engineer and one of the few fortunate individuals who gets to work out of their home.  We purchased some land a couple of years ago with the intention of building a new home.  We are now in the process of building that house.  Being a remote employee doing software development, I need a pretty robust internet connection.  At the same time I knew that broadband availability would be a difficult thing to work out since the new house is in what I would call a semi-remote location.  I&#8217;ve previous <a href="http://richwklein.com/2009/08/17/state-of-broadband-in-rural-iowa/">complained</a> about broadband availability.  I&#8217;ve been a cable internet user for at least 12 years and I would like to continue to be.  It&#8217;s either that or pay the same price for 1/10th the speed and possible maximum usage caps.  </p>
<p>I contacted <a href="http://mediacomcable.com/index.php">Mediacom</a> to find out if service was available for our new home.  They responded that our house was not serviceable.  The image below (<a href="http://www.connectiowa.org/">from connect iowa</a>) illustrates  why this is so frustrating.  The red square is the lot we are building on.  The red/pink overlay is where cable is available.  I bet there isn&#8217;t a thousand feet between the two.<a class="thickbox" rel="same-post-1767" title = "coverage map" href="http://richwklein.com/wp-content/uploads/2010/11/Screen-shot-2010-11-04-at-10.21.30-PM.png"><img src="http://richwklein.com/wp-content/uploads/2010/11/Screen-shot-2010-11-04-at-10.21.30-PM-1024x517.png" alt="" title="coverage map" width="1024" height="517" class="alignnone size-large wp-image-1768" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://richwklein.com/2010/11/04/broadband-frustration/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Shingles, Colors, and Doors!  Oh, My!</title>
		<link>http://richwklein.com/2010/09/08/shingles-and-colors-and-doors-oh-my/</link>
		<comments>http://richwklein.com/2010/09/08/shingles-and-colors-and-doors-oh-my/#comments</comments>
		<pubDate>Wed, 08 Sep 2010 21:05:02 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[Around]]></category>
		<category><![CDATA[Color]]></category>
		<category><![CDATA[Decision]]></category>
		<category><![CDATA[Home]]></category>
		<category><![CDATA[House]]></category>
		<category><![CDATA[New]]></category>
		<category><![CDATA[New House]]></category>
		<category><![CDATA[Plan]]></category>

		<guid isPermaLink="false">http://richwklein.com/?p=1746</guid>
		<description><![CDATA[Now that the basement is done for our new house, our builder is getting ready to frame. So Rachel and I spent some time making decisions about the exterior of the house. We had to make decisions on the shingles, front door, and house color. We&#8217;ve decided to go with the &#8220;Estate Gray&#8221; for the [...]]]></description>
			<content:encoded><![CDATA[<p>Now that the basement is done for our new house, our builder is getting ready to frame.  So Rachel and I spent some time making decisions about the exterior of the house.  We had to make decisions on the shingles, front door, and house color.  </p>
<p>We&#8217;ve decided to go with the &#8220;Estate Gray&#8221; for the shingles.<a class="thickbox" rel="same-post-1746" title = "Estate Gray Shingles" href="http://richwklein.com/wp-content/uploads/2010/09/oc06830.jpg"><img src="http://richwklein.com/wp-content/uploads/2010/09/oc06830-150x150.jpg" alt="" title="Estate Gray Shingles" width="150" height="150" class="alignnone size-thumbnail wp-image-1747" /></a></p>
<p>We have decided to go with &#8220;Whiskers&#8221; and &#8220;Atrium White&#8221; for the outside colors.<br />
<a class="thickbox" rel="same-post-1746" title = "House Colors" href="http://richwklein.com/wp-content/uploads/2010/09/Exterior-1.jpg"><img src="http://richwklein.com/wp-content/uploads/2010/09/Exterior-1-150x150.jpg" alt="" title="House Colors" width="150" height="150" class="alignnone size-medium wp-image-1750" /></a></p>
<p>The front door will be a &#8220;Cut Crystal Series&#8221; door with sidelights.  We are planning on doing the front door in a burgundy or navy color.<br />
<a class="thickbox" rel="same-post-1746" title = "Front Door" href="http://richwklein.com/wp-content/uploads/2010/09/i0004.jpg"><img src="http://richwklein.com/wp-content/uploads/2010/09/i0004.jpg" alt="" title="Front Door" width="117" height="286" class="alignnone size-full wp-image-1753" /></a></p>
<p>** note pictures are not of the actual construction or products <img src='http://richwklein.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://richwklein.com/2010/09/08/shingles-and-colors-and-doors-oh-my/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.309 seconds -->

