<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>aaronlongwell.com</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/" />
    <link rel="self" type="application/atom+xml" href="http://aaronlongwell.com/atom.xml" />
    <id>tag:aaronlongwell.com,2008-02-19://1</id>
    <updated>2009-06-25T18:44:01Z</updated>
    
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.25</generator>

<entry>
    <title>The Real Genius of the iPhone 3Gs</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/06/the-real-genius-of-the-iphone-3gs.html" />
    <id>tag:aaronlongwell.com,2009://1.58</id>

    <published>2009-06-24T18:22:00Z</published>
    <updated>2009-06-25T18:44:01Z</updated>

    <summary>Apple&apos;s iPhone 3Gs has had a bit of a muted--dare I say disappointing--reception. Unlike with the 3G launch, very few of the new OS 3.0 features depend on the 3Gs model, and for most iPhone users (for me at least),...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Commentary" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="apple" label="Apple" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="cellphones" label="CellPhones" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="iphone" label="iPhone" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<p>Apple's iPhone 3Gs has had a bit of a muted--dare I say disappointing--reception. Unlike with the 3G launch, very few of the new OS 3.0 features depend on the 3Gs model, and for most iPhone users (for me at least), there aren't compelling reasons to upgrade.</p>

<p>None of that matters, though. Apple's going to make far more money for another reason: they didn't discontinue sales of the regular iPhone 3G. Through AT&amp;T subsidies, you can now get an iPhone 3G for $99. That puts the iPhone in the same price category as an iPod Shuffle!!!</p>

<p>While Palm, Microsoft and the phone manufacturers try to figure out how to build a better (more feature-filled, expensive) iPhone, Apple snatched the floor out from under the market. There's very little distinction now between "regular" phones and "smart" phones in terms of price now, and Apple is making the best smart phone at the cheapest price. I wouldn't be surprised to see iPhones completely dominating the entire phone market soon, forget about dominance in the smartphone category.</p>

<p><strong>Update:</strong> I've since realized that the iPhone 3Gs might be what Dan Ariely calls a "decoy choice". The expensive, top-of-the-line 3Gs causes the iPhone 3G to appear as a middle-of-the-road, value-conscious choice, by virtue of its straightforward comparison with the more expensive model. Ariely's book <a href="http://www.amazon.com/gp/product/006135323X?ie=UTF8&tag=newmedlog-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=006135323X">Predictably Irrational</a><img src="http://www.assoc-amazon.com/e/ir?t=newmedlog-20&l=as2&o=1&a=006135323X" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />, describes Williams Sonoma's successful use of this technique to sell the first bread machines. </p>]]>
        
    </content>
</entry>

<entry>
    <title>The Ruby on Rails CMS Dilemma</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/06/the-ruby-on-rails-cms-dilemma.html" />
    <id>tag:aaronlongwell.com,2009://1.57</id>

    <published>2009-06-23T03:39:54Z</published>
    <updated>2009-06-26T23:05:52Z</updated>

    <summary>Ruby on Rails is an excellent framework for building web applications. Perhaps the best. But it&apos;s not currently very well suited to what I call web sites. The difference is simple. In a web site, the unique business value comes...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Code" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Commentary" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="browsercms" label="BrowserCMS" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="cms" label="CMS" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="radiant" label="Radiant" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="rubyonrails" label="RubyonRails" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<p>Ruby on Rails is an excellent framework for building web <strong>applications</strong>. Perhaps the best. But it's not currently very well suited to what I call web <strong>sites</strong>.</p>

<p>The difference is simple. In a web site, the unique business value comes from the content creators (authors, bloggers, photographers, etc). In a web application, the business value comes directly from the programmers. Twitter, Google, Basecamp and eBay are web <strong>applications</strong>. CBSSports.com, KentuckyDerby.com, corporate brand sites and original news sources are all web <strong>sites</strong>.</p>

<p>For these projects where it's the content that matters, there's no reason to spend time hand-coding models, controllers, views and test code for things called Pages, Articles, BlogPosts, CalendarEntries, and all the other unique types of content. You're just re-inventing the wheel if you do, because there are <a href="http://en.wikipedia.org/wiki/List_of_content_management_systems">numerous existing commercial and open source CMS tools</a> that can do the job cheaper and better than you.</p>

<p>Unfortunately, I find that one of the most common scenarios is a hybrid web <strong>site</strong> that needs an attached web <strong>application</strong>. A corporate web site that needs an attached scheduling tool. A news site that needs an interactive, custom-searchable database. A sports site which aggregates content from an old NNTP-based data source.</p>

<p>Depending on the specifics, you usually have 3 different approaches to this problem:</p>

<ol>
<li>Two side-by-side applications. - Pair an off-the-shelf CMS with a custom built application. Copy/paste the visual elements, and loosely wire the two together with a subdomain or some kind of web proxy to share the URL structure</li>
<li>Extend the CMS - Build a proprietary plugin or extension for the CMS to implement the application features.</li>
<li>Soup-to-nuts custom application. Build a complete CMS as part of the project.</li>
</ol>

<p>If scenario #1 is truly possible, it's the best approach. Unfortunately, it's often the case that the two systems need to share user accounts, group permissions (or worse, business logic) and data. Once you link the code and data of the two applications, you actually have a particularly "smelly" case of scenario #2.</p>

<p>And scenario #2 is usually a bad idea, unless you are really committed to the CMS you've chosen. This approach tightly couples your value-adding intellectual property directly to a CMS that generally has nothing to do with your business. If your CMS vendor is out of business in 5 years, you'll probably need to completely rewrite that custom extension to work in some new system. Unfortunately, this seems to be the most commonly-used approach. <a href="http://wiki.github.com/radiant/radiant/extensions">Radiant's extensions</a> have this problem, and so does the <a href="http://www.browsercms.org/doc/guides/html/developer_guide.html">Block/Portlet system in BrowserCMS</a>. </p>

<p>Finally, scenario #3 is just plain wasteful. If your CMS needs are anything but trivial, you're going to spend a lot of time and money building CMS features that have nothing to do with your business enterprise. Unless you accidentally build an exceptionally good CMS tool that you then sell to others, all that money is wasted.</p>

<p>The reason for this problem is that Ruby on Rails is a framework for applications, not systems. The error in all of the reasoning above is that the described CMS project is not a single application, but a <strong>system</strong> of two (or more) applications.</p>

<p>I've seen some very attractive developments that will help to address this issue in future Rails applications. First, the inclusion of Rails Engines in 2.3 is going to lower the level of coupling for cases where the CMS can be an "engine" within the application. There's some hope that an <a href="http://en.oreilly.com/rails2009/public/schedule/detail/7785">even more flexible solution</a> may be forthcoming. These solutions help to flip scenario #2 on its head. Unfortunately, this still leaves your application largely dependent on the CMS vendor. You may have trouble customizing the CMS' features without hacking the engine (or "mounted app") code directly.</p>

<p>Over the past few months, I've been working to find better solutions to the issues I've raised here. I'm in the process of building an experimental engines-based CMS plugin, through which I hope to gain some active insight into what makes this problem so difficult.  I'll be posting my analysis as it crystalizes. If the CMS turns out to be effective for my uses, I'll be releasing it to GitHub.</p>

<p>For now, I'll simply leave it at this: I believe the solution lies in finding a common "language" for an application to communicate with its plugins, and for those plugins to communicate with one another. In the case of authentication and authorization, this means a plugin needs to <strong>know how to ask</strong> about the identity and rights of the active user.</p>

<p><a href="http://www.djangoproject.com">Django</a> and <a href="http://www.drupal.org">Drupal</a>, have made the framework itself answer that question (both Django and Drupal have admin interfaces and user management features somewhat baked in). I'm not convinced that's the best approach, but it seems worthwhile to consider that approach for Rails.</p>

<p>My CMS plugin is opting instead to look for API functions at the controller level to answer these questions (i.e. the plugin assumes you have a current_user() method in ApplicationController, but allows you to customize the name and behavior of that).</p>

<p><strong>Update:</strong> Thank you for all the encouraging comments. There are sure some good people out there in the Rails community. I wanted to draw some attention to ferrisoxide's blog post: "<a href="http://rubyredbricks.com/2009/2/24/rails-as-cms">Rails <em>is</em> a CMS</a>". This thought is very much along the lines of the experimental development I'm doing. The goal for my approach is to leverage as much of the flexibility of Rails itself for it's feature set.... in that way I'm planning more of a CMS-enabler plugin than an actual out-of-the box CMS.</p>

<p><strong>Update 2:</strong> I wanted to also draw attention to Aaron Bedra's comments about CAS, specifically <a href="http://github.com/relevance/castronaut">Castronaut</a> as an implementation pattern for scenario #1. It didn't even cross my mind when I was writing this post... and CAS seems to be one of the most under-hyped technologies out there. More on that later.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>Monitoring, Auto-Scaling and Load Balancing on EC2</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/05/monitoring-auto-scaling-and-load-balancing-on.html" />
    <id>tag:aaronlongwell.com,2009://1.56</id>

    <published>2009-05-18T15:42:38Z</published>
    <updated>2009-05-18T15:44:08Z</updated>

    <summary>Amazon has promised load balancing, server monitoring and auto-scaling support for EC2 instances for quite some time. This morning, they delivered. This morning Amazon Web Services announced the following new features for EC2 instances: Amazon CloudWatch - CPU, disk, and...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
    <category term="amazonwebservices" label="AmazonWebServices" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="cloudwatch" label="CloudWatch" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="ec2" label="EC2" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="performance" label="Performance" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="scalability" label="Scalability" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<p>Amazon has promised load balancing, server monitoring and auto-scaling support for EC2 instances for quite some time. This morning, they delivered. This morning Amazon Web Services announced the following new features for EC2 instances:</p>

<p><strong>Amazon CloudWatch</strong> - CPU, disk, and network monitoring for EC2 instances.</p>

<p><strong>Auto-Scaling</strong> - A system to dynamically add or subtract EC2 instances from a pool based on status in Amazon CloudWatch.</p>

<p><strong>Elastic Load Balancing</strong> - You can now automatically balance load between multiple EC2 instances.</p>

<p>The costs seem pretty reasonable. They're charging about 1.5 pennies per instance-hour for CloudWatch (which includes the scaling features), and charging 2.5 pennies per hour for load balancing.</p>

<p>I'll be testing out the load balancing features right away. I have a few dedicated HAProxy instances that could be replaced by this service. I'm estimating its going be about $54/month cheaper to use Elastic Load Balancing over a dedicated HAProxy machine.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>links for 2009-05-07</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/05/links-for-2009-05-07.html" />
    <id>tag:aaronlongwell.com,2009://1.55</id>

    <published>2009-05-07T13:00:58Z</published>
    <updated>2009-05-07T13:00:58Z</updated>

    <summary> Radmind - OSX Filesystem management (tags: Radmind PairProgramming SystemsAdministration)...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Links" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<ul class="delicious"><li>
                <div class="delicious-link"><a href="http://rsug.itd.umich.edu/software/radmind/">Radmind - OSX Filesystem management</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Radmind">Radmind</a> <a href="http://delicious.com/ADLongwell/PairProgramming">PairProgramming</a> <a href="http://delicious.com/ADLongwell/SystemsAdministration">SystemsAdministration</a>)</div>
            </li></ul>]]>
        
    </content>
</entry>

<entry>
    <title>links for 2009-05-06</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/05/links-for-2009-05-06.html" />
    <id>tag:aaronlongwell.com,2009://1.54</id>

    <published>2009-05-06T13:01:05Z</published>
    <updated>2009-05-06T13:01:05Z</updated>

    <summary> plugin_test_helper - Agile Web Development (tags: Testing Rails RubyonRails)...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Links" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<ul class="delicious"><li>
                <div class="delicious-link"><a href="http://agilewebdevelopment.com/plugins/plugin_test_helper">plugin_test_helper - Agile Web Development</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Testing">Testing</a> <a href="http://delicious.com/ADLongwell/Rails">Rails</a> <a href="http://delicious.com/ADLongwell/RubyonRails">RubyonRails</a>)</div>
            </li></ul>]]>
        
    </content>
</entry>

<entry>
    <title>links for 2009-04-14</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/04/links-for-2009-04-14.html" />
    <id>tag:aaronlongwell.com,2009://1.53</id>

    <published>2009-04-14T13:01:04Z</published>
    <updated>2009-04-14T13:01:04Z</updated>

    <summary> Handling Large Amounts of Markers in Google Maps (tags: GoogleMaps Javascript Google Maps Clustering Optimization Performance) Cluster2 Easily improve performance when rendering hundreds or thousands of Google Maps markers. This script massively improved performance of a high-intensity Google Maps...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Links" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<ul class="delicious"><li>
                <div class="delicious-link"><a href="http://www.svennerberg.com/2009/01/handling-large-amounts-of-markers-in-google-maps/">Handling Large Amounts of Markers in Google Maps</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/GoogleMaps">GoogleMaps</a> <a href="http://delicious.com/ADLongwell/Javascript">Javascript</a> <a href="http://delicious.com/ADLongwell/Google">Google</a> <a href="http://delicious.com/ADLongwell/Maps">Maps</a> <a href="http://delicious.com/ADLongwell/Clustering">Clustering</a> <a href="http://delicious.com/ADLongwell/Optimization">Optimization</a> <a href="http://delicious.com/ADLongwell/Performance">Performance</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://www.acme.com/javascript/#Clusterer">Cluster2</a></div>
                <div class="delicious-extended">Easily improve performance when rendering hundreds or thousands of Google Maps markers. This script massively improved performance of a high-intensity Google Maps mashup I&#039;ve been building.</div>
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Javascript">Javascript</a> <a href="http://delicious.com/ADLongwell/GoogleMaps">GoogleMaps</a> <a href="http://delicious.com/ADLongwell/Ajax">Ajax</a> <a href="http://delicious.com/ADLongwell/Performance">Performance</a> <a href="http://delicious.com/ADLongwell/Programming">Programming</a> <a href="http://delicious.com/ADLongwell/API">API</a> <a href="http://delicious.com/ADLongwell/Maps">Maps</a> <a href="http://delicious.com/ADLongwell/Geocoding">Geocoding</a> <a href="http://delicious.com/ADLongwell/Clustering">Clustering</a> <a href="http://delicious.com/ADLongwell/GMarker">GMarker</a> <a href="http://delicious.com/ADLongwell/GPoint">GPoint</a> <a href="http://delicious.com/ADLongwell/Google">Google</a> <a href="http://delicious.com/ADLongwell/Scalability">Scalability</a>)</div>
            </li></ul>]]>
        
    </content>
</entry>

<entry>
    <title>Mac OSX Terminal Keyboard Mappings (Home, End, Page Up/Down)</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/04/mac-osx-terminal-keyboard-mappings-home-end-p.html" />
    <id>tag:aaronlongwell.com,2009://1.52</id>

    <published>2009-04-11T19:58:44Z</published>
    <updated>2009-04-11T20:02:10Z</updated>

    <summary>I search for this every time I set up a new Mac, and every time it takes a bit of Googling. Here&apos;s how to standardize the Home, End, Page Up and Page Down keys in the Mac OSX Terminal application:...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
    <category term="osxmacterminalconsolecommandlinekeyboardbindings" label="OSX Mac Terminal Console CommandLine KeyboardBindings" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[I search for this every time I set up a new Mac, and every time it takes a bit of Googling. Here's how to standardize the Home, End, Page Up and Page Down keys in the Mac OSX Terminal application:

<dl>
<dt>Home</dt>
<dd>\033[1~</dd>
<dt>End</dt>
<dd>\033[4~</dd>
<dt>Page Up</dt>
<dd>\033[5~</dd>
<dt>Page Down</dt>
<dd>\033[6~</dd>
</dl>

In addition, I like to check the box "Send CTRL+H for delete". I have a ZSH setting that depends on this.]]>
        
    </content>
</entry>

<entry>
    <title>Compiling wget from Source on Ubuntu Hardy</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/04/compiling-wget-from-source-on-ubuntu-hardy.html" />
    <id>tag:aaronlongwell.com,2009://1.51</id>

    <published>2009-04-10T21:24:11Z</published>
    <updated>2009-04-10T21:24:12Z</updated>

    <summary>I&apos;ve been compiling wget from source on machines for a long time because of the production version&apos;s inability to parse CSS @import and @url commands. Thankfully, Ted Mielczarek has a patched version that supports them. Rumor is, this will be...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
    <category term="debian" label="Debian" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="flex" label="Flex" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="gnu" label="GNU" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="linux" label="Linux" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="ubuntu" label="Ubuntu" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="wget" label="wget" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<p>I've been compiling wget from source on machines for a long time because of the production version's <a href="http://www.mail-archive.com/wget@sunsite.dk/msg08318.html">inability to parse CSS @import and @url commands</a>. Thankfully, Ted Mielczarek has a <a href="http://ted.mielczarek.org/code/wget-modified/trunk/">patched version</a> that supports them. Rumor is, this will be included in wget 1.12.</p>

<p>I had trouble getting this to compile today on an Ubuntu Hardy machine. The issue turned out to be a missing dependency: flex. The following series of commands should work from a fresh install:</p>

<p><code>
sudo apt-get update<br/>
sudo apt-get install wget<br/>
sudo apt-get install build-essential<br/>
sudo apt-get build-dep wget<br/>
<strong>sudo apt-get install flex</strong><br/>
</code></p>

<p>After that, you should be able to run ./configure, make and make install from Ted's source directory.</p>
]]>
        

    </content>
</entry>

<entry>
    <title>links for 2009-04-10</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/04/links-for-2009-04-10.html" />
    <id>tag:aaronlongwell.com,2009://1.50</id>

    <published>2009-04-10T13:02:20Z</published>
    <updated>2009-04-10T13:02:20Z</updated>

    <summary> mod_rpaf for Apache (tags: LoadBalancing HAProxy Scalability Apache Drupal XForwardedFor)...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Links" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<ul class="delicious"><li>
                <div class="delicious-link"><a href="http://stderr.net/apache/rpaf/">mod_rpaf for Apache</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/LoadBalancing">LoadBalancing</a> <a href="http://delicious.com/ADLongwell/HAProxy">HAProxy</a> <a href="http://delicious.com/ADLongwell/Scalability">Scalability</a> <a href="http://delicious.com/ADLongwell/Apache">Apache</a> <a href="http://delicious.com/ADLongwell/Drupal">Drupal</a> <a href="http://delicious.com/ADLongwell/XForwardedFor">XForwardedFor</a>)</div>
            </li></ul>]]>
        
    </content>
</entry>

<entry>
    <title>links for 2009-04-09</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/04/links-for-2009-04-09.html" />
    <id>tag:aaronlongwell.com,2009://1.49</id>

    <published>2009-04-09T13:02:04Z</published>
    <updated>2009-04-09T13:02:04Z</updated>

    <summary> ffmpeg: Error while opening codec for output stream #0.1 This post just gave me the tip I needed to fix an annoying FFMPEG encoding problem with extra-high quality source video (from a broadcast-quality TV camera). (tags: ffmpeg VideoEncoding FlashVideo...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Links" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<ul class="delicious"><li>
                <div class="delicious-link"><a href="http://netheadaches.wordpress.com/2007/11/08/error-while-opening-codec-for-output-stream-01-maybe-incorrect-parameters-such-as-bit_rate-rate-width-or-height/">ffmpeg: Error while opening codec for output stream #0.1</a></div>
                <div class="delicious-extended">This post just gave me the tip I needed to fix an annoying FFMPEG encoding problem with extra-high quality source video (from a broadcast-quality TV camera).</div>
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/ffmpeg">ffmpeg</a> <a href="http://delicious.com/ADLongwell/VideoEncoding">VideoEncoding</a> <a href="http://delicious.com/ADLongwell/FlashVideo">FlashVideo</a> <a href="http://delicious.com/ADLongwell/Linux">Linux</a>)</div>
            </li></ul>]]>
        
    </content>
</entry>

<entry>
    <title>links for 2009-04-04</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/04/links-for-2009-04-04.html" />
    <id>tag:aaronlongwell.com,2009://1.47</id>

    <published>2009-04-04T13:01:40Z</published>
    <updated>2009-04-04T13:01:40Z</updated>

    <summary> Is Your Company Designed for Humans? (tags: Business Management)...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Links" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<ul class="delicious"><li>
                <div class="delicious-link"><a href="http://blogs.harvardbusiness.org/merholz/2009/03/is-your-organization-designed.html">Is Your Company Designed for Humans?</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Business">Business</a> <a href="http://delicious.com/ADLongwell/Management">Management</a>)</div>
            </li></ul>]]>
        
    </content>
</entry>

<entry>
    <title>links for 2009-04-02</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/04/links-for-2009-04-02.html" />
    <id>tag:aaronlongwell.com,2009://1.46</id>

    <published>2009-04-02T13:02:08Z</published>
    <updated>2009-04-02T13:02:08Z</updated>

    <summary> Parsing feeds with Ruby and the FeedTools gem (tags: Ruby FeedTools RSS) BrowserCMS - Rails CMS I almost built something like this... but I eventually decided it wasn&#039;t a good fit for rails... I went a different way that...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Links" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<ul class="delicious"><li>
                <div class="delicious-link"><a href="http://snippets.aktagon.com/snippets/158-Parsing-feeds-with-Ruby-and-the-FeedTools-gem">Parsing feeds with Ruby and the FeedTools gem</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Ruby">Ruby</a> <a href="http://delicious.com/ADLongwell/FeedTools">FeedTools</a> <a href="http://delicious.com/ADLongwell/RSS">RSS</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://github.com/browsermedia/browsercms/tree/master">BrowserCMS - Rails CMS</a></div>
                <div class="delicious-extended">I almost built something like this... but I eventually decided it wasn&#039;t a good fit for rails... I went a different way that I&#039;ll release publicly sometime this year. Curious to check this out though.</div>
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/CMS">CMS</a> <a href="http://delicious.com/ADLongwell/Rails">Rails</a> <a href="http://delicious.com/ADLongwell/RubyOnRails">RubyOnRails</a> <a href="http://delicious.com/ADLongwell/Ruby">Ruby</a> <a href="http://delicious.com/ADLongwell/RailsPlugins">RailsPlugins</a> <a href="http://delicious.com/ADLongwell/BrowserCMS">BrowserCMS</a>)</div>
            </li></ul>]]>
        
    </content>
</entry>

<entry>
    <title>Find Love</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/04/find-love.html" />
    <id>tag:aaronlongwell.com,2009://1.45</id>

    <published>2009-04-01T22:22:08Z</published>
    <updated>2009-04-01T22:22:09Z</updated>

    <summary>Just heard this great Clem Snide song, called Find Love on NPR&apos;s All Songs Considered: Don&apos;t let hurricanes hold you back Raging rivers or shark attacks Find love, and give it all away Find love, and give it all away...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Commentary" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="clemsnide" label="ClemSnide" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="findlove" label="FindLove" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="lyrics" label="Lyrics" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="music" label="Music" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<p>Just heard this great Clem Snide song, called <a href="http://www.amazon.com/gp/product/B000W01G38?ie=UTF8&tag=newmedlog-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=B000W01G38">Find Love</a> on NPR's All Songs Considered:</p>

<blockquote>
Don't let hurricanes hold you back<br/>
Raging rivers or shark attacks<br/>
Find love, and give it all away<br/>
Find love, and give it all away<br/>
Wrestle bears bring them to their knees<br/>
Steal the honey from killer bees<br/>
Find love, and give it all away<br/>
Find love, and give it all away<br/>
Don't be scared to connect the dots<br/>
And dig for gold in the parking lot<br/>
Find love, and then give it all away<br/>
Find love, then give it all away<br/>
Find love, then give it all away
</blockquote>]]>
        
    </content>
</entry>

<entry>
    <title>links for 2009-04-01</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/04/links-for-2009-04-01.html" />
    <id>tag:aaronlongwell.com,2009://1.44</id>

    <published>2009-04-01T13:02:05Z</published>
    <updated>2009-04-01T13:02:05Z</updated>

    <summary> KeepDesigning.com - Free Vector Patterns (tags: WebDesign GraphicDesign Stock StockArt Illustration Wallpaper Patterns Tiles Illustrator)...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Links" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<ul class="delicious"><li>
                <div class="delicious-link"><a href="http://www.keepdesigning.com/">KeepDesigning.com - Free Vector Patterns</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/WebDesign">WebDesign</a> <a href="http://delicious.com/ADLongwell/GraphicDesign">GraphicDesign</a> <a href="http://delicious.com/ADLongwell/Stock">Stock</a> <a href="http://delicious.com/ADLongwell/StockArt">StockArt</a> <a href="http://delicious.com/ADLongwell/Illustration">Illustration</a> <a href="http://delicious.com/ADLongwell/Wallpaper">Wallpaper</a> <a href="http://delicious.com/ADLongwell/Patterns">Patterns</a> <a href="http://delicious.com/ADLongwell/Tiles">Tiles</a> <a href="http://delicious.com/ADLongwell/Illustrator">Illustrator</a>)</div>
            </li></ul>]]>
        
    </content>
</entry>

<entry>
    <title>links for 2009-03-31</title>
    <link rel="alternate" type="text/html" href="http://aaronlongwell.com/2009/03/links-for-2009-03-31.html" />
    <id>tag:aaronlongwell.com,2009://1.43</id>

    <published>2009-03-31T13:06:20Z</published>
    <updated>2009-03-31T13:06:20Z</updated>

    <summary> Some Positive Comments on the Geithner Toxic Plan A summary of what influential economists are saying to support the Geithner plan. (tags: TimothyGeithner FinancialCrisis MarkThoma) What Colleges Should Learn From Newspapers&#039; Decline (tags: Universities Newspapers Economics) The Geithner Plan...</summary>
    <author>
        <name>Aaron</name>
        
    </author>
    
        <category term="Links" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://aaronlongwell.com/">
        <![CDATA[<ul class="delicious"><li>
                <div class="delicious-link"><a href="http://economistsview.typepad.com/economistsview/2009/03/which-plan-is-best-followup-some-positive-comments-on-the-geithner-toxic-plan-.html">Some Positive Comments on the Geithner Toxic Plan</a></div>
                <div class="delicious-extended">A summary of what influential economists are saying to support the Geithner plan.</div>
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/TimothyGeithner">TimothyGeithner</a> <a href="http://delicious.com/ADLongwell/FinancialCrisis">FinancialCrisis</a> <a href="http://delicious.com/ADLongwell/MarkThoma">MarkThoma</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://delong.typepad.com/egregious_moderation/2009/03/kevin-carey-what-colleges-should-learn-from-newspapers-decline.html">What Colleges Should Learn From Newspapers&#039; Decline</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Universities">Universities</a> <a href="http://delicious.com/ADLongwell/Newspapers">Newspapers</a> <a href="http://delicious.com/ADLongwell/Economics">Economics</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://delong.typepad.com/sdj/2009/03/the-geithner-plan-faq.html">The Geithner Plan FAQ - Brad DeLong&#039;s Defense of The Geithner Plan</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/FinancialCrisis">FinancialCrisis</a> <a href="http://delicious.com/ADLongwell/BradDeLong">BradDeLong</a> <a href="http://delicious.com/ADLongwell/TimothyGeithner">TimothyGeithner</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://railsapi.com/">Rails Searchable API Doc</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Rails">Rails</a> <a href="http://delicious.com/ADLongwell/RubyOnRails">RubyOnRails</a> <a href="http://delicious.com/ADLongwell/Ruby">Ruby</a> <a href="http://delicious.com/ADLongwell/API">API</a> <a href="http://delicious.com/ADLongwell/Documentation">Documentation</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://www.youtube.com/watch?v=XOYAuk809fY&amp;eurl=http%3A%2F%2Fwww%2Ecalculatedriskblog%2Ecom%2F2009%2F03%2Flate%2Dnight%2Dmusic%2Dhey%2Dpaul%2Dkrugman%2Ehtml&amp;feature=player_embedded">Hey Paul Krugman (A song, A plea)</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/FinancialCrisis">FinancialCrisis</a> <a href="http://delicious.com/ADLongwell/Parody">Parody</a> <a href="http://delicious.com/ADLongwell/MusicVideo">MusicVideo</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://www.calculatedriskblog.com/2009/03/banks-leaving-money-on-table-all-day.html">Banks Leaving Money on the Table &quot;All Day Long&quot;</a></div>
                <div class="delicious-extended">I&#039;ve seen some evidence of this as well.</div>
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/FinancialCrisis">FinancialCrisis</a> <a href="http://delicious.com/ADLongwell/Mortgages">Mortgages</a> <a href="http://delicious.com/ADLongwell/Foreclosure">Foreclosure</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://nymag.com/news/business/55687/">My Manhattan Project</a></div>
                <div class="delicious-extended">&quot;The software proved to be more sophisticated than the people who used it, and that has caused the whole world a lot of problems.&quot; Feels vaguely like there&#039;s a user interface argument to be made there.</div>
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/FinancialCrisis">FinancialCrisis</a> <a href="http://delicious.com/ADLongwell/CDOs">CDOs</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://robertreich.blogspot.com/2009/03/congresss-fair-weather-populism.html">Congress&#039;s Potemkin Populism</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Politics">Politics</a> <a href="http://delicious.com/ADLongwell/Economics">Economics</a> <a href="http://delicious.com/ADLongwell/AIG">AIG</a> <a href="http://delicious.com/ADLongwell/FinancialCrisis">FinancialCrisis</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://tech.puredanger.com/2009/03/30/ruby-twitter-link-script/">Extract Links from Twitter with Ruby</a></div>
                
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Ruby">Ruby</a> <a href="http://delicious.com/ADLongwell/Twitter">Twitter</a> <a href="http://delicious.com/ADLongwell/Scripting">Scripting</a> <a href="http://delicious.com/ADLongwell/TwitterAPI">TwitterAPI</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://www.getlatlon.com/">Get Lat Lon</a></div>
                <div class="delicious-extended">Easier than trying to extract them out of a Google Maps share URL.</div>
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/GoogleMaps">GoogleMaps</a> <a href="http://delicious.com/ADLongwell/GPS">GPS</a> <a href="http://delicious.com/ADLongwell/Geocoding">Geocoding</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://www.businessinsider.com/time-for-cable-companies-to-get-serious-about-software-2009-3">Time For Cable Companies To Fix Their Awful User Interfaces</a></div>
                <div class="delicious-extended">I&#039;ve been a pleased TiVo user for something like 6 years... so I was shocked when visiting my folks house earlier this year that cable television menus haven&#039;t improved at all. Most of these screens are worse than filling out tax forms with crayons.</div>
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/UserInterface">UserInterface</a> <a href="http://delicious.com/ADLongwell/TV">TV</a> <a href="http://delicious.com/ADLongwell/CableTV">CableTV</a> <a href="http://delicious.com/ADLongwell/Tivo">Tivo</a> <a href="http://delicious.com/ADLongwell/InterfaceDesign">InterfaceDesign</a> <a href="http://delicious.com/ADLongwell/UserExperience">UserExperience</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://asserttrue.blogspot.com/2009/03/how-to-write-fast-code.html">How to write fast code: make it do less</a></div>
                <div class="delicious-extended">I have a story about this I&#039;ll need to tell on the blog sometime. I like the succinct message here, though.</div>
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Programming">Programming</a> <a href="http://delicious.com/ADLongwell/Optimization">Optimization</a> <a href="http://delicious.com/ADLongwell/Performance">Performance</a> <a href="http://delicious.com/ADLongwell/Algorithms">Algorithms</a>)</div>
            </li><li>
                <div class="delicious-link"><a href="http://litmusapp.com/alkaline/">Alkaline from Litmus</a></div>
                <div class="delicious-extended">I haven&#039;t used Litmus for browser testing yet, but this application certainly makes it more appealing. The killer feature for me would be some kind of interactivity testing (i.e... something to catch pesky Javascript errors in IE6).</div>
                <div class="delicious-tags">(tags: <a href="http://delicious.com/ADLongwell/Browsers">Browsers</a> <a href="http://delicious.com/ADLongwell/Testing">Testing</a> <a href="http://delicious.com/ADLongwell/Litmus">Litmus</a> <a href="http://delicious.com/ADLongwell/Alkaline">Alkaline</a> <a href="http://delicious.com/ADLongwell/WebDesign">WebDesign</a> <a href="http://delicious.com/ADLongwell/BrowserTesting">BrowserTesting</a> <a href="http://delicious.com/ADLongwell/CrossPlatform">CrossPlatform</a>)</div>
            </li></ul>]]>
        
    </content>
</entry>

</feed>
