<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0" xmlns:media="http://search.yahoo.com/mrss" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>howe_v7.0</title>
    <link>http://www.thehowe.com/</link>
    <description/>
    <language>en-US</language>
    <ttl>60</ttl>
    <generator>http://www.sporkmonger.com/projects/feedtools/</generator>
    <item>
      <title>Getting settled in Washington</title>
      <link>http://www.thehowe.com/blog/view/Getting+settled+in+Washington</link>
      <dc:creator>Travis Howe</dc:creator>
      <content:encoded>
        <![CDATA[<p>Well, I've been busy.</p>

<p>For the past two weeks and change, I've been traveling with my parents and brother across the country, hitting all kinds of sights. Check Facebook for the photos.</p>

<p>We arrived in the Seattle area yesterday. Today I: bought a car, opened a bank account, got car insurance, and got renter's insurance. It was a busy day.</p>

<p>If all goes according to plan, I'll have an apartment by the end of the week.</p>]]>
      </content:encoded>
      <pubDate>Mon, 28 Jul 2008 19:43:09 -0500</pubDate>
      <guid isPermaLink="true">http://www.thehowe.com/blog/view/Getting+settled+in+Washington</guid>
      <category>family</category>
      <category>travel</category>
    </item>
    <item>
      <title>An uneventful trip to Canada</title>
      <link>http://www.thehowe.com/blog/view/An+uneventful+trip+to+Canada</link>
      <dc:creator>Travis Howe</dc:creator>
      <content:encoded>
        <![CDATA[<p>For the past week I've been canoeing with friends &amp; family up in Canada. For the most part, the trip was pretty uneventful. With a few <i>minor</i> exceptions.</p>

<p>Like, for example, how on the drive up, at 3:00 in the morning, we hit a horse. Well, actually two horses. They had somehow gotten loose and decided it would be a good idea to cross the road in front of us. Nobody was hurt, but a car was totaled and two canoes were ruined. Good times.</p>

<p>Then there was the hotel we stayed at that night. We're fairly sure the receptionist was high. First she gave us smoking rooms, which was understandable. Then when we tried switching one of the rooms, she gave us keys to a room that was already occupied. Then when we got another new room, the sheets were dirty. Good times.</p>

<p>Then there was the portage we did on a day trip once we were in Quetico. The water was a little high this year. High, as in over half the portage was up to my knees in water and had a current running through it. Good times.</p>

<p>Like I said, and uneventful trip.<p>

<p>(All kidding aside though, we had a great time, modulo a little bad luck here and there).</p>]]>
      </content:encoded>
      <pubDate>Tue, 17 Jun 2008 23:09:49 -0500</pubDate>
      <guid isPermaLink="true">http://www.thehowe.com/blog/view/An+uneventful+trip+to+Canada</guid>
      <category>family</category>
      <category>travel</category>
      <category>nature</category>
    </item>
    <item>
      <title>First impressions of Harvard and MIT</title>
      <link>http://www.thehowe.com/blog/view/First+impressions+of+Harvard+and+MIT</link>
      <dc:creator>Travis Howe</dc:creator>
      <content:encoded>
        <![CDATA[<p>Fifteen minute impressions of MIT vs. Harvard, based on walking around their campuses during the summer (so, probably totally inaccurate):</p>

<p>MIT: Based on the number of pasty people wearing glasses and inappropriate tropical shirts, approximately 67% more nerds than Harvard. The nerds were very polite, though.</p>

<p>Harvard: Based on the number of people playing instruments on street corners, approximately 1000% more hippies than MIT. The hippies were very polite, though.</p>]]>
      </content:encoded>
      <pubDate>Fri, 23 May 2008 23:53:02 -0500</pubDate>
      <guid isPermaLink="true">http://www.thehowe.com/blog/view/First+impressions+of+Harvard+and+MIT</guid>
      <category>travel</category>
    </item>
    <item>
      <title>Things I learned driving from Ann Arbor to Boston</title>
      <link>http://www.thehowe.com/blog/view/Things+I+learned+driving+from+Ann+Arbor+to+Boston</link>
      <dc:creator>Travis Howe</dc:creator>
      <content:encoded>
        <![CDATA[<p>Things I learned on the 14 hour drive from Ann Arbor to Boston:</p>

<ol>
<li>Trucks don't have to go slower in other states.</li>
<li>Getting passed by a semi going 10 over the speed limit is scary.</li>
<li>There is a restaurant called "Quaker Steak and Lube".</li>
<li>I find the idea of a restaurant named "Quaker Steak and Lube" vaguely disturbing.</li>
<li>Whoever designed Boston's streets was clearly on crack.</li>
</ol>

<p>Later this weekend: hang gliding. It will either be awesome, or I will die. Possibly both.</p>]]>
      </content:encoded>
      <pubDate>Thu, 22 May 2008 23:31:35 -0500</pubDate>
      <guid isPermaLink="true">http://www.thehowe.com/blog/view/Things+I+learned+driving+from+Ann+Arbor+to+Boston</guid>
      <category>travel</category>
    </item>
    <item>
      <title>Just a bit too much Oblivion</title>
      <link>http://www.thehowe.com/blog/view/Just+a+bit+too+much+Oblivion</link>
      <dc:creator>Travis Howe</dc:creator>
      <content:encoded>
        <![CDATA[<p>So, I was taking the garbage out yesterday, and I happened to walk past some dandelions. I kid you not, my first instinct was to <a href="http://www.uesp.net/wiki/Oblivion:Ingredients">harvest them for ingredients</a>.</p>

<p>I think I've been playing too much Oblivion.</p>]]>
      </content:encoded>
      <pubDate>Mon, 19 May 2008 01:23:51 -0500</pubDate>
      <guid isPermaLink="true">http://www.thehowe.com/blog/view/Just+a+bit+too+much+Oblivion</guid>
      <category>geek</category>
      <category>video games</category>
    </item>
    <item>
      <title>Gradumatation and also Webcomics</title>
      <link>http://www.thehowe.com/blog/view/Gradumatation+and+also+Webcomics</link>
      <dc:creator>Travis Howe</dc:creator>
      <content:encoded>
        <![CDATA[<p>Hrm, yes, thoughts. Well.</p>

<p>For one, I'm gradumatated. Again. Like, for real this time, as in "see you later Ann Arbor, I'm off to the real world to get a job and stuff" for real. It feels.... good? I don't really think it's sunk in yet.</p>

<p>Also, entertainment. Over the past few weeks I've discovered not one, not two, but three incredibly awesome webcomics that have been around basically forever but nobody ever bothered to tell me about: <a href="http://drmcninja.com/index.html">The Adventures of Dr. McNinja</a>, <a href="http://www.giantitp.com/comics/oots.html">The Order of the Stick</a>, and <a href="http://www.questionablecontent.net/index.php">Questionable Content</a>. You should read them. All of them, all their archives, in one sitting. Like I did. Totally worth losing 12+ hours of your life.</p>

<p>And yes, I realize that "Gradumatated" is not the correct spelling. It is, however, 327% funnier. How do I know this? <strong>Science</strong>.</p>]]>
      </content:encoded>
      <pubDate>Wed, 30 Apr 2008 00:36:21 -0500</pubDate>
      <guid isPermaLink="true">http://www.thehowe.com/blog/view/Gradumatation+and+also+Webcomics</guid>
      <category>school</category>
      <category>silly</category>
      <category>geek</category>
    </item>
    <item>
      <title>Amusing Hypocrisy</title>
      <link>http://www.thehowe.com/blog/view/Amusing+Hypocrisy</link>
      <dc:creator>Travis Howe</dc:creator>
      <content:encoded>
        <![CDATA[<p>In today's issue of the Michigan Daily there's a <a href="http://media.www.michigandaily.com/media/storage/paper851/news/2008/03/25/LettersToTheEditor/Letters.To.The.Editor-3281692.shtml">letter to the editor</a> addressing inter-faith relationships, in response to an <a href="http://media.www.michigandaily.com/media/storage/paper851/news/2008/03/21/Columns/Guess.Whos.Coming.To.Dinner-3278187.shtml">earlier article</a> on the same subject.</p>

<p>I have no opinion on the matter, but I found the hypocrisy evident in the letter to the editor rather amusing, so I thought I'd share it with you.</p>

<p>First, the actual text of the letter:</p>

<blockquote>
<p>To the Daily:</p>

<p>I would like to express my disagreement with Shakira Smiler's column Friday on interfaith dating (Guess who's coming to dinner, 03/21/2008). Smiler questioned why refusing to date someone of a different faith is different than discriminating against someone based on race. The answer is simply that value systems and beliefs can transcend skin color, but that's not necessarily true of religion.</p>

<p>Dating or marrying someone of another faith can lead to social isolation within your own community, a terrible situation for children and, according to some studies, higher divorce rates. While we all like a little variety in our dating lives, there are ways of learning and appreciating the values and convictions of others without becoming involved romantically.</p>

<p><i>Daniel Horwitz<br />
Law School</i></p>
</blockquote>

<p>Now, the same letter, but swapping all references to religion with references to race, and vice-versa (swapped words are <em><strong>highlighted</strong></em>):</p>

<blockquote>
<p>To the Daily:</p>

<p>I would like to express my disagreement with Shakira Smiler's column Friday on <em><strong>interrace</strong></em> dating (Guess who's coming to dinner, 03/21/2008). Smiler questioned why refusing to date someone of a different <em><strong>race</strong></em> is different than discriminating against someone based on <em><strong>faith</strong></em>. The answer is simply that value systems and beliefs can transcend <em><strong>religion</strong></em>, but that's not necessarily true of <em><strong>skin color</strong></em>.</p>

<p>Dating or marrying someone of another <em><strong>race</strong></em> can lead to social isolation within your own community, a terrible situation for children and, according to some studies, higher divorce rates. While we all like a little variety in our dating lives, there are ways of learning and appreciating the values and convictions of others without becoming involved romantically.</p>
</blockquote>

<p>I ask you, does the second reason make any less sense than the first? They both sound about the same to me.</p>]]>
      </content:encoded>
      <pubDate>Tue, 25 Mar 2008 14:02:22 -0500</pubDate>
      <guid isPermaLink="true">http://www.thehowe.com/blog/view/Amusing+Hypocrisy</guid>
      <category>religion</category>
      <category>stupidity</category>
    </item>
    <item>
      <title>Atheism and how I was wrong</title>
      <link>http://www.thehowe.com/blog/view/Atheism+and+how+I+was+wrong</link>
      <dc:creator>Travis Howe</dc:creator>
      <content:encoded>
        <![CDATA[<p>In a comment on my last post, Chris disagreed with my rather snarky aside that Atheism is a religion. I think the disagreement lies in a difference in our definition of what constitutes Atheism. It's a blurry line, so I thought I'd talk a little about it.</p>

<p>First, I'll give you the short version: I was wrong. Now, the long version:</p>

<p>When I used the term Atheism in that post, I was using my understanding of the term, which was basically <i>"I believe there is no god"</i>. That is actually a flavor of Atheism known as <b>Strong Atheism</b> (<a href="http://en.wikipedia.org/wiki/Weak_and_strong_atheism">Wikipedia article</a>). Strong Atheism, I still maintain, is essentially a religion (maybe I'll argue why some other time). However, Atheism is actually more general.</p>

<p>A more correct definition of Atheism is, almost exactly as Chris stated it in his comment, <i>"I do not believe in god"</i>. Under that definition, which appears to be more correct than my original understanding (at least according to some <a href="http://atheism.about.com/od/aboutagnosticism/a/atheism.htm">sources</a>; the <a href="http://en.wikipedia.org/wiki/Atheism">Wikipedia article</a> isn't entirely clear), I agree with Chris that I was wrong. Under this definition, Atheism is a perfectly logical conclusion based upon observed scientific fact (assuming, you know, you believe in science).</p>

<p>In fact, under this definition Atheism is not too different from Agnosticism, which I subscribe to (which actually is closer to being a religion than Atheism is, but that's another post entirely).</p>]]>
      </content:encoded>
      <pubDate>Tue, 26 Feb 2008 00:20:43 -0600</pubDate>
      <guid isPermaLink="true">http://www.thehowe.com/blog/view/Atheism+and+how+I+was+wrong</guid>
      <category>religion</category>
      <category>correction</category>
    </item>
    <item>
      <title>On God and round squares</title>
      <link>http://www.thehowe.com/blog/view/On+God+and+round+squares</link>
      <dc:creator>Travis Howe</dc:creator>
      <content:encoded>
        <![CDATA[<p>Brock and I were talking about religion today, which despite my being basically agnostic (or perhaps because of it) I always find to be a fascinating topic. As we were talking about it, an old question that I used to hear a lot in high school popped into my mind: "Could God create a stone so heavy that even he could not lift it?"</p>

<p>The answer, of course, is no. Here's why.</p>

<p>Let me rephrase the question as such: "Could God create a perfectly round square?" Now, the answer is obvious; of course he could not. The very concept of a perfectly round square is utter nonsense. You can string together the words and make them sound somewhat reasonable, but the concepts of "round" and "square" cannot be combined in any sensible fashion.</p>

<p>Just as a round square makes absolutely no sense, a stone so heavy that God cannot lift it also makes absolutely no sense. <em>By definition</em>, God is all powerful. Thus, the very concept of a stone he cannot lift makes no sense. And, just as he cannot make a perfectly round square, he cannot make such a stone.</p>

<p>This, of course, is the purely logical answer, based on concrete definition and irrefutable fact. If you ask a devout follower of <strong>any</strong> religion (and yes, atheism is a religion), then YMMV. Or then again, maybe not. I've never asked. Anyone want to chime in?</p>]]>
      </content:encoded>
      <pubDate>Mon, 11 Feb 2008 02:04:43 -0600</pubDate>
      <guid isPermaLink="true">http://www.thehowe.com/blog/view/On+God+and+round+squares</guid>
      <category>religion</category>
    </item>
    <item>
      <title>MythTV Script to allow multiple Telnet connections</title>
      <link>http://www.thehowe.com/blog/view/MythTV+Script+to+allow+multiple+Telnet+connections</link>
      <dc:creator>Travis Howe</dc:creator>
      <content:encoded>
        <![CDATA[<p>So, my roomate Brock has a <a href="http://www.mythtv.org/">MythTV</a> box set up in our apartment, which we use as a free, open-source alternative to Tivo and other commercial DVR products.</p>

<p>One of the nifty things that myth provides is a Telnet interface for controlling the system: just telnet into a certain port, and you can enter in commands to control the system remotely. Works great if you don't have a remote control for the computer that's running myth. Brock and I both have GUI programs we can run on our laptops to provide a nice remote-control-esque interface to the Telnet connection (he uses one he found for Mac, I use one I developed in C# (but that's another blog post)).</p>

<p>It's a great setup, except for one problem: only one user can be connected to myth's telnet interface at a time. So, if Brock is using his remote control program, and I use mine, it automatically disconnects Brock. It's a stupid limitation, in my opinion, but that's the way it is.</p>

<p>Earlier this evening, Brock suggested a way to get around that problem: set up a simple telnet proxy server, which allows multiple clients to connect to it, and forwards all commands over a single connection to the myth telnet interface. Since I was in a mood to code, I decided I'd see if I could write up a simple Ruby program to do just that.</p>

<p>An hour and a half later, I had it working. Well, kinda - it's a little rough, and it doesn't forward the server's replies back to the clients, but it's enough to have multiple remotes simultaneously connected. I've pasted the code at the bottom of this post, as it's only about 90 lines. I'm really rather amazed that it was so easy, largely in part to the excellent <a href="http://www.ruby-doc.org/stdlib/libdoc/gserver/rdoc/index.html">gserver</a> library, which may be my new favorite standard library class ever.</p>

<p><b>Edit 1/17</b>: Updated the code to a cleaner, slightly more concise version.</p>

<p>I love ruby.</p>

<p class="code">
#!/usr/bin/ruby

require "gserver"
require "net/telnet"
require "thread"

class TelnetProxy < GServer
  def initialize(*args)
    super(*args)

    @@total_num_clients = 0    
    @cmds = Queue.new
  end 
  
  def start(*args)
    start_myth_connection
    super(*args)
  end

  def serve(io)
    @@total_num_clients += 1
    my_client_id = @@total_num_clients    
  
    puts("New Client #{my_client_id} detected")
    
    # send the initial login msg
    welcome_msg = "MythFrontend Network Control\nType 'help' for usage information---------------------------------\n# "
    io.write(welcome_msg)    
    
    loop do
      puts "Client #{my_client_id} is still alive"
    
      # every 2 seconds check for newly received commands
      if IO.select([io], nil, nil, 2)
        # retrieve the data
        cmd = io.gets
        
        puts "Client #{my_client_id} got cmd '#{cmd}'"
        
        # if the command was "exit", then disconnect the user, but not the main connection
        if cmd =~ /exit/
          puts "Closing client #{my_client_id} connection..."
          break
        end
        
        # forward the command to myth
        @cmds << cmd
        
        puts "Client #{my_client_id} placed cmd on queue"
        
        # send the response to the user
        response = "OK\n# "
        io.write(response)
      end
    end
  end

  private

  def start_myth_connection
    @myth_thread = Thread.new do
      loop do
        myth = Net::Telnet::new("Host" => "myth", "Port" => 6545, "Timeout" => 10, "Prompt" => /# /)
        puts "Connected to myth"
        
        cmds_to_run = []
        until myth.closed?
          # get command from the shared buffer (sleeps if none available)
          cmd = @cmds.pop
        
          # send the commands to myth
          puts "Sending command to myth: #{cmd}"
          myth.cmd(cmd)
          puts "Cmd sent"
          
        end # until myth.closed?
        puts "Lost connection to myth"
      end # loop do
    end
  end

end

proxy = TelnetProxy.new(6546, "myth")
proxy.start
proxy.join
</p>]]>
      </content:encoded>
      <pubDate>Sat, 12 Jan 2008 23:41:08 -0600</pubDate>
      <guid isPermaLink="true">http://www.thehowe.com/blog/view/MythTV+Script+to+allow+multiple+Telnet+connections</guid>
      <category>geek</category>
      <category>computers</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
