<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>Aeonscope &#187; Software</title>
	<atom:link href="http://www.aeonscope.net/category/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.aeonscope.net</link>
	<description>A view of time.</description>
	<pubDate>Sun, 29 Aug 2010 13:56:44 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Heroku Plus 1.1.0</title>
		<link>http://www.aeonscope.net/2010/08/23/heroku-plus-110/</link>
		<comments>http://www.aeonscope.net/2010/08/23/heroku-plus-110/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 12:00:47 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3536</guid>
		<description><![CDATA[
A new version of the Heroku Plus Ruby Gem has been released. Here are the changes:

Improved error messaging for files that do not exist.
Clarified the difference between the error messages displayed when switching SSH identities versus switching Heroku account credentials.
Clarified source and README documentation.
Renamed the -a option to -i (i.e. info) instead.
Added printing of SSH [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/ruby.png" alt="Ruby"/></center></p>
<p>A new version of the <a href="http://github.com/aeonscope/heroku_plus">Heroku Plus</a> Ruby Gem has been released. Here are the changes:</p>
<ul>
<li>Improved error messaging for files that do not exist.</li>
<li>Clarified the difference between the error messages displayed when switching SSH identities versus switching Heroku account credentials.</li>
<li>Clarified source and README documentation.</li>
<li>Renamed the -a option to -i (i.e. info) instead.</li>
<li>Added printing of SSH private and public identity paths (to further clarify what is being used) when using the the -i option.</li>
<li>Prominently display the current account when displaying all account information via the -i option.</li>
<li>Added the -b option so one can easily backup an existing Heroku credentials and SSH identity.</li>
<li>Added the -d option so one can easily destroy an existing Heroku account (i.e. credentials and SSH identity)</li>
<li>Added the -l option so one can easily list all existing Heroku accounts.</li>
<li>Removed the ability to configure the Heroku credentials file name via the settings.yml since you can’t configure this via the Heroku gem anyway.</li>
</ul>
<p>Check out the <a href="http://github.com/aeonscope/heroku_plus">README</a> for more information.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/08/23/heroku-plus-110/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Heroku Plus 1.0.0</title>
		<link>http://www.aeonscope.net/2010/08/16/heroku-plus-100/</link>
		<comments>http://www.aeonscope.net/2010/08/16/heroku-plus-100/#comments</comments>
		<pubDate>Mon, 16 Aug 2010 12:10:04 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3507</guid>
		<description><![CDATA[
I&#8217;ve just released the first version of the Heroku Plus Ruby Gem. This allows for much easier management of multiple Heroku accounts which was first explained here. Now, with a single command line, you&#8217;ll be able to switch accounts as follows:
herokup -s example
Which then yields the following output:
Switching Heroku credentials to "example" account...
Switching Heroku SSH [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/ruby.png" alt="Ruby"/></center></p>
<p>I&#8217;ve just released the first version of the <a href="http://github.com/aeonscope/heroku_plus">Heroku Plus</a> Ruby Gem. This allows for much easier management of multiple Heroku accounts which was <a href="http://www.aeonscope.net/2010/02/22/managing-multiple-heroku-accounts/">first explained here</a>. Now, with a single command line, you&#8217;ll be able to switch accounts as follows:</p>
<p><code>herokup -s example</code></p>
<p>Which then yields the following output:</p>
<p><code>Switching Heroku credentials to "example" account...</p>
<p>Switching Heroku SSH identity to "example" account...</p>
<p>Current Heroku account is:</p>
<p>Account:         master@example.com<br />
Password:        *********************<br />
Source (Heroku): /Users/tester/.heroku/credentials<br />
Source (SSH):    /Users/tester/.ssh/id_rsa</code></p>
<p>Check out the <a href="http://github.com/aeonscope/heroku_plus">README</a> for more information.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/08/16/heroku-plus-100/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mac OS Setup 1.1.0</title>
		<link>http://www.aeonscope.net/2010/08/03/mac-os-setup-110/</link>
		<comments>http://www.aeonscope.net/2010/08/03/mac-os-setup-110/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 12:04:05 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Mac OS]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3423</guid>
		<description><![CDATA[I&#8217;ve just released Version 1.1.0 of the Mac OS Setup project on GitHub. Here are the highlights:

Added Bash prompt customization.
Added more Bash aliases for Git.
Added Bash aliases for Heroku.
Added Bash aliases for Ruby on Rails (including support for Rails 2.x and 3.x).
Added Bash aliases for RSpec.
Added a Bash alias for generating Railroad model diagrams.
Added default [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just released Version 1.1.0 of the <a href="http://github.com/aeonscope/macos_setup">Mac OS Setup</a> project on GitHub. Here are the highlights:</p>
<ul>
<li>Added Bash prompt customization.</li>
<li>Added more Bash aliases for Git.</li>
<li>Added Bash aliases for Heroku.</li>
<li>Added Bash aliases for Ruby on Rails (including support for Rails 2.x and 3.x).</li>
<li>Added Bash aliases for RSpec.</li>
<li>Added a Bash alias for generating Railroad model diagrams.</li>
<li>Added default terminal colors.</li>
<li>Added better Git syntax coloring.</li>
<li>Added Awesome Print to the irbrc file.</li>
</ul>
<p>Check the <a href="http://github.com/aeonscope/macos_setup/blob/master/CHANGELOG.rdoc">CHANGELOG</a> for further details.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/08/03/mac-os-setup-110/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Rails Setup Template 1.1.0</title>
		<link>http://www.aeonscope.net/2010/08/02/rails-setup-template-110/</link>
		<comments>http://www.aeonscope.net/2010/08/02/rails-setup-template-110/#comments</comments>
		<pubDate>Mon, 02 Aug 2010 12:13:37 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3407</guid>
		<description><![CDATA[
I have released Version 1.1.0 of my Rails Setup Template. This time with more CSS3 goodness. Here are the highlights of this version release:

Added the LESS gem requirement.
Added the More plugin.
Added the Rails Indexes plugin.
Added the Formtastic gem requirement.
Added the Bullet gem requirement.
Added the Deadweight gem requirement.
Removed the AndAnd gem requirement.
Added Git setup and initialization.
Removed [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/rails.png" alt="Ruby on Rails"/></center></p>
<p>I have released Version 1.1.0 of my <a href="http://github.com/aeonscope/rails_setup_template">Rails Setup Template</a>. This time with more CSS3 goodness. Here are the highlights of this version release:</p>
<ul>
<li>Added the LESS gem requirement.</li>
<li>Added the More plugin.</li>
<li>Added the Rails Indexes plugin.</li>
<li>Added the Formtastic gem requirement.</li>
<li>Added the Bullet gem requirement.</li>
<li>Added the Deadweight gem requirement.</li>
<li>Removed the AndAnd gem requirement.</li>
<li>Added Git setup and initialization.</li>
<li>Removed the visitor namespace.</li>
<li>Added the Underscore JavaScript library.</li>
<li>Upgraded to jQuery 1.4.2.</li>
<li>Upgraded to jQuery UI 1.8.2.</li>
<li>Updated the db:reseed rake task so that it also rebuilds the models diagrams.</li>
<li>Added a rake task for printing database and database table sizes.</li>
<li>Added a rake task for Heroku deployments.</li>
<li>Added a rake task for Deadweight.</li>
<li>Upgraded to Blueprint 0.9.1.</li>
<li>Added Phusion Passenger debug support (see passenger.rake).</li>
<li>Updated all gem definitions due to rubygems.org changes.</li>
</ul>
<p>Check the <a href="http://github.com/aeonscope/rails_setup_template/blob/master/CHANGELOG.rdoc">CHANGELOG</a> for further details and, remember, it only takes one command line:</p>
<p><code>rails demo -m http://github.com/aeonscope/rails_setup_template/raw/v1.1.0/template.rb</code></p>
<p>&#8230;to get the following perfectly running Ruby on Rails app for Firefox, Chrome, Safari, Opera, and IE:</p>
<p><a href="http://www.aeonscope.net/wp-content/uploads/2010/08/demo.png" rel='lytebox[rails-setup-template-110]'><img src="http://www.aeonscope.net/wp-content/uploads/2010/08/demo-300x131.png" alt="Demo Screenshot" title="Demo Screenshot" width="300" height="131" class="aligncenter size-medium wp-image-3413" /></a><br />
(click to view)</p>
<p>It doesn&#8217;t get any easier than that. Even you&#8217;re grandma will shed a tear of joy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/08/02/rails-setup-template-110/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Resourcer 0.3.0</title>
		<link>http://www.aeonscope.net/2010/07/19/resourcer-030/</link>
		<comments>http://www.aeonscope.net/2010/07/19/resourcer-030/#comments</comments>
		<pubDate>Mon, 19 Jul 2010 12:33:15 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3395</guid>
		<description><![CDATA[
I&#8217;ve just released version 0.3.0 of the Resourcer Ruby Gem. Here are the changes:

Added the csrf_meta_tag helper which provides Rails 3 support for Rails 2 apps.
Moved jQuery AJAX setup to the jquery.rest.js file.
Removed the JavaScripts controller and related views (use jquery.rest.js instead, everything happens there now).

To upgrade to v0.3.0 from previous versions, perform the following [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/ruby.png" alt="Ruby"/></center></p>
<p>I&#8217;ve just released version 0.3.0 of the <a href="http://github.com/aeonscope/resourcer">Resourcer</a> Ruby Gem. Here are the changes:</p>
<ul>
<li>Added the csrf_meta_tag helper which provides Rails 3 support for Rails 2 apps.</li>
<li>Moved jQuery AJAX setup to the jquery.rest.js file.</li>
<li>Removed the JavaScripts controller and related views (use jquery.rest.js instead, everything happens there now).</li>
</ul>
<p>To upgrade to v0.3.0 from previous versions, perform the following steps:</p>
<ol>
<li>Delete the <code>app/controllers/javascripts_controller.rb</code> file.</li>
<li>Delete the <code>app/views/javascripts</code> directory (especially the <code>ujs.js.erb</code> file found within).</li>
<li>Remove the <code>&lt;%= javascript_include_tag "ujs" %&gt;</code> from your <code>app/views/layouts/application.html.erb</code> layout file.</li>
<li>Add the <code>&lt;%= csrf_meta_tag %&gt;</code> line to your <code>app/views/layouts/application.html.erb</code> layout file.</li>
<li>Rerun the setup generator: <code>script/generate resourcer_setup</code>.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/07/19/resourcer-030/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Reeder</title>
		<link>http://www.aeonscope.net/2010/06/29/reeder/</link>
		<comments>http://www.aeonscope.net/2010/06/29/reeder/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 03:40:55 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3238</guid>
		<description><![CDATA[
Introduction
I&#8217;ve been looking for a great syndicated feed reader for my iPhone for whats seems like ages and I finally found one: Reeder. I stumbled upon this while reading iPad Opinions as, yes, there is an iPad version as well. After reading Ken&#8217;s review, checking out the Reeder screenshots, and noticing the Google Reader synchronization [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://reederapp.com/2/"><img src="http://www.aeonscope.net/wp-content/uploads/2010/06/reeder-icon.png" alt="Reeder Icon" title="Reeder Icon" width="66" height="82" class="aligncenter size-full wp-image-3241" /></a></p>
<p><strong>Introduction</strong></p>
<p>I&#8217;ve been looking for a great syndicated feed reader for my iPhone for whats seems like ages and I finally found one: <a href="http://reederapp.com/2/">Reeder</a>. I stumbled upon this while reading <a href="http://www.ipadopinions.ca/2010/06/14/ipad-reeder-review/">iPad Opinions</a> as, yes, there is an iPad version as well. After reading Ken&#8217;s review, checking out the Reeder screenshots, and noticing the <a href="http://reader.google.com">Google Reader</a> synchronization support, I immediately spent the $2.99 for the app and have been happy ever since. Besides, <a href="http://www.omnigroup.com/products/omnifocus_for_iphone/">OmniFocus for the iPhone</a>, Reeder is my second favorite app on the iPhone. In fact, I enjoy the app so much that I actually find my reading habits have changed to where I prefer to read the news via Reeder on the iPhone rather than via a desktop client. Its that good!</p>
<p><strong>Screenshots</strong></p>
<p><img src="http://www.aeonscope.net/wp-content/uploads/2010/06/reeder-starred.png" alt="Reeder (Starred)" title="Reeder (Starred)" width="320" height="480" class="aligncenter size-full wp-image-3242" /></p>
<p>This is the main or initial page of all items you have stared for reading later, etc. Clicking on &#8220;Starred&#8221; gives you a list of all starred items in all folders. Otherwise you can click on a folder in particular to read specific starred items. The circular arrow icon (lower right) is for manual syncing with Google Reader. This isn&#8217;t a bad habit to get into, once you have finished reading your feeds, to ensure Google Reeder stays in sync.</p>
<p><img src="http://www.aeonscope.net/wp-content/uploads/2010/06/reader-unread.png" alt="Reeder (Unread)" title="Reeder (Unread)" width="320" height="480" class="aligncenter size-full wp-image-3239" /></p>
<p>This is the second page of unread items only. As with the first page, click &#8220;Unread&#8221; to read all or delve in each folder for specifics.</p>
<p><img src="http://www.aeonscope.net/wp-content/uploads/2010/06/reeder-folders.png" alt="Reeder (Folders)" title="Reeder (Folders)" width="320" height="480" class="aligncenter size-full wp-image-3240" /></p>
<p>This is the third page of just your folders, notes, etc. Well, this is out I organize/categorize my feeds at least.</p>
<p><img src="http://www.aeonscope.net/wp-content/uploads/2010/06/reeder-unread-development.png" alt="Reeder (Unread in Development)" title="Reeder (Unread in Development)" width="320" height="480" class="aligncenter size-full wp-image-3243" /></p>
<p>This last screen is of a few unread items within my &#8220;Development&#8221; folder. You can tap on each headline to read in detail.</p>
<p><strong>Design</strong></p>
<p>The design, as Ken mentions in his article is very spartan. I would argue that controls are not the most intuitive but you only need to stumble a few times before you&#8217;re off running.</p>
<p><strong>Synchronization</strong></p>
<p>The synchronization with Google Reader is really, really good. I&#8217;ve not seen synchronization work so well for a feed reader. Then again, I&#8217;ve really only used NetNewsWire (both desktop and iPhone app) which are somewhat pathetic. In fact, NetNewsWire for the iPhone is downright awful. Then again, the app is free. Perhaps that is why.</p>
<p><strong>Workflow</strong></p>
<p>As mentioned earlier, my work flow has really changed. I used to read my feeds morning, noon, and night via the desktop (and still do for the most part) but the sheer convenience of being able to read my feeds while on the balcony, traveling, eating lunch, in bed, etc. is a lot of fun. If I need desktop access for downloads, video feeds, etc. I can star those news articles for later reading and quickly move on to next unread items.</p>
<p><strong>Final Thoughts</strong></p>
<p>If you enjoy your feeds, love being mobile, and appreciate really good synchronization, then buy this app!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/06/29/reeder/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Resourcer 0.2.4</title>
		<link>http://www.aeonscope.net/2010/06/07/resourcer-024/</link>
		<comments>http://www.aeonscope.net/2010/06/07/resourcer-024/#comments</comments>
		<pubDate>Tue, 08 Jun 2010 00:25:00 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3160</guid>
		<description><![CDATA[
I&#8217;ve just released version 0.2.4 of the Resourcer Ruby Gem. Here are the changes:

Upgraded requirements to Ruby 1.8.7.
Upgraded requirements to Rails 2.3.8.
Fixed an issue where the &#8220;_delete&#8221; attribute is now &#8220;_destroy&#8221; with Rails 2.3.8 nested attributes.
Added the ability to clone hidden nested form attributes via the data-clone attribute. The default is false.

If you wish to [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/ruby.png" alt="Ruby"/></center></p>
<p>I&#8217;ve just released version 0.2.4 of the <a href="http://github.com/aeonscope/resourcer">Resourcer</a> Ruby Gem. Here are the changes:</p>
<ul>
<li>Upgraded requirements to Ruby 1.8.7.</li>
<li>Upgraded requirements to Rails 2.3.8.</li>
<li>Fixed an issue where the &#8220;_delete&#8221; attribute is now &#8220;_destroy&#8221; with Rails 2.3.8 nested attributes.</li>
<li>Added the ability to clone hidden nested form attributes via the data-clone attribute. The default is false.</li>
</ul>
<p>If you wish to use Resourcer with an earlier version of Rails then stick with Version 0.2.3 or earlier. In fact, you don&#8217;t necessarily need to upgrade to this gem but only need to update your jquery.rest.js file (either way, it is the jquery.rest.js file you want to update in your projects).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/06/07/resourcer-024/feed/</wfw:commentRss>
		</item>
		<item>
		<title>jQuery Check All Bookmarklet</title>
		<link>http://www.aeonscope.net/2010/05/25/jquery-check-all-bookmarklet/</link>
		<comments>http://www.aeonscope.net/2010/05/25/jquery-check-all-bookmarklet/#comments</comments>
		<pubDate>Wed, 26 May 2010 02:34:52 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Bookmarklet]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3142</guid>
		<description><![CDATA[A while back I wrote a post (of the same name but now deleted) about a simple jQuery check all bookmarklet I created for quickly checking off all check boxes on a web page. Only problem is, in my original design, I required you to load jQuery via another bookmarklet in addition to my bookmarklet. [...]]]></description>
			<content:encoded><![CDATA[<p>A while back I wrote a post (of the same name but now deleted) about a simple jQuery check all bookmarklet I created for quickly checking off all check boxes on a web page. Only problem is, in my original design, I required you to load jQuery via another bookmarklet in addition to my bookmarklet. Recently, while reading <a href="http://www.smashingmagazine.com">Smashing Magazine</a>, I came across a better solution where jQuery is optionally and intelligently loaded prior to executing my custom code (see <a href=" http://www.smashingmagazine.com/2010/05/23/make-your-own-bookmarklets-with-jquery/">Make Your Own Bookmarklets with jQuery</a> for more info). The result can be found below:</p>
<ul>
<li><a href="javascript:(function(){if(typeof%20jQuery=='undefined'){var%20jQ=document.createElement('script');jQ.type='text/javascript';jQ.onload=checkAll;jQ.src='http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js';document.body.appendChild(jQ);}else{checkAll();}%20function%20checkAll(){jQuery(':checkbox').attr('checked',true);return%20false;}})();">jQuery Check All Bookmarklet</a> (right click to save as a bookmark then click the bookmark to use)</li>
</ul>
<p>In my case, <a href="http://www.aeonscope.net/2007/10/18/bookmarklets/">I keep all my bookmarklets within a single folder</a> which are easily accessible from my Firefox bookmarks toolbar. So having this capability within one click is highly useful.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/05/25/jquery-check-all-bookmarklet/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mac OS X Applications</title>
		<link>http://www.aeonscope.net/2010/05/02/mac-os-x-applications/</link>
		<comments>http://www.aeonscope.net/2010/05/02/mac-os-x-applications/#comments</comments>
		<pubDate>Sun, 02 May 2010 19:32:21 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Mac OS]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3059</guid>
		<description><![CDATA[The following is a breakdown of apps I commonly use and their install order (from a fresh install of the MacOS):

MacOS 10.6.0 (Snow Leopard Disk) - Insert the DVD, click Install MacOSX, click the Utilities button, and click the Restart button. You&#8217;ll be booted into the Snow Leopard install at which point you&#8217;ll want to [...]]]></description>
			<content:encoded><![CDATA[<p>The following is a breakdown of apps I commonly use and their install order (from a fresh install of the MacOS):</p>
<ol>
<li>MacOS 10.6.0 (Snow Leopard Disk) - Insert the DVD, click <em>Install MacOSX</em>, click the <em>Utilities</em> button, and click the <em>Restart</em> button. You&#8217;ll be booted into the Snow Leopard install at which point you&#8217;ll want to launch Disk Utility and format your hard drive (MacOS Extended (Journaled)). After you have wiped your hard drive, exit Disk Utility, and continue on with the Snow Leopard install.</li>
<li>XCode Tools (Snow Leopard Disk)</li>
<li>MacOS X 10.6.x Combo Patch (download)</li>
<li><a href="http://www.apple.com/ilife/iphoto/">iPhoto</a> (download)</li>
<li><a href="http://www.apple.com/ilife/garageband/">GarageBand</a> (download)</li>
<li><a href="http://www.apple.com/ilife/imovie/">iMovie</a> (download)</li>
<li><a href="http://www.apple.com/ilife/idvd/">iDVD</a> (download)</li>
<li><a href="http://cocoatech.com/">PathFinder</a> (download)</li>
<li><a href="http://www.omnigroup.com/applications/omnifocus/">OmniFocus</a> (download)</li>
<li><a href="http://www.omnigroup.com/applications/omnioutliner/">OmniOutliner</a> (download)</li>
<li><a href="http://www.omnigroup.com/applications/omnigraffle/">OmniGraffle</a> (download)</li>
<li><a href="http://www.mozilla.com/en-US/firefox/">Firefox</a> (download)</li>
<li><a href="http://www.google.com/chrome">Google Chrome</a> (download)</li>
<li><a href="http://www.opera.com">Opera</a> (download)</li>
<li><a href="http://magnetk.com/expandrive">ExpanDrive</a> (download)</li>
<li><a href="http://www.newsgator.com/individuals/netnewswire/">NetNewsWire</a> (download)</li>
<li><a href="http://agilewebsolutions.com/products/1Password">1Password</a> (download)</li>
<li><a href="http://skitch.com">Skitch</a> (download)</li>
<li><a href="http://www.videolan.org/vlc/">VLC</a> (download)</li>
<li><a href="http://lightheadsw.com/caffeine/">Caffeine</a> (download)</li>
<li><a href="http://www.coconut-flavour.com/coconutbattery/">Coconut Battery</a> (download)</li>
<li><a href="http://bjango.com/apps/istatmenus/">iStat Menus</a> (download)</li>
<li><a href="http://growl.info/">Growl</a> (download)</li>
<li><a href="http://macromates.com/">TextMate</a> (download)</li>
<li><a href="http://macrabbit.com/cssedit">CSSEdit</a> (download)</li>
<li><a href="http://www.vmware.com/products/fusion/">VMWare Fusion</a> (download)</li>
<li><a href="http://www.billingsapp.com/index.html">Billings</a> (download)</li>
<li><a href="http://nothirst.com/moneywell/">MoneyWell</a> (download)</li>
<li><a href="http://www.delicious-monster.com/">Delicious Library</a> (download)</li>
<li><a href="http://www.openoffice.org/">OpenOffice</a> (download)</li>
<li><a href="http://www.skype.com/">Skype</a> (download)</li>
<li><a href="http://www.atebits.com/tweetie-mac/">Tweetie</a> (download)</li>
<li><a href="http://www.apple.com/downloads/dashboard/reference/loremipsumwidget.html">Lorem Ipsum</a> widget (download)</li>
<li><a href="http://www.logitech.com/index.cfm/440/374&#038;cl=us,en">Logitech Harmony 890</a> remote software (download)</li>
<li><a href="http://thelittleappfactory.com/ripit/">RipIt</a> (download)</li>
<li><a href="http://www5e.biglobe.ne.jp/~arcana/StartupSound/BETA/index.en.html">Startup Sound</a> (download)</li>
<li><a href="http://www.grapefruit.ch/iBackup/index.html">iBackup</a> (download)</li>
<li><a href="https://www.dropbox.com">Dropbox</a> (download)</li>
<li>Software Updates (via the Apple icon - requires a reboot)</li>
</ol>
<p><strong>Configurations</strong></p>
<p>After installing the applications, you might need to configure some of them. Here are some notes:</p>
<ol>
<li>Configure printer.</li>
<li>Configure scanner.</li>
<li><a href="http://www.aeonscope.net/2010/05/02/mac-os-x-spaces/">Configure Spaces</a>.</li>
<li><a href="http://www.aeonscope.net/software/applications/firefox/">Install Firefox extensions</a>.</li>
<li><a href="http://www.aeonscope.net/2010/05/02/mac-os-x-ruby-environment/">Set up the Ruby development environment</a>.</li>
</ol>
<p><strong>Notes</strong></p>
<p>You can learn more about some of these apps on my <a href="http://www.aeonscope.net/software/applications/">Applications</a> page.  Also, since I&#8217;m one of those who likes organization, I wrote a post on <a href="http://www.aeonscope.net/2006/08/26/data-management/">data management</a> a while back that sheds further light on how I manage my apps and the data related to them in case it is of interest (Note:  even though the post was originally written for Windows some of the concepts still apply for the MacOS).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/05/02/mac-os-x-applications/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mac OS X Ruby Environment</title>
		<link>http://www.aeonscope.net/2010/05/02/mac-os-x-ruby-environment/</link>
		<comments>http://www.aeonscope.net/2010/05/02/mac-os-x-ruby-environment/#comments</comments>
		<pubDate>Sun, 02 May 2010 19:29:39 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Mac OS]]></category>

		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3061</guid>
		<description><![CDATA[
For those wanting to set up a proper Ruby and Ruby on Rails development environment for your Mac OS, I&#8217;ve created an OmniOutliner outline that might be of help:

MacOS Ruby Development Setup 1.3.0

When making the outline, I pulled heavily from the following articles (also found on my MacOS page) with a few modification here and [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/ruby.png" alt="Ruby"/></center></p>
<p>For those wanting to set up a proper <a href="http://www.ruby-lang.org/en/">Ruby</a> and <a href="http://rubyonrails.org/">Ruby on Rails</a> development environment for your Mac OS, I&#8217;ve created an <a href="http://www.omnigroup.com/applications/omnioutliner/">OmniOutliner</a> outline that might be of help:</p>
<ul>
<li><a href="http://www.aeonscope.net/dev/ruby/setup/ruby_development_setup-1.3.0.zip">MacOS Ruby Development Setup 1.3.0</a></li>
</ul>
<p>When making the outline, I pulled heavily from the following articles (also found on my <a href="http://www.aeonscope.net/software/operating-systems/mac/">MacOS</a> page) with a few modification here and there:</p>
<ul>
<li><a href="http://afreshcup.com/2009/09/02/migrating-to-snow-leopard-for-rails-development-a-definitive-guide/">A definitive upgrade guide</a></li>
<li><a href="http://weblog.rubyonrails.org/2009/8/30/upgrading-to-snow-leopard">Upgrade notes on developer tools</a></li>
<li><a href="http://afreshcup.com/2009/08/31/double-shot-529/">A bunch of notes on getting your developer tools up and running without too much trouble</a></li>
<li><a href="http://jaredonline.posterous.com/got-mysql-to-work-with-rails-in-mac-os-106-sn">How to get MySQL working</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/05/02/mac-os-x-ruby-environment/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mac OS X Spaces</title>
		<link>http://www.aeonscope.net/2010/05/02/mac-os-x-spaces/</link>
		<comments>http://www.aeonscope.net/2010/05/02/mac-os-x-spaces/#comments</comments>
		<pubDate>Sun, 02 May 2010 17:21:39 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Mac OS]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=3050</guid>
		<description><![CDATA[Introduction
The Spaces feature is a heavily used aspect of my setup. It allows me to group similar applications together within each space (a.k.a. desktop).
Configuration
Here is my configuration:

What might not be clear from the screenshot above is the complete picture of what I am loading in each space. Here is a more verbose breakdown of each [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Introduction</strong></p>
<p>The <a href="http://www.apple.com/macosx/what-is-macosx/apps-and-utilities.html#spaces">Spaces</a> feature is a heavily used aspect of my setup. It allows me to group similar applications together within each space (a.k.a. desktop).</p>
<p><strong>Configuration</strong></p>
<p>Here is my configuration:</p>
<p><a href="http://www.aeonscope.net/wp-content/uploads/2010/05/macos-spaces-preferences.png" rel="lytebox[preferences]"><img src="http://www.aeonscope.net/wp-content/uploads/2010/05/macos-spaces-preferences-300x295.png" alt="MacOS X Spaces Preferences" title="MacOS X Spaces Preferences" width="300" height="295" class="aligncenter size-medium wp-image-3051" /></a></p>
<p>What might not be clear from the screenshot above is the complete picture of what I am loading in each space. Here is a more verbose breakdown of each of my spaces:</p>
<ol>
<li>Navigation (PathFinder/Terminal)</li>
<li>Chat (Skype/Tweetie)</li>
<li>Email (Apple Mail)</li>
<li>Syndication (NetNewsWire)</li>
<li>Web (Firefox/Safari/Chrome/Opera)</li>
<li>Planning (iCal, Address Book)</li>
<li>Organization (OmniFocus)</li>
<li>Design (OmniGraffle)</li>
<li>Notes (OmniOutliner)</li>
<li>Documentation (OpenOffice/Preview/Digital Books)</li>
<li>Development (TextMate)</li>
<li>Virtualization (VMFusion)</li>
<li>Finance (MoneyWell/Billings)</li>
<li>Security (1Password)</li>
<li>Media (iTunes, iPhone, GarageBand, iMovie, iDVD)</li>
<li>Miscellaneous</li>
</ol>
<p><strong>Example</strong></p>
<p><a href="http://www.aeonscope.net/wp-content/uploads/2010/05/macos-spaces.png" rel="lytebox[example]"><img src="http://www.aeonscope.net/wp-content/uploads/2010/05/macos-spaces-300x187.png" alt="MacOS Spaces" title="MacOS Spaces" width="300" height="187" class="aligncenter size-medium wp-image-3052" /></a></p>
<p><strong>Notes</strong></p>
<p>What I really like about each space is that all application related events are captured in the space that the application is running in.  It is rather handy to have my chat windows, e-mail, etcs all within their own space without being cluttered upon other applications.  I also like that I can easily switch between application using the APPLE+TAB key combo.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/05/02/mac-os-x-spaces/feed/</wfw:commentRss>
		</item>
		<item>
		<title>My Ruby Gems</title>
		<link>http://www.aeonscope.net/2010/03/25/my-ruby-gems/</link>
		<comments>http://www.aeonscope.net/2010/03/25/my-ruby-gems/#comments</comments>
		<pubDate>Fri, 26 Mar 2010 03:50:32 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=2999</guid>
		<description><![CDATA[
I finally had a moment to come up for air and move all my gems to Ruby Gems. Woot! You can read more about them here:

Resourcer 0.1.0
Commenter 0.1.0
Number to Function 1.0.2
Enhanced Select 1.0.1

I&#8217;ll post more news as I update these gems further (especially the Resourcer gem as there are some cool Rails 3.0 upgrades I [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/ruby.png" alt="Ruby"/></center></p>
<p>I finally had a moment to come up for air and move all my gems to <a href="http://rubygems.org">Ruby Gems</a>. Woot! You can read more about them here:</p>
<ul>
<li><a href="http://rubygems.org/gems/resourcer">Resourcer 0.1.0</a></li>
<li><a href="http://rubygems.org/gems/commenter">Commenter 0.1.0</a></li>
<li><a href="http://rubygems.org/gems/number_to_fraction">Number to Function 1.0.2</a></li>
<li><a href="http://rubygems.org/gems/enhanced_select">Enhanced Select 1.0.1</a></li>
</ul>
<p>I&#8217;ll post more news as I update these gems further (especially the Resourcer gem as there are some cool Rails 3.0 upgrades I have yet to make to this gem).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/03/25/my-ruby-gems/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Gearing up for Rails 3.0</title>
		<link>http://www.aeonscope.net/2010/02/08/gearing-up-for-rails-30/</link>
		<comments>http://www.aeonscope.net/2010/02/08/gearing-up-for-rails-30/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 13:08:39 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=2815</guid>
		<description><![CDATA[
As full release of Ruby on Rails 3.0 draws near, I find myself collecting news, articles, and preparing myself for the transition. Here is what I&#8217;ve been reading so far:

Reading material.
Introduction.
Approaching the upgrade.
Getting up to speed.
Upgrading to Rails 3.
Automating a portion of the Rails 3 upgrade process with the rails-upgrade gem.
Revamped Routes.
Render Options.
Active Record Query [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/rails.png" alt="Ruby on Rails"/></center></p>
<p>As full release of Ruby on Rails 3.0 draws near, I find myself collecting news, articles, and preparing myself for the transition. Here is what I&#8217;ve been reading so far:</p>
<ul>
<li><a href="http://mediumexposure.com/rails-3-reading-material/?utm_source=feedburner&#038;utm_medium=feed&#038;utm_campaign=Feed%3A+mediumexposure+%28mediumexposure%29">Reading material</a>.</li>
<li><a href="http://omgbloglol.com/post/344792822/the-path-to-rails-3-introduction">Introduction</a>.</li>
<li><a href="http://omgbloglol.com/post/353978923/the-path-to-rails-3-approaching-the-upgrade">Approaching the upgrade</a>.</li>
<li><a href="http://darwinweb.net/articles/82">Getting up to speed</a>.</li>
<li><a href="http://rails3.community-tracker.com/permalinks/5/notes-from-the-field-upgrading-to-rails-3">Upgrading to Rails 3</a>.</li>
<li><a href="http://omgbloglol.com/post/359147788/rails-upgrade-automating-a-portion-of-the-rails-3">Automating a portion of the Rails 3 upgrade process with the rails-upgrade gem</a>.</li>
<li><a href="http://rizwanreza.com/2009/12/20/revamped-routes-in-rails-3">Revamped Routes</a>.</li>
<li><a href="http://www.engineyard.com/blog/2010/render-options-in-rails-3/">Render Options</a>.</li>
<li><a href="http://m.onkey.org/2010/1/22/active-record-query-interface">Active Record Query Interface</a>.</li>
<li><a href="http://lindsaar.net/2010/1/26/new-actionmailer-api-in-rails-3">Understanding the ActionMailer API</a>.</li>
<li><a href="http://yehudakatz.com/2009/12/20/generic-actions-in-rails-3/">Generic Actions</a>.</li>
<li><a href="http://litanyagainstfear.com/blog/2010/02/03/the-rails-module/">The Rails Module</a>.</li>
<li><a href="http://blog.plataformatec.com.br/2010/01/discovering-rails-3-generators/">Discovering Rails 3 generators</a>.</li>
<li><a href="http://lindsaar.net/2010/1/31/validates_rails_3_awesome_is_true">Validations</a>.</li>
<li><a href="http://blog.plataformatec.com.br/2010/02/rails-3-i18n-changes/">I18n changes</a>.</li>
<li><a href="http://m.onkey.org/2010/2/5/signed-and-permanent-cookies-in-rails-3">Signed and Permanent cookies</a>.</li>
<li><a href="http://omgbloglol.com/post/371893012/the-path-to-rails-3-greenfielding-new-apps-with-the">Creating new apps with the Rails 3 beta</a>.</li>
<li><a href="http://railsplugins.org">Gem and Plugin Compatibility Checker</a>.</li>
</ul>
<p>I&#8217;m sure I&#8217;ll collect more as time rolls on. BTW, you can find these links and more on my <a href="http://www.aeonscope.net/software/development/ruby/">Ruby page</a> where I continue to capture useful Ruby information.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2010/02/08/gearing-up-for-rails-30/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Combining PDFs with Automator</title>
		<link>http://www.aeonscope.net/2009/10/19/combining-pdfs-with-automator/</link>
		<comments>http://www.aeonscope.net/2009/10/19/combining-pdfs-with-automator/#comments</comments>
		<pubDate>Mon, 19 Oct 2009 13:17:34 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=2476</guid>
		<description><![CDATA[
I have a Canon PIXMA MP470 device. It&#8217;s a decent printer that doubles as a scanner. The device is perfect for my needs although I would argue that it eats printer ink a little faster than I&#8217;d like. Then again, I got it for free, so I can&#8217;t complain too much (well if you don&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/wp-content/uploads/2009/10/automator.png" alt="Automator Icon" title="Automator Icon" width="88" height="88" class="alignnone size-full wp-image-2477" /></center></p>
<p>I have a <a href="http://www.usa.canon.com/consumer/controller?act=ModelInfoAct&#038;fcategoryid=2610&#038;modelid=15403">Canon PIXMA MP470</a> device. It&#8217;s a decent printer that doubles as a scanner. The device is perfect for my needs although I would argue that it eats printer ink a little faster than I&#8217;d like. Then again, I got it for free, so I can&#8217;t complain too much (well if you don&#8217;t calculate the long term cost of printer ink over time).</p>
<p>In the past, I used proprietary software that came with the device to scan documents. For printing support, I could easily detect and attach to the printer via <a href="http://www.apple.com/support/bonjour/">Bonjour</a> (as the device is plugged into an Apple Airport so all machines on the network can use it). In the case of scanning, I would have to attach the USB cable directly to my computer. There might be a way to do this via Bonjour but that eludes me at the moment.</p>
<p>Recently, I upgraded to <a href="http://www.aeonscope.net/2009/09/21/mac-os-x-106x-snow-leopard-applications/">Snow Leopard</a> and discovered that I could scan documents using the native Image Capture application. Perhaps, you could do this in Leopard too? Anyway, this allowed me to no longer require installing Canon&#8217;s proprietary printer/scanner software. The only downside is that the Image Capture application doesn&#8217;t know how to combine multiple document scans into one PDF.  Nor does the Preview application allow one to combine multiple PDFs into one PDF document either. Bummer.</p>
<p>The solution is to use <a href="http://www.apple.com/macosx/what-is-macosx/scripting.html">Automator</a>. I generally use Automator for quick image manipulation, resizing, etc but it also has decent PDF support. In my case, where I have several PDF files from multiple scans of a single document, I can use Automator to combine all these PDFs into one file. As part of Apple&#8217;s Automator action library, someone has already built an Automator worklfow that does exactly this. You can <a href="http://www.apple.com/downloads/macosx/automator/combinepdfs.html">download the workflow</a> and use it to combine multiple PDF files into one.</p>
<p>Something to think about if you are in a situation like this. It definitely does the trick for me.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/10/19/combining-pdfs-with-automator/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Favorite Ruby Feeds</title>
		<link>http://www.aeonscope.net/2009/10/06/favorite-ruby-feeds/</link>
		<comments>http://www.aeonscope.net/2009/10/06/favorite-ruby-feeds/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 13:08:23 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=2394</guid>
		<description><![CDATA[
Over a year ago, I write a post about my favorite Ruby feeds. I&#8217;ve since deleted that post in order to write about an updated set of Ruby feeds that you should be paying attention to (if not already). I read all of these feeds religiously on a daily basis and have broken them down [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src='http://www.aeonscope.net/wp-content/uploads/2007/07/ruby.png' alt='Ruby' /></center></p>
<p>Over a year ago, I write a post about my favorite Ruby feeds. I&#8217;ve since deleted that post in order to write about an updated set of Ruby feeds that you should be paying attention to (if not already). I read all of these feeds religiously on a daily basis and have broken them down below by general news and information followed by screencasts/tutorials. Enjoy.</p>
<p><strong>News</strong></p>
<ul>
<li><a href="http://afreshcup.com">A Fresh Cup</a> - My personal favorite. While you can find similar news via the links below, Mike Gunderloy does an excellent job of summing everything up in place for news, information, and new gems from the Ruby community.</li>
<li><a href="http://ruby-toolbox.com">Ruby Toolbox</a> - A great trending site for finding out what gems are hot and most popular within the Ruby community. This can save you a lot of time when you want to know which gem is the best solution for a problem that has already been solved.</li>
<li><a href="http://rubytrends.com">Ruby Trends</a> - Another trending site. Useful for cross-checking against Ruby Toolbox on what is hot.</li>
<li><a href="http://www.ruby-lang.org">Ruby News</a> - Straight from the source. Find about new releases, conferences, developments, etc.</li>
<li><a href="http://www.rubyinside.com">Ruby Inside</a> - The inside scoop on Ruby news.</li>
<li><a href="http://www.rubyflow.com/">RubyFlow</a> - A great site for picking up new resources to add to your development repertoire.</li>
<li><a href="http://rubyfu.org/">RubyFu</a> - Useful quick news and resource links.</li>
<li><a href="http://blog.rubybestpractices.com">Ruby Best Practices</a> - A great source of thoughtful discussion, including code samples, on how to write better code.</li>
<li><a href="http://ruby5.envylabs.com">Ruby5</a> - From some of the same guys who provide the Rails Envy podcast below. This is another podcast on Ruby news but in short, 5-minute, segments of usually discussing many of the new and interesting gems being developed.</li>
<li><a href="http://www.railsinside.com">Rails Inside</a> - Get the inside scoop on Rails news.</li>
<li><a href="http://weblog.rubyonrails.com/">Riding Rails</a> - Learn what is happening with the Ruby on Rails team.</li>
<li><a href="http://railspikes.com/">Rails Spikes</a> - A multi-authored site of Ruby developers discussing news, tips, code, etc.</li>
<li><a href="http://www.railsillustrated.com/">Rails Illustrated</a> - Info on Rails, web design, and the user experience.</li>
<li><a href="http://www.railsnotes.com">Rails Notes</a> - Another site worth checking out and picking up new learning.</li>
<li><a href="http://railstips.org">Rails Tips</a> - As the site description goes: &#8220;One man, feverishly posting everything he learns.&#8221;</li>
<li><a href="http://www.therailsway.com">The Rails Way</a> - News and information dedicated to teaching best practices of Ruby on Rails.</li>
<li><a href="http://www.rorsecurity.info/">Ruby on Rails Security Project</a> - A good place to read up on security issues or at least keep your mind in it.</li>
<li><a href="http://giantrobots.thoughtbot.com/">Giant Robots Smashing Into Other Giant Robots</a> - Good development tips and tricks, mostly related to Rails.</li>
<li><a href="http://ryandaigle.com">Ryan&#8217;s Scraps</a> - Interesting news on what&#8217;s new and upcoming within the Rails code base. Includes code samples and detailed descriptions and examples of new Rails features. </li>
<li><a href="http://blog.hasmanythrough.com">Has Many Through</a> - Although he has a low writing frequency, the posts are enlightening.</li>
<li><a href="http://www.railsenvy.com/">Rails Envy</a> - An entertaining and informative weekly podcast dedicated to Ruby, Rails, and web framework news.</li>
<li><a href="http://podcast.rubyonrails.org/">Rails Podcasts</a> - Ruby/Rails podcasts by Geoffrey Grosenbach of <a href="http://peepcode.com/">PeepCode</a> fame.</li>
<li><a href="http://railsmagazine.com/">Rails Magazine</a> - News, articles, and information about the Ruby on Rails framework.</li>
</ul>
<p><strong>Tutorials</strong></p>
<ul>
<li><a href="http://railscasts.com">Railscasts</a> - Short screen cast tutorials of Ruby on Rails code.</li>
<li><a href="http://envycasts.com/">Envy Casts</a> - Produced by the same guys that host the Rails Envy podcasts.  Each screen cast tutorial will set you back about $9.</li>
<li><a href="http://peepcode.com">PeepCode</a> - Screencast tutorials like Railscasts but longer in length and not free (roughly $9 per episode).</li>
<li><a href="http://www.tekniqal.com">Tekniqal</a> - A collection of screencasts that cover some of the Ruby basics.</li>
<li><a href="http://railslab.newrelic.com/scaling-rails">Scaling Rails</a> - A series of screencasts on detailing how to scale your Ruby on Rails application appropriately. Produced by Gregg Pollack of Envy Cast fame.</li>
<li><a href="http://bddcasts.com">BDD Casts</a> - Video tutorials on all things related to Behavior Driven Development.</li>
</ul>
<p>BTW, you can find this list and more on <a href="http://www.aeonscope.net/software/development/ruby/">my Ruby page</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/10/06/favorite-ruby-feeds/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Rails Setup Template 1.0.0</title>
		<link>http://www.aeonscope.net/2009/09/30/rails-setup-template-100/</link>
		<comments>http://www.aeonscope.net/2009/09/30/rails-setup-template-100/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 14:16:58 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=2372</guid>
		<description><![CDATA[
I have released a new Ruby on Rails template project called: Rails Setup Template. In truth, this is a renaming of the original Rails Setup project. I am planning on releasing other template projects in the future so this was cause for a little refactoring of my GitHub projects.
In addition to the original code, there [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/rails.png" alt="Ruby on Rails"/></center></p>
<p>I have released a new Ruby on Rails template project called: <a href="http://github.com/aeonscope/rails_setup_template">Rails Setup Template</a>. In truth, this is a renaming of the original Rails Setup project. I am planning on releasing other template projects in the future so this was cause for a little refactoring of my GitHub projects.</p>
<p>In addition to the original code, there are a few extra goodies including the use of the <a href="http://malsup.com/jquery/block/">BlockUI</a> JavaScript library for easily dealing with lengthy AJAX processes and some bug fixes. Check out the template when you have a chance, it&#8217;ll definitely make building your new Ruby on Rails projects easier. It is what I use for all new work and quick demos.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/09/30/rails-setup-template-100/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ruby Gem Setup 1.0.0</title>
		<link>http://www.aeonscope.net/2009/09/29/ruby-gem-setup-100/</link>
		<comments>http://www.aeonscope.net/2009/09/29/ruby-gem-setup-100/#comments</comments>
		<pubDate>Tue, 29 Sep 2009 12:29:20 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=2367</guid>
		<description><![CDATA[
I have released a simple GitHub project called Ruby Gem Setup that makes setting up your Ruby Gems a little easier. Here are a few highlights:

Ensures the Ruby Gem environment is at the latest version.
Adds GitHub and Gemcutter as gem sources.
Allows you to configure a setup.txt file that lists all your favorite gems for install.

Very [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/ruby.png" alt="Ruby"/></center></p>
<p>I have released a simple GitHub project called <a href="http://github.com/aeonscope/ruby_gem_setup">Ruby Gem Setup</a> that makes setting up your Ruby Gems a little easier. Here are a few highlights:</p>
<ul>
<li>Ensures the Ruby Gem environment is at the latest version.</li>
<li>Adds GitHub and Gemcutter as gem sources.</li>
<li>Allows you to configure a setup.txt file that lists all your favorite gems for install.</li>
</ul>
<p>Very handy, especially when managing gems for multiple versions of Ruby. Feel free to fork the project for your own purposes if you like or simply maintain your own setup.txt file.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/09/29/ruby-gem-setup-100/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Quickly Filtering Ruby Methods</title>
		<link>http://www.aeonscope.net/2009/06/16/quickly-filtering-ruby-methods/</link>
		<comments>http://www.aeonscope.net/2009/06/16/quickly-filtering-ruby-methods/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 13:49:14 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[Snippet]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=2047</guid>
		<description><![CDATA[
Sometimes, when working with IRB or the Rails console, you might need a list of methods on a particular class or object. You don&#8217;t necessarily need to consult the doc because it is one of those situations where you would know the method if you saw it. So what do you do? Well, one trick [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/ruby.png" alt="Ruby on Rails"/></center></p>
<p>Sometimes, when working with IRB or the Rails console, you might need a list of methods on a particular class or object. You don&#8217;t necessarily need to consult the <a href="http://apidock.com">doc</a> because it is one of those situations where you would know the method if you saw it. So what do you do? Well, one trick is to use the select method (passed via a block) on a collection of methods. You can always start by asking the class for its methods by typing the following:</p>
<p>Hash.<a href="http://apidock.com/ruby/Object/methods">methods</a></p>
<p>Which yields:</p>
<p>["require_dependency", "decode_b", "write_inheritable_hash", "model_name", "breakpoint", "require", "delegate", "taguri", "const_missing", "new", "class_inheritable_hash", "suppress", "methods", "andand", "method", "allocate", "attr_internal_reader", "protected_instance_methods", "deprecate", "taguri=", "subclasses", "cattr_accessor", "include?", "daemonize", "taint", "present?", "class_eval", "alias_method_chain", "instance_variable_defined?", "yaml_tag_class_name", "name", "find_hidden_method", "reset_inheritable_attributes", "metaclass", "autoload", "to_yaml_style", "class_variables", "parent", "inheritable_attributes", "__id__", "singleton_methods", "synchronize", "dclone", "private_instance_methods", "object_id", "subclasses_of", "respond_to?", "nil?", "ancestors", "yaml_tag_read_class", "parent_name", "tap", "__send__", "require_library_or_gem", "protected_methods", "require_or_load", "me", "tainted?", "attr_internal_writer", "remove_class", "class_inheritable_reader", "untaint", "instance_of?", "autoload?", "b64encode", "included_in_classes", "equal?", "method_defined?", "with_options", "const_missing_without_dependencies", "display", "class_variable_defined?", "private_methods", "hash", "instance_method", "send", "constants", "deprecation_horizon", "instance_values", "`", "attr_internal_accessor", "yaml_tag_subclasses?", "class_inheritable_writer", "kind_of?", "enable_warnings", "freeze", "eql?", "public_method_defined?", "to_json", "id", "returning", "parents", "write_inheritable_attribute", "dont", "acts_like?", "require_association", "public_methods", "instance_eval", "superclass_delegating_reader", "instance_variable_names", "attr_internal", "const_get", "to_enum", "class_inheritable_array_writer", "is_a?", "silence_stderr", "private_method_defined?", "cattr_reader", "type", "const_missing_with_dependencies", "local_constants", "superclass", "write_inheritable_array", "instance_variables", "frozen?", "blank?", "attr_internal_naming_format", "const_set", "copy_instance_variables_from", "enum_for", "class_inheritable_hash_writer", "silence_stream", "to_a", "to_param", "mattr_reader", "protected_method_defined?", "attr_internal_naming_format=", "extended_by", "silence_warnings", "class", "public_class_method", "encode64", "from_xml", "instance_variable_get", "<=>", "to_yaml", "load_with_new_constant_marking", "==", "superclass_delegating_writer", "method_added", "class_inheritable_accessor", "===", "duplicable?", "extend", "to_s", "to_query", "alias_attribute", "instance_methods", ">=", "remove_subclasses", "extend_with_included_modules_from", "mattr_writer", "<=", "cattr_writer", "local_constant_names", "clone", "private_class_method", "decode64", "read_inheritable_attribute", "const_defined?", "yaml_as", "included_modules", "debugger", "=~", "instance_variable_set", "<", "superclass_delegating_accessor", "deprecated_method_warning", "attr_accessor_with_default", ">", "class_inheritable_array", "inspect", "[]&#8220;, &#8220;remove_subclasses_of&#8221;, &#8220;instance_exec&#8221;, &#8220;try&#8221;, &#8220;mattr_accessor&#8221;, &#8220;public_instance_methods&#8221;, &#8220;as_load_path&#8221;, &#8220;to_yaml_properties&#8221;, &#8220;unloadable&#8221;, &#8220;dup&#8221;, &#8220;module_eval&#8221;]</p>
<p>OK, yeah, that&#8217;s a bit overkill.  How about we narrow it down to the types of methods (using the select method with a regular expression):</p>
<p>Hash.methods {|m| m.select =~ /methods/}</p>
<p>Which yields:</p>
<p>["methods", "protected_instance_methods", "singleton_methods", "private_instance_methods", "protected_methods", "private_methods", "public_methods", "instance_methods", "public_instance_methods"]</p>
<p>Ah, much better. &#8230;but I&#8217;m not quite there yet. Lets say I know it&#8217;s an instance method and it is a type of &#8220;to&#8221; method. I could then type the following:</p>
<p>Hash.instance_methods {|m| m.select =~ /to_/}</p>
<p>Which yields:</p>
<p>["to_yaml_style", "to_hash", "to_set", "to_xml", "to_json", "to_enum", "to_options", "to_a", "to_param", "to_yaml", "to_options!", "to_s", "to_query", "to_yaml_properties"]</p>
<p>OK, now I remember, it was the &#8220;to_yaml&#8221; method that I was looking for!</p>
<p>This, of course, is a contrived example. However, if you know what type of method you are looking for and part of its name, then this is a quick and effective way of getting back a subset of methods from which you can gauge what it is that you&#8217;re looking for.</p>
<p>Where I tend use this most (as of late) is with Rails models that accept nested attributes (i.e. <a href="http://apidock.com/rails/ActiveRecord/NestedAttributes/ClassMethods/accepts_nested_attributes_for">accepts_nested_attributes_for</a>). For example:</p>
<p>Recipe.instance_methods {|m| m.select =~ /attributes/}</p>
<p>["update_attributes!", "comments_attributes=", "reject_new_nested_attributes_procs", "attributes", "attributes=", "time_zone_aware_attributes", "respond_to_without_attributes?", "update_attributes", "skip_time_zone_conversion_for_attributes", "<strong>user_recipe_attributes=</strong>", "<strong>ingredient_groups_attributes=</strong>", "attributes_before_type_cast", "<strong>instructions_attributes=</strong>", "<strong>sources_attributes=</strong>"]</p>
<p>So there you have it, in case it is of help.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/06/16/quickly-filtering-ruby-methods/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Default Scopes with Oracle</title>
		<link>http://www.aeonscope.net/2009/06/09/default-scopes-with-oracle/</link>
		<comments>http://www.aeonscope.net/2009/06/09/default-scopes-with-oracle/#comments</comments>
		<pubDate>Wed, 10 Jun 2009 03:37:22 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=2014</guid>
		<description><![CDATA[
If you have the unfortunate experience of having to deal with Oracle databases you might run into an interesting problem with default scopes where Oracle spits back the following error:
ORA-00933: SQL command not properly ended: UPDATE post SET post_gid = NULL WHERE ((post_gid = 2060))  ORDER BY name
The problem, if you guessed it, is [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/images/ruby/rails.png" alt="Ruby on Rails"/></center></p>
<p>If you have the unfortunate experience of having to deal with Oracle databases you might run into an interesting problem with <a href="http://apidock.com/rails/ActiveRecord/Base/default_scope/class">default scopes</a> where Oracle spits back the following error:</p>
<p><code>ORA-00933: SQL command not properly ended: UPDATE post SET post_gid = NULL WHERE ((post_gid = 2060))  ORDER BY name</code></p>
<p>The problem, if you guessed it, is that you can&#8217;t add an ORDER clause to the end of an UPDATE statement in SQL. It is invalid syntax. This happens because you might have done something like this in your Post model:</p>
<p><code>class Post &lt; ActiveRecord::Base<br />
  # Named Scopes<br />
  default_scope :order =&gt; "name"<br />
end</code></p>
<p>I really like to use default_scope on my models when apt. However, with Oracle, you might as well forget about that until Rails is patched (which I suppose I should do once this aggravates me more).  The workaround is to not use default scopes but, instead, used named scopes, define them as conditions to your finds (usually index actions), and/or <a href="http://apidock.com/rails/ActiveRecord/Associations/ClassMethods/has_many">has_many</a> associations.  For example:</p>
<p><strong>Named Scope</strong></p>
<p><code>class Post &lt; ActiveRecord::Base<br />
  # Named Scopes<br />
  named_scope :default, :order =&gt; "name"<br />
end</code></p>
<p>This will work nicely but if you need to pass additional conditions, you&#8217;ll still need to do the following:</p>
<p><code>Post.default.all(:conditions =&gt; {:name =&gt; "Once Upon a Time"})</code></p>
<p><strong>Index Action</strong></p>
<p><code>Post.all :order =&gt; "name"</code></p>
<p><strong>Has Many Association</strong></p>
<p><code>class User &lt; ActiveRecord::Base<br />
  # Associations<br />
  has_many :posts, :order =&gt; "name"<br />
end</code></p>
<p>Obviously, not as elegant as defining them in one location but it&#8217;ll get you by.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/06/09/default-scopes-with-oracle/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tweetie</title>
		<link>http://www.aeonscope.net/2009/05/18/tweetie/</link>
		<comments>http://www.aeonscope.net/2009/05/18/tweetie/#comments</comments>
		<pubDate>Mon, 18 May 2009 13:05:52 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=1857</guid>
		<description><![CDATA[For those on the MacOS wanting a great desktop app to manage your Twitter account, I would suggest checking out Tweetie and possibly the iPhone companion.  It&#8217;s been my favorite Twitter app as of late over other apps like Nambu or TweetDeck. For me, I really love the condensed view of the Tweetie app [...]]]></description>
			<content:encoded><![CDATA[<p>For those on the MacOS wanting a great desktop app to manage your Twitter account, I would suggest checking out <a href="http://www.atebits.com/tweetie-mac/">Tweetie</a> and possibly the <a href="http://www.atebits.com/tweetie-iphone/">iPhone</a> companion.  It&#8217;s been my favorite Twitter app as of late over other apps like <a href="http://www.nambu.com/">Nambu</a> or <a href="http://www.tweetdeck.com/">TweetDeck</a>. For me, I really love the condensed view of the Tweetie app which saves me desktop space versus the larger spread you get with TweetDeck or Nambu.  For example:</p>
<p><center><a href="http://www.aeonscope.net/wp-content/uploads/2008/04/tweetie.png" rel='lytebox[tweetie]'><img src="http://www.aeonscope.net/wp-content/uploads/2008/04/tweetie-100x100.png" alt="Tweetie" title="Tweetie" width="100" height="100" class="alignnone size-thumbnail wp-image-1855" /></a><br/>(click to view)</center></p>
<p>By clicking Tweetie&#8217;s sidebar you can quickly jump from tweets you have composed, see replies, direct messages, and search.  You can also use global keyboard shortcut to enter tweets. In my case I use CTRL+OPTION+COMMAND+T often to bring up a dialog to enter a quick tweet:</p>
<p><center><a href="http://www.aeonscope.net/wp-content/uploads/2009/05/tweetie-text-box.png" rel='lytebox[tweetie]'><img src="http://www.aeonscope.net/wp-content/uploads/2009/05/tweetie-text-box-100x100.png" alt="Tweetie Text Box" title="Tweetie Text Box" width="100" height="100" class="alignnone size-thumbnail wp-image-1858" /></a><br/>(click to view)</center></p>
<p>Notice that you can also use keyboard shortcuts to quickly convert long URLs to short ones. The only downside to using the keyboard shortcut is that the dialog only pops up in the Leopard Space from which you originally launched Tweetie (focus is switched to that Leopard Space as well). I was expecting the <a href="http://www.aeonscope.net/2008/02/19/omnifocus-hyperlinked-notes/">OmniFocus QuickEntry</a> dialog behavior which works from any Leopard Space. I messaged the developer about this and the response was that it is not easy to do but is looking into it. If that can get fixed, I would be tempted to buy the app even though the ad-supported, free version is not that annoying.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/05/18/tweetie/feed/</wfw:commentRss>
		</item>
		<item>
		<title>GitHub Lessons</title>
		<link>http://www.aeonscope.net/2009/05/03/github-lessons/</link>
		<comments>http://www.aeonscope.net/2009/05/03/github-lessons/#comments</comments>
		<pubDate>Mon, 04 May 2009 00:06:45 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=1756</guid>
		<description><![CDATA[
So I have become a GitHub fan (powered by Git, obviously). It is free to use if you are developing open source code or you can pay various service fees to have GitHub host your private code.  As for me, I&#8217;m working on a few open source projects. Three, of which, are live now.
&#8230;but [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src="http://www.aeonscope.net/wp-content/uploads/2009/04/octocat.png" alt="GitHub Octocat" title="GitHub Octocat" width="300" height="300" class="alignnone size-full wp-image-1782" /></center></p>
<p>So I have become a <a href="http://github.com">GitHub</a> fan (powered by <a href="http://git-scm.com">Git</a>, obviously). It is free to use if you are developing open source code or you can pay various service fees to have GitHub host your private code.  As for me, I&#8217;m working on a few open source projects. <a href="http://github.com/aeonscope">Three</a>, of which, are live now.</p>
<p>&#8230;but I learned a few lessons along the way. I thought I&#8217;d share what I learned in case you might be curious.</p>
<p><strong>Make everything a <a href="http://rubygems.org">gem</a> when apt</strong></p>
<p>They are <a href="http://github.com/technicalpickles/jeweler/tree/master">easy to develop</a> and manage. Plus they are version controlled and simple to configure within a Ruby on Rails app. I made the mistake of developing Ruby on Rails plug-ins initially and have finally converted all my plug-ins to gems now. Plug-ins, it seems, are going the way of the <a href="http://en.wikipedia.org/wiki/Dodo">Dodo</a>.</p>
<p><strong>Be wary of your user account.</strong></p>
<p>When you register with GitHub, pick a user account that you want to stick with as all software associated with your username will be prefixed to your code (this is especially critical with gems). In my case, I use &#8220;aeonscope&#8221; which yields the following gem install command line: <code>sudo gem install aeonscope-XXX</code>.  The installed gems will also show up on your file system with the same &#8220;aeonscope-&#8221; prefix.  You don&#8217;t, however, have to name your libraries in this manner which means that your Rails configurations will not match.  Lets take a closer look:</p>
<ul>
<li>GitHub Login:  aeonscope</li>
<li>GitHub Project:  rest</li>
<li>GitHub Project Path:  <a href="http://github.com/aeonscope/rest">http://github.com/aeonscope/rest</a></li>
<li>Gem Install Command:  sudo gem install aeonscope-rest</li>
<li>Ruby on Rails Configuration (via environment.rb): <code>config.gem "aeonscope-rest", :lib =&gt; "rest"</code></li>
</ul>
<p>Notice when you configure my gem in Rails, you must specify &#8220;rest&#8221; instead of &#8220;aeonscope-rest&#8221; for the library.  This is because I don&#8217;t want to namespace my Rails code with &#8220;aeonscope&#8221;.  I debated as to whether this was wise and, in the end, decided it was lame to force namespaces.  I like the fact that gems are installed and stored on your local file system with the namespace but once you configure the gem in Rails you then specify the library without the GitHub login prefix.</p>
<p><strong>Know your tools</strong></p>
<p>Save yourself some setup time by using <a href="http://github.com/technicalpickles/jeweler/tree/master">Jeweler</a> to craft your gems. Once you have released your new gem, you can <a href="http://hasmygembuiltyet.org/">check if it has built</a>.  The rest is a just a matter of reading the GitHub docs and learning about Git in general.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/05/03/github-lessons/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Buggy Firebug UJS Extension</title>
		<link>http://www.aeonscope.net/2009/04/29/buggy-firebug-ujs-extension/</link>
		<comments>http://www.aeonscope.net/2009/04/29/buggy-firebug-ujs-extension/#comments</comments>
		<pubDate>Thu, 30 Apr 2009 01:44:28 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=1770</guid>
		<description><![CDATA[For those that happen to keep tabs on my GitHub projects or my tweets, you&#8217;ll know I&#8217;m a big advocate of writing Unobtrusive JavaScript (UJS). That means if you send me to a site of yours and I break out my handy Obtrusive JavaScript Checker tool only to find that you are obtrusive then my [...]]]></description>
			<content:encoded><![CDATA[<p>For those that happen to keep tabs on my <a href="http://github.com/aeonscope">GitHub</a> projects or my <a href="http://twitter.com/Aeonscope">tweets</a>, you&#8217;ll know I&#8217;m a big advocate of writing Unobtrusive JavaScript (UJS). That means if you send me to a site of yours and I break out my handy <a href="https://addons.mozilla.org/en-US/firefox/addon/9505">Obtrusive JavaScript Checker</a> tool only to find that you are obtrusive then my faith in your development capabilities will have diminished significantly.</p>
<p>With that in mind, I was playing with a <a href="https://addons.mozilla.org/firefox/1843">Firebug</a> extension called <a href="http://remi.org/2009/01/06/using-firebug-to-debug-unobtrusive-javascript.html">Firebug UJS</a>. I really enjoyed this tool because it allowed you to see UJS behavior within the DOM while investigating code in Firebug.  Cool! Only problem is that it totally hosed most of my jQuery enabled pages. In fact, if you install this plugin and try to view the <a href="http://jqueryui.com/demos/">jQuery UI demos</a>, you&#8217;ll be in a world of hurt.</p>
<p>While the extension is a nifty idea, I would recommend saving yourself time and frustration by not installing this.  If you want a list of extensions you might want to be using, then check out my <a href="http://www.aeonscope.net/software/applications/firefox/">Firefox page</a> for more info.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/04/29/buggy-firebug-ujs-extension/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Phusion Passenger on Ubuntu</title>
		<link>http://www.aeonscope.net/2009/03/15/phusion-passenger-on-ubuntu/</link>
		<comments>http://www.aeonscope.net/2009/03/15/phusion-passenger-on-ubuntu/#comments</comments>
		<pubDate>Sun, 15 Mar 2009 18:05:04 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Phusion Passenger]]></category>

		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=1650</guid>
		<description><![CDATA[
Overview
The following a guide to configuring Phusion Passenger on Ubuntu for serving up your Ruby on Rails applications.
Requirements
It is assumed that you are familiar Ruby, Ruby on Rails, Apache, Phusion Passenger, and Ubuntu.  It is also assumed that you have a Ubuntu Server or VM setup and configured with a proper server stack that [...]]]></description>
			<content:encoded><![CDATA[<p><center><a href="http://www.ubuntu.com"><img src="http://www.aeonscope.net/images/linux/ubuntu.png"  alt="Ubuntu" /></a></center></p>
<p><strong>Overview</strong></p>
<p>The following a guide to configuring <a href="http://www.modrails.com">Phusion Passenger</a> on <a href="http://www.ubuntu.com">Ubuntu</a> for serving up your <a href="http://rubyonrails.org">Ruby on Rails</a> applications.</p>
<p><strong>Requirements</strong></p>
<p>It is assumed that you are familiar Ruby, Ruby on Rails, Apache, Phusion Passenger, and Ubuntu.  It is also assumed that you have a Ubuntu Server or VM setup and configured with a proper server stack that includes Apache, MySQL, Ruby, Ruby on Rails, etc.  You can learn how to setup and configure a fresh Ubuntu Server by reading my <a href="http://www.aeonscope.net/software/applications/ubuntu/">Ubuntu page</a> before preceding.</p>
<p><strong>Setup</strong></p>
<p>Phusion Passenger will warn you of missing software but lets go ahead and beat Phusion Passenger to the punch by executing the following commands from the command line:</p>
<ol>
<li>sudo apt-get install libopenssl-ruby</li>
<li>sudo apt-get install apache2-prefork-dev</li>
</ol>
<p>Now we can install Phusion Passenger:</p>
<ol>
<li>sudo gem install passenger</li>
<li>sudo passenger-install-apache2-module</li>
</ol>
<p> <br />
<strong>Apache Configuration</strong><br />
 <br />
Edit the <code>/etc/apache2/httpd.conf</code> or <code>/etc/apache2/apache2.conf</code> file (depending on how your server is setup, use one or the other but not both) by adding the following to the end of the file:</p>
<ul>
<li><code>LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/ext/apache2/mod_passenger.so</code></li>
<li><code>PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.0.6</code></li>
<li><code>PassengerRuby /usr/bin/ruby1.8</code></li>
<li><code>PassengerDefaultUser www-data</code></li>
</ul>
<p><strong>NOTE</strong>: Be mindful of the Phusion Passenger version as you might need to adjust the version numbers for your particular release.  Otherwise, just use the notes provided for you during the Phusion Passenger install.</p>
<p>Finally, execute the the following commands from the command line:</p>
<ol>
<li><code>sudo usermod -a -G www-data &lt;your user login&gt;</code></li>
<li><code>sudo a2enmod ssl</code></li>
</ol>
<p>The first command ensures the default www-data user group is group to your primary user account owning the server files.  Otherwise, Phusion Passenger will assume to run the Rails app as root which might cause problems.  The last command tells Apache to enable SSL support (you might or might not want this).</p>
<p><strong>Apache Non-Secure Virtual Hosts</strong></p>
<p>Edit your virtual host file (example: <code>/etc/apache2/sites-available/example</code>) so that the following is used:</p>
<p><code>NameVirtualHost *:80<br />
&lt;VirtualHost *:80&gt;<br />
    ServerName one.example.com<br />
    DocumentRoot /web/one/public</p>
<p>    &lt;Directory /web/one/public/ /&gt;<br />
        Options Indexes FollowSymLinks MultiViews<br />
        AllowOverride None<br />
        Order allow,deny<br />
        allow from all<br />
    &lt;/Directory&gt;<br />
&lt;/VirtualHost&gt;</code></p>
<p>Repeat the <code>&lt;VirtualHost/&gt;</code> block for each Rails site you want to setup.<br />
Restart Apache to pick up the new changes by executing the following command line: <code>sudo /etc/init.d/apache2 restart</code></p>
<p><strong>Apache Secure Virtual Hosts</strong></p>
<p>Edit your virtual host file (example: <code>/etc/apache2/sites-available/example-ssl</code>) so that the following is used:</p>
<p><code>    NameVirtualHost *:443<br />
   &lt;VirtualHost *:443&gt;<br />
      ServerName www.yourhost.com<br />
      DocumentRoot /somewhere/public</p>
<p>      SSLEngine on <br />
      SSLCertificateFile    /etc/ssl/certs/&lt;your server name&gt;.crt<br />
      SSLCertificateKeyFile /etc/ssl/private/&lt;your server name&gt;.key<br />
   &lt;/VirtualHost&gt;</code></p>
<p>Repeat the <code>&lt;VirtualHost/&gt;</code> block for each Rails site you want to setup.</p>
<p><strong>NOTE:</strong> While this setup will allow you to host multiple secure Rails sites it will not allow you to use a different SSL certificate for each as that is impossible.  Even if you change the SSL certificate for each virtual host only the first one defined will be used.</p>
<p>Restart Apache to pick up the new changes by executing the following command line: <code>sudo /etc/init.d/apache2 restart</code></p>
<p><strong>How to Generate Your Own SSL Certificates</strong></p>
<p>Run the following commands to create a temporary SSL key and certificate for testing with your applications:</p>
<ol>
<li>openssl genrsa -des3 -out server.key 1024</li>
<li>openssl req -new -x509 -nodes -sha1 -days 365 -key server.key -out server.crt</li>
</ol>
<p>Make sure to copy these files to the appropriate location by executing the following commands:</p>
<ul>
<li><code>mv server.crt /etc/ssl/certs/&lt;your server name&gt;.crt</code></li>
<li><code>mv server.key /etc/ssl/private/&lt;your server name&gt;.key</code></li>
<li><code>chmod 400 /etc/ssl/certs/&lt;your server name&gt;.crt</code></li>
<li><code>chmod 400 /etc/ssl/private/&lt;your server name&gt;.key</code></li>
</ul>
<p>The files names and paths need to match as to what you entered in your virtual host file for port 443 (as mentioned above).</p>
<p><strong>NOTE:</strong> To get up and running quickly without creating your own SSL keys and certificates, simply use the snake oil files as listed in the <code>/etc/apache2/sites-available/default-ssl</code> Apache configuration file.<br />
 <br />
<strong>Resources</strong></p>
<ul>
<li><a href="http://peepcode.com/products/phusion-passenger">PeepCode Phusion Passenger Screencast</a></li>
<li><a href="http://httpd.apache.org/docs/2.0/ssl/ssl_faq.html">Apache SSL FAQs</a></li>
<li><a href="http://www.akadia.com/services/ssh_test_certificate.html">How to Create a Self-Signed SSL</a></li>
<li><a href="http://www.oreillynet.com/pub/a/apache/2005/02/17/apacheckbk.html">A Day in the Life of Apache</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/03/15/phusion-passenger-on-ubuntu/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ruby on Rails Quick Start</title>
		<link>http://www.aeonscope.net/2009/03/09/ruby-on-rails-quick-start/</link>
		<comments>http://www.aeonscope.net/2009/03/09/ruby-on-rails-quick-start/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 02:44:24 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=1594</guid>
		<description><![CDATA[
Introduction
Ruby on Rails is a web framework built on top of the Ruby programming language that focuses on convention over configuration to get things done.  It was originally developed by David Heinemeier Hansson at 37signals for the Basecamp application.  Eventually, the framework was extracted from Basecamp, open sourced, and is now known as [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src='http://www.aeonscope.net/images/ruby/rails.png' alt='Rails' /></center></p>
<p><strong>Introduction</strong></p>
<p><a href="http://www.rubyonrails.org">Ruby on Rails</a> is a web framework built on top of the <a href="http://www.ruby-lang.org">Ruby</a> programming language that focuses on convention over configuration to get things done.  It was originally developed by <a href="http://en.wikipedia.org/wiki/David_Heinemeier_Hansson">David Heinemeier Hansson</a> at <a href="http://www.37signals.com">37signals</a> for the <a href="http://www.basecamphq.com">Basecamp</a> application.  Eventually, the framework was extracted from Basecamp, open sourced, and is now known as Ruby on Rails.  It is also a total pleasure to work with.</p>
<p><strong>Requirements</strong></p>
<p>It is assumed that you have knowledge of the Ruby language and a working development environment in order to make use of this post.  Read my <a href="http://www.aeonscope.net/2009/02/17/intro-to-ruby-getting-started/">Intro to Ruby</a> article series if you need further instruction.</p>
<p><strong>Literature</strong></p>
<ol>
<li><a href="http://www.sitepoint.com/books/rails1/">Build Your Own Ruby on Rails Web Applications</a> by Patrick Lenz - This was the first book that I read on the Rails framework that walks you through building a simple web application from start to finish.  Something to consider but you might enjoy the book listed below better.</li>
<li><a href="http://www.pragprog.com/titles/rails3/agile-web-development-with-rails-third-edition">Agile Web Development with Rails, Third Edition</a> - Have not read this book myself as of yet but have heard very good things about it.</li>
<li><a href="http://www.b-simple.de/documents">RESTful Rails</a> - A free PDF available for download.  While knowing the REST architecture is not a prerequisite to developing Ruby on Rails applications, I would strongly recommend that you take time to understand how to use it.  You&#8217;ll be glad you did.</li>
</ol>
<p><strong>API</strong></p>
<p>Good bookmarks to have on hand are:</p>
<ul>
<li><a href="http://apidock.com">API Doc</a> - Provides quick keyword search capabilities as well as community comments for Ruby and Ruby on Rails.  My personal favorite.</li>
<li><a href="http://www.gotapi.com/rubyrails">Got API </a>- An alternative to API Doc but not as easy on the eyes.  Depends on your temperament, of course.</li>
</ul>
<p><strong>News</strong></p>
<p>The following feeds are worth adding to your feed reader in order to stay connected with the community:</p>
<ul>
<li><a href="http://www.railsinside.com">Rails Inside</a> - Get the inside scoop on Rails news.</li>
<li><a href="http://weblog.rubyonrails.com/">Riding Rails</a> - Learn what is happening with the Ruby on Rails team.</li>
<li><a href="http://railspikes.com/">Rails Spikes</a> - A multi-authored site of Ruby developers discussing news, tips, code, etc.</li>
<li><a href="http://www.railsillustrated.com/">Rails Illustrated</a> - Info on Rails, web design, and the user experience.</li>
<li><a href="http://www.rorsecurity.info/">Ruby on Rails Security Project</a> - A good place to read up on security issues or at least keep your mind in it.</li>
<li><a href="http://giantrobots.thoughtbot.com/">Giant Robots Smashing Into Other Giant Robots</a> - Good development tips and tricks, mostly related to Rails.</li>
<li><a href="http://www.railsenvy.com/">Rails Envy</a> - An entertaining and informative weekly podcast dedicated to Ruby, Rails, and web framework news.</li>
<li><a href="http://podcast.rubyonrails.org/">Rails Podcasts</a> - Ruby/Rails podcasts by Geoffrey Grosenbach of <a href="http://peepcode.com/">PeepCode</a> fame.</li>
</ul>
<p><strong>Tools</strong></p>
<p>Using a simple text editor like TextEdit (MacOS) or Notepad (Windows) will do just fine for starters.  However, you might consider the following tools as better alternatives to simple text editors:</p>
<ul>
<li><a href="http://macromates.com/">TextMate</a> - Lightweight, fast, and costs $30. For the MacOS platform only.</li>
<li><a href="http://www.netbeans.org/">NetBeans</a> - Developed by Sun and free to use.  Works on multiple platforms.</li>
<li><a href="http://www.radrails.org/">Aptana</a> - Adds Ruby on Rails support to the Eclipse IDE.  Visit the <a href="http://update.aptana.com/update/studio/3.2/">software update site</a> to install directly into Eclipse.</li>
</ul>
<p>I am a MacOS guy, so TextMate is my development tool of choice when writing Ruby code.  However, if you are not on the MacOS I would recommend Netbeans as it is less buggy than Eclipse (although I do like the Eclipse UI better).</p>
<p>In addition to the tools mentioned above, you might consider installing the <a href="https://addons.mozilla.org/en-US/firefox/addon/5817">SQLite Manager</a> Firefox add-on for quick and easy access to your SQLite3 database.  You can find this and other recommended plugins for Firefox on my <a href="http://www.aeonscope.net/software/applications/firefox/">Firefox page</a>.</p>
<p><strong>Installation</strong></p>
<p>Installation and setup is as simple as installing a few Ruby gems.  Execute the following commands from a command line in the following order:</p>
<ol>
<li>sudo gem install rails</li>
<li>sudo gem install mongrel</li>
<li>sudo gem install sqlite3-ruby</li>
</ol>
<p>When you generate a rails app it will default to using the SQLite3 database. Feel free to install MySQL or some other database for your development needs.  The Mongrel gem installs a web server stack for running your Rails application.  By default, you can run Rails on WEBrick but I recommend using Mongrel instead.</p>
<p><strong>Creating a Rails App</strong></p>
<p>To create your first Rails app, open a terminal window in a working directory of your choice.  Then execute the following command:</p>
<p><code>rails MySpiffyApp</code></p>
<p>This will create a new folder in your working directory called &#8220;MySpiffyApp&#8221;.  Inside this directory you will have set of files and folders that represent the default Rails web application structure.  Make sure to read the README file located in the root of &#8220;MySpiffyApp&#8221; directory to make sense of the file and folder structure.</p>
<p><strong>Running Your Rails App</strong></p>
<p>Right, so now you have a Rails app but how do you run it?  While still in your terminal window, change to the root of your Example project folder and type:</p>
<p><code>script/server -u</code></p>
<p>This will launch your Rails app with debugger support enabled (i.e. the &#8220;-u&#8221; option).  To view your app, just plug this address in your web browser:  http://localhost:3000</p>
<p>Congratulations, you have successfully installed Rails, built a Rails app, and seen it running!</p>
<p><strong>Next Steps</strong></p>
<p>I will be releasing various bits of code in the future that will make building your Ruby on Rails apps easier.  Stay tuned if you want to learn more and don&#8217;t be afraid to send me some feedback as comments are always welcome.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/03/09/ruby-on-rails-quick-start/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Intro to Ruby - Next Steps</title>
		<link>http://www.aeonscope.net/2009/03/08/intro-to-ruby-next-steps/</link>
		<comments>http://www.aeonscope.net/2009/03/08/intro-to-ruby-next-steps/#comments</comments>
		<pubDate>Sun, 08 Mar 2009 19:44:32 +0000</pubDate>
		<dc:creator>Brooke Kuhlmann</dc:creator>
		
		<category><![CDATA[Software]]></category>

		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.aeonscope.net/?p=1457</guid>
		<description><![CDATA[
Conclusion
This concludes the article series on the Ruby language.  If you have feedback, questions, etc. just leave comments on the various topics in question.  Otherwise, feel free to contact me directly.
As for your next steps, I would suggest subscribing to as many Ruby syndicated feeds that you can handle.  It is the [...]]]></description>
			<content:encoded><![CDATA[<p><center><img src='http://www.aeonscope.net/wp-content/uploads/2007/07/ruby.png' alt='Ruby' /></center></p>
<p><strong>Conclusion</strong></p>
<p>This concludes the article series on the Ruby language.  If you have feedback, questions, etc. just leave comments on the various topics in question.  Otherwise, feel free to contact me directly.</p>
<p>As for your next steps, I would suggest subscribing to as many Ruby syndicated feeds that you can handle.  It is the best way to learn something new and stay connected to the vibrate Ruby community.  Finally, you can always use my <a href="http://www.aeonscope.net/software/development/ruby/">Ruby page</a> as a launch point for your own purposes.</p>
<p><strong>Where to find Me</strong></p>
<p>You can find me at the following locations:</p>
<ul>
<li><a href="http://twitter.com/Aeonscope">Twitter</a> - I&#8217;m always jabbering about Ruby and technology in general so if you find this site too long in the tooth then you might enjoy shorter versions of what I write&#8230;or not.  Hey, all of this is syndicated so the choice is always yours whether you want to tune in or not.</li>
<li><a href="http://www.meetup.com/Not-Just-Ruby/">Not Just Ruby</a> - Join <a href="http://conceptsahead.com">Kevin</a> and I for spirited discussions related to Ruby, business, design, marketing, etc.  The group is growing and we are always looking for more people who are enjoy thinking outside of the box so-to-speak.</li>
<li><a href="http://www.meetup.com/ColoSpgsBiz/">Colorado Springs Entrepreneurs Group</a> - Be a part of a group that allows entrepreneurial spirits to soar.  Remember, you are always an <a href="http://www.aeonscope.net/2007/04/12/enterprise-of-one/">Enterprise of One</a> whether you acknowledge it or not.</li>
<li><a href="http://www.meetup.com/csopensource/">Colorado Springs Open Source Software Group</a> - Dedicated to all things open source.  You can find me in speaking or just hanging out in the audience.</li>
</ul>
<p><strong>What&#8217;s Next</strong></p>
<p>I&#8217;ll be focusing on releasing some open source software shortly that will make building Ruby on Rails apps easier.  I&#8217;ll also be talking about Ruby on Rails more in general.</p>
<p>See you space cowboy.</p>
 <div class='series_toc'><h3>Article Series - Intro to Ruby</h3><ol><li><a href='http://www.aeonscope.net/2009/02/17/intro-to-ruby-getting-started/' title='Intro to Ruby - Getting Started'>Intro to Ruby - Getting Started</a></li><li><a href='http://www.aeonscope.net/2009/02/18/intro-to-ruby-strings/' title='Intro to Ruby - Strings'>Intro to Ruby - Strings</a></li><li><a href='http://www.aeonscope.net/2009/02/19/intro-to-ruby-numbers/' title='Intro to Ruby - Numbers'>Intro to Ruby - Numbers</a></li><li><a href='http://www.aeonscope.net/2009/02/20/intro-to-ruby-ranges/' title='Intro to Ruby - Ranges'>Intro to Ruby - Ranges</a></li><li><a href='http://www.aeonscope.net/2009/02/23/intro-to-ruby-arrays/' title='Intro to Ruby - Arrays'>Intro to Ruby - Arrays</a></li><li><a href='http://www.aeonscope.net/2009/02/24/intro-to-ruby-hashes/' title='Intro to Ruby - Hashes'>Intro to Ruby - Hashes</a></li><li><a href='http://www.aeonscope.net/2009/02/25/intro-to-ruby-variables-and-scopes/' title='Intro to Ruby - Variables and Scopes'>Intro to Ruby - Variables and Scopes</a></li><li><a href='http://www.aeonscope.net/2009/02/26/intro-to-ruby-methods/' title='Intro to Ruby - Methods'>Intro to Ruby - Methods</a></li><li><a href='http://www.aeonscope.net/2009/02/27/intro-to-ruby-blocks/' title='Intro to Ruby - Blocks'>Intro to Ruby - Blocks</a></li><li><a href='http://www.aeonscope.net/2009/03/02/intro-to-ruby-classes/' title='Intro to Ruby - Classes'>Intro to Ruby - Classes</a></li><li><a href='http://www.aeonscope.net/2009/03/03/intro-to-ruby-modules/' title='Intro to Ruby - Modules'>Intro to Ruby - Modules</a></li><li><a href='http://www.aeonscope.net/2009/03/04/intro-to-ruby-conditionals/' title='Intro to Ruby - Conditionals'>Intro to Ruby - Conditionals</a></li><li><a href='http://www.aeonscope.net/2009/03/05/intro-to-ruby-loops/' title='Intro to Ruby - Loops'>Intro to Ruby - Loops</a></li><li><a href='http://www.aeonscope.net/2009/03/06/intro-to-ruby-exceptions/' title='Intro to Ruby - Exceptions'>Intro to Ruby - Exceptions</a></li><li><a href='http://www.aeonscope.net/2009/03/08/intro-to-ruby-testing/' title='Intro to Ruby - Testing'>Intro to Ruby - Testing</a></li><li>Intro to Ruby - Next Steps</li></ol></div> <div class='series_links'><a href='http://www.aeonscope.net/2009/03/08/intro-to-ruby-testing/' title='Intro to Ruby - Testing'>Previous in series</a> </div>]]></content:encoded>
			<wfw:commentRss>http://www.aeonscope.net/2009/03/08/intro-to-ruby-next-steps/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
