<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">

<channel>
	<title>Agilo.us</title>
	
	<link>http://agilo.us</link>
	<description>Trying to remain agile in a BIG design world.</description>
	<lastBuildDate>Fri, 16 Apr 2010 06:03:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Agilous" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="agilous" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Oniguruma and Snow Leopard</title>
		<link>http://agilo.us/2010/04/06/oniguruma-and-snow-leopard/</link>
		<comments>http://agilo.us/2010/04/06/oniguruma-and-snow-leopard/#comments</comments>
		<pubDate>Tue, 06 Apr 2010 15:01:15 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[oniguruma]]></category>
		<category><![CDATA[snow leopard]]></category>

		<guid isPermaLink="false">http://agilo.us/?p=60</guid>
		<description><![CDATA[If only I had better Google_fu this post by Josh Goebel would have saved me a day. The key was remembering that Oniguruma is more than than a Rails gem. So you have to (1) make sure that Oniguruma is installed (I recommend via MacPorts) and then (2) make sure that the gem can find [...]]]></description>
			<content:encoded><![CDATA[<p>If only I had better Google_fu <a href="http://blog.pastie.org/2010/01/oniguruma-on-snow-leopard.html" target="_blank">this post</a> by Josh Goebel would have saved me a day. The key was remembering that <a href="http://www.geocities.jp/kosako3/oniguruma/" target="_blank">Oniguruma</a> is more than than a Rails gem. So you have to (1) make sure that Oniguruma is installed (I recommend via <a href="http://www.macports.org/" target="_blank">MacPorts</a>) and then (2) make sure that the gem can find it. Here&#8217;s what fixed it for me (thanks again to Josh):</p>
<pre>
sudo port install oniguruma5
sudo gem install oniguruma -- --with-opt-dir=/opt/local
</pre>
<p>Profit!</p>
]]></content:encoded>
			<wfw:commentRss>http://agilo.us/2010/04/06/oniguruma-and-snow-leopard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Force SSL in Apache</title>
		<link>http://agilo.us/2010/01/31/force-ssl-in-apache/</link>
		<comments>http://agilo.us/2010/01/31/force-ssl-in-apache/#comments</comments>
		<pubDate>Sun, 31 Jan 2010 06:05:55 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[System Administration]]></category>

		<guid isPermaLink="false">http://agilo.us/?p=58</guid>
		<description><![CDATA[This is nothing Earth shattering but it seems that this has come up quite a bit lately and I wanted a place to keep the information handy. So here it is: If you want to force the use of SSL for a specific site, place this configuration in the .htaccess file in the document root. [...]]]></description>
			<content:encoded><![CDATA[<p>This is nothing Earth shattering but it seems that this has come up quite a bit lately and I wanted a place to keep the information handy. So here it is:</p>
<p>If you want to force the use of SSL for a specific site, place this configuration in the .htaccess file in the document root.</p>
<pre>
&lt;IfModule !mod_rewrite.c&gt;
	LoadModule rewrite_module modules/mod_rewrite.so
&lt;/IfModule&gt;
&lt;IfModule mod_rewrite.c&gt;
	RewriteEngine on
	RewriteCond %{SERVER_PORT} !^443$
	RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
&lt;/IfModule&gt;
</pre>
<p>Care to recommend an alternate solution?</p>
]]></content:encoded>
			<wfw:commentRss>http://agilo.us/2010/01/31/force-ssl-in-apache/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My X is better than your Y – PHP/Ruby Edition, Part XVI</title>
		<link>http://agilo.us/2009/07/12/my-x-is-better-than-your-y-phpruby-edition-part-xvi/</link>
		<comments>http://agilo.us/2009/07/12/my-x-is-better-than-your-y-phpruby-edition-part-xvi/#comments</comments>
		<pubDate>Mon, 13 Jul 2009 02:29:40 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://agilo.us/?p=46</guid>
		<description><![CDATA[This post started as a comment to a recent post on KillerPHP.com entitled, &#8220;What happened to Ruby? And why PHP is KING of the Web.&#8221; The longer my comment became the more I thought I could use a little Google juice myself and why let someone else have all the fun?! A Twitter post by [...]]]></description>
			<content:encoded><![CDATA[<p>This post started as a comment to a recent post on KillerPHP.com entitled, &#8220;<a href="http://www.killerphp.com/articles/what-happened-to-ruby-and-why-php-is-king-of-the-web/" target="_blank">What happened to Ruby? And why PHP is KING of the Web.</a>&#8221; The longer my comment became the more I thought I could use a little Google juice myself and why let someone else have all the fun?!</p>
<p>A <a href="http://twitter.com/CalEvans/status/2596866792" target="_blank">Twitter post</a> by the normally well-reasoned <a href="http://blog.calevans.com/" target="_blank">Cal Evans</a>, Director of the PHP Center for Expertise for <a href="http://www.ibuildings.com/" target="_blank">Ibuildings</a> lead to my discovery of the KillerPHP.com post that seems to be only the latest in a long line of PHP versus Ruby/Rails rants. I can&#8217;t imagine Cal is trolling near as much as it appears the post&#8217;s author, Stefan Mischook, but I digress&#8230;</p>
<p>I have been a PHP developer since 2001 and founded <a href="http://www.oink-pug.org/" target="_blank">OINK-PUG</a> in 2005, a month before I discovered Rails and came to enjoy writing Ruby. I prefer Ruby but cannot escape PHP because there is just so much PHP work out there! I am active in both communities locally and would be remiss not to send a shout out to the folks at <a href="http://agileroundtable.org/" target="_blank">CART</a> and <a href="http://cincinnatirb.com/" target="_blank">CincyRB</a> too.</p>
<p>It has been my experience that there is a vast difference in the two communities of developers. Due to PHP&#8217;s popularity and low barrier of entry, many developers find it very inviting, especially those with little or no experience. Without much intellectual investment you can produce some rather impressive results, especially using products like <a href="http://drupal.org/" target="_blank">Drupal</a> and <a href="http://wordpress.org/" target="_blank">WordPress</a>.</p>
<p>Where Ruby shines is when the job calls for something that falls outside of PHP&#8217;s sweet spot. Personally, I think it does an equally good job in PHP&#8217;s sweet spot but that&#8217;s another post. These more challenging cases require more than parochial knowledge of software development; even seemingly simple concepts like a <a href="http://twitter.com/" target="_blank">Web UI for SMS</a> can benefit from the skills of a craftsman. That&#8217;s where the Ruby community shines and the PHP community falls a bit short.</p>
<p>I suggest that the primary indicator of this is the Ruby community&#8217;s embrace of test driven development (TDD) and its relative absence from the PHP community. I would ask those readers who have inherited someone else&#8217;s code for both PHP and Ruby projects which they&#8217;ve found more maintainable, PHP or Ruby? I always swallow hard when looking at someone else&#8217;s PHP code for the first time whereas I know in a minute whether or not a Ruby/Rails project I&#8217;ve inherited is going to be trouble. I just look in the &#8220;test&#8221; directory in the project&#8217;s root directory or run <a href="http://rake.rubyforge.org/" target="_blank">rake</a>, created by fellow Cincinnati Rubyist, <a href="http://onestepback.org/" target="_blank">Jim Weirich</a> by the way!</p>
<p>TDD is only one example of what differentiates the two communities. I can&#8217;t count the number of PHP projects I have inherited that were clearly devoid of source control management, or even simple code convention. Excluding the never ending &#8220;Spaces vs. Tabs&#8221; debate, I&#8217;ve never encountered either of these problems with &#8220;legacy&#8221; Ruby/Rails code. I invite everyone with more than a couple years experience IN BOTH LANGUAGES to add their thoughts about my claims in the comments below. Everyone else, knock yourselves out. Beat me up. Beat on Stephan. You won&#8217;t, nor should you expect to change either of our opinions.</p>
<p>Yes, Twitter could have been written in PHP, WordPress could have been written in Ruby, and Drupal in Python. If that&#8217;s all you&#8217;ve taken from this post then you&#8217;re not &#8220;getting it&#8221; or more likely, I&#8217;ve poorly stated my argument. Nonetheless, clearly Mischook has a bone to pick with Ruby but I find nothing new in his rant and took the bait anyway. I&#8217;m overjoyed that he loves PHP so much. I did too, until I found something that &#8220;I&#8221; like better. I don&#8217;t feel the need to justify my decision to others, although I think I just did. Anyone (including me) can write bad Ruby code. Some can write beautiful PHP. In fact, some of the brightest people I know still write PHP but I say, let them eat <a href="http://cakephp.org/" target="_blank">CakePHP</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://agilo.us/2009/07/12/my-x-is-better-than-your-y-phpruby-edition-part-xvi/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Git configuration setting causing Fixture::FormatError in Rails</title>
		<link>http://agilo.us/2009/05/15/git-configuration-setting-causing-fixtureformaterror-in-rails/</link>
		<comments>http://agilo.us/2009/05/15/git-configuration-setting-causing-fixtureformaterror-in-rails/#comments</comments>
		<pubDate>Fri, 15 May 2009 19:54:15 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://agilo.us/?p=42</guid>
		<description><![CDATA[I just spent a few hours banging my head on this one but it appears that my local git configuration was the source of a Fixture::FormatError occurring while running tests in Rails. The specific error looked like this: Fixture::FormatError: a YAML error occurred parsing /dev/current/myapp/test/fixtures/blogs.yml. Please note that YAML must be consistently indented using spaces. [...]]]></description>
			<content:encoded><![CDATA[<p>I just spent a few hours banging my head on this one but it appears that my local git configuration was the source of a Fixture::FormatError occurring while running tests in Rails.</p>
<p>The specific error looked like this:</p>
<pre>
Fixture::FormatError: a YAML error occurred parsing /dev/current/myapp/test/fixtures/blogs.yml.
Please note that YAML must be consistently indented using spaces. Tabs are not allowed.
Please have a look at http://www.yaml.org/faq.html
The exact error was:
  ArgumentError: Anonymous modules have no name to be referenced by
</pre>
<p>I have not yet pin pointed (and may never pin point) the exact source of the problem but what appears to have been causing it was my local git configuration (~/.gitconfig) which included the following two lines:</p>
<pre>
[core]
    whitespace = fix,-indent-with-non-tab,trailing-space,cr-at-eol
</pre>
<p>The git config file was passed around during a <a href="http://cincinnatirb.com" target="_blank">Cincinnati Ruby Brigade</a> meeting and, being a git noob, I installed it dutifully.</p>
<p>Anyway, removing those two lines from the .gitconfig file resolved the issue after I moved the existing clone aside and re-cloned the repository. Feel free to provide details in the comments if you&#8217;ve got a clue and/or can shed some light on the exact cause.</p>
]]></content:encoded>
			<wfw:commentRss>http://agilo.us/2009/05/15/git-configuration-setting-causing-fixtureformaterror-in-rails/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Cisco VPN Client ‘Error 51′</title>
		<link>http://agilo.us/2009/04/23/cisco-vpn-client-error-51/</link>
		<comments>http://agilo.us/2009/04/23/cisco-vpn-client-error-51/#comments</comments>
		<pubDate>Thu, 23 Apr 2009 21:16:44 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[Apple]]></category>

		<guid isPermaLink="false">http://agilo.us/?p=36</guid>
		<description><![CDATA[It seems that a lot of folks are experiencing the &#8220;Error 51: Unable to communicate with the VPN subsystem&#8221; issue with Cisco&#8217;s VPN Client in Mac OS X. After much searching when I encountered the same issue, the solution turned out to be quite simple. Download and install the client from MacUpdate. Profit. There is [...]]]></description>
			<content:encoded><![CDATA[<p>It seems that <a href="http://www.google.com/search?client=safari&#038;rls=en-us&#038;q=cisco+vpn+client+error+51" target="_blank">a lot of folks</a> are experiencing the &#8220;Error 51: Unable to communicate with the VPN subsystem&#8221; issue with Cisco&#8217;s VPN Client in Mac OS X. After much searching when I encountered the same issue, the solution turned out to be quite simple.</p>
<ol>
<li>Download and install the client from <a href="ftp://ftp.rrzn.uni-hannover.de//pub/local/vpn/macosx/10.4-10.5/vpnclient-darwin-4.9.01.0100-universal-k9.dmg" target="_blank">MacUpdate</a>.</li>
<li>Profit.</li>
</ol>
<p>There is no annoying middle step.</p>
]]></content:encoded>
			<wfw:commentRss>http://agilo.us/2009/04/23/cisco-vpn-client-error-51/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Apple Key Symbols</title>
		<link>http://agilo.us/2009/03/21/apple-key-symbols/</link>
		<comments>http://agilo.us/2009/03/21/apple-key-symbols/#comments</comments>
		<pubDate>Sat, 21 Mar 2009 22:23:05 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://agilo.us/?p=27</guid>
		<description><![CDATA[I know that I should have these committed to memory by now but I don&#8217;t and I can never find them on the Web. Now I&#8217;ll never loose them! (Those sound like famous last words&#8230;) Symbol Command &#x2325; option &#x2303; control &#x21E7; shift &#x21EA; caps lock &#x2318; command &#x2327; clear &#x232B; delete &#x2326; del (erase [...]]]></description>
			<content:encoded><![CDATA[<p>I know that I should have these committed to memory by now but I don&#8217;t and I can never find them on the Web. Now I&#8217;ll never loose them! (Those sound like famous last words&#8230;)</p>
<div style="float:left">
<table border="1" cellspacing="5" cellpadding="5" summary="Apple Key Symbols">
<tr style="text-align:center">
<th width="125px">Symbol</th>
<th width="125px">Command</th>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x2325;</td>
<td>option</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x2303;</td>
<td>control</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x21E7;</td>
<td>shift</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x21EA;</td>
<td>caps lock</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x2318;</td>
<td>command</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x2327;</td>
<td>clear</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x232B;</td>
<td>delete</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x2326;</td>
<td>del (erase right)</td>
</tr>
</table>
</div>
<div style="float:left">
<table border="1" cellspacing="5" cellpadding="5" summary="More Apple Key Symbols">
<tr style="text-align:center">
<th width="125px">Symbol</th>
<th width="125px">Command</th>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x23CE;</td>
<td>return</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x2305;</td>
<td>enter</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x2196;</td>
<td>home</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x2198;</td>
<td>end</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x21DE;</td>
<td>page up</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x21DF;</td>
<td>page down</td>
</tr>
<tr style="text-align:center">
<td style="font-size:1.5em">&#x21E5;</td>
<td>tab</td>
</tr>
</table>
</div>
]]></content:encoded>
			<wfw:commentRss>http://agilo.us/2009/03/21/apple-key-symbols/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rails on Windows</title>
		<link>http://agilo.us/2009/03/15/rails-on-windows/</link>
		<comments>http://agilo.us/2009/03/15/rails-on-windows/#comments</comments>
		<pubDate>Sun, 15 Mar 2009 07:03:35 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://agilo.us/?p=17</guid>
		<description><![CDATA[During a recent Cincinnati Ruby Brigade meeting a new member who was running Windows would have benefited from a minimalist guide to installing Ruby on Rails on Windows. A few days later I was forced to press my old Windows desktop system into service as an emergency Rails development platform. So I decided to write [...]]]></description>
			<content:encoded><![CDATA[<p>During a recent <a href="http://www.cincinnatirb.org/">Cincinnati Ruby Brigade</a> meeting a new member who was running Windows would have benefited from a minimalist guide to installing Ruby on Rails on Windows. A few days later I was forced to press my old Windows desktop system into service as an emergency Rails development platform. So I decided to write this post.</p>
<p>Thanks to <a href="http://allaboutruby.wordpress.com/2006/01/09/installing-rails-on-windows-step-by-step-tutorial/">All About Ruby</a> for providing a starting point for my research for this post.</p>
<p><b>Nota Bene:</b> These instructions are Windows XP specific. If you&#8217;re using another flavor of Windows <a href="http://www.urbandictionary.com/define.php?term=YMMV">YMMV</a>. Also, all references to software version numbers are current only at the date of this posting.</p>
<h2>Install Ruby</h2>
<ol>
<li><a href="http://rubyinstaller.rubyforge.org/wiki/wiki.pl">Download</a> the <em>One-Click Ruby Installer for Windows</em>.</li>
<li>Run the installer. I unchecked the option to install the SciTE text editor which saved a whopping 1.5MB of storage.</li>
<li>If you so desire, you can verify that the install succeeded by running <em>ruby -v</em> on the command line:</li>
<pre>
C:\><b>ruby -v</b>
ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-mswin32]
</pre>
<li>Update RubyGems by running <em>gem update &#8211;system</em> on the command line:</li>
<pre>
C:\><b>gem update --system</b>
Updating RubyGems...
Attempting remote update of rubygems-update
Successfully update rubygems-update-1.3.1
Updating version of RubyGems to 1.3.1
Installing RubyGems 1.3.1
[...]
RubyGems system software updated
</pre>
<li>Again, verify the install succeeded by running <em>gem -v</em> on the command line:</li>
<pre>
C:\><b>gem -v</b>
1.3.1
</pre>
</ol>
<h2>Install SQLite</h2>
<ol>
<li>From the <em>Precompiled Binaries For Windows</em> section <a href="http://www.sqlite.org/download.html">download</a> the command-line program (sqlite_X_Y_Z.zip) and the SQLite library DLL without the TCL bindings (sqlitedll_X_Y_Z.zip) unless you need the TCL bindings.</li>
<li>Copy the contents of both ZIP files into a directory of your choosing. I chose <em>C:\sqlite</em>. Others have chosen to place them in the <em>bin</em> directory under the base directory chosen during the Ruby installation, typically <em>C:\ruby\bin</em>. I chose a separate directory so that future upgrades of Ruby do not break my SQLite installation.</li>
<li>If you chose a separate directory in the previous step, like <em>C:\sqlite</em>, you will want to add that directory to your PATH environment variable.
<ol type="lower-alpha">
<li>To do so, navigate <b>Windows Explorer</b> until you can see <em>My Computer</em>. Right click the <b>My Computer</b> icon and select <b>Properties</b>. Select the <b>Advanced</b> tab and then the<br />
<b>Environment Variables</b> button.</li>
<li>If you have sufficient privilege, I recommend adding the path to the PATH variable under the <em>System variable</em> section so that SQLite is available to all system users. However, if you do not have sufficient privilege OR are certain that the current user is the only user that will require access to SQLite then you are free to add the path to the PATH variable under the <em>User variables</em> section.</li>
<li>To add the path, select the PATH variable and click the <em>Edit</em> button. Add the appropriate path, in my case <em>C:\sqlite</em>, to either the beginning or end of the existing PATH string then click the <em>OK</em> button.</li>
</ol>
<p><b>WARNING!</b> Be careful that you do not corrupt or delete the existing PATH string.</p>
<li>Install the SQLite gem by running <em>gem install sqlite3-ruby</em> on the command line. Select the <em>mswin32</em> gem when prompted.</li>
<pre>
C:\><b>gem install sqlite3-ruby</b>
Select which gem to install for your platform (i386-mswin32)
 1. sqlite3-ruby 1.2.4 (ruby)
 2. sqlite3-ruby 1.2.3 (x86-mingw32)
 3. sqlite3-ruby 1.2.3 (mswin32)
 4. sqlite3-ruby 1.2.3 (ruby)
 5. Skip this gem
 6. Cancel installation
> <b>3</b>
Successfully installed sqlite3-ruby-1.2.3-mswin32
Installing ri documentation for sqlite3-ruby-1.2.3-mswin32...
Installing RDoc documentation for sqlite3-ruby-1.2.3-mswin32...
</pre>
</ol>
<h2>Install Rails</h2>
<ol>
<li>Install the Rails gem by running <em>gem install rails</em> on the command line:</li>
<pre>
C:\><b>gem install rails</b>
Successfully installed rails-2.2.2
1 gem installed
</pre>
<li>To verify the install run <em>rails -v</em> on the command line:</li>
<pre>
C:\><b>rails -v</b>
Rails 2.2.2
</pre>
</ol>
<h2>Test Everything</h2>
<p>Let&#8217;s mimic the first couple of minutes of the famous <a href="http://media.rubyonrails.org/video/rails_blog_2.mov">Creating a weblog in 15 minutes</a> video to test things out.</p>
<ol>
<li>Change into a directory of your choosing and create a Rails project by running <em>rails blog</em> on the command line:</li>
<pre>
C:\dev><b>rails blog</b>
	create
	create app/controllers
	create app/helpers
	create app/models
	create app/views/layouts
[...]
</pre>
<li>Change into the newly created project directory, verify that the server starts, and that the app appears at <a href="http://localhost:3000">http://localhost:3000</a>:</li>
<pre>
C:\dev\blog><b>ruby script\server</b>
-> Booting WEBrick...
-> Rails 2.2.2 application started on http://localhost:3000
-> Ctrl-C to shutdown server; call with --help for options
[2009-03-14 13:55:45] INFO  WEBrick 1.3.1
[2009-03-14 13:55:45] INFO  ruby 1.8.6 (2007-03-13) [i386-mswin32]
[2009-03-14 13:55:45] INFO  WEBrick::HTTPServer#start pid-192 port-3000
</pre>
<li>Run the scaffold generator script:</li>
<pre>
C:\dev\blog><b>ruby script\generate scaffold Post title:string body:text</b>
	exists app/models
	exists app/controllers
	exists app/helpers
	create app/views/posts
[...]
 dependency model
	exists	app/models/
	exists	test/unit/
	exists	test/fixtures/
	create	app/models/post.rb
	create	test/unit/post_test.rb
	create	test/fixtures/posts.yml
	create	db/migrate
	create	db/migrate/20090315055640_create_posts.rb
</pre>
<li>Run <em>rake db:migrate</em> on the command line:</li>
<pre>
C:\dev\blog><b>rake db:migrate</b>
(in C:\dev\blog)
==  CreatePosts: migrating ======================================================
-- create_table(:posts)
   -> 0.0940s
==  CreatePosts: migrated (0.0940s) =============================================
</pre>
<li>Start the server again and visit <a href="http://localhost:3000/posts">http://localhost:3000/posts</a>, click the <em>New post</em> link, and create a new post.</li>
</ol>
<p>There you have it. Go ahead and finish the rest of the <a href="http://media.rubyonrails.org/video/rails_blog_2.mov">Creating a weblog in 15 minutes</a> video and leave me a comment if you encounter any trouble.</p>
<p><b>Coming Soon!</b> Git on Windows.</p>
]]></content:encoded>
			<wfw:commentRss>http://agilo.us/2009/03/15/rails-on-windows/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
<enclosure url="http://media.rubyonrails.org/video/rails_blog_2.mov" length="49405864" type="video/quicktime" />
		</item>
		<item>
		<title>Trouble dragging Apps between displays in OS X</title>
		<link>http://agilo.us/2008/04/23/trouble-dragging-apps-between-displays-in-os-x/</link>
		<comments>http://agilo.us/2008/04/23/trouble-dragging-apps-between-displays-in-os-x/#comments</comments>
		<pubDate>Wed, 23 Apr 2008 13:56:56 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://agilo.us/2008/04/23/trouble-dragging-apps-between-displays-in-os-x/</guid>
		<description><![CDATA[Imagine my joy when the company owner decided (for reasons that I care not to divulge here) to swap his year old MacBook Pro for my nearly two year old Dell X1! I hadn&#8217;t been using the Dell since I also had a year old MacBook (white) and although I was giving up 20GB of [...]]]></description>
			<content:encoded><![CDATA[<p>Imagine my joy when the company owner decided (for reasons that I care not to divulge here) to swap his year old MacBook Pro for my nearly two year old Dell X1! I hadn&#8217;t been using the Dell since I also had a year old MacBook (white) and although I was giving up 20GB of storage to upgrade from the MB to the MBP I jumped at the offer.</p>
<p>54 minutes after firing up Migration Assistant I was in business and loving the MBP goodness NOTE: I had just upgraded the MBP for the owner from Tiger to Leopard by means of a fresh install. So there wasn&#8217;t a lot of cruft on the drive that needed cleaning up once I deleted his user account.</p>
<p>All was well until I got around to hooking the MBP up to my second display. I am in the habit of using my ViewSonic VX715 for my work screen since it sits above my laptop, and leaving social apps like Adium, NatsuLion, and Skype open on the laptop display. However, I was no longer able to drag Safari, TextMate, etc. to the upper display although I could drag all the social apps there. Bizarre!</p>
<p>I posted this &#8220;annoyance&#8221; on <a href="http://twitter.com/agilous/statuses/795095286">Twitter</a> and then the solution came to me immediately. All my &#8220;work&#8221; apps were too wide to fit the VX715&#8242;s default resolution of 1024X768. DOH! Adjusting the monitor&#8217;s resolution via System preferences freed my apps to move wherever I choose. I am a bit annoyed though that OS X apparently does not permit &#8220;over-sized&#8221; app windows move between displays since it is certainly possible to make an app window wider than any single screen. Nonetheless, mystery solved.</p>
]]></content:encoded>
			<wfw:commentRss>http://agilo.us/2008/04/23/trouble-dragging-apps-between-displays-in-os-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Software Testing</title>
		<link>http://agilo.us/2008/03/19/software-testing/</link>
		<comments>http://agilo.us/2008/03/19/software-testing/#comments</comments>
		<pubDate>Wed, 19 Mar 2008 05:41:41 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://agilo.us/2008/03/19/software-testing/</guid>
		<description><![CDATA[To many of you this information will come as no surprise, but I&#8217;ve searched (perhaps not hard enough) for succinct definitions of the various &#8220;types&#8221; of software development tests and I recently found these which I have paraphrased. Unfortunately, I do not now recall the source from which I derived these notes. If you believe [...]]]></description>
			<content:encoded><![CDATA[<p>To many of you this information will come as no surprise, but I&#8217;ve searched (perhaps not hard enough) for succinct definitions of the various &#8220;types&#8221; of software development tests and I recently found these which I have paraphrased. Unfortunately, I do not now recall the source from which I derived these notes. If you believe you are the original author, please contact me and I will add proper attribution if your information appears familiar.</p>
<p>NOTE: I have ordered the tests (I believe) from most granular to least where such adjectives apply.</p>
<p>Software Testing:</p>
<ul>
<li>Unit &#8211; Do the smallest &ldquo;units&rdquo; of code work?</li>
<li>Functional &#8211; Do the logical groupings of code work?</li>
<li>Integration &#8211; Do the all the functional pieces fit together?</li>
<li>Acceptance &#8211; Does the code do what the customer wants?</li>
<li>Regression &#8211; Does the code still work?</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://agilo.us/2008/03/19/software-testing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How I Learned to Stop Worrying and Love my Mac</title>
		<link>http://agilo.us/2008/03/19/how-i-learned-to-stop-worrying-and-love-my-mac/</link>
		<comments>http://agilo.us/2008/03/19/how-i-learned-to-stop-worrying-and-love-my-mac/#comments</comments>
		<pubDate>Wed, 19 Mar 2008 05:06:35 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://agilo.us/2008/03/19/how-i-learned-to-stop-worrying-and-love-my-mac/</guid>
		<description><![CDATA[As I am want to do, I became involved in an exchange on Twitter with the lovely and talented Cal Evans concerning his thoughts about forsaking his current OS/hardware choice and going Mac instead. While this seemed like a slam dunk to me, one person&#8217;s experience seemed to be giving him pause. With Twitter&#8217;s 140 [...]]]></description>
			<content:encoded><![CDATA[<p>As I am want to do, I became involved in an exchange on <a href="http://twitter.com">Twitter</a> with the lovely and talented <a href="http://blog.calevans.com/">Cal Evans</a> concerning his thoughts about forsaking his current OS/hardware choice and going <a href="http://store.apple.com/">Mac</a> instead. While this seemed like a slam dunk to me, <a href="http://spindrop.us/2008/02/23/why-i-hate-the-apple-store-and-so-can-you/">one person&#8217;s experience</a> seemed to be giving him pause. With Twitter&#8217;s 140 character limit, there was no way for me to do justice to a very positive experience I had with Apple customer service. So, I thought I would recount the story here for posterity.</p>
<p>One of my current employers, <a href="http://www.amphora-research.com/">Amphora Research</a>, purchased me a PowerBook in 2005 which served me faithfully for a couple of years, until the hard drive died. Conditioned as I was to sweat such events by years of Windows and Linux use, I was not looking forward to the road to recovery ahead. I was no &#8220;spring chicken&#8221; and had been religiously backing up the PB using <a href="http://www.shirt-pocket.com/SuperDuper/SuperDuperDescription.html">SuperDuper</a>. Nonetheless, I was apprehensive as I headed to <a href="http://www.apple.com/retail/kenwood/">the local Apple Store</a> to see what the geniuses could do for me. We had purchased Apple Care for the PB. So I was hoping for minimal hassle.</p>
<p>Upon arrival at the Genius Bar, without an appointment (you could still do that in 2007), I was greeted by a very knowledgeable genius (redundant as that may sound) who, after listening to my sad story, asked me to be patient while he checked to see what hardware they had available. As it turned out, all they had was an 80GB drive in stock but my PB came with only a 60GB drive installed. Prepared to be disappointed, I was very pleasantly surprised when the the genius asked if I would mind the extra 20GB of storage. When I asked how much the extra 20GB would cost me I was once more pleasantly surprised when he told me there was no additional cost! He asked me if I had all my data backed up which I assured him I did, and he informed me that he would need to keep the bad drive which was no concern to me. Giving Apple one more chance to disappoint me, I asked when the laptop would be ready to pick-up. &#8220;Give me a half an hour&#8221; he said, and one strawberry smoothie later I was walking out of the Kenwood Towne Centre with a juicy little upgrade but anticipating a day or two of OS and application re-installation.</p>
<p>I recalled the Apple genius telling me restoring the drive would be a snap when I told him I had backed up the drive using SuperDuper. He could not have been more correct. Here is the entire restore process (windows and Linux users may want to turn away at this point!):</p>
<ul>
<li>Attach the SuperDuper back-up volume to the PB.</li>
<li>Reboot the system and hold the Option key down during the restart.</li>
<li>Select the back-up volume as the boot volume.</li>
<li>Launch SuperDuper and copy the contents of the back-up volume to the internal hard drive.</li>
<li>Reboot.</li>
</ul>
<p>No OS re-install. No application re-install. Simply go back to work! It don&#8217;t get no better than this.</p>
<p>Shortly thereafter, my boss bought me a new MacBook which required service six months after its purchase that necessitated a week long stay at a local Apple service provider, <a href="http://www.computerdna.com/">ComputerDNA</a>. What was I going to do without my Mac for a week? Keep on working! I booted a Mac Mini we used for <a href="http://en.wikipedia.org/wiki/Pair_programming">pair programming</a> from the SuperDuper back-up volume and composed and saved documents to the back-up volume as if it were the internal drive. Once my MB was returned, I restored the back-up copy to the internal drive of MB and all my new work was there waiting for me. There were no hardware issues booting the back-up created on my MacBook on the Mini, or booting the back-up updated on the Mini and restored to the MacBook.</p>
<p>I&#8217;ve been using Macs for ten years and as my OS of choice for four years now. When I &#8220;need&#8221; Windows or Linux I fire up <a href="http://www.vmware.com/mac">VMware Fusion</a> but I&#8217;m always relieved to return to OS X. When was the last time you were pleasantly surprised by your operating system?</p>
<p>PS: Just so you don&#8217;t think I&#8217;m too much of an Apple/OS X fanboy, FileVault SUCKS!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://agilo.us/2008/03/19/how-i-learned-to-stop-worrying-and-love-my-mac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

