<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.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>@Lathi.net: In the Fishbowl</title>
    <link>http://blog.lathi.net/articles/2006/03/08/in-the-fishbowl</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>On Life, Fatherhood, Christianity, and Computers</description>
    <item>
      <title>In the Fishbowl</title>
      <description>&lt;p&gt;At last night&amp;#8217;s &lt;a href="http://xpcincinnati.org/"&gt;XP Cinci&lt;/a&gt; we did an interesting exercise called &amp;#8220;The Fishbowl&amp;#8221;.  &lt;a href="http://railsstudio.com/"&gt;Mark Windholtz&lt;/a&gt; setup his powerbook with a terminal, Safari, &lt;a href="http://macromates.com/"&gt;TextMate&lt;/a&gt; and a time tracking application he had been working on.  We then each took turns pair programming on the big screen.  While there were two of us &amp;#8220;at the console&amp;#8221; all the time, we swapped one of them out every 10 minutes.&lt;/p&gt;


	&lt;p&gt;The exercise was interesting for several reasons.  Mostly it turned out to be a good example of what test driven development looks like in &lt;a href="http://rubyonrails.com"&gt;Ruby on Rails&lt;/a&gt;.  The skill level of xp-cinci is split pretty evenly.  About half of us have done significant RoR development and the other half is either just interested or just learning.  Regardless of skill level though, no one was going to code in public at an XP meeting without writing tests.  The best way to learn &lt;span class="caps"&gt;TDD&lt;/span&gt; is by doing.  Until you&amp;#8217;ve lived through the development cycle of &lt;span class="caps"&gt;TDD&lt;/span&gt; it&amp;#8217;s hard to really grasp what it feels like.&lt;/p&gt;


	&lt;p&gt;The other benefit from the exercise was a fairly lively discussion on &amp;#8220;this is how we do it in Rails&amp;#8221; versus &amp;#8220;this is what I&amp;#8217;m used to in Java.&amp;#8221;  Most of xp-cinci comes from a strong Java background.  Even though about half of us are &amp;#8220;ruby nubies,&amp;#8221; pretty much everyone has a very strong developer background with one technology or another.  Here&amp;#8217;s a for-instance.  I coded up a method that used &lt;code&gt;MyModel.find_by_id(params[:id])&lt;/code&gt; and was asked why I used &lt;code&gt;find_by_id&lt;/code&gt; rather than just &lt;code&gt;find&lt;/code&gt;.  I said that I liked how &lt;code&gt;find_by_id&lt;/code&gt; returned nil so I could use it as a false value when doing error checking.  As a long-time Java smart-guy, &lt;a href="http://esumerfield.blogspot.com/"&gt;Ed Summerfield&lt;/a&gt; was pretty quick to jump on this as a bad practice.  He demonstrated how his Rails controllers looked using &lt;code&gt;begin&lt;/code&gt; and &lt;code&gt;rescue&lt;/code&gt;.  I&amp;#8217;m not entirely convinced that assigning nil to an object as a fail condition is bad, but his code looked fairly neat with all his error trapping in &lt;code&gt;rescue&lt;/code&gt; blocks.&lt;/p&gt;


	&lt;p&gt;While the skill levels of various members varied, our application we worked on wasn&amp;#8217;t really the typical &amp;#8220;hello world&amp;#8221; style application of tutorials.  We started with a working application.  Mark and Scott are actually using the application as part of their consulting work at &lt;a href="http://railsstudio.com"&gt;Rails Studio&lt;/a&gt;.  This gave us the chance to work in a more &amp;#8220;normal&amp;#8221; fare.  We had an existing database we were migrating; we had existing code we had to live within; and we had a &amp;#8220;real&amp;#8221; customer looking for &amp;#8220;real&amp;#8221; improvements to their application.&lt;/p&gt;


	&lt;p&gt;Last night&amp;#8217;s meeting was different from our usual fare.  It was back to a hands on style where we actually wrote code.  While we didn&amp;#8217;t get very far in terms of feature points, I think we made a lot of progress in general understanding of both coding practices and Rails development.  I hope we continue doing more and talking less.&lt;/p&gt;</description>
      <pubDate>Wed, 08 Mar 2006 07:43:13 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:27f6f8cc-cab7-4d6a-b513-0102a4865e96</guid>
      <author>Doug</author>
      <link>http://blog.lathi.net/articles/2006/03/08/in-the-fishbowl</link>
      <category>Programming</category>
      <category>Test Driven Development</category>
      <category>Ruby on Rails</category>
      <category>Community</category>
      <category>Cincinnati</category>
      <category>Rails</category>
      <category>Ruby</category>
      <category>testing</category>
    </item>
    <item>
      <title>"In the Fishbowl" by buy jewelry watch</title>
      <description>&lt;p&gt;Choose!&lt;/p&gt;</description>
      <pubDate>Thu, 29 Jun 2006 06:13:38 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:d720f099-2344-462c-91e7-25a5fb9a5d4d</guid>
      <link>http://blog.lathi.net/articles/2006/03/08/in-the-fishbowl#comment-263</link>
    </item>
    <item>
      <title>"In the Fishbowl" by victorian wedding dress</title>
      <description>&lt;p&gt;Beautiful!&lt;/p&gt;</description>
      <pubDate>Thu, 29 Jun 2006 06:13:22 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:c7ac0e2a-c993-446b-8caa-e0e036c67f6a</guid>
      <link>http://blog.lathi.net/articles/2006/03/08/in-the-fishbowl#comment-262</link>
    </item>
    <item>
      <title>"In the Fishbowl" by womens clothing catalog</title>
      <description>&lt;p&gt;We know all about beauty&lt;/p&gt;</description>
      <pubDate>Mon, 26 Jun 2006 18:57:14 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:1002a69a-64d8-4cb1-a507-830b2ec7058a</guid>
      <link>http://blog.lathi.net/articles/2006/03/08/in-the-fishbowl#comment-215</link>
    </item>
    <item>
      <title>"In the Fishbowl" by download free verizon ringtone</title>
      <description>&lt;p&gt;Very intresting how did it happen?&lt;/p&gt;</description>
      <pubDate>Thu, 15 Jun 2006 08:53:13 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:68e09935-232f-4734-a23f-dc2c141ce97d</guid>
      <link>http://blog.lathi.net/articles/2006/03/08/in-the-fishbowl#comment-232</link>
    </item>
    <item>
      <title>"In the Fishbowl" by Ry Walker</title>
      <description>&lt;p&gt;Great summary of the meeting, Doug&amp;#8230; A great session to call my first xp-cinci meeting. So inspired was I that I ended up working on my first rails app until 1:30am last night from the moment I got home&amp;#8212;I guess you can say I &amp;#8220;worked a double shift&amp;#8221; yesterday :)&lt;/p&gt;</description>
      <pubDate>Wed, 08 Mar 2006 12:09:33 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:4fff8cb8-1518-4a05-a667-6028b9790d9f</guid>
      <link>http://blog.lathi.net/articles/2006/03/08/in-the-fishbowl#comment-164</link>
    </item>
  </channel>
</rss>

