<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/stylesheets/rss.css" type="text/css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Robby on Rails: Tag programming</title>
    <link>http://www.robbyonrails.com/articles/tag/programming</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>thoughts.sort_by{|t| t[:topic]}.collect </description>
    <item>
      <title>ShortURL 0.8.4 released and gets a new mainainer... me!</title>
      <description>&lt;p&gt;Earlier today, Vincent Foley was kind enough to hand over maitenance of the the ShortURL project on RubyForge to me. He first released it back in 2005, which &lt;a href="http://www.robbyonrails.com/articles/2005/06/01/rubyurl-friendly-library"&gt;I blogged about&lt;/a&gt; as &lt;a href="http://rubyurl.com"&gt;RubyURL&lt;/a&gt; was the first shortening service that it supported (and is the default). Unfortunately, the release of RubyURL 2.0 broke backwards compatibility and Vincent wasn&amp;#8217;t maintaining it anymore. So, earlier, I decided to patch this and got a new version released that now works with the current RubyURL site.&lt;/p&gt;


	&lt;p&gt;While working on the code, I decided to extend the compatible services to include &lt;a href="http://moourl.com"&gt;moourl&lt;/a&gt; and &lt;a href="http://urltea.com"&gt;urlTea&lt;/a&gt;.&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;These updates are available in ShortURL version 0.8.4.&lt;/strong&gt;&lt;/p&gt;


	&lt;h2&gt;Install the ShortURL gem&lt;/h2&gt;


	&lt;p&gt;Installation is a snap&amp;#8230; (like 99.7% of rubygems&amp;#8230;)&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;
  ~ &amp;gt; sudo gem install shorturl                                                                                                                                                                                                           Password:

  Successfully installed shorturl-0.8.4
  1 gem installed
  Installing ri documentation for shorturl-0.8.4...
  Installing RDoc documentation for shorturl-0.8.4.  
&lt;/code&gt;&lt;/pre&gt;

	&lt;h2&gt;Using ShortURL&lt;/h2&gt;


	&lt;p&gt;The ShortURL gem provides the ShortURL library, which you can use from any Ruby application.&lt;/p&gt;


	&lt;h3&gt;Using the ShortURL library&lt;/h3&gt;


&lt;pre&gt;&lt;code&gt;
  ~ &amp;gt; irb                                                                                                                                                                                                                           
  irb(main):001:0&amp;gt; require 'rubygems'
  =&amp;gt; true
  irb(main):002:0&amp;gt; require 'shorturl'
  =&amp;gt; true
  irb(main):003:0&amp;gt; ShortURL.shorten( 'http://www.istwitterdown.com' )
  =&amp;gt; "http://rubyurl.com/P9w" 
&lt;/code&gt;&lt;/pre&gt;

	&lt;p&gt;As you can see&amp;#8230;it&amp;#8217;s really straight forward.&lt;/p&gt;


	&lt;p&gt;Let&amp;#8217;s try it with a few other services.&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;
irb(main):004:0&amp;gt; ShortURL.shorten( 'http://www.istwitterdown.com', :moourl )
=&amp;gt; "http://moourl.com/fvoky" 
irb(main):005:0&amp;gt; ShortURL.shorten( 'http://www.istwitterdown.com', :tinyurl )
=&amp;gt; "http://tinyurl.com/2t3qmh" 
&lt;/code&gt;&lt;/pre&gt;

	&lt;h3&gt;Using the shorturl command-line tool&lt;/h3&gt;


	&lt;p&gt;Many people don&amp;#8217;t know that ShortURL provides a command-line tool, which you can use after installing the gem.&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;
  ~ &amp;gt; shorturl http://istwitterdown.com                                                                                                                                                                                               
  http://rubyurl.com/Lwk
&lt;/code&gt;&lt;/pre&gt;

	&lt;p&gt;If you&amp;#8217;d like to see more services provided than the ones listed here, please submit &lt;a href="http://rubyforge.org/tracker/?atid=2896&amp;#38;group_id=732&amp;#38;func=browse"&gt;feature requests&lt;/a&gt; and/or &lt;a href="http://rubyforge.org/tracker/?atid=2895&amp;#38;group_id=732&amp;#38;func=browse"&gt;patches&lt;/a&gt; on the rubyforge project.&lt;/p&gt;


	&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://rubyforge.org/projects/shorturl/"&gt;http://rubyforge.org/projects/shorturl/&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;


	&lt;h2&gt;ShortURL Documentation&lt;/h2&gt;


	&lt;p&gt;To see the latest documentation for the project, please visit:&lt;/p&gt;


	&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://rubyforge.org/projects/shorturl/"&gt;http://rubyforge.org/projects/shorturl/&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;My favorite part about this? My &lt;a href="http://www.robbyonrails.com/articles/2005/09/13/rubyurl-meets-rbot"&gt;rbot plugin for RubyURL&lt;/a&gt; works again!&lt;/p&gt;


&lt;div class="thumbnail"&gt;&lt;a href="http://skitch.com/robbyrussell/rpg4/rbot-and-rubyurl"&gt;&lt;img src="http://img.skitch.com/20080107-mhjgi5mqgbcfgygut426ee8b53.preview.jpg" alt="rbot and rubyurl" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family: Lucida Grande, Trebuchet, sans-serif, Helvetica, Arial; font-size: 10px; color: #808080"&gt;Uploaded with &lt;a href="http://plasq.com/"&gt;plasq&lt;/a&gt;&amp;#8217;s &lt;a href="http://skitch.com"&gt;Skitch&lt;/a&gt;!&lt;/span&gt;&lt;/div&gt;

	&lt;p&gt;Happy &lt;span class="caps"&gt;URL&lt;/span&gt;-shortening!&lt;/p&gt;
</description>
      <pubDate>Sun, 06 Jan 2008 18:49:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:5a4cc022-3fb9-4d4d-9d25-aa709a51c30e</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2008/01/06/shorturl-0-8-4-released-and-gets-a-new-mainainer-me</link>
      <category>RubyURL</category>
      <category>Ruby on Rails</category>
      <category>Ruby</category>
      <category>Programming</category>
      <category>rubyurl</category>
      <category>shorturl</category>
      <category>rbot</category>
      <category>gem</category>
      <category>rubyforge</category>
      <category>programming</category>
      <category>development</category>
    </item>
    <item>
      <title>Advanced Mathematics and Programming</title>
      <description>&lt;p&gt;First of all, Happy New Year!&lt;/p&gt;


	&lt;p&gt;The other day I received an email from a friend where she asked me if I thought that  &lt;em&gt;having excellent math skills&lt;/em&gt; were important in a programmers career. I&amp;#8217;ve heard this question asked before and while I thought that might have been the case when I was a lot younger (when I had zero plans to go into the IT world)... I&amp;#8217;ve not seen this to be true. My response to her was that it really depended on the types of programming work that one might want to go into. There are definitely programming jobs that require extremely advanced mathematical skills, but I&amp;#8217;d guess that many, if not most, don&amp;#8217;t really have that sort of prerequisite.&lt;/p&gt;


	&lt;p&gt;&lt;img src="http://www.robbyonrails.com/files/255342.jpg" alt="" /&gt;&lt;/p&gt;


	&lt;p&gt;So, as I was saying. I think it really depends. It depends on what sort of programming you&amp;#8217;re interested in pursuing. In general, when we&amp;#8217;re looking to hire someone at &lt;a href="http://planetargon.com"&gt;Planet Argon&lt;/a&gt;, we&amp;#8217;re looking for people with good research and problem solving skills. Programming languages are tools to help solve problems and build things. So, while math skills are useful, they aren&amp;#8217;t likely going to make or break a developer.&lt;/p&gt;


	&lt;p&gt;Like any career, it should be something that you&amp;#8217;re passionate about.&lt;/p&gt;


	&lt;p&gt;I&amp;#8217;m curious. As programmers&amp;#8230; how would you respond to the following question?&lt;/p&gt;


	&lt;blockquote&gt;
		&lt;p&gt;&amp;#8220;Should an advanced knowledge of mathematics be a prerequisite in pursuing a career in programming?&amp;#8221;&lt;/p&gt;
	&lt;/blockquote&gt;


	&lt;p&gt;I can only answer the question from my own perspective and would like to share some others. Thanks!&lt;/p&gt;
</description>
      <pubDate>Tue, 01 Jan 2008 14:40:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:039c0630-0944-48d5-8b56-1a41225eaafe</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2008/01/01/advanced-mathematics-and-programming</link>
      <category>Programming</category>
      <category>programming</category>
      <category>math</category>
      <category>development</category>
      <category>careers</category>
    </item>
    <item>
      <title>PostgreSQL: An elephant wearing a hula skirt and I find it sexy</title>
      <description>&lt;p&gt;Last week, I gave a &lt;a href="http://www.robbyonrails.com/articles/2006/04/14/sneaking-rails-through-the-legacy-system"&gt;live presentation&lt;/a&gt; to ~250 people, which was basically me walking through the process of using &lt;a href="http://www.rubyonrails.org/"&gt;Ruby on Rails&lt;/a&gt; to talk to a &lt;em&gt;legacy&lt;/em&gt; database&lt;sup&gt;&lt;a href="#fn1"&gt;1&lt;/a&gt;&lt;/sup&gt;. For my example, I used the &lt;a href="http://pgfoundry.org/projects/dbsamples"&gt;Dell &lt;span class="caps"&gt;DVD&lt;/span&gt; database&lt;/a&gt;... the PostgreSQL version. You can review some comments about my presentation by reviewing &lt;a href="http://blog.zenspider.com/archives/2006/04/canadaonrails_d_1.html"&gt;this entry&lt;/a&gt; on the blog of Ryan Davis. I wrapped quite a bit of the database in a few minutes and then showed what another 45 minutes of work could do with Rails. I&amp;#8217;ll tarball that code and post it online soon.&lt;/p&gt;


	&lt;p&gt;Alex Bunardzic &lt;a href="http://jooto.com/blog/index.php/2006/04/19/practical-aspects-of-canada-on-rails/"&gt;found it practical&lt;/a&gt;. I&amp;#8217;ll take that as a compliment. ;-)&lt;/p&gt;


	&lt;p&gt;Earlier, I noticed &lt;a href="http://cwilliams.textdriven.com:8002/articles/2006/04/20/ruby-rails-and-web-development-drving-significant-book-sales"&gt;this blog entry&lt;/a&gt; by Chris&amp;#8230; where he said, &amp;#8220;PostgreSQL also seems to be growing more briskly among the database category, while MySQL declines modestly. I guess that&amp;#8217;s good news for Robby.&amp;#8221; What exactly made me happy? This bullet made by Tim O&amp;#8217;Reilly on Radar in his post, &lt;a href="http://radar.oreilly.com/archives/2006/04/state_of_the_computer_book_mar_3.html"&gt;State of the Computer Book Market, Part 2&lt;/a&gt;.&lt;/p&gt;


	&lt;p&gt;&lt;em&gt;&amp;#8220;A surprise to many may be the s&lt;strong&gt;trong growth of &lt;a href="http://www.postgresql.orgf"&gt;PostgreSQL&lt;/a&gt;, up 84% over a year ago&lt;/strong&gt;. We&amp;#8217;ve also been hearing some signs of growth in the Postgres market from our &amp;#8220;alpha geek&amp;#8221; radar, with reasons given including better support for geo data, and better handling of very large data sets. New companies like Greenplum and EnterpriseDB have also brought a little focus to this market. We&amp;#8217;re updating our &lt;strong&gt;PostgreSQL&lt;/strong&gt; book, and watching this market closely.&amp;#8221;&lt;/em&gt;&lt;/p&gt;


	&lt;p&gt;That&amp;#8217;s awesome! Go PostgreSQL!&lt;/p&gt;


	&lt;p&gt;Then to my surprise, I was contacted by &lt;span class="caps"&gt;CRN&lt;/span&gt; (again) to get my thoughts on &lt;a href="http://dev.mysql.com/doc/refman/5.0/en/blackhole-storage-engine.html"&gt;MySQL&amp;#8217;s awesome &lt;em&gt;storage-engine plugin&lt;/em&gt; system&lt;/a&gt;... which showed up a few hours later in &lt;a href="http://crn.com/sections/breakingnews/breakingnews.jhtml?articleId=186500172"&gt;this article&lt;/a&gt;. The writer of that article managed to goof my last name (Robby Hill?)... and hopefully that gets resolved soon. ;-)&lt;/p&gt;


	&lt;p&gt;As I said at &lt;a href="http://www.canadaonrails.org"&gt;Canada on Rails&lt;/a&gt; in front of 250 people, &amp;#8220;I find databases&amp;#8230; sexy.&amp;#8221;&lt;/p&gt;


	&lt;p&gt;&lt;a href="http://www.planetargon.com/files/~robby/pg_pink_elephant.jpg"&gt;&lt;img src="http://www.planetargon.com/files/~robby/pg_pink_elephant-thumb.jpg" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;(free desktop wallpaper!)&lt;/p&gt;


	&lt;p&gt;Why Rails? Why PostgreSQL?&lt;/p&gt;


	&lt;p&gt;Rails.. that&amp;#8217;s a no-brainer.&lt;/p&gt;


	&lt;p&gt;PostgreSQL? Well.. they have compatible licenses&amp;#8230; no dual-license smell when your trying to sell your application as a complete solution&amp;#8230; and as &lt;a href="http://www.robbyonrails.com/articles/2005/09/27/the-bitter-sweet-taste-of-agnostic-database-schemas"&gt;Rails is database agnostic&lt;/a&gt;... there is no reason not to give PostgreSQL a try.&lt;/p&gt;


	&lt;p&gt;Who uses PostgreSQL on Rails?&lt;/p&gt;


	&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://www.cdbaby.com"&gt;CDBaby&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://www.shopify.com"&gt;Shopify&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://www.planetargon.com"&gt;&lt;span class="caps"&gt;PLANET ARGON&lt;/span&gt;&lt;/a&gt; (on almost every project we work on&amp;#8230;)&lt;/li&gt;
		&lt;li&gt;you&amp;#8230;?&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;If your using PostgreSQL on Rails&amp;#8230; &lt;a href="mailto:robby@planetargon.com"&gt;email me&lt;/a&gt;... I&amp;#8217;d love to hear and share your story on my O&amp;#8217;Reilly blog, like I did with Derek Sivers and Jeremy Kemper of &lt;a href="http://www.cdbaby.com"&gt;CDBaby&lt;/a&gt; a few months ago, which you can &lt;a href="http://www.oreillynet.com/pub/wlg/8274"&gt;read here&lt;/a&gt;.&lt;/p&gt;


	&lt;p&gt;again&amp;#8230; &lt;a href="http://noodlejunkie.com/?p=23"&gt;I find databases sexy&lt;/a&gt;...&lt;/p&gt;


	&lt;p&gt;If your a &lt;strong&gt;&lt;span class="caps"&gt;PLANET ARGON&lt;/span&gt;&lt;/strong&gt; hosting customer&amp;#8230; you can follow &lt;a href="http://docs.planetargon.com/wiki/show/Setup+A+PostgreSQL+Database"&gt;these instructions&lt;/a&gt; to install PostgreSQL on your &lt;a href="http://www.planetargon.com/hosting.html"&gt;&lt;span class="caps"&gt;PLANET ARGON&lt;/span&gt; hosting&lt;/a&gt; account.&lt;/p&gt;


	&lt;p id="fn1"&gt;&lt;sup&gt;1&lt;/sup&gt; According to the Rails convention (and by me)... any database created pre-Rails or doesn&amp;#8217;t follow the conventions is considered legacy. ;-)&lt;/p&gt;
</description>
      <pubDate>Thu, 20 Apr 2006 18:30:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:363a8c6f-7b8c-462e-b91f-fb9b5d5e5c50</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2006/04/20/postgresql-an-elephant-wearing-a-hula-skirt-and-i-find-it-sexy</link>
      <category>postgresql</category>
      <category>programming</category>
      <category>databases</category>
    </item>
    <item>
      <title>I Repeat... Do Not Use PostgreSQL!</title>
      <description>&lt;p&gt;Why is everybody interested in using &lt;a href="http://postgresql.org"&gt;PostgreSQL&lt;/a&gt;? We all know that it&amp;#8217;s a pain to install, a pain to maintain, and Rails only works with MySQL. So, why do we bother?&lt;/p&gt;


	&lt;p&gt;This article titled, &lt;a href="http://searchopensource.techtarget.com/originalContent/0,289142,sid39_gci1172668,00.html"&gt;Five reasons why you should never use PostgreSQL. Ever.&lt;/a&gt; clears up these questions.&lt;/p&gt;


	&lt;p&gt;My favorite is&amp;#8230; &lt;em&gt;&amp;#8220;Reason #5: You (don&amp;#8217;t) get what you (don&amp;#8217;t) pay for&amp;#8221;&lt;/em&gt;&lt;/p&gt;


	&lt;p&gt;Imagine if we said the same thing about &lt;a href="http://www.rubyonrails.org"&gt;Ruby on Rails&lt;/a&gt;?&lt;/p&gt;


	&lt;p&gt;&lt;small&gt;
Similar Post(s): &lt;a href="http://robbyonrails.com/articles/2005/09/27/the-bitter-sweet-taste-of-agnostic-database-schemas"&gt;The bitter-sweet taste of agnostic database schemas&lt;/a&gt;,  &lt;a href="http://robbyonrails.com/articles/2005/11/30/localization-with-rails-and-postgresql-part-1"&gt;Localization with Rails and PostgreSQL, part 1&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;
</description>
      <pubDate>Tue, 14 Mar 2006 09:16:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:a4e02c8e-a4a9-4b22-8189-10da420e0cfc</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2006/03/14/i-repeat-do-not-use-postgresql</link>
      <category>postgresql</category>
      <category>programming</category>
      <category>rails</category>
      <category>sarcasm</category>
    </item>
    <item>
      <title>Ruby eye for the anti-newbie guy</title>
      <description>&lt;p&gt;I was skimming over a few &lt;span class="caps"&gt;RSS&lt;/span&gt; feeds ( &lt;a href="http://blogs.thoughtworks.com/"&gt;blogs.thoughtworks.com&lt;/a&gt; ) this morning and came across an entry by
&lt;a href="http://blog.griffincaprio.com/blog/PermaLink.aspx?guid=a9eb87a7-70e0-41ad-8f6b-4dc11c70c53f"&gt;Griffin Caprio&lt;/a&gt;. He shared his thought on the new book by Chris Pine, &lt;a href="http://www.pragmaticprogrammer.com/titles/fr_ltp/index.html"&gt;Learn to Program&lt;/a&gt; and says the following:&lt;/p&gt;


	&lt;p&gt;&lt;i&gt;&amp;#8221;...You wouldn&amp;#8217;t see these types of books in other professions like medical, engineering, or accounting because there are boards that prevent just any old person from practicing in those fields.&lt;/p&gt;


	&lt;p&gt;Not so in computing. But is this what we want to encourage?  Anyone and everyone picking up software and just giving it a go?&lt;/p&gt;


	&lt;p&gt;And I understand everyone&amp;#8217;s love of Ruby, but come on people. It&amp;#8217;s just a language.&amp;#8221;&lt;/i&gt;&lt;/p&gt;


	&lt;p&gt;Actually, yes. Learning to program, build, create, test, problem solve, etc&amp;#8230; are all things that &lt;em&gt;we &lt;strong&gt;should&lt;/strong&gt; encourage&lt;/em&gt;.&lt;/p&gt;


	&lt;p&gt;Let&amp;#8217;s do a quick search on amazon for the following, &lt;a href="http://www.amazon.com/exec/obidos/external-search/103-8484556-9941417?field-keywords=learn+to+program"&gt;Learn to Program&lt;/a&gt;. I&amp;#8217;m pretty sure these books have been common place for the past 20+ years&amp;#8230; so, what&amp;#8217;s the big deal?&lt;/p&gt;


	&lt;p&gt;It&amp;#8217;s like telling a kid not to build a bird house until he gets a contractors license and a permit.&lt;/p&gt;


	&lt;p&gt;...or telling someone to not pick up a guitar until they had proper lessons.&lt;/p&gt;


	&lt;p&gt;...or maybe you shouldn&amp;#8217;t be running a business without graduating from college.&lt;/p&gt;


	&lt;p&gt;I could go on and on.&lt;/p&gt;


	&lt;p&gt;Oh&amp;#8230; and by the way&amp;#8230;&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;Hello World&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;is &lt;strong&gt;much sexier&lt;/strong&gt; than&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;public&lt;/span&gt; &lt;span class="ident"&gt;static&lt;/span&gt; &lt;span class="ident"&gt;void&lt;/span&gt; &lt;span class="ident"&gt;main&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="constant"&gt;String&lt;/span&gt;&lt;span class="punct"&gt;[]&lt;/span&gt; &lt;span class="ident"&gt;args&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt;
  &lt;span class="constant"&gt;System&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;out&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;println&lt;/span&gt; &lt;span class="punct"&gt;(&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;Hello World&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;);&lt;/span&gt; 
&lt;span class="punct"&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;On that note&amp;#8230; check out &lt;a href="http://www.pragmaticprogrammer.com/titles/fr_ltp/index.html"&gt;Learn to Program&lt;/a&gt; by Chris Pine.&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;&lt;span class="caps"&gt;UPDATE&lt;/span&gt;&lt;/strong&gt;
Griffin has followed up to my blog entry with &lt;a href="http://blog.griffincaprio.com/blog/PermaLink.aspx?guid=bab9eada-919f-4f48-9bec-5ca058d23e58"&gt;another&lt;/a&gt;. He goes on to say, &lt;em&gt;&amp;#8220;The kid who builds the bird house above would never be hired to build an actual house.  Not true in Software Development.&amp;#8221;&lt;/em&gt; (&lt;a href="http://blog.griffincaprio.com/blog/PermaLink.aspx?guid=bab9eada-919f-4f48-9bec-5ca058d23e58"&gt;read more&lt;/a&gt;)&lt;/p&gt;


	&lt;p&gt;I think this problem raises a completely different problem. Why are unqualified people being hired to do things that they aren&amp;#8217;t qualified for? Do we blame the people learning to program or do we look at who hires these people in the first place? I&amp;#8217;m still confused by his argument.&lt;/p&gt;


	&lt;p&gt;That kid may not get hired to build a house, but he may get interested in that as a career and continue to pursue it&amp;#8230; if someone hires him to build the whole house, then the person hiring should be held accountable do some degree as well. Check references! ;-)&lt;/p&gt;


	&lt;p&gt;On the flip-side&amp;#8230; is this an argument to only take people who have been approved by some board (...MCSE?) seriously when hiring developers?&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;Update #2&lt;/strong&gt;&lt;/p&gt;


	&lt;p&gt;Griffin has outlined his points in more detail in &lt;a href="http://blog.griffincaprio.com/blog/PermaLink.aspx?guid=22784b17-01b1-47bc-95a3-ac052495a9cc"&gt;this third entry&lt;/a&gt;.&lt;/p&gt;
</description>
      <pubDate>Wed, 18 Jan 2006 09:44:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:1d5e924c271c7210c51cc06fa4e94ba3</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2006/01/18/ruby-eye-for-the-anti-newbie-guy</link>
      <category>Ruby</category>
      <category>Programming</category>
      <category>ruby</category>
      <category>book</category>
      <category>programming</category>
      <category>rant</category>
    </item>
    <item>
      <title>Go Ruby Go!</title>
      <description>&lt;p&gt;&lt;a href="http://www.loudthinking.com/arc/000547.html"&gt;&lt;span class="caps"&gt;DHH&lt;/span&gt; wrote&lt;/a&gt; that &lt;a href="http://radar.oreilly.com/archives/2005/12/ruby_book_sales_surpass_python.html"&gt;Tim O&amp;#8217;Reilly wrote&lt;/a&gt; on O&amp;#8217;Reilly Radar, &lt;a href="http://radar.oreilly.com/archives/2005/12/ruby_book_sales_surpass_python.html"&gt;Ruby Book Sales Surpass Python.&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;&lt;em&gt;While I was looking at the data, though, I noticed something perhaps more newsworthy: in the same period, Ruby book sales surpassed Python book sales for the first time. Python is up 20% vs. the same period last year, but Ruby is up 1552%! (Perl is down 3%.)&lt;/em&gt;&lt;/p&gt;


	&lt;p&gt;...awesome!&lt;/p&gt;
</description>
      <pubDate>Wed, 07 Dec 2005 19:52:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:6062c54a306d84fcd70e04c9e49c0814</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2005/12/07/go-ruby-go</link>
      <category>My Book</category>
      <category>Ruby on Rails</category>
      <category>Ruby</category>
      <category>Programming</category>
      <category>ruby</category>
      <category>programming</category>
      <category>books</category>
    </item>
    <item>
      <title>Keeping the Code Organic</title>
      <description>&lt;p&gt;The landscape around us is quickly changing-&lt;del&gt;really, it has been changing for some time now&lt;/del&gt;-we&amp;#8217;ve come a point where we admit that it&amp;#8217;s okay to want more for less. We want more features, &lt;strong&gt;in less time&lt;/strong&gt;. We want more control, for &lt;strong&gt;less money&lt;/strong&gt;. Why? When did we collectively decide that huge monolithic systems could be completed in a fraction of the time it &lt;em&gt;should&lt;/em&gt; take?&lt;/p&gt;


	&lt;p&gt;After years of working in  .NET, &lt;span class="caps"&gt;PHP&lt;/span&gt;, Perl, and even a little Python, I have gone down the road of simplicity. I want simple looking code (thank you Ruby). Code that I can hand off to another developer and for them to simply &lt;strong&gt;get it&lt;/strong&gt;&amp;#8212;which helps to keep things moving. It&amp;#8217;s about getting the project done.&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;Scenario:&lt;/strong&gt; The client wants delivery in X days, so you aim for Y days early. Shortcuts get made, tests are forgotten, code is blemished, and deadlines still manage to sneak by unmet. Why do we do this to ourselves?&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;I say, no more!&lt;/strong&gt;&lt;/p&gt;


	&lt;h3&gt;Sacrifices Are Okay&lt;/h3&gt;


	&lt;p&gt;What? You mean I can &lt;em&gt;choose&lt;/em&gt; to leave something out? I can-&lt;del&gt;dare, I say&lt;/del&gt;-tell my client &lt;strong&gt;no&lt;/strong&gt;? Yes! Well, maybe. It&amp;#8217;s time to &lt;strong&gt;re&lt;/strong&gt;-think how you view your projects. Have you asked your client, &amp;#8220;What is the &lt;strong&gt;single-most-important&lt;/strong&gt; feature of this project?&amp;#8221; Every project has one. Your customer will likely be relieved to hear that you care about the purpose of the project. And it gives you an idea as to where &lt;strong&gt;not&lt;/strong&gt; to make sacrifices, which in turn helps to identify the areas where you can.&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;So, if you haven&amp;#8217;t asked them yet&amp;#8230; &lt;em&gt;ask them now&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;


	&lt;h3&gt;The Big Picture&lt;/h3&gt;


	&lt;p&gt;If things change, how will it impact your timeframe? When your schedule is threatened, it becomes easier to see what isn&amp;#8217;t necessary, or perhaps, not necessary &lt;strong&gt;right now&lt;/strong&gt;.&lt;/p&gt;


	&lt;p&gt;All features in a project are part of the big pictures. If you ask your client what is &lt;strong&gt;required&lt;/strong&gt; they will almost always respond with the all to easy, &amp;#8220;everything.&amp;#8221; Simply accepting this as fact often leads to shoddy workmanship in favor of giving your client &amp;#8220;everything.&amp;#8221; To the client it may seem like you aced the test, but that&amp;#8217;s because they don&amp;#8217;t know you&amp;#8217;ve cheated. I&amp;#8217;m sure a lot of you know what it&amp;#8217;s like to inherit the code of someone who has done this, and you know you&amp;#8217;ve probably been on the other end as well.&lt;/p&gt;


	&lt;h3&gt;A Neverending Story&lt;/h3&gt;


	&lt;p&gt;Projects aren&amp;#8217;t just instantly created, they &lt;strong&gt;evolve&lt;/strong&gt;. They need to be fine-tuned, maintained and should most certainly be &lt;a href="http://www.refactoringrails.com"&gt;refactored&lt;/a&gt; when necessary. Most projects require ongoing work&amp;#8230; because requirements &lt;strong&gt;do&lt;/strong&gt; change.&lt;/p&gt;


	&lt;p&gt;It&amp;#8217;s time to stop and really consider how you approach both your clients and their projects. Can the next project be built in an evolutionary fashion? Can you focus on one new feature at a time, maintaining your tests, and &lt;em&gt;avoiding bloat&lt;/em&gt;?&lt;/p&gt;


&lt;blockquote&gt;
&amp;#8220;Big fleas have little fleas
Upon their backs to bite &amp;#8216;em:
Little fleas have lesser fleas
And so ad infinitum.&amp;#8221; 
&lt;/blockquote&gt;

	&lt;p&gt;I found this in a book that I picked up at the local Library booksale for something like 20 cents. The book, &lt;a href="http://www.amazon.com/exec/obidos/tg/detail/-/B0006D8J40/qid=1130637858/sr"&gt;The New Utopians&lt;/a&gt; by, Robert Boguslaw was written in 1965 and has some  insightful thoughts on systems as &lt;strong&gt;organisms.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Keep it Organic&lt;/strong&gt;&lt;/p&gt;


	&lt;p&gt;Pesticides are not necesary to produce quality produce. They are a cheap shortcut that can cause other problems in the longrun, and are generally not a healthy addition to the lifecycle of the fruit or vegetable (or to those who harvest it and consume it).&lt;/p&gt;


	&lt;p&gt;Test-Driven Development allows you to constantly monitor the behavior of your application. Feature-Driven Development keeps your team focused on what is currently the most important piece of your project. Don&amp;#8217;t rely on pesticide, let the project flow the way it wants to.&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;Keep it Flexible&lt;/strong&gt;&lt;/p&gt;


	&lt;p&gt;Business Rules should not be flexible&amp;#8230; but they should. That sounds confusing, but it&amp;#8217;s not. Know where to make that distinction. Add your rules first&amp;#8230; build your tests&amp;#8230; then code. Maintain flexibility &lt;strong&gt;through&lt;/strong&gt; your rules.&lt;/p&gt;


	&lt;p&gt;Test First. Code Second. Lather. Rinse. Repeat.&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;Be Proud of Your Code, But Not Blinded By It&lt;/strong&gt;&lt;/p&gt;


	&lt;p&gt;&lt;em&gt;You&amp;#8217;re&lt;/em&gt; biased. Your &lt;em&gt;code&lt;/em&gt; is biased. The opinion that you have &lt;em&gt;about&lt;/em&gt; your code is biased. You are proud of your code&amp;#8230; but you can do it better and some people are better at somethings than you are. Don&amp;#8217;t dwell on it, embrace it.&lt;/p&gt;


	&lt;p&gt;How many of you are making the mistake of being the &lt;strong&gt;only&lt;/strong&gt; programmer on a project? I&amp;#8217;m not a big fan of &lt;strong&gt;big&lt;/strong&gt; teams, but I know that &lt;strong&gt;small&lt;/strong&gt; and &lt;strong&gt;focused&lt;/strong&gt; teams are extremly productive and better positioned for the big projects of tomorrow. Find someone that you trust and trade peer-review time. Not sure where to start? Pick up a copy of &lt;a href="http://www.powells.com/biblio/4-0201485672-0"&gt;Refactoring&lt;/a&gt;.  It&amp;#8217;s time that you &lt;strong&gt;RE&lt;/strong&gt;-think how you are doing things.&lt;/p&gt;


	&lt;p&gt;&lt;strong&gt;Embrace Heuristics&lt;/strong&gt;&lt;/p&gt;


	&lt;p&gt;It&amp;#8217;s time to challenge yourself. A new year is almost upon us and we&amp;#8217;re all behind on our goals&amp;#8230; because things change. This is the time to explore your possibilities. Learn something new. Don&amp;#8217;t be afraid to break things. Just learn why the thing broke. Learn to be a good tester. Learn to write cleaner code. Learn to refactor your code. Learn to make it readable.&lt;/p&gt;


	&lt;p&gt;Learn to learn&amp;#8230; and remember to buy organic. ;-)&lt;/p&gt;</description>
      <pubDate>Sat, 29 Oct 2005 20:30:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:8e3c4ec83c18f48e2eb9d05efe9ff9ac</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2005/10/29/keeping-the-code-organic</link>
      <category>Off-Topic</category>
      <category>Ruby</category>
      <category>Programming</category>
      <category>programming</category>
      <category>tdd</category>
      <category>fdd</category>
    </item>
    <item>
      <title>Refactoring Rails... coming soon</title>
      <description>&lt;p&gt;As you may have heard earlier, &lt;a href="http://www.jvoorhis.com/"&gt;Jeremy Voorhis&lt;/a&gt; and I are working on a &lt;a href="http://www.jvoorhis.com/articles/2005/10/27/introducing-refactoring-rails"&gt;top-secret project&lt;/a&gt; together. We&amp;#8217;re going to keep things quiet for just a bit longer while we get an initial site together. In the meantime, sign up on our mailing list to be notified when we launch it.&lt;/p&gt;


	&lt;p&gt;We present to you&amp;#8230;. &lt;a href="http://www.refactoringrails.com"&gt;Refactoring Rails&lt;/a&gt;.&lt;/p&gt;


	&lt;p&gt;&lt;a href="http://www.refactoringrails.com"&gt;&lt;img src="http://www.refactoringrails.com/refactoringrailssmall.jpg" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;&lt;a href="http://www.jvoorhis.com/"&gt;Jeremy&lt;/a&gt; posted a short teaser on his blog and we&amp;#8217;ll just keep you in suspense&amp;#8230; but keep an eye out in the coming week(s). :-)&lt;/p&gt;


	&lt;p&gt;For more information, bookmark: &lt;a href="http://www.refactoringrails.com"&gt;http://www.refactoringrails.com&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;&lt;em&gt;&amp;#8220;Remove ambiguities and convert to specifics&amp;#8221;&lt;/em&gt; &amp;#8211; &lt;strong&gt;Brian Eno&lt;/strong&gt;, Oblique Strategies&lt;/p&gt;
</description>
      <pubDate>Thu, 27 Oct 2005 14:30:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:35ca2fcb44f472a9b46f97d81fe65596</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2005/10/27/refactoring-rails-coming-soon</link>
      <category>Ruby on Rails</category>
      <category>Ruby</category>
      <category>Programming</category>
      <category>refactoring</category>
      <category>rails</category>
      <category>ruby</category>
      <category>programming</category>
    </item>
    <item>
      <title>Portland Ruby Brigade meets CD Baby</title>
      <description>This is what happened to the &lt;a href="http://www.pdxruby.org"&gt;Portland Ruby Brigade&lt;/a&gt; today:
	&lt;ul&gt;
	&lt;li&gt;Got double booked on meeting night with the &lt;span class="caps"&gt;PHP&lt;/span&gt; group&lt;/li&gt;
		&lt;li&gt;Got asked to leave after getting threats of the lights being turned off&lt;/li&gt;
		&lt;li&gt;Stayed almost til closing time at a brew&amp;#8230; we heard, &amp;#8220;Last Call!&amp;#8221; and still continued talking&amp;#8230;&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;Tonight I finally got to meet &lt;a href="http://blog.bleything.net"&gt;Ben&lt;/a&gt;, &lt;a href="http://www.smallwhitecube.com/"&gt;Caleb&lt;/a&gt;, Justin Watkins, Marcus Estes, Lennon Day-Reynolds, Jeremy Kempter (bitsweat), Aaron Johnson, and Peat Bakke-&lt;del&gt;each for the first time. I also got to see &lt;a href="http://scottstuff.net/blog/"&gt;Scott Laird&lt;/a&gt; (of Typo fame) and John Labovitz again. Scott and I met at &lt;span class="caps"&gt;FOSCON&lt;/span&gt; and John once found me when he was trying to hack people at a coffee shop and saw that I was on the wireless network. Okay, he wasn&amp;#8217;t hacking&amp;#8230; but found me at Urban Grind. :&lt;/del&gt;)&lt;/p&gt;


	&lt;p&gt;We had about ~25 people show up. I don&amp;#8217;t think that there was a head count made. We sat around in a big circle and fired questions at both Derek Sivers and Jeremy Kemper. Topics ranged from how Derek found his way to PostgreSQL to why he thinks that he is an amazing web designer (&lt;strong&gt;smirk&lt;/strong&gt;) to why Ruby and Rails was picked as the platform to move to from a &lt;span class="caps"&gt;PHP&lt;/span&gt;/MySQL system. Jeremy shared some insights into some problems with Rails that need to be worked on (boolean-stuff for example), tips on debugging, and many other things that I don&amp;#8217;t recall off the top of my head.&lt;/p&gt;


	&lt;p&gt;It was a very relaxed and open conversation with some cool local developers who are working on getting their Rails/PostgreSQL system finished.&lt;/p&gt;


	&lt;p&gt;After we got kicked out of FreeGeek most of migrated to the Lucky Lab Pub&amp;#8230; and then we realized that Derek and Jeremy didn&amp;#8217;t show up. So, we found our ways to a big table and broke up into smaller conversations. I got &lt;strong&gt;stuck&lt;/strong&gt; at the table with Ben, Scott, Caleb, and John. Actually, it was quite enjoyable. Scott talked about his work with Typo and Ben and I gave him some of our thoughts on things.&lt;/p&gt;


	&lt;p&gt;This is a horrible summary of the whole evening. It&amp;#8217;s what I remember&amp;#8230; and it&amp;#8217;s late and I look forward to getting to hang out with this gang again in the future. I think that it was great to get to finally meet a few of the people that I have worked on some smaller projects with. If everything works out well, expect there to be some more projects coming out of the &lt;a href="http://www.pdx.rb"&gt;&lt;span class="caps"&gt;PDX&lt;/span&gt;.rb&lt;/a&gt; in the coming months. :-)&lt;/p&gt;


	&lt;p&gt;Thanks again to Derek Sivers and Jeremy Kemper for taking time out of their busy schedule to meet &amp;#38; greet with the Portland Ruby people. :-)&lt;/p&gt;
</description>
      <pubDate>Wed, 05 Oct 2005 00:25:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:954c23e7217b0bbc829592d04bf8402f</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2005/10/05/portland-ruby-brigade-meets-cd-baby</link>
      <category>Ruby on Rails</category>
      <category>Ruby</category>
      <category>Programming</category>
      <category>PostgreSQL</category>
      <category>ruby</category>
      <category>rails</category>
      <category>programming</category>
      <category>cdbaby</category>
      <category>postgresql</category>
    </item>
    <item>
      <title>Master, console, and servant </title>
      <description>&lt;p&gt;I love console in Rails. It is absolutely one of my favorite tools in Rails. I probably spend more time testing stuff in console than I do in a browser, which is a good thing. Right?&lt;/p&gt;


	&lt;p&gt;Today, I was reading through a part of &lt;a href="http://pragmaticprogrammer.com/titles/ruby/index.html"&gt;Programming Ruby&lt;/a&gt; (I like to open up to a random page and read something every once in a while) and came across a section on page 189. &lt;strong&gt;Subsessions and Bindings&lt;/strong&gt; I was not aware that I could do this within &lt;strong&gt;irb&lt;/strong&gt; and immediately thought to myself, &amp;#8220;can I do that with console?&amp;#8221; Console is afterall&amp;#8230;just irb with all the Rails features pre-configured. So, I decided that I would try this out the next time I was in console.&lt;/p&gt;


	&lt;p&gt;That time came and passed&amp;#8230; so,  does it work?&lt;/p&gt;


	&lt;p&gt;The answer: &lt;strong&gt;&lt;span class="caps"&gt;YES&lt;/span&gt;!&lt;/strong&gt;&lt;/p&gt;


	&lt;p&gt;I even have proof&amp;#8230; :-)&lt;/p&gt;


	&lt;p&gt;&lt;img src="http://www.robbyrussell.com/albums/Desktops/console_subsessions.jpg" alt="" /&gt;&lt;/p&gt;


	&lt;p&gt;This should eliminate a few tabs in &lt;a href="http://iterm.sourceforge.net/"&gt;iterm&lt;/a&gt; for me and works just like the Unix &lt;code&gt;jobs&lt;/code&gt; and &lt;code&gt;fg&lt;/code&gt; commands do.&lt;/p&gt;


	&lt;p&gt;If you are still not &lt;a href="http://www.robbyonrails.com/articles/2005/08/18/are-you-a-console-master"&gt;using console&lt;/a&gt; yet, why?&lt;/p&gt;


	&lt;p&gt;Perhaps you enjoy the pain of constant browser reloads because you keep trying to figure out if that method works. Often times, you can copy and paste your code right into console. It&amp;#8217;s beautiful and gives you a quicker response than your browser will ever. 
But, you already knew that. Right?&lt;/p&gt;


	&lt;p&gt;Don&amp;#8217;t get me wrong, I can totally understand your justifications for the extra pain. Who wants to work in their terminal more than they have to? (I do&amp;#8230; but I do it because I am at home in my terminal.) There is nothing pretty about the terminal&amp;#8230; but I feel in control. Are you a servant of your pretty &lt;span class="caps"&gt;GUI IDE&lt;/span&gt; and browser or are you the master of your terminal? ;-)&lt;/p&gt;


	&lt;p&gt;Okay, I will end this nonsense with my new console marketing campaign. I have employeed &lt;a href="http://www.metropolisthegallery.com/images/Elkins_three_pigeons.png"&gt;three pigeons&lt;/a&gt; to help me work on this one and the end result of our hard work?&lt;/p&gt;


	&lt;p&gt;&lt;em&gt;Have you &lt;strong&gt;ruby script/console&lt;/strong&gt;&amp;#8216;d today?&lt;/em&gt;&lt;/p&gt;


	&lt;p&gt;Yes. Classy and Original. :-)&lt;/p&gt;


	&lt;p&gt;Back to writing&amp;#8230;&lt;/p&gt;
</description>
      <pubDate>Sat, 01 Oct 2005 20:47:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:6c302d4b116d870ff8a2fc85603991bc</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2005/10/01/master-console-and-servant</link>
      <category>Ruby on Rails</category>
      <category>Ruby</category>
      <category>Programming</category>
      <category>ruby</category>
      <category>rails</category>
      <category>console</category>
      <category>programming</category>
    </item>
    <item>
      <title>CollectionClosureMethod</title>
      <description>&lt;p&gt;Last month, &lt;a href="http://www.martinfowler.com/"&gt;Martin Fowler&lt;/a&gt; posted an entry on his bliki that discussed the &lt;a href="http://www.martinfowler.com/bliki/CollectionClosureMethod.html"&gt;CollectionClosureMethod&lt;/a&gt;. He showed examples in Smalltalk, Lisp, and&amp;#8230; &lt;a href="http://www.ruby-lang.org/"&gt;Ruby!&lt;/a&gt;. It&amp;#8217;s worth the read and he updates his bliki fairly regularly-&lt;del&gt;so, I would suggest that you add his &lt;span class="caps"&gt;RSS&lt;/span&gt; feed to your &lt;span class="caps"&gt;RSS&lt;/span&gt; reader. :&lt;/del&gt;)&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;sortedEmployees&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;employees&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;sort&lt;/span&gt; &lt;span class="punct"&gt;{|&lt;/span&gt;&lt;span class="ident"&gt;a&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt;&lt;span class="ident"&gt;b&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt; &lt;span class="ident"&gt;a&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;lastname&lt;/span&gt; &lt;span class="punct"&gt;&amp;lt;=&amp;gt;&lt;/span&gt; &lt;span class="ident"&gt;b&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;lastname&lt;/span&gt;&lt;span class="punct"&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;Enjoy!&lt;/p&gt;
</description>
      <pubDate>Tue, 13 Sep 2005 18:40:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:e0a16069a465286a5c668adeac301645</guid>
      <author>Robby Russell</author>
      <link>http://www.robbyonrails.com/articles/2005/09/13/collectionclosuremethod</link>
      <category>Ruby</category>
      <category>Programming</category>
      <category>ruby</category>
      <category>fowler</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
