<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
	<channel>
		<title>paulofierro.com</title>
		<link>http://www.paulofierro.com/</link>
		<description>ramblings of a frozen flash dev</description>
		<language>en</language>
		<copyright>Copyright 2006, Paulo Fierro</copyright>
		<pubDate>Wed, 04 Apr 2012 15:49:01 +0200</pubDate>
		<lastBuildDate>Wed, 04 Apr 2012 15:49:01 +0200</lastBuildDate>
		<managingEditor>paulo@paulofierro.com</managingEditor>
		<webMaster>paulo@paulofierro.com</webMaster>
		<image>
			<url>http://www.paulofierro.com/images/rss_logo.jpg</url>
			<title>paulofierro.com</title>
			<link>http://www.paulofierro.com/</link>
		</image>

		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/PauloFierro" /><feedburner:info uri="paulofierro" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>59.57</geo:lat><geo:long>10.42</geo:long><item>
			<title>Setting up a fresh Lion for Ruby development</title>
			<link>http://feedproxy.google.com/~r/PauloFierro/~3/G1acaphkrpQ/</link>
			<description>&lt;p&gt;A few weeks back I decided to take the plunge and wipe my machine and set it up from scratch. The main reason being I was running out of space on my SSD and I just wanted to see what a fresh Lion install would be like.&lt;/p&gt;

&lt;p&gt;Let me tell you, its FAST! Totally worth it. It did take me some time to find the right resources and shave some yaks so this is more of a guide for future-me to save some time. If you do carry on reading from this point I assume you know what you're doing :)&lt;/p&gt;

&lt;p&gt;So now that everything is wiped and fresh and new (backed up of course) the main task is setting up ye old dev environment. Lets start at the beginning.&lt;/p&gt;

&lt;h2&gt;Xcode&lt;/h2&gt;
&lt;p&gt;Head over to the Mac App Store and download Xcode. Once you install it you'll find that it no longer lives in &lt;code&gt;/Developer&lt;/code&gt;. Its been moved to &lt;code&gt;/Applications&lt;/code&gt; and its command line tools are no longer in the &lt;code&gt;$PATH&lt;/code&gt; on the command line.&lt;/p&gt;

&lt;p&gt;We don't have to add them ourselves, simply start up Xcode, go to Preferences and then Downloads &gt; Components. Click on the "Install" button next to "Command Line Tools".&lt;/p&gt;

&lt;p&gt;&lt;a href="http://paulofierro.com/images/xcode-tools.png" target="_blank"&gt;&lt;img src="http://paulofierro.com/images/xcode-tools.png" width="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;Heroku&lt;/h2&gt;
&lt;p&gt;If you're deploying stuff on Heroku, &lt;a href="https://toolbelt.heroku.com/"&gt;grab the toolbelt here&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;Homebrew&lt;/h2&gt;
&lt;p&gt;Previously I was using MacPorts, but after hearing so many great things about Homebrew I took the plunge. Its simply a great package manager and you can &lt;a href="https://github.com/mxcl/homebrew/wiki/installation"&gt;download it here&lt;/a&gt;. For example, OS X doesn't ship with &lt;code&gt;wget&lt;/code&gt;, so to install it you can simply run the following on the command line:&lt;/p&gt;

&lt;code&gt;brew install wget&lt;/code&gt;

&lt;p&gt;Done. Moving on.&lt;/p&gt;

&lt;h2&gt;RVM&lt;/h2&gt;
&lt;blockquote&gt;RVM is a command-line tool which allows you to easily install, manage, and work with multiple ruby environments from interpreters to sets of gems.&lt;/blockquote&gt;
&lt;p&gt;What it says on the tin. It allows you to easily install multiple versions of Ruby on your system. It also allows you create gem sets and swap between them. To install:&lt;/p&gt;
&lt;code&gt;bash -s stable &lt; &lt;(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)&lt;/code&gt;
&lt;p&gt;Then:&lt;/p&gt;
&lt;code&gt;source ~/.rvm/scripts/rvm&lt;/code&gt;
&lt;p&gt;Now we're ready to install Ruby! The only problem is that with Xcode 4 the provided compiler (&lt;code&gt;gcc&lt;/code&gt;) is LLVM based and not yet fully supported by Ruby and gems. Now before you go hunting for an older &lt;code&gt;gcc&lt;/code&gt; (which I did) its not necessary.&lt;/p&gt;
&lt;p&gt;To install Ruby 1.9.2 (which is required for Heroku) enter:&lt;/p&gt;
&lt;code&gt;rvm install 1.9.2 --with-gcc=clang&lt;/code&gt;
&lt;p&gt;When that is done, lets check what version of Ruby we have set as the system default:&lt;/p&gt;
&lt;code&gt;ruby --version&lt;/code&gt;
&lt;p&gt;Mine said Ruby 1.8.7. Lets set 1.9.2 to be default:&lt;/p&gt;
&lt;code&gt;rvm use 1.9.2 --default&lt;/code&gt;
&lt;p&gt;If you run &lt;code&gt;ruby --version&lt;/code&gt; it should now say 1.9.2. If you ever want to go back to the system default simply enter &lt;code&gt;rvm system&lt;/code&gt;. So now we have an easy way of swapping Ruby versions and you can &lt;a href="http://seanbehan.com/mac-os-x/installing-and-using-rvm-on-mac-os-x-creating-gemsets-and-reverting-to-original-environment/"&gt;read more about it here.&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;Sublime Text&lt;/h2&gt;
&lt;p&gt;&lt;a href="http://www.sublimetext.com/"&gt;Sublime Text&lt;/a&gt; is my favourite editor of all time. Get it here. Read some &lt;a href="http://net.tutsplus.com/tutorials/tools-and-tips/sublime-text-2-tips-and-tricks/
"&gt;great tips and tricks here&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;MySQL&lt;/h2&gt;
&lt;p&gt;Previously I was using MAMP. However I had an issue installing the &lt;code&gt;do_mysql&lt;/code&gt; gem which is required for &lt;code&gt;dm-mysql-adapter&lt;/code&gt; I was using with &lt;a href="http://datamapper.org/"&gt;Datamapper&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Long story short I found the easiest thing to do was install mysql via brew instead of using MAMP. So to start off:&lt;/p&gt;
&lt;code&gt;brew install mysql&lt;/code&gt;
&lt;p&gt;Next to configure the installation (all one line):&lt;/p&gt;
&lt;code&gt;mysql_install_db --verbose --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp&lt;/code&gt;

&lt;p&gt;To get it to run on startup, first we have to create the directory if it doesn't exist:&lt;/p&gt;
&lt;code&gt;mkdir -p ~/Library/LaunchAgents&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Then we copy the mysql.plist over (the version number may have changed when you're reading this):&lt;/p&gt;
&lt;code&gt;cp /usr/local/Cellar/mysql/5.5.20/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/
&lt;/code&gt;

&lt;p&gt;Then we tell launchctl to load it on startup:&lt;/p&gt;
&lt;code&gt;launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist &lt;/code&gt;
&lt;p&gt;Now to set the password:&lt;/p&gt;
&lt;code&gt;mysqladmin -u root password {new-password}&lt;/code&gt;
&lt;p&gt;Phew! Ok, now mysql is installed and running on port 3306. To create your first database simply enter:&lt;/p&gt;
&lt;code&gt;mysqladmin -u root -p create {your-database-name}&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;And some gem love...&lt;/h2&gt;
&lt;p&gt;Finally I recommend using &lt;a href="http://gembundler.com/"&gt;&lt;code&gt;bundler&lt;/code&gt;&lt;/a&gt; for gem management, &lt;a href="http://rubygems.org/gems/foreman"&gt;&lt;code&gt;foreman&lt;/code&gt;&lt;/a&gt; to run your app (especially if you're on Heroku), &lt;a href="http://github.com/alexch/rerun"&gt;&lt;code&gt;rerun&lt;/code&gt;&lt;/a&gt; to rerun your app when something changes, &lt;a href="http://datamapper.org/"&gt;&lt;code&gt;datamapper&lt;/code&gt;&lt;/a&gt; for &lt;a href="http://en.wikipedia.org/wiki/Object-relational_mapping"&gt;ORM&lt;/a&gt; and &lt;a href="http://www.sinatrarb.com/"&gt;&lt;code&gt;sinatra&lt;/code&gt;&lt;/a&gt; for happiness.

&lt;p&gt;Good luck!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/G1acaphkrpQ" height="1" width="1"/&gt;</description>
			<pubDate>Wed, 04 Apr 2012 15:46:40 +0200</pubDate>
			<comments>http://www.paulofierro.com/archives/575/#comments</comments>
			<guid isPermaLink="false">http://www.paulofierro.com/archives/575/</guid>
		<feedburner:origLink>http://www.paulofierro.com/archives/575/</feedburner:origLink></item>
	<item><title>Ghosts vs Monsters [del.icio.us]</title><link>http://feedproxy.google.com/~r/PauloFierro/~3/1FROV-Y0PcM/</link><category>opensource</category><category>corona</category><category>angrybirds</category><category>tutorial</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pfierro</dc:creator><pubDate>Fri, 10 Dec 2010 21:49:04 PST</pubDate><guid isPermaLink="false">http://www.delicious.com/url/13eb87e716e2020946d18261eee2ee88#pfierro</guid><description>&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/1FROV-Y0PcM" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://feeds.delicious.com/v2/rss/url/13eb87e716e2020946d18261eee2ee88</wfw:commentRss><feedburner:origLink>http://blog.anscamobile.com/2010/12/ghosts-vs-monsters-open-source-game-in-corona-sdk/</feedburner:origLink></item><item><title>CocoaDev: DebuggingAutorelease [del.icio.us]</title><link>http://feedproxy.google.com/~r/PauloFierro/~3/p9DItgUTb4M/index.pl</link><category>apple</category><category>cocoa</category><category>iphone</category><category>dev</category><category>objective-c</category><category>debugging</category><category>memorymanagement</category><category>autorelease</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pfierro</dc:creator><pubDate>Thu, 21 Oct 2010 14:32:28 PDT</pubDate><guid isPermaLink="false">http://www.delicious.com/url/cd3e2dc548e11f6f5fecf4726b0ea9f0#pfierro</guid><description>&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/p9DItgUTb4M" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://feeds.delicious.com/v2/rss/url/cd3e2dc548e11f6f5fecf4726b0ea9f0</wfw:commentRss><feedburner:origLink>http://www.cocoadev.com/index.pl?DebuggingAutorelease</feedburner:origLink></item><item><title>OpenScales [del.icio.us]</title><link>http://feedproxy.google.com/~r/PauloFierro/~3/KbFW3a1gz0U/</link><category>as3</category><category>development</category><category>opensource</category><category>maps</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pfierro</dc:creator><pubDate>Thu, 21 Oct 2010 04:19:33 PDT</pubDate><guid isPermaLink="false">http://www.delicious.com/url/35d01732aea21be607c346e1e7f15cbb#pfierro</guid><description>&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/KbFW3a1gz0U" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://feeds.delicious.com/v2/rss/url/35d01732aea21be607c346e1e7f15cbb</wfw:commentRss><feedburner:origLink>http://openscales.org/</feedburner:origLink></item><item><title>Not a Mobile Web - Merely a 320px wide one [del.icio.us]</title><link>http://feedproxy.google.com/~r/PauloFierro/~3/jt7BFJ6if3E/</link><category>css</category><category>design</category><category>mobile</category><category>UX</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pfierro</dc:creator><pubDate>Sat, 16 Oct 2010 10:41:41 PDT</pubDate><guid isPermaLink="false">http://www.delicious.com/url/ffcd025eab36c2dc9d6010c1a553ea2f#pfierro</guid><description>&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/jt7BFJ6if3E" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://feeds.delicious.com/v2/rss/url/ffcd025eab36c2dc9d6010c1a553ea2f</wfw:commentRss><feedburner:origLink>http://tripleodeon.com/2010/10/not-a-mobile-web-merely-a-320px-wide-one/</feedburner:origLink></item><item><title>UIImage, resolution independence and the iPhone 4′s Retina display [del.icio.us]</title><link>http://feedproxy.google.com/~r/PauloFierro/~3/Y6UHuercvB4/</link><category>ios</category><category>retina</category><category>programming</category><category>uiimage</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pfierro</dc:creator><pubDate>Wed, 15 Sep 2010 02:38:23 PDT</pubDate><guid isPermaLink="false">http://www.delicious.com/url/1463ec1ae5eac5b2635696cea622a5be#pfierro</guid><description>&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/Y6UHuercvB4" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://feeds.delicious.com/v2/rss/url/1463ec1ae5eac5b2635696cea622a5be</wfw:commentRss><feedburner:origLink>http://atastypixel.com/blog/uiimage-resolution-independence-and-the-iphone-4s-retina-display/</feedburner:origLink></item><item><title>xJSFL - The rapid development framework for extending Adobe Flash [del.icio.us]</title><link>http://feedproxy.google.com/~r/PauloFierro/~3/kQLhyZiSKqo/</link><category>actionscript</category><category>dev</category><category>flash</category><category>javascript</category><category>jsfl</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pfierro</dc:creator><pubDate>Fri, 27 Aug 2010 01:05:56 PDT</pubDate><guid isPermaLink="false">http://www.delicious.com/url/442fc40b5aa93210c012c89fbec3bbdf#pfierro</guid><description>&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/kQLhyZiSKqo" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://feeds.delicious.com/v2/rss/url/442fc40b5aa93210c012c89fbec3bbdf</wfw:commentRss><feedburner:origLink>http://www.xjsfl.com/</feedburner:origLink></item><item><title>14 Essential Xcode Tips, Tricks and Resources for iPhone Devs [del.icio.us]</title><link>http://feedproxy.google.com/~r/PauloFierro/~3/l2RmCSOZLlo/</link><category>apple</category><category>iphone</category><category>objective-c</category><category>programming</category><category>development</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pfierro</dc:creator><pubDate>Thu, 29 Jul 2010 05:49:15 PDT</pubDate><guid isPermaLink="false">http://www.delicious.com/url/f2c412a99c5ace8e3dddb7986fda0b2b#pfierro</guid><description>&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/l2RmCSOZLlo" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://feeds.delicious.com/v2/rss/url/f2c412a99c5ace8e3dddb7986fda0b2b</wfw:commentRss><feedburner:origLink>http://www.mobileorchard.com/14-essential-xcode-tips-tricks-and-resources-for-iphone-devs/</feedburner:origLink></item><item><title>OpenFlow [del.icio.us]</title><link>http://feedproxy.google.com/~r/PauloFierro/~3/fjzuDd-t4Js/OpenFlow</link><category>cocoa</category><category>code</category><category>development</category><category>iphone</category><category>obj-c</category><category>openflow</category><category>coverflow</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pfierro</dc:creator><pubDate>Mon, 26 Jul 2010 06:46:56 PDT</pubDate><guid isPermaLink="false">http://www.delicious.com/url/65b56e5744249a6f8f5e15b844c076e9#pfierro</guid><description>&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/fjzuDd-t4Js" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://feeds.delicious.com/v2/rss/url/65b56e5744249a6f8f5e15b844c076e9</wfw:commentRss><feedburner:origLink>http://github.com/thefaj/OpenFlow</feedburner:origLink></item><item><title>Some Flash Android Components [del.icio.us]</title><link>http://feedproxy.google.com/~r/PauloFierro/~3/hu5FOKM3WxU/</link><category>air</category><category>android</category><category>as3</category><category>flash</category><category>mobile</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pfierro</dc:creator><pubDate>Fri, 23 Jul 2010 00:24:54 PDT</pubDate><guid isPermaLink="false">http://www.delicious.com/url/dc0b5495cbc95af26405532876934aee#pfierro</guid><description>&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/hu5FOKM3WxU" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://feeds.delicious.com/v2/rss/url/dc0b5495cbc95af26405532876934aee</wfw:commentRss><feedburner:origLink>http://blog.kevinhoyt.org/?p=548</feedburner:origLink></item><item><title>Apigee: API Console [del.icio.us]</title><link>http://feedproxy.google.com/~r/PauloFierro/~3/S1Xb8KXYJao/</link><category>api</category><category>console</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">pfierro</dc:creator><pubDate>Mon, 12 Jul 2010 08:36:38 PDT</pubDate><guid isPermaLink="false">http://www.delicious.com/url/5c3628e2523ccff77ec550d22fbfb281#pfierro</guid><description>&lt;img src="http://feeds.feedburner.com/~r/PauloFierro/~4/S1Xb8KXYJao" height="1" width="1"/&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://feeds.delicious.com/v2/rss/url/5c3628e2523ccff77ec550d22fbfb281</wfw:commentRss><feedburner:origLink>http://app.apigee.com/console/</feedburner:origLink></item></channel>
</rss>

