<?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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Global Nerdy &#187; Ruby</title>
	<atom:link href="http://www.globalnerdy.com/tag/ruby/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.globalnerdy.com</link>
	<description>Tech Evangelist Joey deVilla on Shopify, startups, software development, tech news and other nerdy stuff</description>
	<lastBuildDate>Wed, 08 Feb 2012 21:54:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>WAT? A Funny Look at Ruby and JavaScript Oddities</title>
		<link>http://www.globalnerdy.com/2012/01/28/wat-a-funny-look-at-ruby-and-javascript-oddities/</link>
		<comments>http://www.globalnerdy.com/2012/01/28/wat-a-funny-look-at-ruby-and-javascript-oddities/#comments</comments>
		<pubDate>Sat, 28 Jan 2012 19:48:29 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Video]]></category>
		<category><![CDATA[WTF]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/?p=9574</guid>
		<description><![CDATA[The Urban Dictionary definition of &#34;wat&#34; is &#34;the only proper response to something that makes absolutely no sense&#34;. The concept of wat is covered a little more completely on its page in Know Your Meme. &#34;Wat&#34; is also the title of a funny demo of Ruby and JavaScript oddities presented by Gary Bernhardt at CodeMash [...]]]></description>
			<content:encoded><![CDATA[<p></p><p style="text-align: center"><a href="https://www.destroyallsoftware.com/talks/wat"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="Wat" border="0" alt="WAT: A donkey in an orange raincoat, standing on the deck of ship holding a tabby cat" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2012/01/wat.jpg" width="500" height="356" /></a></p>
<p>The <a href="http://www.urbandictionary.com/define.php?term=wat">Urban Dictionary definition of &quot;wat&quot;</a> is &quot;the only proper response to something that makes absolutely no sense&quot;. The concept of wat is covered a little more completely on <a href="http://knowyourmeme.com/memes/wat">its page in Know Your Meme</a>.</p>
<p style="text-align: center"><a href="https://www.destroyallsoftware.com/talks/wat"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="Darth Wat" border="0" alt="Darth Vader standing in the ocean, pouring water from a Brita pitcher into a plastic jug" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2012/01/darth-wat.jpg" width="400" height="421" /></a></p>
<p>&quot;Wat&quot; is also the title of a funny demo of Ruby and JavaScript oddities presented by <a href="https://twitter.com/#!/garybernhardt">Gary Bernhardt</a> at <a href="http://codemash.org/">CodeMash</a> 2012, a rather unlikely tech conference &#8212; it takes place in <a href="http://en.wikipedia.org/wiki/Sandusky,_Ohio">Sandusky, Ohio</a>, in Ohio&#8217;s largest indoor waterpark. (If you just said &quot;wat&quot; right now, you&#8217;ve used the word correctly.)</p>
<p>In the video, you see this classic wat bit about undefined variables and assignment in Ruby:</p>
<p style="text-align: center"><a href="https://www.destroyallsoftware.com/talks/wat"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="Ruby Wat" border="0" alt="Screenshot of an irb session full of wat" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2012/01/ruby-wat.jpg" width="600" height="399" /></a></p>
<p>You&#8217;ll also marvel at the way JavaScript treats (array + array) vs. (array + object) vs. (object + array) vs. (object + object):</p>
<p style="text-align: center"><a href="https://www.destroyallsoftware.com/talks/wat"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="JavaScript Wat" border="0" alt="Screenshot of a jsc session full of wat" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2012/01/javascript-wat.jpg" width="600" height="258" /></a></p>
<p><a href="https://www.destroyallsoftware.com/talks/wat">Watch the video</a>, and wait for that final slide, which is pure, hilarious wat!</p>
<p class="alert"><a href="http://www.shopify.com/technology/5370262-wat-a-funny-look-at-ruby-and-javascript-oddities">This article also appears in the Shopify Technology Blog.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2012/01/28/wat-a-funny-look-at-ruby-and-javascript-oddities/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>ClearFit&#8217;s Looking for a Rails Developer</title>
		<link>http://www.globalnerdy.com/2011/11/08/clearfits-looking-for-a-rails-developer/</link>
		<comments>http://www.globalnerdy.com/2011/11/08/clearfits-looking-for-a-rails-developer/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 06:38:44 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[help wanted]]></category>
		<category><![CDATA[jobs]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2011/11/08/clearfits-looking-for-a-rails-developer/</guid>
		<description><![CDATA[My friend Robert Nishimura’s looking for a Rails developer for his company, ClearFit, which is based in uptown Toronto. He sent me some details about the position he’s trying to fill; I’ve posted them below. If you’ve got the skills and if the position sounds interesting to you, you should drop him a line at [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="Clearfit" border="0" alt="Clearfit [hearts] Rails, GitHub and Amazon Web Services" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/11/clearfit.jpg" width="524" height="415" /></p>
<p><strong>My friend Robert Nishimura’s looking for a Rails developer for his company, </strong><a href="http://clearfit.com/"><strong>ClearFit</strong></a><strong>,</strong> which is based in uptown Toronto. He sent me some details about the position he’s trying to fill; I’ve posted them below. </p>
<p>If you’ve got the skills and if the position sounds interesting to you, you should drop him a line at <a href="mailto:robert@clearfit.com">robert@clearfit.com</a>!</p>
<h3>Company Information</h3>
<p><a href="http://clearfit.com/">ClearFit</a> is changing the way small businesses hire. Most people know that ‘fit’ is the most desirable attribute for employees and employers &#8212; that intangible sense that can’t be found in a resume and is difficult to glean from a job interview. It’s a huge problem &#8212; employers spend billions every year on staffing in Canada alone.</p>
<p>Most small business owners don’t know where to even start when hiring a new employee. Ask around for referrals, “pay and pray” with a job board or deal with an avalanche of resumes from Craigslist?&#160; </p>
<p>We have built the system that some describe as “an eHarmony for jobs”. We have over 2500 registered employers and tens of thousands of registered career seekers which barely scratches the surface of a multi-billion dollar market. All this and we just completed our first round of investment so we are poised for stellar growth.</p>
<p>We are located in the Yonge/Eglinton neighbourhood, strategically situated between 3 Starbucks and 3 minutes from Bulldog Coffee. We’re also upstairs from Copacabana Brazilian BBQ.</p>
<h3>Skills &amp; Requirements</h3>
<p><strong>Skills:</strong></p>
<ul>
<li>Minimum 2 years experience coding in Ruby on Rails</li>
<li>Minimum 2 years experience with HTML/CSS</li>
<li>Experience with Javascript (Prototype, JQuery)</li>
<li>Experience with Postgres SQL</li>
<li>Experience with Ubuntu/Nginx</li>
<li>Experience with GitHub </li>
</ul>
<p><strong>Bonus points:</strong></p>
<ul>
<li>Experience with Amazon EC2</li>
<li>Experience integrating with other web apps </li>
<li>Photoshop and front-end web development skillz</li>
<li>iOS development experience</li>
</ul>
<h3>What ClearFit Offers</h3>
<ul>
<li>Salary between $80K and $100K based on experience</li>
<li>Snacks and drinks in our kitchen </li>
<li>Wicked awesome coffee from our new Nespresso machine</li>
<li>15 days paid vacation per year</li>
<li>Full group benefit plan which includes vision, dental</li>
</ul>
<p>If this sounds like something you&#8217;re interested in, contact Robert Nishimura directly at <a href="mailto:robert@clearfit.com">robert@clearfit.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2011/11/08/clearfits-looking-for-a-rails-developer/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Salmagundi for Monday, August 22, 2011</title>
		<link>http://www.globalnerdy.com/2011/08/22/salmagundi-for-monday-august-22-2011/</link>
		<comments>http://www.globalnerdy.com/2011/08/22/salmagundi-for-monday-august-22-2011/#comments</comments>
		<pubDate>Mon, 22 Aug 2011 21:17:41 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[coffeescript]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/?p=8874</guid>
		<description><![CDATA[Welcome to another Salmagundi &#8212; a selection of some interesting techie stuff on the web! In his article Your Code is My Hell, all-round Ruby/Rails guru Avdi Grimm warns Ruby and Rails developers about a creeping exceptionalism that has been rearing its ugly head as of late. Many Ruby/Rails developers seem to be under the [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Welcome to another Salmagundi &#8212; a selection of some interesting techie stuff on the web!</p>
<p style="text-align: center;"><a href="http://avdi.org/devblog/2011/08/22/your-code-is-my-hell/"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/south_park_satan_large.jpg?110040" alt="" /></a></p>
<p>In his article <em style="font-weight: bold;"><a href="http://avdi.org/devblog/2011/08/22/your-code-is-my-hell/">Your Code is My Hell</a></em>, all-round Ruby/Rails guru <a href="http://avdi.org/devblog/about/">Avdi Grimm</a> warns Ruby and Rails developers about a creeping exceptionalism that has been rearing its ugly head as of late. Many Ruby/Rails developers seem to be under the impression that simply because Ruby and Rails do a lot to make programming easier, they can simply ignore things like good coding, good object design, design patterns and the SOLID principles and all those other practices and disciplines that good coders follow and exercise. Ruby&#8217;s a great programming language and Rails is a great web development framework (and I&#8217;m quite glad to return to them), but they&#8217;re not a free pass to code carelessly!</p>
<p style="text-align: center;"><a href="http://robots.thoughtbot.com/post/9251081564/coffeescript-spartan-javascript"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/coffeescript_300_grande.jpg?110042" alt="" /></a></p>
<p>Nick Quaranto from <a href="http://thoughtbot.com/">Thoughtbot</a> explains why he loves CoffeeScript, by way of the movie <em><a href="http://en.wikipedia.org/wiki/300_(film)">300</a>,</em> in <strong><em><a href="http://robots.thoughtbot.com/post/9251081564/coffeescript-spartan-javascript">CoffeeScript: Spartan JavaScript</a></em></strong>. &#8220;Writing JavaScript properly, and in an OO manner, requires you to be verbose,&#8221; writes Quaranto. &#8220;What I like best is that CoffeeScript is simply…spartan.&#8221; He covers the good as well as the bad (but it&#8217;s mostly good). If you&#8217;d like to try it out, <a href="http://coffeescript.org/">visit the CoffeeScript site to get started</a>.</p>
<p style="text-align: center;"><a href="http://avdi.org/devblog/2011/07/26/the-procedurefunction-block-convention-in-ruby/"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/blocks_large.jpg?110044" alt="" /></a></p>
<p>Here&#8217;s another one from Avdi Grimm (he&#8217;s got lots of good suggestions &#8212; you should check his blog regularly if you&#8217;re a Ruby/Rails developer): <strong><em><a href="http://avdi.org/devblog/2011/07/26/the-procedurefunction-block-convention-in-ruby/">The Procedure/Function Block Convention in Ruby</a></em></strong>. He&#8217;s got a clever idea for when to use &#8220;curly bracket&#8221; blocks (he suggests to use the for functional blocks) and when to use &#8220;do&#8230;end&#8221; blocks (he says to use them for procedural ones.</p>
<p style="text-align: center;"><a href="http://sandofsky.com/blog/git-workflow.html"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/assembly_line_large.jpg?110046" alt="" /></a></p>
<p>And finally, if you use Git, you&#8217;ll want to read Benjamin Sandofsky&#8217;s article, <strong><em><a href="http://sandofsky.com/blog/git-workflow.html">Understanding the Git Workflow</a></em></strong>. &#8220;If you&#8217;re fighting Git&#8217;s defaults,&#8221; he writes, &#8220;ask yourself why.&#8221; He suggests that your workflow should be:</p>
<ol>
<li>Create a private branch off a public branch.</li>
<li>Regularly commit your work to this private branch.</li>
<li>Once your code is perfect, clean up its history.</li>
<li>Merge the cleaned-up branch back into the public branch.</li>
</ol>
<p><a href="http://www.shopify.com/technology/3862572-salmagundi-for-monday-august-22-2011">This article also appears in the Shopify Technology Blog.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2011/08/22/salmagundi-for-monday-august-22-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>It&#8217;s Whyday!</title>
		<link>http://www.globalnerdy.com/2011/08/19/its-whyday/</link>
		<comments>http://www.globalnerdy.com/2011/08/19/its-whyday/#comments</comments>
		<pubDate>Fri, 19 Aug 2011 19:16:31 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[why the lucky stiff]]></category>
		<category><![CDATA[WhyDay]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/?p=8867</guid>
		<description><![CDATA[A hand-drawn copy of a comic panel from why&#8217;s (poignant) guide to Ruby on a traffic light in Austin, Texas. It&#8217;s August 19th, which in some circles is known as Whyday. If you&#8217;re not familiar with what this day&#8217;s about or where its name comes from, you might want to read our earlier article, Whyday [...]]]></description>
			<content:encoded><![CDATA[<p></p><p style="text-align: center;"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/chunky_bacon_large.jpg?109994" alt="" /><br /> <em>A hand-drawn copy of a comic panel from why&#8217;s (poignant) guide to Ruby on a traffic light in Austin, Texas.</em></p>
<p><strong>It&#8217;s August 19th, which in some circles is known as Whyday.</strong> If you&#8217;re not familiar with what this day&#8217;s about or where its name comes from, <a href="http://www.globalnerdy.com/2011/08/16/whyday-is-friday/">you might want to read our earlier article, <em>Whyday is Friday</em></a>. I like to think of this day as a reminder to bring a sense of whimsy, sharing, fun and wonder to your work, whether it&#8217;s programming or anything else.</p>
<p style="text-align: center;"><a href="http://instagr.am/p/KscIj/"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/whyday_expense_report_large.jpg?109996" alt="" /></a></p>
<p><strong><a href="https://twitter.com/#!/jessicaspacekat">Jessica Allen</a></strong> <a href="https://twitter.com/#!/jessicaspacekat/status/104610161867497472">tweeted</a> the <a href="http://instagr.am/p/KscIj/">photo</a> above: an expense report in the spirit of Whyday.</p>
<p style="text-align: center;"><a href="https://twitter.com/#!/RogervonOech/status/104609784015237120"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/roger_von_oech_tweet_large.jpg?109998" alt="" /></a></p>
<p><strong><a href="http://www.creativethink.com/">Roger von Oech</a></strong>, who wrote one of my favourite books &#8212; <a href="http://www.amazon.com/Whack-Side-Head-More-Creative/dp/0446674559"><em>A Whack on the Side of the Head</em></a> &#8212; <a href="https://twitter.com/#!/RogervonOech/status/104609784015237120">mentioned Whyday in a tweet today</a>!</p>
<p style="text-align: center;"><a href="https://github.com/txus/niki"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/emerson_large.jpg?110000" alt="" /></a></p>
<p>I must tip my hat to the appropriately-surnamed <strong><a href="https://twitter.com/#!/txustice">Josep M. Bach</a></strong>, whose Whyday contribution is <strong><a href="https://github.com/txus/niki">Niki</a></strong>, &#8220;the first stable, documented version of Niki, a ruby DSL to write songs&#8221;. Programming <em>and</em> music &#8212; what could be more fitting?</p>
<p style="text-align: center;"><a href="http://www.flickr.com/photos/76909011@N00/5140009298/in/set-72157625172155323/"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/chunky_bacon_barcelona_large.jpg?110002" alt="" /></a></p>
<p>_why&#8217;s cartoon foxes are everywhere. <a href="http://www.flickr.com/photos/76909011@N00/5140009298/in/set-72157625172155323/">This stencilled graffito</a> was found by <strong><a href="http://www.flickr.com/people/76909011@N00/">Janet Swisher</a></strong> in Barcelona, which I believe is quite far from where _why lives.</p>
<p style="text-align: center;"><a href="http://techiferous.com/2011/08/are-you-a-good-programmer"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/are_you_a_good_coder_large.jpg?110004" alt="" /></a></p>
<p><strong><a href="http://techiferous.com/about/">Wyatt Greene</a></strong>, on this blog <em><a href="http://techiferous.com/">Techiferous</a></em>, is celebrating Whyday with <a href="http://techiferous.com/2011/08/are-you-a-good-programmer/">an article about programming archetypes featuring _why-esque comic illustrations</a>. Nicely done!</p>
<p style="text-align: center;"><a href="http://gigism.blogspot.com/2011/08/celebrating-whyday.html"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/andrew_lenards_large.jpg?110006" alt="" /></a></p>
<p><strong><a href="https://twitter.com/#!/alenards">Andrew Lenards</a></strong>, who leads &#8220;a team of developers working on a larger scientific application&#8221; is <a href="http://gigism.blogspot.com/2011/08/celebrating-whyday.html">encouraging his developers to celebrate Whyday</a>. Well done, sir!</p>
<p style="text-align: center;"><a href="http://zvolkov.com/poignant_ru/"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/poignant_russian_large.jpg?110008" alt="" /></a></p>
<p><strong><a href="https://twitter.com/#!/zvolkov">Andrei Volkov</a></strong> tweeted: &#8220;I just MUST use #whyday to promote <a href="http://zvolkov.com/poignant_ru/">my translation of Why&#8217;s Poignant Guide to Ruby into Russian</a>.&#8221; Keep at it, Andrei, and&#8230;<em>spaceeba!</em></p>
<p style="text-align: center;"><em><a href="http://rubylearning.com/blog/2011/08/19/free-course-on-rubys-cross-platform-gui-app-toolkit/"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/shoes_large.jpg?110010" alt="" /></a><br /> </em></p>
<p><a href="http://rubylearning.com/blog/2011/08/19/free-course-on-rubys-cross-platform-gui-app-toolkit/">The RubyLearning blog is celebrating WhyDay by announcing the 8th batch of their &#8220;Ruby with Shoes&#8221; course.</a> <a href="http://shoesrb.com/">Shoes</a> is a great little Ruby GUI toolkit that _why whipped up, and there&#8217;s nothing that makes learning a new programming language fun like the immediate satisfaction and feedback of a desktop app.</p>
<p style="text-align: center;"><a href="http://gogol.herokuapp.com/"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/gogol_large.jpg?110012" alt="" /></a></p>
<p><a href="http://gogol.herokuapp.com/">Gogol</a> is a game that&#8217;s written in Ruby, minimalist and brain-teasing. This is right up _why&#8217;s alley.</p>
<p style="text-align: center;"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/joey_on_computer_large.jpg?110014" alt="" /></p>
<p>As for me, I&#8217;m doing my bit to spread the word about Whyday, working on a few ideas to help people get better at programming and ecommerce (which includes <a href="http://www.youtube.com/watch?v=sQ-vlJv2dWE">making more videos like this one</a>), mixing music with coding with the assistance of my trusty travelling accordion as well as relearning all the Ruby I&#8217;ve forgotten over the past couple of years working at the Empire and sharing what I learn along the way.</p>
<p style="text-align: center;"><a href="http://www.joeydevilla.com/2007/05/25/playing-accordion-at-the-railsconf-keynote/"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/joey-devilla-and-chad-fowler-at-railsconf_large.jpg?110016" alt="" /></a></p>
<p>I feel incredibly fortunate to be at Shopify (I&#8217;ve been with the company a shade more than three months), away from the Fortune 50 corporate world and back in the land of startups, programming languages like Ruby and CoffeeScript, and where whimsy and the willingness to take chances and try new things is greatly appreciated. It&#8217;s been a wild and crazy year for me both personally and professionally, and it&#8217;s only increased my appreciation for bringing the spirit and sense of fun to my work in the same way that _why did. I hope Whyday does the same for you.</p>
<p style="text-align: center;"><img src="http://cdn.shopify.com/s/files/1/0070/7032/files/catacombs_large.jpg?110018" alt="" /></p>
<p>Happy Whyday, and happy hacking!</p>
<p>(<strong>If you&#8217;re doing or did something interesting for Whyday,</strong> <a href="mailto:joey@shopify.com">drop me a line</a> and I&#8217;ll mention you and your activity in an upcoming blog post!)</p>
<p class="alert"><a href="http://www.shopify.com/technology/3839792-its-whyday">This article also appears in the Shopify Technology Blog.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2011/08/19/its-whyday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Whyday is Friday</title>
		<link>http://www.globalnerdy.com/2011/08/16/whyday-is-friday/</link>
		<comments>http://www.globalnerdy.com/2011/08/16/whyday-is-friday/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 17:08:14 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[creativity]]></category>
		<category><![CDATA[legacy]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[why the lucky stiff]]></category>
		<category><![CDATA[WhyDay]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/?p=8839</guid>
		<description><![CDATA[Clever programmer. Multimedia and performance artist. Whimsical writer. Oddball performer. Howard Hughes-style recluse. All of these phrases are apt descriptions of the guy most of us know only as why the lucky stiff, or _why for short. Bold, Brief and Gone If _why had a personal motto, it might be &#8220;Be bold, be brief, be [...]]]></description>
			<content:encoded><![CDATA[<p></p><p style="text-align: center;"><img src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/08/whys_poignant_guide.jpg" alt="Photo of why the lucky stiff's book 'Why's (Poignant) Guide to Ruby' in hardvoer form, backed by paper cutouts of why's cartoon characters." width="600" height="450" /></p>
<p>Clever programmer. Multimedia and performance artist. Whimsical writer. Oddball performer. Howard Hughes-style recluse. All of these phrases are apt descriptions of the guy most of us know only as <strong><a href="http://en.wikipedia.org/wiki/Why_the_lucky_stiff">why the lucky stiff</a></strong>, or <strong>_why</strong> for short.</p>
<h2>Bold, Brief and Gone</h2>
<p style="text-align: center;"><img src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/05/poignantguidefoxes.jpg" alt="'Cartoon foxes' comic from why's (poignant) guide to Ruby" width="600" height="174" /></p>
<p><strong>If _why had a personal motto, it might be &#8220;Be bold, be brief, be gone.&#8221;</strong> The bold part was plain to see. His Ruby tutorial, <strong><em><a href="http://en.wikipedia.org/wiki/Why%27s_(poignant)_Guide_to_Ruby">why&#8217;s (poignant) guide to Ruby</a></em></strong>, broke away from the style of your typical programming books and went for the wild and whimsical. Only _why would take a topic like metaprogramming &#8212; something that confounds a number of experienced developers, never mind the newbies he was trying to reach in his book &#8212; <a href="http://mislav.uniqpath.com/poignant-guide/dwemthy/">and turn it into a fantastic adventure game exercise, complete with comics</a>. Few developers have the breadth of skill and interest to make projects like <a href="http://tryruby.org/">Try Ruby</a> (a browser-based Ruby shell with instructional guides) to <a href="http://camping.rubyforge.org/">Camping</a> (a Rails-like web app microframework smaller than 4K) to <a href="http://shoesrb.com/">Shoes</a> and <a href="http://hackety-hack.com/">Hackety Hack</a> (a UI toolkit for &#8220;web-like desktop apps&#8221; and a development environment to teach children programming) to <a href="http://viewsourcecode.org/why/redhanded/inspect/parkPlaceTheS3CloneYouVeBeenAlwaysAlmostWantingToSaveFifteenCentsWith.html">Park Place</a> (a &#8220;nearly complete clone&#8221; of Amazon&#8217;s S3). There may be people out there who&#8217;d be able to pull off a music-and-programming performance like the one he did at the first RailsConf, but they haven&#8217;t yet presented themselves to the world.</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" title="why non-conformist certificate.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/08/why-non-conformist-certificate.jpg" border="0" alt="Why non conformist certificate" width="600" height="401" /></p>
<p><strong>The &#8220;brief&#8221; and &#8220;gone&#8221; bits take a little more explaining.</strong> _why&#8217;s notoriety rose with <a href="http://www.ruby-lang.org/en/">Ruby&#8217;s</a> popularity, which in turn was connected to <a href="http://rubyonrails.org/">Ruby on Rails</a>. I remember reading some posts on one of his blogs, <a href="http://viewsourcecode.org/why/redhanded/"><em>RedHanded</em></a>, as far back as late 2003, and the (poignant) guide surfaced in 2004 and found its way into print in 2005, when the chapter A Quick (and Hopefully Painless) Ride Through Ruby (with Cartoon Foxes) appeared in the Apress book <em><a href="http://www.amazon.com/Best-Software-Writing-Selected-Introduced/dp/1590595009">The Best Software Writing I: Selected and Introduced by Joel Spolsky</a></em>. His music-and-code extravanganzas at South by Southwest, O&#8217;Reilly&#8217;s Open Source conference and the first RailsConf cemented his rep as the programmer who was also a performance artist and by 2008, people were seeking him out for all sorts of things, from personal appearances (Pete Forde tried to get him to come to RubyFringe, but convincing him to leave the US proved to be impossible) to commissioning body art (<a href="http://leahculver.com/">Leah Culver</a> <a href="http://www.globalnerdy.com/2009/01/30/leahs-tattoo/">got him to design a tattoo for her</a>).</p>
<p style="text-align: center;"><img src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/01/leah-culver.jpg" alt="Leah Culver shows off her tattoo by why the lucky stiff" width="600" height="450" /></p>
<p style="text-align: center;"><img src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/01/leah-culver-tattoo.jpg" alt="Close-up of Leah Culver's tattoo by why the lucky stiff" width="600" height="450" /></p>
<p>All in all, _why&#8217;s popular presence on the web spans about 5 or 6 years.</p>
<p style="text-align: center;"><img src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/08/why_missing_milk_carton.jpg" alt="Milk carton with drawing of _why in the 'missing child' picture" width="284" height="480" /></p>
<p><strong>For reasons still unknown to the Ruby community at large &#8212; perhaps Matz knows and is sworn to secrecy &#8212; <a href="http://www.globalnerdy.com/2009/08/20/how-and-where-is-_why/">_why &#8220;disappeared&#8221; on August 19, 2009</a>.</strong> It&#8217;s not that he disappeared in the <a href="http://en.wikipedia.org/wiki/D._B._Cooper">D.B. Cooper</a> sense, but in the <a href="http://en.wikipedia.org/wiki/J.D._Salinger">J.D. Salinger</a> sense: not as a legal missing person, but as a person determined to remove himself and his activities from the public eye. In the span of a day, he removed as many traces of his online presence as he could: the blogs, the sites, the projects. <a href="http://viewsourcecode.org/why/">Luckily, there&#8217;s a lot of his work floating around thanks to his open sourcing and Creative Commons-ing of his works and the curation of many techies who appreciated them.</a></p>
<h2>WhyDay Declared</h2>
<p><img style="display: block; margin-left: auto; margin-right: auto;" title="whyday.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/08/whyday.jpg" border="0" alt="Whyday" width="600" height="206" /></p>
<p><strong>A year after his disappearance from the online world, <a href="http://whyday.org/">Glenn Vandenburg declared the first anniversary of his disappearance as &#8220;Whyday&#8221;</a>.</strong> Whyday is a day to celebrate _why&#8217;s contributions to the culture and communities that have grown around the Ruby programming language and all the software built upon it. &#8220;We in the Ruby community wish him well,&#8221; goes the text on the Whyday site, &#8220;but we really miss him.&#8221;</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" title="nobody knows shoes.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/08/nobody-knows-shoes.jpg" border="0" alt="A spread from 'Nobody Knows Shoes, the documentation for Shoes, _why's UI toolkit for desktop apps" width="600" height="450" /></p>
<p>The <a href="http://whyday.org/">Whyday site</a> goes on:</p>
<blockquote>
<p>Why gave us a lot of cool software and other things, but what he really gave to the Ruby community was a spirit of freedom, whimsy, and creativity. When Why took the stage at the first RailsConf, in 2006, he strapped on his guitar, walked to the microphone, and yelled &#8220;Put your best practices away!&#8221;</p>
<p>Discipline, care, and responsibility are important; we owe our customers, employers, team members, and families to take our work seriously. At the same time, though, we need to play. If we don&#8217;t occasionally break out of the mold of our &#8220;best practices,&#8221; we can easily miss many wonderful ideas, some of which can bear rich fruit (just as Camping and <a href="http://hpricot.com/">Hpricot</a> led to <a href="http://www.sinatrarb.com/">Sinatra</a> and <a href="http://nokogiri.org/">Nokogiri</a>).</p>
<p>This year, on August 19, celebrate Whyday. Set aside that day to remember Why&#8217;s contributions to our community and culture by hacking just for the fun and joy of it.</p>
</blockquote>
<p style="text-align: center;"><img src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/08/whywithbanjo.jpg" alt="Why the lucky stiff and the Thirsty Cups playing at SxSW" width="600" height="450" /></p>
<p>Among the things people were encouraged to do on Whyday were:</p>
<ul>
<li>See how far you can push some weird corner of Ruby (or some other language).</li>
<li>Choose a tight constraint (for example, 4 kilobytes of source code) and see what you can do with it.</li>
<li>Try that wild idea you&#8217;ve been sitting on because it&#8217;s too crazy.</li>
<li>You can work to maintain some of the software Why left us (although Why is more about creating beautiful new things than polishing old things).</li>
<li>On the other hand, Why is passionate about teaching programming to children. So improvements to Hackety Hack would be welcome.</li>
<li>Or take direct action along those lines, and teach Ruby to a child.</li>
</ul>
<p><a href="http://www.globalnerdy.com/2010/08/19/whyday-today-august-19th/">I made a note of WhyDay on my personal tech blog, <em>Global Nerdy</em>,</a> as well as <a href="http://blogs.msdn.com/b/cdndevs/archive/2010/08/19/whyday_2D00_today_2D00_august_2D00_19th.aspx">the blog I got paid to write for</a> (I was a Microsoft employee at the time). I didn&#8217;t get the chance to do as much as I&#8217;d like in the spirit of Whyday, probably because I was knee deep in getting ready for TechDays, a series of cross-country conferences run by The Empire.</p>
<h2>WhyDay 2011</h2>
<p><img style="display: block; margin-left: auto; margin-right: auto;" title="youre leaving us here.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/08/youre-leaving-us-here.jpg" border="0" alt="Youre leaving us here" width="600" height="849" /></p>
<p><strong>Here we are, a year after the first Whyday.</strong> I&#8217;ve done some quick searching and haven&#8217;t found any mention of celebrating Whyday this year, so I&#8217;ve taken it upon myself to spread the word. It probably helps that I&#8217;m no longer at Microsoft and now in <a href="http://www.shopify.com/">Shopify</a>, which not only builds stuff on Ruby and Rails; it was also co-founded by <a href="https://twitter.com/#!/tobi">an original member of the Rails core team</a>, and <a href="http://ofps.oreilly.com/titles/9780596521424/">people here are writing the next edition of <em>Rails in a Nutshell</em></a>. This place just oozes Ruby.</p>
<p>_why might not want to be celebrated, but in my mind, _why isn&#8217;t the real reason that Whyday should be celebrated anyway. <strong>I think it&#8217;s more about the spirit of what _why did: really getting to know the tools you&#8217;re using, helping people understand those tools using unorthodox means whenever conventional means just don&#8217;t get the point across, and building great tools when the tools you want don&#8217;t exist.</strong></p>
<p>It&#8217;s about finding joy and delight in your craft, and bringing to it a sense of play. It&#8217;s about making things better. All that is in the spirit of why I quit a high-paying, cushy job and joined a rag-tag team of techies in a startup, and this year, I&#8217;m going to try to celebrate Whyday &#8212; this Friday, August 19th, 2011, a little more properly.</p>
<p>How about you?</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" title="last page.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/08/last-page.jpg" border="0" alt="Last page" width="600" height="992" /></p>
<p class="alert"><a href="http://www.shopify.com/technology/3822402-whyday-is-friday">This article also appears in the Shopify Technology Blog.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2011/08/16/whyday-is-friday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby Foo</title>
		<link>http://www.globalnerdy.com/2011/05/30/ruby-foo/</link>
		<comments>http://www.globalnerdy.com/2011/05/30/ruby-foo/#comments</comments>
		<pubDate>Mon, 30 May 2011 18:32:36 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[books]]></category>
		<category><![CDATA[learning]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2011/05/30/ruby-foo/</guid>
		<description><![CDATA[After three years away from all but the most trivial of noodling with the Ruby programming language, I have become a Ruby Foo (as in Mr. T’s catchphrase, “I pity the foo’!”). I am severely out of practice with Ruby, and with two versions having appeared since I last made a living with Rails, even [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="ruby foo" border="0" alt="ruby foo" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/05/ruby-foo.jpg" width="600" height="402" /></p>
<p><strong>After three years away from all but the most trivial of noodling with the <a href="http://www.ruby-lang.org/en/">Ruby programming language</a>, I have become a Ruby Foo </strong>(as in Mr. T’s catchphrase, <a href="http://www.youtube.com/watch?v=DJnKm6ftPu0">“I pity the foo’!”</a>). I am severely out of practice with Ruby, and with <em>two </em>versions having appeared since I last made a living with Rails, even the act of creating a new project is completely different. Since Ruby is the preferred back-end programming language at Shopify and I am the Platform Evangelist, it’s time for me to <a href="https://www.stephencovey.com/7habits/7habits-habit7.php">“sharpen the saw”</a>.</p>
<p><a href="http://obiefernandez.com/"><img style="background-image: none; border-right-width: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="obie" border="0" alt="obie" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/05/obie.jpg" width="600" height="449" /></a></p>
<p>Luckily for me, I ran into <a href="http://obiefernandez.com/">Obie Fernandez</a> at the <a href="http://sxsw.com/interactive">South by Southwest Interactive conference</a> back in March. We sat down for a coffee and he told me about what was happening with <a href="http://www.hashrocket.com/">Hashrocket</a> and I told him that I was a hair’s breadth away from joining <a href="http://shopify.com/">Shopify</a>.</p>
<p>“I’ve been away from Ruby long enough that I’m probably back at newbie level again,” I told Obie between sips of latte made with overcooked beans. “I did it for a bit at the beginning using <a href="http://ironruby.net/">IronRuby</a>, but between doing all the <a href="http://msdn.microsoft.com/en-us/vcsharp/default">C#</a> and <a href="http://php.net/">PHP</a> and <a href="http://blog.jimmy.schementi.com/2010/08/start-spreading-news-future-of-jimmy.html">the open source ‘Iron’ languages dying of neglect at Microsoft</a>, I’m severely out of practice. I thinking of joining Shopify, and let’s face it: I don’t want to look like an ignoramus in the presence of rock stars like <a href="http://twitter.com/#!/tobi">Tobi</a>, <a href="http://twitter.com/#!/codyfauser">Cody</a> and <a href="http://twitter.com/#!/edwardog">Edward</a>.”</p>
<p>“Give me your email,” said Obie, “and I can do something to help.” Of course he could – he’s the series editor of Addison-Wesley’s Professional Ruby series of books.</p>
<p>Shortly after South by Southwest, a couple of links to PDF editions appeared in my inbox. Thanks, Obie!</p>
<p><a href="http://www.amazon.com/Eloquent-Ruby-Addison-Wesley-Professional/dp/0321584104"><img style="background-image: none; border-right-width: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="eloquent ruby" border="0" alt="eloquent ruby" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/05/eloquent-ruby.jpg" width="382" height="500" /></a></p>
<p><strong>The first link was to <em><a href="http://www.amazon.com/Eloquent-Ruby-Addison-Wesley-Professional/dp/0321584104">Eloquent Ruby</a></em>,</strong> Russ Olsen’s guide to speaking idiomatic Ruby and getting the most out of the Ruby programming language. It’s a breezy read, written in the same conversational tone that Olsen used in <em><a href="http://www.amazon.com/Design-Patterns-Ruby-Russ-Olsen/dp/0321490452">Design Patterns in Ruby</a></em>, and the book is broken down into 31 bite-size chapters about a dozen pages in length. Each chapter’s title is some principle for programming eloquent Ruby – the first few are “Write Code That Looks Like Ruby”, “Choose the Right Control Structure” and “Take Advantage of Ruby’s Smart Collections” – and each explains that principle, provides code, shows you where you can find the principles used in actual, working projects. The book straddles the line between tutorial and reference; it’s written in tutorial style, but it’s organized so well that it might as well be a reference for those parts of Ruby that you might not use often (but should) as well as for those parts you keep forgetting (in my case, I <em>always</em> end up having to look up metaprogramming). I’ve been going through it at about a chapter an evening, and I’ve been getting smarter each time. Whether you’re coming back to Ruby after a hiatus like I am or if you just simply want to get better at Ruby, you should have this book in your library.</p>
<p class="note">If you’d like to know more about <em>Eloquent Ruby</em> and its author, Russ Olsen, <a href="http://www.infoq.com/articles/olsen-eloquent-ruby">check out this interview with him at<em> InfoQ</em></a>.</p>
<p><a href="http://www.amazon.com/Ruby-Rails-Tutorial-Addison-Wesley-Professional/dp/0321743121"><img style="background-image: none; border-right-width: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="ruby on rails 3 tutorial" border="0" alt="ruby on rails 3 tutorial" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/07/ruby-on-rails-3-tutorial.jpg" width="375" height="489" /></a></p>
<p><strong>I have yet to properly sink my teeth into <em><a href="http://www.amazon.com/Ruby-Rails-Tutorial-Addison-Wesley-Professional/dp/0321743121">Ruby on Rails 3 Tutorial</a></em></strong> but a quick scan of the book has shown that it’s quite promising, and <a href="http://www.amazon.com/Ruby-Rails-Tutorial-Addison-Wesley-Professional/product-reviews/0321743121/ref=dp_top_cm_cr_acr_txt?ie=UTF8&amp;showViewpoints=1">the Amazon reviews</a> are bolstering my belief.</p>
<p>I’ll be writing from time to time about my return to Ruby and Rails in this “Ruby Foo” series of posts, and I hope that whether you’re new to the language, returning after a break like me or aiming for “guru” status, that you’ll check out this blog regularly for notes on my explorations and what I’ve learned.</p>
<p class="alert"><a href="http://www.shopify.com/technology/3301282-ruby-foo">This article also appears in the Shopify Technology blog.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2011/05/30/ruby-foo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Going to Toronto for Ruby Job Fair and Portland for BarCamp</title>
		<link>http://www.globalnerdy.com/2011/05/19/going-to-toronto-for-ruby-job-fair-and-portland-for-barcamp/</link>
		<comments>http://www.globalnerdy.com/2011/05/19/going-to-toronto-for-ruby-job-fair-and-portland-for-barcamp/#comments</comments>
		<pubDate>Thu, 19 May 2011 20:23:28 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[BarCamp]]></category>
		<category><![CDATA[BarCamp Tour]]></category>
		<category><![CDATA[jobs]]></category>
		<category><![CDATA[Portland]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Toronto]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/?p=8310</guid>
		<description><![CDATA[Some of the Shopifolks are travelling this weekend to some interesting events. rspec::table, a.k.a. The Ruby Job Fair (Friday, May 20th) If you&#8217;re in the Toronto area and looking for a job, you might want to drop by rspec::table employment, otherwise known as the Ruby Job Fair. Our friends at Unspace are holding this event, [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><img style="display: block; margin-left: auto; margin-right: auto;" title="airplane wing.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/05/airplane-wing.jpg" border="0" alt="Airplane wing" width="600" height="450" /></p>
<p style="text-align: left;">Some of the Shopifolks are travelling this weekend to some interesting events.</p>
<h2>rspec::table, a.k.a. The Ruby Job Fair (Friday, May 20th)</h2>
<p style="text-align: center;"><a href="http://rubyjobfair.ca/"><img style="display: block; margin-left: auto; margin-right: auto;" title="rspectable-employment.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/05/rspectable-employment1.jpg" border="0" alt="Rspectable employment" width="497" height="600" /></a></p>
<p style="text-align: left;">If you&#8217;re in the <a href="http://en.wikipedia.org/wiki/Toronto">Toronto</a> area and looking for a job, you might want to drop by <a href="http://rubyjobfair.ca/">rspec::table employment</a>, otherwise known as the <a href="http://rubyjobfair.ca/">Ruby Job Fair</a>. Our friends at <a href="http://unspace.ca/">Unspace</a> are holding this event, where Rubyists seeking employment can meet with potential employers.</p>
<p style="text-align: left;">It&#8217;s the third such event put together by Unspace, and it&#8217;s specifically aimed at those programmers who&#8217;ve eschewed more mainstream programming languages and frameworks for the Ruby, Rails and other Ruby-related goodies because, let&#8217;s face it, they&#8217;re fun. And hey, we believe that if you&#8217;re going to spend your working life &#8212; half your waking existence &#8212; doing something, it had better be fun, don&#8217;t you think?</p>
<p style="text-align: left;">Have you considered developing for Shopify? Think of it: we&#8217;re growing start-up that&#8217;s actually profitable, and that was before we secured that <a href="http://www.shopify.com/press/articles/7-million-series-a-funding">Series A funding</a>. We&#8217;re in the business of helping people sell stuff online, <a href="http://techcrunch.com/2011/05/10/q1-online-retail-spending-up-12-percent-to-38-billion-number-of-buyers-up-7-percent/">a field whose growth is strong and steady</a>. We&#8217;ve got some killer coders in the shop; I feel like the dumbest guy in the room when I&#8217;m around them (I&#8217;m okay with that &#8212; <a href="http://www.digitaltonto.com/2010/how-to-be-the-dumbest-guy-in-the-room/">it has its advantages</a>). The perks of working here are great, from the people to the <a href="http://www.joeydevilla.com/2011/05/11/shopify-perquisites/">gear and welcome swag</a> to the location &#8212; not some soul-draining industrial park, but in <a href="http://en.wikipedia.org/wiki/Ottawa">Ottawa&#8217;s</a> <a href="http://www.byward-market.com/">ByWard Market</a>: central, and the liveliest part of town.</p>
<p style="text-align: left;">If you&#8217;d like to get a job with us and in on some of this action, <a href="http://rubyjobfair.ca/">come on down to the Ruby Job Fair</a> this Friday, May 20th at Unspace&#8217;s office (342 Queen Street West, Toronto, east of Spadina, above LuluLemon) from 5:30 p.m. to 7:00 p.m. and say hello to the Shopifolk who&#8217;ll be there: <a href="https://twitter.com/#!/BritForsyth">Brittany</a>, <a href="https://twitter.com/#!/edwardog">Edward</a> and <a href="https://twitter.com/#!/juliehache">Julie</a>!</p>
<p style="text-align: left;"><strong>To find out more about the Ruby Job Fair and the after-party,</strong> <a href="http://rubyjobfair.ca/">visit the Ruby Job Fair site</a>.</p>
<h2>BarCamp Oregon (Friday, May 20th &#8211; Saturday, May 21st)</h2>
<p style="text-align: center;"><a href="http://barcampportland.org/"><img style="display: block; margin-left: auto; margin-right: auto;" title="BarCamp Portland logo.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/05/BarCamp-Portland-logo1.jpg" border="0" alt="BarCamp Portland logo" width="480" height="330" /></a></p>
<p style="text-align: left;">Shopify is one of five startups that makes up the <a href="http://barcampportland.org/">BarCamp Tour</a>, a group helping sponsor BarCamps all over North America. Thus far, we&#8217;ve been to <a href="http://www.globalnerdy.com/2011/04/11/scenes-from-barcamp-boston/">BarCamp Boston</a> and <a href="http://www.globalnerdy.com/2011/05/10/scenes-from-minnebar-2011/">MinneBar</a> (a Minneapolis-based BarCamp serving all of the state of Minnesota). This weekend, we&#8217;ll be at the third BarCamp on the tour: <a href="http://en.wikipedia.org/wiki/Portland,_Oregon">Portland, Oregon</a>, affectionately known to some as <a href="http://www.ifc.com/portlandia/">Portlandia</a>:</p>
<p style="text-align: center;"><iframe src="http://www.youtube.com/embed/AVmq9dq6Nsg" width="480" height="273" frameborder="0"></iframe></p>
<p style="text-align: left;">BarCamp Portland is an <a href="http://en.wikipedia.org/wiki/Unconference">unconference</a>: a conference whose topics, sessions and schedules are determined by the attendees. On the start of the unconference day, people will propose session topics and set up a schedule, after which the unconferencing will begin. We’re expecting geeks of every sort to show up: not just the hackers, but artists, engineers, hobbyists, writers and poets, jokers and journalists, entrepreneurs, cooks and bakers, people who till the land or help neighbourhoods take shape, and anyone else who likes create.</p>
<p style="text-align: left;">Shopify, along with our partners on the BarCamp Tour &#8211; <a href="http://www.batchblue.com/">BatchBlue</a>, <a href="http://grasshopper.com/">Grasshopper</a>, <a href="http://mailchimp.com/">Mailchimp</a> and <a href="http://wufoo.com/">Wufoo</a> &#8212; isn&#8217;t your typical event sponsor. Yes, we’re each throwing in money to help BarCamp organizers hold their events, but we’re also there at the conference, actively participating, joining in the discussions, providing food and drinks, and even helping carry stuff or clean up. We’re also there to promote our companies, but not in a hard-sell way — we’re there to meet people who want to use our software and services, have questions and get to know the creative, inventive, ambitious people who attend BarCamps!</p>
<p style="text-align: left;">I&#8217;ll be there, helping out, facilitating sessions, answering questions about Shopify and playing accordion (of course). If you see me, please say hi!</p>
<p style="text-align: left;"><strong>To find out more about BarCamp Portland,</strong> <a href="http://barcampportland.org/">visit the BarCamp Portland site</a>.</p>
<p style="text-align: left;">If you&#8217;re interested in finding out more about BarCamps, watch this video, taken at one of the first BarCamps in San Francisco:</p>
<p style="text-align: center;"><iframe src="http://www.youtube.com/embed/7XlqEDIJzfw" width="480" height="390" frameborder="0"></iframe></p>
<p class="alert"><a href="http://www.shopify.com/blog/3243282-going-to-toronto-for-ruby-job-fair-and-portland-for-barcamp">This article also appears in the Shopify Blog.</a></p</p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2011/05/19/going-to-toronto-for-ruby-job-fair-and-portland-for-barcamp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>rspec::table Employment (or: Ruby Job Fair)</title>
		<link>http://www.globalnerdy.com/2011/05/16/rspectable-employment-or-ruby-job-fair/</link>
		<comments>http://www.globalnerdy.com/2011/05/16/rspectable-employment-or-ruby-job-fair/#comments</comments>
		<pubDate>Mon, 16 May 2011 04:33:18 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[job fairs]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Shopify]]></category>
		<category><![CDATA[Unspace]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/?p=8239</guid>
		<description><![CDATA[It&#8217;s Ruby Job Fair time! This Friday, May 20th, from 5:30 p.m. to 7:00 p.m., at the offices of Accordion City-based development shop Unspace (342 Queen Street West, just above the LuluLemon store), rspec::table, a.k.a. The Third Ruby Job Fair will take place. If you&#8217;re a Ruby developer looking for work, you also want to be [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><a href="http://rubyjobfair.ca/"><img style="display: block; margin-left: auto; margin-right: auto;" title="rspectable employment.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/05/rspectable-employment.jpg" border="0" alt="Rspectable employment" width="497" height="600" /></a></p>
<p><strong><a href="http://rubyjobfair.ca/">It&#8217;s Ruby Job Fair time!</a></strong> This <strong>Friday, May 20th, from 5:30 p.m. to 7:00 p.m.</strong>, at the offices of <a href="http://en.wikipedia.org/wiki/Toronto">Accordion City</a>-based development shop <a href="http://unspace.ca/">Unspace</a> (<a href="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=342+Queen+Street+West,+Toronto+ON&amp;aq=&amp;sll=43.649165,-79.39431&amp;sspn=0.010744,0.01148&amp;ie=UTF8&amp;hq=&amp;hnear=342+Queen+St+W,+Toronto,+Toronto+Division,+Ontario+M5V+2A5,+Canada&amp;ll=43.649165,-79.395211&amp;spn=0.010744,0.01148&amp;z=16">342 Queen Street West</a>, just above the LuluLemon store), <strong><a href="http://rubyjobfair.ca/">rspec::table, a.k.a. The Third Ruby Job Fair</a></strong> will take place. If you&#8217;re a Ruby developer looking for work, you also want to be at rspec::table. If you&#8217;re curious about developing in Ruby, guess what &#8212; you should also drop by rspec::table!</p>
<p><a href="http://www.shopify.com/"><img style="display: block; margin-left: auto; margin-right: auto;" title="shopify banner.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/05/shopify-banner.jpg" border="0" alt="Shopify logo banner" width="600" height="170" /></a></p>
<p><strong>Among the employers who&#8217;ll be present at rspec::table will be my employer, <a href="http://www.shopify.com/">Shopify</a>.</strong> We&#8217;re sending a couple of people, including developer advocate <strong><a href="https://twitter.com/#!/edwardog">Edward Ocampo-Gooding</a></strong>, down to Toronto to chat with developers and see who&#8217;s got the chop and the interest in working for the company who&#8217;s making the only ecommerce platform that matters. If you&#8217;d like to work for one of Canada&#8217;s most promising startups (who also recently landed<a href="http://www.shopify.com/press/articles/7-million-series-a-funding"> $7 million in series A funding</a> and <a href="http://www.globalnerdy.com/2011/04/25/the-new-job-technical-evangelist-at-shopify/">hired Canada&#8217;s best tech evangelist</a>), you should come to rspec::table and talk to Edward about Shopify!</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" title="rails pub nite.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/05/rails-pub-nite.jpg" border="0" alt="Rails Pub Nite: Bruce Lee holding Rails nunchuks" width="600" height="444" /></p>
<p><strong>At 7:00 p.m., the event will shift gears and become a special edition of Rails Pub Nite, the monthly get-together or Rails developers and their friends.</strong> This special edition will be an &#8220;afterparty&#8221; held on Unspace&#8217;s rooftop deck, which offers a stunning view of downtown Toronto that gets even more stunning as the sky gets dark. Free food and drink will be provided, and having attended a number of Unspace catered events, I can assure you that they&#8217;ll be good. The fun will continue until 11:00 p.m..</p>
<p class="note">By the way, the regular edition of Rails Pub Nite, which takes place on the third Monday of every month, is still taking place tonight at its usual digs: <a href="http://www.therhino.ca/">The Rhino</a> (<a href="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=1249+Queen+Street+West,+Toronto+ON&amp;aq=&amp;sll=45.422383,-75.698485&amp;sspn=0.010091,0.014269&amp;ie=UTF8&amp;hq=&amp;hnear=1249+Queen+St+W,+Toronto,+Toronto+Division,+Ontario+M6K+1L4,+Canada&amp;z=16">1249 Queen Street West</a>) from 7:00 p.m. &#8211; 11:00 p.m.. If I were in town, I&#8217;d be there.</p>
<p><a href="http://guestlistapp.com/events/54111"><img style="display: block; margin-left: auto; margin-right: auto;" title="admit one.jpg" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2011/05/admit-one.jpg" border="0" alt="" width="600" height="341" /></a></p>
<p>If you&#8217;d like to attend rspec::table, you need to register (it&#8217;s a mere $5.00 to register)! If you want to attend the Rails Pub Nite afterparty, you also need to register (it&#8217;s free)! <strong><a href="http://guestlistapp.com/events/54111">To register, go to rspec::table&#8217;s Guestlist page</a></strong> &#8212; and hurry before the tickets run out!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2011/05/16/rspectable-employment-or-ruby-job-fair/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maritime DevCon: June 18th in Moncton</title>
		<link>http://www.globalnerdy.com/2010/06/03/maritime-devcon-june-18th-in-moncton/</link>
		<comments>http://www.globalnerdy.com/2010/06/03/maritime-devcon-june-18th-in-moncton/#comments</comments>
		<pubDate>Thu, 03 Jun 2010 13:57:35 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Meetups]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[conferences]]></category>
		<category><![CDATA[Derek Hatchard]]></category>
		<category><![CDATA[Groovy]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Maritime Dev Con]]></category>
		<category><![CDATA[Maritimes]]></category>
		<category><![CDATA[MongoDB]]></category>
		<category><![CDATA[NoSQL]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2010/06/03/maritime-devcon-june-18th-in-moncton/</guid>
		<description><![CDATA[If you’re a developer out in the Maritimes, you might want to check out Derek Hatchard’s Maritime Dev Con, which takes place on June 18th in Moncton. It’s a single-afternoon, two-track conference – which means you should be able to take time out to attend it – covering a number of topics including: .NET and [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><a href="http://careertown.ca/devcon/"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="martime dev con" border="0" alt="martime dev con" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/06/martimedevcon.jpg" width="600" height="103" /></a></p>
</p>
<p>If you’re a developer out in the <a href="http://en.wikipedia.org/wiki/Maritimes">Maritimes</a>, you might want to check out <a href="http://derekhat.com/">Derek Hatchard’s</a> <strong><a href="http://careertown.ca/devcon/">Maritime Dev Con</a></strong>, which takes place on June 18th in <a href="http://en.wikipedia.org/wiki/Moncton">Moncton</a>. It’s a single-afternoon, two-track conference – which means you should be able to take time out to attend it – covering a number of topics including:</p>
<ul>
<li>.NET and ASP.NET </li>
<li>Java </li>
<li>iPhone development </li>
<li>Ruby </li>
<li>Python </li>
<li>Groovy </li>
<li>NoSQL and MongoDB </li>
<li>“Rockstar Estimating Skills” </li>
</ul>
<p><strong>Maritime Dev Con has a registration fee that won’t hurt your wallet – it’s a mere CAD$19!</strong> </p>
<p>I’m a big fan of small, regional gatherings like Maritime Dev Con and its western counterpart <a href="http://www.prairiedevcon.com/">Prairie DevCon</a>. Each region has its own specializations and needs that a by-locals, for-locals conference can do a better job of serving, and the smaller size of these conferences allows for more back-and-forth between audience and presenter, and between attendees. Support your local conference!</p>
<p class="alert">This article also appears in Canadian Developer Connection.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2010/06/03/maritime-devcon-june-18th-in-moncton/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby Stuff: IronRuby 1.0, IronRuby Reading and a Ruby Job Fair</title>
		<link>http://www.globalnerdy.com/2010/05/10/ruby-stuff-ironruby-1-0-ironruby-reading-and-a-ruby-job-fair/</link>
		<comments>http://www.globalnerdy.com/2010/05/10/ruby-stuff-ironruby-1-0-ironruby-reading-and-a-ruby-job-fair/#comments</comments>
		<pubDate>Mon, 10 May 2010 04:00:00 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Toronto]]></category>
		<category><![CDATA[IronRuby]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby Job Fair]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/?p=5917</guid>
		<description><![CDATA[Hello, IronRuby 1.0! Although it&#8217;s been out for the past couple of weeks and might be considered old news, I couldn’t let it pass unmentioned, especially given my history with the Ruby programming language: IronRuby 1.0 has been released! IronRuby is an implementation of Ruby targeting the .NET Framework and built on Microsoft’s Dynamic Language [...]]]></description>
			<content:encoded><![CDATA[<p></p><h3>Hello, IronRuby 1.0!</h3>
<p><a href="http://ironruby.net/"><img style="border-right-width: 0px; margin: 0px 0px 10px 15px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="ironruby" border="0" alt="ironruby" align="right" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/05/ironruby1.jpg" width="250" height="76" /></a>Although it&#8217;s been out for the past couple of weeks and might be considered old news, I couldn’t let it pass unmentioned, especially given my history with the Ruby programming language: <strong><a href="http://www.infoq.com/news/2010/04/ironruby10">IronRuby 1.0 has been released!</a></strong></p>
<p><a href="http://ironruby.net/">IronRuby</a> is an implementation of <a href="http://www.ruby-lang.org/en/">Ruby</a> targeting the .NET Framework and built on Microsoft’s <a href="http://msdn.microsoft.com/en-ca/library/dd233052.aspx">Dynamic Language Runtime</a>, which in turn runs on top of the <a href="http://msdn.microsoft.com/en-ca/library/ddk909ch(v=VS.71).aspx">Common Language Runtime</a>. Version 1.0 is compatible with Ruby 1.8.6; future releases will aim for compatibility with Ruby 1.9.</p>
<p><strong>You can use IronRuby 1.0 to build these sorts of applications:</strong></p>
<ul>
<li>Desktop applications using WPF </li>
<li>Desktop, in-browser rich internet applications and Windows Phone applications using Silverlight </li>
<li>Ruby on Rails applications (up to Rails version 2.3.5) </li>
<li>Good ol’ command-line applications </li>
<li>and of course, the REPL (Read-Evaluate-Print Loop) goodness of irb </li>
</ul>
<p><strong>As of version 1.0, IronRuby comes in two flavors:</strong></p>
<ul>
<li><strong>The one that runs on top of .NET 4.0.</strong> The .NET 4.0 framework is the latest version and was released with Visual Studio a couple of weeks ago (<a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9cfb2d51-5ff4-4491-b0e5-b386f32c0992&amp;displaylang=en">you can download it for free here</a>). This is the preferred version, and features goodies such as:
<ul>
<li>Faster startup </li>
<li>Compatibility with C#’s dynamic keyword </li>
<li>Access to all the new features in the .NET 4.0 framework </li>
</ul>
</li>
<li><strong>The one that runs on any earlier .NET, starting with 2.0 SP1.</strong> For compatibility with earlier versions of .NET as well as with Mono, you’ll want to use this version. </li>
</ul>
<p><strong>IronRuby is <em>free</em> in both senses of the word:</strong></p>
<ul>
<li><strong>Free as in beer.</strong> It costs nothing – just download it and use it! </li>
<li><strong>Free as in speech.</strong> It’s open source software, released under the Microsoft Permissive Licence, which is recognized by the Open Source Initiative. </li>
</ul>
<p><a href="http://ironruby.net/Download"><img style="border-right-width: 0px; margin: 0px 5px 0px 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="Download icon" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/05/download.gif" width="35" height="36" /></a> You can <a href="http://ironruby.net/Download">download IronRuby 1.0</a> from the <a href="http://ironruby.net/">IronRuby site</a> on Microsoft’s <a href="http://www.codeplex.com/">CodePlex</a> site.</p>
<h3>Ruby and IronRuby Reading</h3>
<p><a href="http://pragprog.com/titles/ruby/programming-ruby"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="programming ruby" border="0" alt="programming ruby" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/05/programmingruby.jpg" width="193" height="232" /></a></p>
<p><strong><a href="http://pragprog.com/titles/ruby/programming-ruby"><em>Programming Ruby,</em> a.k.a. “The Pickaxe Book”,</a></strong> is on every serious Rubyist’s shelf. It’s both a good introduction to the language and a pretty decent reference.</p>
<p><a href="http://mislav.uniqpath.com/poignant-guide/book/"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="poignant guide foxes" border="0" alt="poignant guide foxes" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/05/poignantguidefoxes.jpg" width="600" height="174" /></a></p>
<p><strong><em><a href="http://mislav.uniqpath.com/poignant-guide/book/">why’s (poignant) guide to ruby</a></em></strong> isn’t a complete guide to Ruby, nor is it your typical programming book. It’s free, online, the most whimsical programming book you’ll ever read, and it’s been the driving force behind a lot of dynamism and creativity of the Ruby community.</p>
<p><a href="http://www.informit.com/store/product.aspx?isbn=0672330784"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="ironruby unleashed" border="0" alt="ironruby unleashed" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2010/05/ironrubyunleashed.jpg" width="160" height="209" /></a> </p>
<p><strong><a href="http://www.informit.com/store/product.aspx?isbn=0672330784">The newly-released <em>IronRuby Unleashed</em></a></strong> covers both the Ruby programming language, the IronRuby implementation and using IronRuby to mix Ruby and .NET into a Reese peanut butter cup of developer goodness.</p>
<h3>Ruby Job Fair 2010</h3>
<p align="center"><object width="500" height="375"><param name="flashvars" value="offsite=true&lang;=en-us&amp;page_show_url=%2Fphotos%2Faccordionguy%2Fsets%2F72157619407493507%2Fshow%2Fwith%2F3610147801%2F&amp;page_show_back_url=%2Fphotos%2Faccordionguy%2Fsets%2F72157619407493507%2Fwith%2F3610147801%2F&amp;set_id=72157619407493507&amp;jump_to=3610147801"></param><param name="movie" value="http://www.flickr.com/apps/slideshow/show.swf?v=71649"></param><param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/slideshow/show.swf?v=71649" allowFullScreen="true" flashvars="offsite=true&#038;lang=en-us&#038;page_show_url=%2Fphotos%2Faccordionguy%2Fsets%2F72157619407493507%2Fshow%2Fwith%2F3610147801%2F&#038;page_show_back_url=%2Fphotos%2Faccordionguy%2Fsets%2F72157619407493507%2Fwith%2F3610147801%2F&#038;set_id=72157619407493507&#038;jump_to=3610147801" width="500" height="375"></embed></object></p>
<p><strong><a href="http://www.globalnerdy.com/2009/06/09/the-employmentnil-ruby-job-fair/">Last year, I attended and wrote about employment.nil?, the Ruby job fair</a> held by Toronto software development shop <a href="http://unspace.ca/">Unspace</a>.</strong> They’re doing it again this year with a different format. Where last year’s was modelled after a science fair (the kind you remember from high school), this year’s is going to be modelled after “speed dating” and will feature 5-minute chats between people looking for work and people looking to hire.</p>
<p><strong>To reflect the new format and pay homage to the Ruby-style naming of the first event, they’re calling it <em><a href="http://rubyjobfair.ca/">require ‘date’</a></em>.</strong> The job fair will take place in Toronto on Sunday, May 30th in the back room of the <a href="http://www.rivoli.ca/">Rivoli</a> (<a href="http://www.bing.com/maps/?v=2&amp;cp=43.649082041964355~-79.39475411982107&amp;lvl=15&amp;sty=r&amp;where1=334%20Queen%20St%20W%2C%20Toronto%2C%20ON%20M5V">334 Queen Street West</a>, just east of Spadina) from 2:00 p.m. to 4:00 p.m.. It will be followed from 4:00 p.m. to 9:00 p.m. with <strong><a href="http://omgrpnbbq.eventbrite.com/">OMGRPNBBQ</a></strong>, a special barbecue party edition of Ruby Pub Nite held at Unspace’s office and rooftop deck (<a href="http://www.bing.com/maps/?v=2&amp;cp=43.649017155167236~-79.39502732738788&amp;lvl=15&amp;sty=r&amp;where1=342%20Queen%20St%20W%2C%20Toronto%2C%20ON%20M5V">342 Queen Street West</a>, a few doors over from the Rivoli).</p>
<ul>
<li><strong>If you’re looking to hire people or looking for a job and want to attend, <a href="http://rubyjobfairto.eventbrite.com/">sign up here</a>.</strong> There’s a small registration fee of $6.66. </li>
<li><strong>If you want to attend OMGRPNBBQ,</strong> <a href="http://omgrpnbbq.eventbrite.com/">sign up here</a>. </li>
</ul>
<p class="alert"><a href="http://blogs.msdn.com/cdndevs/archive/2010/05/10/ruby-stuff-ironruby-1-0-ironruby-reading-and-a-ruby-job-fair.aspx">This article also appears in <em>Canadian Developer Connection</em>.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2010/05/10/ruby-stuff-ironruby-1-0-ironruby-reading-and-a-ruby-job-fair/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How and Where is _why?</title>
		<link>http://www.globalnerdy.com/2009/08/20/how-and-where-is-_why/</link>
		<comments>http://www.globalnerdy.com/2009/08/20/how-and-where-is-_why/#comments</comments>
		<pubDate>Thu, 20 Aug 2009 17:59:10 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[People]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[disappearances]]></category>
		<category><![CDATA[libraries]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[why the lucky stiff]]></category>
		<category><![CDATA[Why's (Poignant) Guide to Ruby]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2009/08/20/how-and-where-is-_why/</guid>
		<description><![CDATA[Photo courtesy of &#34;ejc&#34;. A Little Bit About _why If you were to walk up to someone and utter the seemingly meaningless phrase “Chunky bacon!” and get a smile rather than a look a bewilderment, you could probably mark that person down as a Ruby programmer. That strange two-word combination is seared in the minds [...]]]></description>
			<content:encoded><![CDATA[<p></p><p align="center"><a href="http://twitpic.com/ehkoy"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="why_missing_milk_carton" border="0" alt="why_missing_milk_carton" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/08/why_missing_milk_carton.jpg" width="284" height="480" /></a><em> Photo courtesy of &quot;ejc&quot;.</em></p>
<h3>A Little Bit About _why</h3>
<p><strong><img style="border-right-width: 0px; margin: 0px auto 10px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Cartoon foxes from &quot;Why&#39;s (Poignant) Guide to Ruby&quot; screaming &quot;Chunky Bacon!&quot;" border="0" alt="Cartoon foxes from &quot;Why&#39;s (Poignant) Guide to Ruby&quot; screaming &quot;Chunky Bacon!&quot;" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/08/chunky_bacon.jpg" width="280" height="242" />If you were to walk up to someone and utter the seemingly meaningless phrase “Chunky bacon!” and get a smile rather than a look a bewilderment,</strong> you could probably mark that person down as a Ruby programmer. That strange two-word combination is seared in the minds of those who have read what is probably the most whimsical programming language book in existence, <strong><em>Why’s (Poignant) Guide to Ruby</em></strong>. The book is one of the strange and beautiful Ruby-related works created by the enigmatic programmer, musician, artist, comic illustrator and wag known only as <strong>why the lucky stiff</strong>, or _why for short.</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="whys_poignant_guide" border="0" alt="whys_poignant_guide" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/08/whys_poignant_guide.jpg" width="600" height="467" /> </p>
<p>_why’s contributions to the world of Ruby programming are many. In addition to the <em>(Poignant) Guide</em>, some of his goodies that I’ve made use of are:</p>
<ul>
<li><strong>Camping</strong>, an incredibly tiny Ruby web application framework </li>
<li><strong>Hackety Hack</strong>, a “coder’s starter kit” for Ruby, meant to bring back the spirit of experimentation of those days when the BASIC programming language was built into every home computer </li>
<li><strong>Hpricot</strong>, a parser that’s great at scraping HTML and even parsing XML </li>
<li><strong>Redcloth</strong>, a library that implements the Textile markup language </li>
<li><strong>Shoes</strong>, a desktop UI toolkit </li>
<li><strong>Syck</strong>, a YAML library </li>
</ul>
<p>_why made it a point to reveal as little about himself as possible, and most of us were happy to indulge him. Most people were happy to simply know and address him as “why”, and in the community, it was a point of etiquette to <em>not</em> try and dig too deeply.</p>
<h3>_why Vanishes from the Net</h3>
<p><strong><a href="http://ejohn.org/blog/eulogy-to-_why">Yesterday, _why’s presence vanished from the web.</a></strong> The places online where you could find him have been taken down. These included:</p>
<ul>
<li><a href="http://twitter.com/_why">His Twitter account</a> </li>
<li><a href="http://github.com/why">His Github account</a> </li>
<li><a href="http://whytheluckystiff.net/">His old blog at whytheluckystiff.net</a> </li>
<li><a href="http://hackety.org/">Hackety.org, his last active blog</a> </li>
<li><a href="http://poignantguide.net/">The <em>(Poignant) Guide</em> site</a> </li>
<li><a href="http://shoooes.net/">The Shoes site</a> </li>
<li><a href="http://tryruby.hobix.com/">The <em>Try Ruby</em> site</a> </li>
</ul>
<p><a href="http://ejohn.org/blog/eulogy-to-_why">John Resig has written a lovely “eulogy” for _why</a>, and while I think it’s premature to say that he’s gone forever, it’s still nice to see a nice tribute to him. <strong>My favourite part of the eulogy is where John likens _why’s works to a </strong><a href="http://en.wikipedia.org/wiki/Sand_mandala"><strong>sand mandala</strong></a><strong>:</strong></p>
<blockquote><p>Sand mandalas are incredibly intricate works of art that take many people many days to construct. They&#8217;re very expressive, but fragile, works of art.</p>
<p>After a mandala has been constructed &#8211; and displayed &#8211; it is ceremoniously deconstructed &#8211; which is meant &quot;to symbolize the Buddhist doctrinal belief in the transitory nature of material life.&quot;</p>
<p>_why&#8217;s entire online presence and code was presented in the sand mandala that was &#8216;_why&#8217;. The person behind &#8216;_why&#8217; simply decided to move on and close that portion of his life.</p>
</blockquote>
<p>I hope that _why’s disappearance is a brief hiatus. The Ruby world – hey, the programming world, the art world, the music world too – just isn’t the same without him.</p>
<h3>Finding _why’s Stuff</h3>
<p>There’s only one problem with _why’s deletion of his online presence: a number of people have come to depend on his works, particularly his code. The <em>(Poignant) Guide</em> is <a href="http://www.scribd.com/doc/2236084/Whys-Poignant-Guide-to-Ruby">downloadable from Scribd</a>, and I figure that if it hasn’t happened already, someone will start a Github repository of his code. There’s also Facebook group called <a href="http://www.facebook.com/group.php?gid=125833150094"><em>Missing why the lucky stiff</em></a> &#8212; let’s hope it doesn’t get all maudlin and support-group-y.</p>
<p>Last but not least, there’s programmer <a href="http://leahculver.com/"><strong>Leah Culver</strong></a>, <a href="http://www.globalnerdy.com/2009/01/30/leahs-tattoo/">who commissioned a tattoo from _why</a>:</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="leah-culver" border="0" alt="leah-culver" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/08/leahculver.jpg" width="600" height="450" /> </p>
</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="leah-culver-tattoo" border="0" alt="leah-culver-tattoo" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/08/leahculvertattoo.jpg" width="600" height="450" /> </p>
<h3>In Closing</h3>
<p><strong>I’ll finish with <a href="http://www.globalnerdy.com/2008/08/08/why-the-lucky-stiff-on-why-you-should-create/">my favourite tweet from _why</a>,</strong> which I blogged about a year ago:</p>
<blockquote><p><strong>when you don’t create things, you become defined by your tastes rather than ability. your tastes only narrow &amp; exclude people. so create.</strong></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2009/08/20/how-and-where-is-_why/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Exceptions: The Airbags of Code</title>
		<link>http://www.globalnerdy.com/2009/08/04/exceptions-the-airbags-of-code/</link>
		<comments>http://www.globalnerdy.com/2009/08/04/exceptions-the-airbags-of-code/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 19:19:35 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[defensive programming]]></category>
		<category><![CDATA[exception handling. C#]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2009/08/04/exceptions-the-airbags-of-code/</guid>
		<description><![CDATA[This article also appears in Canadian Developer Connection. The trouble with a lot of example code covering exceptions is that the examples are often cases in which you shouldn’t be using an exception in the first place. Consider the classic known as “Someone’s trying to divide by zero” – here’s the C# version: // C# [...]]]></description>
			<content:encoded><![CDATA[<p></p><p class="alert"><a href="http://blogs.msdn.com/cdndevs/archive/2009/08/04/exceptions-the-airbags-of-code.aspx">This article also appears in <em>Canadian Developer Connection</em>.</a></p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="its_okay_i_wrote_an_exception" border="0" alt="its_okay_i_wrote_an_exception" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/08/its_okay_i_wrote_an_exception.jpg" width="400" height="450" /></p>
<p>The trouble with a lot of example code covering exceptions is that the examples are often cases in which you shouldn’t be using an exception in the first place. Consider the classic known as “Someone’s trying to divide by zero” – here’s the C# version:</p>
<pre><code>// C#

try
{
    result = dividend / divisor;
}
catch (DivideByZeroException ex)
{
    Console.WriteLine(&quot;Idiot.&quot;);
}</code></pre>
<p>and here&#8217;s the Ruby version:</p>
<pre><code>// Ruby (works in IronRuby too!)

begin
    result = dividend / divisor
rescue ZeroDivisionError
    puts &quot;Idiot.&quot;
end

// You have to hand it to Ruby for picking great keywords for
// exception handling. While C# borrowed Java's &quot;try / catch / finally&quot;,
// Ruby went with the more macho &quot;begin / rescue / ensure&quot;.
// As Yoda himself would say: &quot;Do or do not. There is no try.&quot;</code></pre>
<p>The better approach would be to do a little defensive programming and make sure that <code>divisor</code> is non-zero <em>before</em> performing the division operation. So why do tutorials on exception handling almost always bring out the “Someone’s trying to divide by zero” example?</p>
<p>There are two reasons:</p>
<ul>
<li><strong>It’s simple.</strong> It’s only a handful of lines of code. </li>
<li><strong>It’s predictable.</strong> Set the value of divisor to zero and the exception gets thrown. Always. </li>
</ul>
<p>The truly exceptional exceptions &#8212; I/O errors, timeouts and other things that cause exceptions are a little harder to set up and take more code to handle. Hence the divide-by-zero example; it illustrates <code>try</code> and <code>catch</code> (or <code>rescue</code> in a Ruby block) in a way even the newest newbie can understand.</p>
<p>The problem is that many tutorial authors don’t get any deeper than simply explaining the keywords with simple examples, leading people to misuse exceptions, either as a substitute for checking for preconditions or as an unstructured form of flow control in the style of the much-maligned <code>goto</code> (which in many cases is <a href="http://www.u.arizona.edu/~rubinson/copyright_violations/Go_To_Considered_Harmful.html">considered harmful</a>).</p>
<p>Like goto, exceptions are unstructured jumps, which make your program’s flow more complex. Unlike goto, exceptions are computationally “expensive” because of all the extra work involved in setting up and backtracking program flow that comes with a thrown exception.</p>
<p><strong>A good guideline to follow is that exceptions are for exceptional cases.</strong> Stuff that you can’t easily predict. You can tell if a division operation is going to result in an undefined result – just look at the divisor! Harder to predict are things like whether a server access will time out or if the hard drive will decide that the moment you’re reading a file is the best possible time to corrupt it. Those hard-to-foresee, believed-to-be-rare, <em>exceptional </em>cases are really what exceptions are meant to handle. </p>
<p><strong>Think of exceptions is as being like the airbags in your car. The idea is that they’re a last resort; they’re no substitute for defensive driving.</strong> (Like airbags, they’re also expensive to reset.)</p>
<p>Lee Dumond goes into further detail on the topic of defensive programming as being like defensive driving in an article titled <a href="http://leedumond.com/blog/defensive-programming-or-why-exception-handling-is-like-car-insurance/"><strong><em>Defensive Programming, or Why Exception Handling Is Like Car Insurance</em></strong></a>. He cites the “Someone’s trying to divide by zero” example, provides a list of defensive programming strategies that you should consider before coding up that exception handler and talks about those exceptional cases when you <em>will</em> have to use an exception. <a href="http://leedumond.com/blog/defensive-programming-or-why-exception-handling-is-like-car-insurance/">Check it out!</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2009/08/04/exceptions-the-airbags-of-code/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Open Source Language Roundtable Webcast: Wednesday, July 22nd</title>
		<link>http://www.globalnerdy.com/2009/07/20/open-source-language-roundtable-webcast-wednesday-july-22nd/</link>
		<comments>http://www.globalnerdy.com/2009/07/20/open-source-language-roundtable-webcast-wednesday-july-22nd/#comments</comments>
		<pubDate>Mon, 20 Jul 2009 05:27:42 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Meetups]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[conferences]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[O'Reiilly]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[webcasts]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2009/07/20/open-source-language-roundtable-webcast-wednesday-july-22nd/</guid>
		<description><![CDATA[O’Reilly’s conference on Open Source, OSCON, takes place this week in San Jose, California. One of the events taking place at OSCON is the Open Source Language Roundtable, the abstract for which appears below: We all have our favorite languages in our tool-belt, but is there a &#8216;best&#8217; overall language? If anyone can hash that [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><a href="http://www.oreillynet.com/pub/e/1386"><img style="border-bottom: 0px; border-left: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px" title="oscon_language_roundtable" border="0" alt="oscon_language_roundtable" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/07/oscon_language_roundtable.jpg" width="403" height="496" /></a></p>
<p>O’Reilly’s conference on Open Source, <strong><a href="http://conferences.oreilly.com/oscon">OSCON</a></strong>, takes place this week in San Jose, California. One of the events taking place at OSCON is the <strong><a href="http://www.oreillynet.com/pub/e/1386">Open Source Language Roundtable</a></strong>, the abstract for which appears below:</p>
<blockquote><p>We all have our favorite languages in our tool-belt, but is there a &#8216;best&#8217; overall language? If anyone can hash that out, it will be the members of this roundtable discussion, some of the stars of the open source language space. This wide-ranging session, hosted and moderated by the O&#8217;Reilly Media editorial staff, and broadcast live on the web, will try to identify the best and worst features of each language, and which are best for various types of application development.</p>
</blockquote>
<p>The roundtable will me moderated by O’Reilly Media’s James Turner and will cover the following languages, listed below with the corresponding panelist:</p>
<ul>
<li><strong>Java:</strong> Rod Johnson (SpringSource)</li>
<li><strong>Perl:</strong> Jim Brandt (Perl Foundation)</li>
<li><strong>PHP:</strong> Laura Thomason (Mozilla)</li>
<li><strong>Python:</strong> Alex Martelli (Google)</li>
<li><strong>Ruby:</strong> Brian Ford (Engine Yard)</li>
</ul>
<p><strong>You can catch this roundtable even if you’re not going to be at OSCON because O’Reilly is webcasting the event.</strong> It takes place this Wednesday, July 22nd at 10pm EDT (7 pm Pacific) and is expected to run 90 minutes. It costs nothing to catch the webcast and you’ll even be able to ask the panelists questions via chat, but you’ll need to <a href="http://post.oreilly.com/rd/9z1z95hii30q4hc8e9c5r74c4s1cl6b97qsp4ivvp0o">register</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2009/07/20/open-source-language-roundtable-webcast-wednesday-july-22nd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LearnHub: Powered by Rails, Searches with Bing</title>
		<link>http://www.globalnerdy.com/2009/06/29/learnhub-powered-by-rails-searches-with-bing/</link>
		<comments>http://www.globalnerdy.com/2009/06/29/learnhub-powered-by-rails-searches-with-bing/#comments</comments>
		<pubDate>Mon, 29 Jun 2009 15:35:07 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software and Services]]></category>
		<category><![CDATA[Toronto]]></category>
		<category><![CDATA[APIs]]></category>
		<category><![CDATA[Bing]]></category>
		<category><![CDATA[interoperability]]></category>
		<category><![CDATA[John Philip Green]]></category>
		<category><![CDATA[LearnHub]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[search engines]]></category>
		<category><![CDATA[Wesley Moxam]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2009/06/29/learnhub-powered-by-rails-searches-with-bing/</guid>
		<description><![CDATA[This article also appears in Canadian Developer Connection. Introducing LearnHub LearnHub&#8217;s home page. If you’re a student applying to colleges and universities and are looking for help with the process, you should try LearnHub. Based in Toronto, LearnHub is a social learning network that helps students to prepare for standardized tests, assists with finding places [...]]]></description>
			<content:encoded><![CDATA[<p></p><p class="alert"><a href="http://blogs.msdn.com/cdndevs/archive/2009/06/29/learnhub-powered-by-rails-searches-with-bing.aspx">This article also appears in <em>Canadian Developer Connection</em>.</a></p>
<h3>Introducing LearnHub</h3>
<p align="center"><a href="http://learnhub.com/"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="learnhub_home_page" border="0" alt="learnhub_home_page" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/learnhub_home_page2.jpg" width="600" height="372" /></a><em>LearnHub&#8217;s home page.</em></p>
<p><strong>If you’re a student applying to colleges and universities and are looking for help with the process, you should try <a href="http://learnhub.com/">LearnHub</a>.</strong> Based in Toronto, LearnHub is a social learning network that helps students to prepare for standardized tests, assists with finding places to study abroad and provides career counseling. LearnHub’s site has hundreds of thousands of pages of free content, including the world&#8217;s largest bank of questions that appear in the GMAT and SAT standardized tests. The site has a large following among students worldwide, particularly in India, and has partnerships with 25 universities to recruit domestic and international students.</p>
<p><a href="http://learnhub.com/"><img style="border-right-width: 0px; margin: 0px 0px 10px 10px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="learnhub" border="0" alt="learnhub" align="right" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/learnhub1.jpg" width="240" height="116" /></a></p>
<p>With those hundreds of thousands of pages, LearnHub needed to provide a way for students to find what they’re looking for. <strong>They provide a search function, and it’s powered by <a href="http://bing.com/">Bing</a>.</strong></p>
<p><strong>The people at LearnHub are part of that sector of Toronto tech that’s into Ruby on Rails, open source and founding startups.</strong> Founders <a href="http://married-inc.com/">John Philip Green and Malgosia Green</a> are a husband-and-wife team who are known for building web applications for education and have been active members of Toronto’s tightly-knit open source tech community since the earliest <a href="http://democamp.com/">DemoCamps</a>. John caught <a href="http://rubyonrails.org/">Rails</a> fever after trying it out and decided to rewrite a major application using it. The core development team of <a href="http://learnhub.com/users/wmoxam">Wesley Moxam</a>, <a href="http://heycarsten.com/">Carsten Nielsen</a> and <a href="http://blog.libinpan.com/">Libin Pan</a> are fixtures of the local Toronto’s on Rails scene; a gathering of local Rubyists doesn’t feel complete without them.</p>
<p>So what are they doing, using Bing?</p>
<h3>Site-Wide Search</h3>
<p align="center"><a href="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/learnhub_dev_management_team2.jpg"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="learnhub_dev_management_team" border="0" alt="learnhub_dev_management_team" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/learnhub_dev_management_team_thumb1.jpg" width="600" height="450" /></a><em>The main room at LearnHub’s offices. Management are to the left, developers to the right.</em></p>
<p><strong>In the beginning, they went with their first instinct, which was to use Google.</strong> “We launched in March 2008,” said co-founder John Philip Green, “and we needed to provide site-wide search, so we went with Google. We signed up, and for a few hundred bucks a year, we got a search function that covered about 5,000 pages. It seemed like a pretty big number, and we thought that would be more than enough to cover our site.”</p>
<p><strong>They soon found that the results weren’t what they expected.</strong> “We weren’t getting good results. We’d use our site-wide search to search for something that we knew was in our site, and it wouldn’t show up in the results.” The same search would work just fine if you did it from Google.com, but not from their Google-powered search function. “The results just weren’t relevant, and we also had a limited number of queries,” John said.</p>
<p align="center"><a href="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/learnhub_management_dev_team2.jpg"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="learnhub_management_dev_team" border="0" alt="learnhub_management_dev_team" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/learnhub_management_dev_team_thumb1.jpg" width="600" height="450" /></a><em>The main room at LearnHub’s offices. That’s management in the foreground, developers in the back.</em></p>
<p><strong>LearnHub’s page count grew quickly and beyond the 5,000 pages covered by their arrangement with Google.</strong> “Going up to a bigger package was expensive;” John said, “it would have cost a couple thousand for 50,000 pages, and we were already at hundreds of thousands.”</p>
<p>“We could’ve gotten the functionality for free, but that’s only an option when you show ads in the search results, and the ads that showed up were for our competitors.”</p>
<p align="center"><a href="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/learnhub_sales_team2.jpg"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="learnhub_sales_team" border="0" alt="learnhub_sales_team" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/learnhub_sales_team_thumb1.jpg" width="600" height="450" /></a><em>LearnHub&#8217;s sales team.</em></p>
<p><strong>There was another problem: Google’s site search returned its results as a web page.</strong> In order to make LearnHub’s site-wide search’s results page have the same look and feel as the rest of the site, they had to stick the Google results in an iframe. “And even then, what was inside the iframe didn’t match the rest of the page,” added John.</p>
<p><strong>They started looking at other options for implementing LearnHub’s site-wide search, including running their own spider.</strong> “We really didn’t want to do that,” said programmer Wesley Moxam.</p>
<h3>Enter Bing</h3>
<p align="center"><strong><a href="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/wes_moxam2.jpg"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="wes_moxam" border="0" alt="wes_moxam" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/wes_moxam_thumb1.jpg" width="450" height="600" /></a></strong><em>LearnHub developer Wesley Moxam.</em></p>
<p><strong>While looking around at search options, Wesley found the Live Search API, which is now known as the <a href="http://msdn.microsoft.com/en-us/library/dd251056.aspx">Bing API</a>.</strong> “It was free, well-designed and spits out JSON,” he said. “Google requires a JavaScript interface or SOAP, and SOAP libraries in Ruby are painful.”</p>
<p>“It took a day to implement and get it up and running,” said Wesley, “The entire switch-over project happened over three days, with us working on it on and off, while we were doing other tasks. Best of all, we get consistent results – the results from the API are the same results you’d get if you just used the Bing site.”</p>
<p><strong>“Bing’s API is simple and straightforward. You call it, you get the results, you take those results and use them how you like,”</strong> he continued. “It’s good. It’s hard to explain good software; good software is inherently simple.”</p>
<p>Here’s a screenshot of a LearnHub search results page for the search term “accordion” – and yes, the word appears on a handful of Learnhub pages!</p>
<p align="center"><a href="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/learnhub_search_results_page.jpg"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="LearnHub search results page for the search term &quot;accordion&quot;" border="0" alt="LearnHub search results page for the search term &quot;accordion&quot;" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/learnhub_search_results_page_thumb.jpg" width="600" height="350" /></a><em> LearnHub’s search results page for the term “accordion”.</em></p>
<p>LearnHub have benefited from using Bing to power their site-wide search, and they’ve decided to share the wealth. <strong>Wesley’s working on refactoring the Ruby library he wrote to act as a wrapper for the Bing API and open source it for anyone to use.</strong> It should be available later this summer. He’ll announce it when it’s released, and I’ll announce it here.</p>
<h3>The Bing API</h3>
</p>
<p><a href="http://bing.com/developers"><img style="border-right-width: 0px; margin: 0px 0px 10px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Bing logo" border="0" alt="Bing logo" align="right" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/bing2.jpg" width="250" height="96" /></a></p>
<p>It’s easy to harness the power of Bing in your applications, whether for desktop, web or mobile.</p>
<p><strong>The first step is to <a href="http://www.bing.com/developers/createapp.aspx">get an AppID</a>,</strong> which is a string that uniquely identifies you as a registered Bing application developer. Go to the <a href="http://bing.com/developers/">Bing Developer Center</a>, sign in with your Windows Live ID (which you can get for free) and follow the link to created a new AppID. You’ll be asked to supply some very basic information about your application and to review the Bing API’s Terms of Use. If you provide the information and agree to the <a href="http://www.bing.com/developers/tou.aspx">Terms of Use</a> (which I summarize in plain English below), you&#8217;ll get an AppID.</p>
<p><strong>Once you have an AppID, you can start experimenting right away with the Bing API.</strong> All you need to do is start typing URLs with the format below into your browser’s address bar:</p>
</p>
<pre><code>http://api.search.live.net/xml.aspx?AppID=<em><strong>&lt;AppID&gt;</strong></em>&amp;query=<em><strong>&lt;SearchTerms&gt;</strong></em>&amp;sources=<em><strong>&lt;SourceTypes&gt;</strong></em></code></pre>
</p>
<p>where:</p>
<ul>
<li><strong><code>&lt;AppID&gt;</code></strong> is the AppID assigned to you </li>
<li><strong><code>&lt;SearchTerms&gt;</code></strong> are your urlencoded search terms </li>
<li><strong><code>&lt;SourceTypes&gt;</code></strong> specifies the type(s) of search results you want. The different sourcetypes are explained in the table below: </li>
</ul>
<table border="1" cellspacing="3" cellpadding="3" width="600">
<tbody>
<tr>
<td valign="top" width="114"><strong>SourceType</strong></td>
<td valign="top" width="286"><strong>Description</strong></td>
<td valign="top" width="200"><strong>Example Search Terms</strong></td>
</tr>
<tr>
<td valign="top" width="114"><strong><code>Web</code></strong></td>
<td valign="top" width="286">Searches for web content</td>
<td valign="top" width="200">accordion – returns web pages containing the term “accordion”</td>
</tr>
<tr>
<td valign="top" width="114"><strong><code>Image</code></strong></td>
<td valign="top" width="286">Searches for images on the web</td>
<td valign="top" width="200">accordion – returns images of accordions</td>
</tr>
<tr>
<td valign="top" width="114"><strong><code>News</code></strong></td>
<td valign="top" width="286">Searches news stories</td>
<td valign="top" width="200">accordion – returns news articles about accordions</td>
</tr>
<tr>
<td valign="top" width="114"><strong><code>InstantAnswer</code></strong></td>
<td valign="top" width="286">Searches Encarta online</td>
<td valign="top" width="200">what is an accordion – returns the definition of “accordion” </p>
<p>convert 1.6 kilometres to miles – returns “0.9941939 miles” </p>
<p>sin(30 degrees) – returns “0.5”</td>
</tr>
<tr>
<td valign="top" width="114"><strong><code>Spell</code></strong></td>
<td valign="top" width="286">Searches Encarta Dictionary for spelling suggestions</td>
<td valign="top" width="200">accordi<strong><em>a</em></strong>n – returns “accordi<strong><em>o</em></strong>n”&#160; </td>
</tr>
<tr>
<td valign="top" width="114"><strong><code>Phonebook</code></strong></td>
<td valign="top" width="286">Searches phonebook entries</td>
<td valign="top" width="200">accordions in Toronto – returns location results for “accordions in Toronto”</td>
</tr>
<tr>
<td valign="top" width="114"><strong><code>RelatedSearch</code></strong></td>
<td valign="top" width="286">Returns query strings most similar to yours</td>
<td valign="top" width="200">accordion – returns results like “{piano accordion; button accordion; accordion store}”</td>
</tr>
<tr>
<td valign="top" width="114"><strong><code>Ad</code></strong></td>
<td valign="top" width="286">Returns advertisements to incorporate with results (use this to make money with you Bing-powered application)</td>
<td valign="top" width="200">accordion – returns ads relevant to the keyword “accordion”</td>
</tr>
</tbody>
</table>
<p>&#160;</p>
<p>The default format for results is XML, and that’s the format you get when typing in API calls in your browser. You can also have the results returned as JSON or SOAP if you prefer.</p>
<p>You can find out more about the Bing API in the <a href="http://msdn.microsoft.com/en-us/library/dd251056.aspx">Bing API section of MSDN</a>.</p>
<h3>Bing’s Terms of Use, Explained as Simply as Possible</h3>
<p><strong>Here’s a quick explanation of Bing’s Terms of Use for those of us without a law degree.</strong> It’s adapted from the Bing documentation and provides a quick summary of what application developers using the Bing API must do and cannot do (besides the obvious &quot;I promise not to use the API to plan a terrorist attack, run a drug smuggling ring or help the band Nickelback take forceful despotic rule of planet Earth&quot;).</p>
<p><strong>What you must do:</strong></p>
<ul>
<li>You must display all the results you request. No filtering! </li>
<li>You must display your results in the context of a user-facing application or website. </li>
<li>You must display attribution to Bing in a manner compliant with our branding rules. Currently, you may determine the specific manner in which you display attribution. A link to <a href="http://www.live.com">http://www.live.com</a> with the query echo is a suggested example. </li>
<li>You must restrict your usage to <strong>less than 7 queries per second per IP address</strong>. You may be permitted to exceed this limit under some conditions, but this must be approved through discussion with the folks at <a href="mailto:api_tou@microsoft.com">api_tou@microsoft.com</a>. </li>
<li>If you interleave data from any source other than the API with data from the API, you must clearly<br />
    <br />differentiate the respective sources. (Yes, you can interleave Bing results with other data!) </li>
</ul>
<p><strong>What you cannot do:</strong></p>
<ul>
<li>You cannot use API results for search engine optimization (SEO). In particular, using the API for rank checks is explicitly prohibited. </li>
<li>You cannot display advertisements in positions other than the mainline and sidebar. </li>
<li>You cannot change the order of the results the API returns from a SourceType other than <code>Web</code>. (In other words, you <em>can</em> re-order results from standard searches for web pages!) </li>
</ul>
<h3>Bing Your Apps!</h3>
<p>From there, the sky’s the limit. The Bing API is very straightforward and easy to use, it costs nothing to use it, and as someone who’s been using Bing as his default search engine since its beta period, the results it provides are great. Go forth and Bing your apps!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2009/06/29/learnhub-powered-by-rails-searches-with-bing/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The &#8220;employment.nil?&#8221; Ruby Job Fair</title>
		<link>http://www.globalnerdy.com/2009/06/09/the-employmentnil-ruby-job-fair/</link>
		<comments>http://www.globalnerdy.com/2009/06/09/the-employmentnil-ruby-job-fair/#comments</comments>
		<pubDate>Wed, 10 Jun 2009 01:26:33 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Meetups]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Toronto]]></category>
		<category><![CDATA[What Joey Did]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[Pete Forde]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Unspace]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/?p=3605</guid>
		<description><![CDATA[One of the pillars of the Toronto developer scene is the Ruby/Rails community. They’re an active, engaged, hard-working bunch who work without the direct benefit of a large organization like The Empire or its resources (they do, through people like Yours Truly and Nik Garkusha, Microsoft Canada’s open source go-to guy, get some indirect support). [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="employment_nil_floor" border="0" alt="employment_nil_floor" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/employment-nil-floor.jpg" width="600" height="450" /></p>
<p><strong>One of the pillars of the Toronto developer scene is the Ruby/Rails community.</strong> They’re an active, engaged, hard-working bunch who work without the direct benefit of a large organization like <a href="http://microsoft.com/">The Empire</a> or its resources (they do, through people like Yours Truly and <a href="http://twitter.com/nik_g">Nik Garkusha</a>, Microsoft Canada’s open source go-to guy, get some <em>indirect</em> support). They – through the efforts of people like Pete Forde and the Ruby local heroes at <a href="http://unspace.ca/">Unspace</a> – know how to maximize grassroots organization and harness them into industry-leading events like last year’s <a href="http://rubyfringe.com/">RubyFringe</a> and the upcoming <a href="http://futureruby.com/">FutureRuby</a> conference.</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="meghann_and_pete" border="0" alt="meghann_and_pete" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/meghann-and-pete.jpg" width="450" height="600" /></p>
<p><strong>It should therefore not be a surprise that when Pete and company got the idea to help out their fellow Ruby developers during the econopocalypse with a job fair – <em><a href="http://rubyjobfair.ca/">employment.nil?</a></em> &#8212; they’d take the standard techie job fair formula, turn it upside down and make it their very own.</strong> They chose the Gladstone Hotel in Toronto’s hip <a href="http://westqueenwest.ca/">West Queen West neighbourhood</a>, which is better known as a venue for karaoke, rock bands and burlesque (in fact, I’ve performed in all three kinds of shows there) than for computer and IT-related employment fairs.</p>
<p>&#160;<img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="unspace" border="0" alt="unspace" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/unspace.jpg" width="600" height="450" /></p>
<p><strong>This was <em>not</em> your typical job fair.</strong> It didn’t have any of the fancy display stands that you normally see on the exhibition floor at tech conferences. Instead, both job-seekers and small companies were told to build poster board displays, a la high school science fairs. </p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="shindig" border="0" alt="shindig" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/shindig.jpg" width="600" height="450" /></p>
<p><strong>Another rule: <em>no computers allowed!</em></strong> Even iPhone apps were considered “cheating”. The closest you were allowed to get was using whiteboards or pen and paper for “live coding”. This wasn’t about staring at computer screens, but people talking to other people – people who were passionate about the Ruby programming language and its associated frameworks, libraries and communities. </p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="postrank" border="0" alt="postrank" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/postrank.jpg" width="600" height="450" /></p>
<p><strong>An excerpt from <a href="http://rubyjobfair.eventbrite.com/">the sign-up page for <em>employment.nil?</em></a>:</strong></p>
<blockquote><p>Let&#8217;s face it: it&#8217;s better to be a Ruby developer than a car manufacturer in 2009, but things have definitely slowed down — for everyone. And yet, there are solid reasons why this is an excellent time to start new projects, launch companies, and create new markets. By definition, Ruby has been adopted by creative individuals that grew frustrated with risk averse bureaucracies.</p>
<p>We believe that there are huge number of opportunities to be found during this economic downturn, both for freelance developers and aspiring entrepreneurs alike. As with most tragic historical near-misses, there are just a huge number of connections that aren&#8217;t made even in our own collective back yard.</p>
</blockquote>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="terry_smith" border="0" alt="terry_smith" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/terry-smith.jpg" width="600" height="450" /></p>
<p><strong>More from the job fair’s site:</strong></p>
<blockquote><p>That said, we also believe that Ruby people are determined self-starters that aren&#8217;t afraid to self-promote. Anything worth doing in life requires hard work and sacrifice. Sadly, while many developers are patient and willing to think orthogonally, we rarely get an opportunity to practice the other more social skills which make us desirable as team members, project managers, and co-founders. Unless we overcome our shyness and learn to speak eloquently about our experience and skill sets, we have nobody to blame for our work prospects but ourselves.</p>
<p>Our solution is to gather students, developers, development companies, and of course project leaders and company founders for a good old-fashioned career fair. </p>
</blockquote>
<p>As you can see from the photos, there were different kinds of booths set up. There were those for companies looking to hire some Ruby developers…</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="mulder_consulting" border="0" alt="mulder_consulting" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/mulder-consulting.jpg" width="600" height="450" /></p>
<p>and those deidicated to showcasing some interesting application of Ruby, such as lojacking iPhones:</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="tony_thompson" border="0" alt="tony_thompson" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/tony-thompson.jpg" width="600" height="450" /></p>
<p>…or <a href="http://hacklab.to/">HacklabTO’s</a> own Jed Smith showing how we harness Ruby to drive our laser (yes, we’ve got a laser etcher/cutter!):</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="ruby_laser_awesome" border="0" alt="ruby_laser_awesome" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/ruby-laser-awesome.jpg" width="600" height="450" />&#160;</p>
<p>And some booths were set up by Ruby programmers showcasing their own work and who were looking for a job:</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="talha_syed_1" border="0" alt="talha_syed_1" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/talha-syed-1.jpg" width="600" height="450" /></p>
<p>&#160;<img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="talha_syed_2" border="0" alt="talha_syed_2" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/talha-syed-2.jpg" width="600" height="450" /></p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="dan_mcgrady" border="0" alt="dan_mcgrady" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/dan-mcgrady.jpg" width="600" height="450" /></p>
<p>The event wasn’t just noticed by the Ruby community, who filled the room throughout the 11 a.m. to 6 p.m. course of the event. <strong>Late in the afternoon, Ontario’s Minister of Small Business and Consumer Services, <a href="http://www.hstakhar.com/">Harinder S. Takhar</a>, paid a visit to the job fair.</strong></p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="meghann_pete_minister" border="0" alt="meghann_pete_minister" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/meghann-pete-minister.jpg" width="600" height="450" /></p>
<p>Pete, ever the gracious event curator, took Mr. Takhar to several booths, introducing him to their owners, who were only too happy to show the Minister their Ruby-related work. Here’s <a href="http://www.shindigital.com/">Andrew Burke of Shindig</a>, showing him the projects he’s taking on in his independent software consultancy:</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="andrew_minister" border="0" alt="andrew_minister" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/andrew-minister.jpg" width="450" height="600" /></p>
<p>Here’s <a href="http://twitter.com/kieran">Kieran Huggins</a> showing Mr. Takhar his work in <a href="http://myttc.ca/">MyTTC.ca</a>: </p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="minister_kieran" border="0" alt="minister_kieran" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/minister-kieran.jpg" width="600" height="450" /></p>
<p>I’m sure that grassroots high-tech events with a strong “indie” aesthetic are outside the Minister’s everyday experience, but he seemed pretty impressed with the event: a dedicated group of nerds building software and careers using only laptops, stuff you can download for free and their brain cells.</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="minister_presentation" border="0" alt="minister_presentation" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/minister-presentation.jpg" width="450" height="600" /></p>
<p>Here’s Pete explaining the local Ruby developer scene and the concept of open source software to Mr. Takhar:</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="pete_minister" border="0" alt="pete_minister" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/pete-minister.jpg" width="600" height="450" /></p>
<p>And here’s Mr. Takhar presenting Pete with an award of recognition for Unspace for putting the event together. At that point, I broke out the accordion and played <em>For He’s a Jolly Good Fellow</em>, partly for the Minister for showing up on a Saturday afternoon, but partly for Pete for putting the event together.</p>
<p>&#160;<img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="pete_minister_certificate" border="0" alt="pete_minister_certificate" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/pete-minister-certificate.jpg" width="450" height="600" /></p>
<p>Here’s a close-up of the award:</p>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="award_of_recognition" border="0" alt="award_of_recognition" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/award-of-recognition.jpg" width="600" height="800" /></p>
<p>It reads:</p>
<blockquote><p>Award of Recognition</p>
<p>On behalf of the Government of Ontario,      <br />I am delight to extend my congratulations on the       <br />Employment.nil?       <br />First Toronto Ruby Job Fair</p>
<p>Unspace Interactive Inc.</p>
<p>Our government recognizes the importance of new and creative opportunities for      <br />business. Building a business requires vision and dedication. I applaud your work and       <br />success in web consulting through your team of industry-leading developers and       <br />designers under one roof.</p>
<p>Please accept my best wishes for continued success.</p>
<p>Harinder S. Takhar      <br />Minister of Small Business and Consumer Services       <br />June 06, 2009</p>
</blockquote>
<p>Congratulations to Pete, Meghann Millard, all the folks from Unspace and the Toronto Ruby community on a job well done!</p>
<h3>The Photo Gallery</h3>
<p><a href="http://www.flickr.com/photos/accordionguy/sets/72157619407493507/">I took a lot of photos at <strong><em>employment.nil?</em></strong> and shared them in a Flickr photoset</a>, which you can also view in the slideshow below:</p>
<p align="center"><iframe height="600" src="http://www.flickr.com/slideShow/index.gne?group_id=&amp;user_id=37996580467@N01&amp;set_id=72157619407493507&amp;tags=Ruby,Rails,jobfair,Toronto" frameborder="0" width="600" scrolling="no" align="center"></iframe>    <br /><small>Created with <a title="Admarket.se" href="http://www.admarket.se">Admarket&#8217;s</a> <a title="flickrSLiDR" href="http://flickrslidr.com">flickrSLiDR</a>.</small></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2009/06/09/the-employmentnil-ruby-job-fair/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>&#8220;employment.nil&#8221;</title>
		<link>http://www.globalnerdy.com/2009/06/06/employmentnil/</link>
		<comments>http://www.globalnerdy.com/2009/06/06/employmentnil/#comments</comments>
		<pubDate>Sat, 06 Jun 2009 16:49:39 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Meetups]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Toronto]]></category>
		<category><![CDATA[What Joey Did]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[employment.nil]]></category>
		<category><![CDATA[job fairs]]></category>
		<category><![CDATA[jobs]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[The Flintstones-Jetsons Approach]]></category>
		<category><![CDATA[Unspace]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2009/06/06/employmentnil/</guid>
		<description><![CDATA[In case you’re: a programmer who works with the Ruby programming language looking for work available to get down to Toronto’s “West Queen West” neighbourhood soon you might want to do what I’m doing in a couple of minutes (as of this writing): heading down to the Gladstone Hotel (1214 Queen Street West, at Dufferin) [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><a href="http://rubyjobfair.ca/"><img style="border-right-width: 0px; margin: 0px 0px 0px 10px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="&quot;employment.nil&quot; poster" border="0" alt="&quot;employment.nil&quot; poster" align="right" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/06/employment-nil.jpg" width="300" height="464" /></a>In case you’re:</p>
<ul>
<li>a programmer who works with the Ruby programming language </li>
<li>looking for work </li>
<li>available to get down to Toronto’s “West Queen West” neighbourhood soon </li>
</ul>
<p>you might want to do what I’m doing in a couple of minutes (as of this writing): heading down to the <a href="http://www.gladstonehotel.com/">Gladstone Hotel</a> (<a href="http://www.bing.com/maps/default.aspx?v=2&amp;FORM=LMLTCP&amp;cp=43.642539~-79.426774&amp;style=r&amp;lvl=16&amp;tilt=-90&amp;dir=0&amp;alt=-1000&amp;phx=0&amp;phy=0&amp;phscl=1&amp;where1=1214%20Queen%20Street%20West%2C%20Toronto%20ON&amp;encType=1">1214 Queen Street West</a>, at Dufferin) to get a look at <strong><a href="http://rubyjobfair.ca/">employment.nil</a></strong>, which bills itself as “the first Toronto Ruby job fair”.</p>
<p>Organized by the fine folks at <a href="http://unspace.ca/">Unspace</a>, who are also organizing the upcoming <a href="http://futureruby.com/">FutureRuby</a> conference and <a href="http://failcampto.eventbrite.com/">FailCamp</a> (where I’ll be the MC), employment.nil isn’t your typical computer programmer job fair. <strong>No computers are allowed!</strong> They’re going to be strict about it – even the use of iPhone applications is <em>verboten</em>. Bring printouts of your resume and some scratch paper to do “live coding”. I’m going to bring my mini-whiteboard and dry-erase markers.</p>
<p>See you there!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2009/06/06/employmentnil/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;employment.nil&#8221; &#8211; The Toronto Ruby Job Fair</title>
		<link>http://www.globalnerdy.com/2009/05/29/employmentnil-the-toronto-ruby-job-fair/</link>
		<comments>http://www.globalnerdy.com/2009/05/29/employmentnil-the-toronto-ruby-job-fair/#comments</comments>
		<pubDate>Fri, 29 May 2009 06:01:23 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Meetups]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Toronto]]></category>
		<category><![CDATA[employment]]></category>
		<category><![CDATA[job fairs]]></category>
		<category><![CDATA[Pete Forde]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Unspace]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2009/05/29/employmentnil-the-toronto-ruby-job-fair/</guid>
		<description><![CDATA[If programming in Ruby is your thing and you’re looking for work or workers, you should mark Saturday, June 6th on your calendar. That’s when employment.nil, Toronto’s first Ruby job fair, takes place at the Gladstone Hotel. Organized by Pete Forde and the folks at Unspace – the local Ruby heroes behind things like the [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><a href="http://rethink.unspace.ca/2009/5/14/ruby-job-fair"><img style="border-bottom: 0px; border-left: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px" title="employment_nil" border="0" alt="employment_nil" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/05/employment-nil.jpg" width="400" height="262" /></a> </p>
<p>If programming in Ruby is your thing and you’re looking for work or workers, you should mark <strong>Saturday, June 6th</strong> on your calendar. That’s when <strong><a href="http://rethink.unspace.ca/2009/5/14/ruby-job-fair">employment.nil</a></strong>, Toronto’s first Ruby job fair, takes place at the Gladstone Hotel.</p>
<p>Organized by <a href="http://www.peteforde.com/">Pete Forde</a> and the folks at <a href="http://unspace.ca/">Unspace</a> – the local Ruby heroes behind things like the <a href="http://futureruby.com/">FutureRuby</a> conference – employment.nil is an old-school job fair for Ruby programmers. In fact, it’s so old-school that <strong><em>no computers of any kind are allowed.</em></strong> If you’re looking for work, bring printouts of your code and be ready to write out ideas with pen and paper. If you’re looking for people to work for you, you can set up a booth, grade school science fair-style.</p>
<p>Want to find out more? <strong><a href="http://rethink.unspace.ca/2009/5/14/ruby-job-fair" target="_blank">Check out the employment.nil article in <em>Rethink</em>, Unspace’s blog.</a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2009/05/29/employmentnil-the-toronto-ruby-job-fair/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Named Parameters in Method Calls: Python Si, Ruby No</title>
		<link>http://www.globalnerdy.com/2009/03/16/named-parameters-in-method-calls-python-si-ruby-no/</link>
		<comments>http://www.globalnerdy.com/2009/03/16/named-parameters-in-method-calls-python-si-ruby-no/#comments</comments>
		<pubDate>Mon, 16 Mar 2009 04:00:00 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[named arguments]]></category>
		<category><![CDATA[named parameters. method calls]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2009/03/16/named-parameters-in-method-calls-python-si-ruby-no/</guid>
		<description><![CDATA[In an earlier article, Default and Named Parameters in C# 4.0 / Sith Lord in Training, I wrote about how C# 4.0 – that’s the version coming out with the next release of Visual Studio, known as Visual Studio 2010 – is going to provide support for named parameters. In that article, I also incorrectly [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><img style="border-right-width: 0px; margin: 0px 0px 5px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="&quot;Hello My Name Is&quot; sticker" border="0" alt="&quot;Hello My Name Is&quot; sticker" align="right" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/03/hello-my-name-is-sticker.jpg" width="241" height="206" /> In an earlier article, <em><strong><a href="http://www.globalnerdy.com/2009/03/12/default-and-named-parameters-in-c-40-sith-lord-in-training/">Default and Named Parameters in C# 4.0 / Sith Lord in Training</a></strong></em>, I wrote about how C# 4.0 – that’s the version coming out with the next release of Visual Studio, known as <a href="http://www.microsoft.com/visualstudio/en-us/products/2010/default.mspx">Visual Studio 2010</a> – is going to provide support for named parameters.</p>
<p>In that article, I also <em>incorrectly </em>stated that Ruby supported named parameters. Luckily, <a href="http://www.globalnerdy.com/2009/03/12/default-and-named-parameters-in-c-40-sith-lord-in-training/#comment-3982">Jörg W Mittag spotted my mistake an corrected me in a comment</a>. I’ve since corrected the article and thought I’d show you how I got it wrong in the first place.</p>
<h3>Ruby and My Named Parameter Goof</h3>
<p>I had a vague recollection of Ruby accepting named parameters. I figured I’d be empirical and fired up <strong>irb</strong> – the Ruby REPL shell – and put together a quick little method to see if the recollection was correct:</p>
<blockquote><pre># Ruby 1.8.6
def test_named_params(first, second)
    puts &quot;#{first}\n#{second}&quot;
end</pre>
</blockquote>
<p>Once put together, I made some test calls to the method:</p>
<blockquote>
<pre>

# irb session (Ruby 1.8.6)
irb(main):&gt; <strong>test_named_params(&quot;alpha&quot;, &quot;beta&quot;)</strong>
alpha
beta

=&gt; nil

irb(main):&gt; <strong>test_named_params(first = &quot;alpha&quot;, second = &quot;beta&quot;)</strong>
alpha
beta

=&gt; nil
</pre>
</blockquote>
<p>Seeing that the interpreter didn’t choke on that named parameter call, I thought to myself “Vague recollection confirmed, Ruby supports named parameters!” and wrote the blog article.</p>
<p>Had my brain actually been firing on all cylinders, I would’ve given the method a proper test by providing the named parameters out of the order in which they appear in the method signature. Here’s what I would’ve seen:</p>
<blockquote>
<pre># irb session (Ruby 1.8.6)
irb(main):&gt; <strong>test_named_params(second = &quot;alpha&quot;, first = &quot;beta&quot;)</strong>
alpha
beta


=&gt; nil

</pre>
</blockquote>
<p>Uh-oh. If named parameters worked, the first output line would be “beta” and the second would be “alpha”. Clearly something’s wrong with my recollection.</p>
<p>Let’s try some <em>non-existent</em> named parameters – say, ones involving current entertainemtn news headlines &#8212; just to see what happens:</p>
<blockquote>
<pre># irb session (Ruby 1.8.6)
irb(main):&gt; <strong>test_named_params(lindsay_lohan_dui = &quot;alpha&quot;,
jim_cramer_smackdown = &quot;beta&quot;)</strong>


alpha

beta

=&gt; nil
</pre>
</blockquote>
<p>Even with nonsensical named parameters, the method is still accepting the values in order. Why is that?</p>
<p>Just about everything in Ruby has a return value (which can be anything, including <code>nil</code>). You can see for yourself in irb – here’s a quick do-nothing method definition:</p>
<blockquote>
<pre>irb(main)&gt; <strong>def doNothing
</strong>irb(main)&gt; <strong>end</strong>
=&gt; nil</pre>
</blockquote>
<p>As you can see. defining a method returns a value of <code>nil</code>. </p>
<p>As Jorg pointed out, Ruby assignment statements return a value: the value used in the assigment. Once again, for proof, I&#8217;ll use an example from an irb session. In the example below, assigning the string <code>&quot;alpha&quot;</code> to the variable <code>first</code> also returns the string <code>&quot;alpha&quot;</code>:</p>
<blockquote>
<pre># irb session (Ruby 1.8.6)
irb(main):&gt; <strong>first = &quot;alpha&quot;</strong>=&gt; &quot;alpha&quot;</pre>
</blockquote>
<p>In the call to <code>test_named_params</code>, the Ruby interpreter was interpreting my “named parameters” as assignment statements. <code>first = &quot;alpha&quot;</code> evaluates to plain old <code>&quot;alpha&quot;</code>, but so does <code>second = &quot;alpha&quot;</code> (and for that matter, so does <code>lindsay_lohan_dui = &quot;alpha&quot;</code>). Each assignment statement in my parameter list was evaluated, and then those values were passed to method in positional order.</p>
<h3>Python Supports Named Parameters</h3>
<p>After getting the comment from Jorg and correcting my article, I wondered why I thought Ruby supported named parameters. Then it hit me – it’s Python.</p>
<p>So I fired up the Python REPL and put together this quick little method:</p>
<blockquote>
<pre># Python 3.0
def test_named_params(first, second):
    print(&quot;%s\n%s&quot; % (first, second))</pre>
</blockquote>
<p>And this time, I decided to be a little more thorough in my testing:</p>
<blockquote>
<pre># Python 3.0 REPL
&gt;&gt;&gt; <strong>test_named_params(&quot;alpha&quot;, &quot;beta&quot;)</strong>
alpha
beta

&gt;&gt;&gt; <strong>test_named_params(first = &quot;alpha&quot;, second = &quot;beta&quot;)</strong>
alpha
beta

&gt;&gt;&gt; <strong>test_named_params(second = &quot;alpha&quot;, first = &quot;beta&quot;)</strong>
beta
alpha</pre>
</blockquote>
<p>And some additional searching on the web confirmed that yes, Python method calling does in fact support named parameters.</p>
<p>So in conclusion, when it comes to named parameters, it’s <em>Python si, Ruby no</em>…and <em>C# <a href="http://dictionary.reverso.net/english-spanish/soon">pronto</a></em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2009/03/16/named-parameters-in-method-calls-python-si-ruby-no/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>FutureRuby and Failcamp: Register Now!</title>
		<link>http://www.globalnerdy.com/2009/03/10/futureruby-and-failcamp-register-now/</link>
		<comments>http://www.globalnerdy.com/2009/03/10/futureruby-and-failcamp-register-now/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 20:11:06 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Meetups]]></category>
		<category><![CDATA[Toronto]]></category>
		<category><![CDATA[FAILCamp]]></category>
		<category><![CDATA[FutureRuby]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2009/03/10/futureruby-and-failcamp-register-now/</guid>
		<description><![CDATA[Last year, the folks at Unspace held a fantastic Ruby conference called RubyFringe. They took the standard conference format, threw out the stuff they didn’t like, amplified the stuff they loved and kept the attendance down to around Dunbar’s number. The end result: quite possibly the best geek conference I’ve ever attended (a lot of [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><a href="http://futureruby.com/"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="futureruby" border="0" alt="futureruby" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/03/futureruby.jpg" width="600" height="219" /></a></p>
<p><strong>Last year, the folks at </strong><a href="http://unspace.ca/"><strong>Unspace</strong></a><strong> held a fantastic Ruby conference called </strong><a href="http://rubyfringe.com/"><strong>RubyFringe</strong></a><strong>.</strong> They took the standard conference format, threw out the stuff they didn’t like, amplified the stuff they loved and kept the attendance down to around Dunbar’s number. The end result: quite possibly the best geek conference I’ve ever attended (a lot of the other attendees would concur). I wrote quite extensively about RubyFringe in <a href="http://www.globalnerdy.com/2009/02/23/futureruby-july-9th-12th-2009/">this entry</a>, and here are my notes from the conference:</p>
<ul>
<li><a href="http://www.globalnerdy.com/2008/07/20/rubyfringe-day-1-notes-part-1/">Day 1 Notes, Part 1</a> </li>
<li><a href="http://www.globalnerdy.com/2008/07/20/rubyfringe-day-1-notes-part-2/">Day 1 Notes, Part 2</a> </li>
<li><a href="http://www.globalnerdy.com/2008/07/21/rubyfringe-day-2-notes-part-1/">Day 2 Notes, Part 1</a> </li>
<li><a href="http://www.globalnerdy.com/2008/07/22/rubyfringe-day-2-notes-part-2/">Day 2 Notes, Part 2</a> </li>
<li><a href="http://www.globalnerdy.com/2008/07/22/rubyfringe-day-2-notes-part-3/">Day 2 Notes, Part 3</a> </li>
</ul>
<p><strong>This year, they’re holding a slightly different conference called <a href="http://futureruby.com/">FutureRuby</a>.</strong> They’ve described it as bill it as “an opportunity to prepare for the future by learning from the mistakes of the past”, and promise us that it won’t just be RubyFringe warmed over – we shouldn’t expect to find the same things in the same places! Here’s what the <a href="http://futureruby.com/">FutureRuby site</a> says:</p>
<blockquote><p>We are the artists, philosophers, and troublemakers. We realize that the fringe of today is      <br />the mainstream of tomorrow. We grease the engines of progress, even when we&#8217;re working outside of the machine.</p>
<p>FutureRuby isn&#8217;t a Ruby conference, but a conference for Rubyists. This is a call to order &#8211; a congress of the curious characters that drew us to this community in the first place. We have a singular opportunity to express a long-term vision, a future where Ruby drives creativity and prosperity without being dampened by partisan politics.</p>
</blockquote>
<p><strong>FutureRuby runs from Friday, July 10th at 5:00 p.m. and officially end on Sunday, July 12th at around 11:55 p.m..</strong> FutureRuby will also be paired with FailCampTO, which will take place on Thursday, July 9th (I’ll be MCing this event, and I’ll talk more about it in another post).</p>
<p>The early bird tickets for FutureRuby, which sell for CAD$700, are already gone. The regular rate tickets, which sell for CAD$800, are still available, but probably not for long. <strong>If you want to attend FutureRuby, I strongly recommend that you </strong><a href="http://futureruby.eventbrite.com/"><strong>go to the FutureRuby registration page</strong></a><strong> and sign up right now.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2009/03/10/futureruby-and-failcamp-register-now/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FutureRuby: July 9th &#8211; 12th, 2009</title>
		<link>http://www.globalnerdy.com/2009/02/23/futureruby-july-9th-12th-2009/</link>
		<comments>http://www.globalnerdy.com/2009/02/23/futureruby-july-9th-12th-2009/#comments</comments>
		<pubDate>Mon, 23 Feb 2009 04:50:56 +0000</pubDate>
		<dc:creator>Joey deVilla</dc:creator>
				<category><![CDATA[Meetups]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Toronto]]></category>
		<category><![CDATA[conferences]]></category>
		<category><![CDATA[FutureRuby]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[RubyFringe]]></category>
		<category><![CDATA[Unspace]]></category>

		<guid isPermaLink="false">http://www.globalnerdy.com/2009/02/23/futureruby-july-9th-12th-2009/</guid>
		<description><![CDATA[First Came RubyFringe I can’t talk about FutureRuby without first talking about RubyFringe. Last July, the fine folks at Toronto’s Little Coding Shop That Could – Unspace – created one of the best and most memorable conferences I’ve ever attended: RubyFringe. RubyFringe made its mark by taking the standard geek conference formula and turning it [...]]]></description>
			<content:encoded><![CDATA[<p></p><h3>First Came RubyFringe</h3>
<p><a href="http://rubyfringe.com/"><img alt="RubyFringe logo" src="http://www.joeydevilla.com/wordpress/wp-content/uploads/2008/07/rubyfringe.jpg" width="600" height="278" /></a></p>
<p>I can’t talk about <strong><a href="http://rethink.unspace.ca/2009/2/19/future-ruby">FutureRuby</a></strong> without first talking about <a href="http://rubyfringe.com/">RubyFringe</a>.</p>
<p>Last July, the fine folks at Toronto’s Little Coding Shop That Could – <a href="http://unspace.ca/">Unspace</a> – created one of the best and most memorable conferences I’ve ever attended: <strong>RubyFringe</strong>. RubyFringe made its mark by taking the standard geek conference formula and turning it on its head. Among the things that distinguished it were:</p>
<ul>
<li>RubyFringe was intentionally a small conference, with its attendance capped at 150 attendees. </li>
<li>No sponsors! </li>
<li>It had a single conference track, and all presentations took place in the same room. </li>
<li>The presentations were vetted carefully by people who really, really, really loved the Ruby programming language. This meant that we got interesting speakers and no vendor pitches. We felt Damien Katz’ pain when he talked about his situation prior to creating CouchDB, grooved as Nick Sieger talked about the parallels between jazz and programming, and stayed glued to our seats as Giles Bowkett gave us his rousing call to action in his 400-slide extravaganza, even though he’d gone well beyond his allotted time and was cutting into lunch (it was <em>that </em>good). </li>
<li>They didn’t allow questions at the end of the presentations. In organizer Pete Forde’s words: “Our experience has been that questions are hard to hear, generally of poor quality, often just statements, and almost always an exercise in demonstrating how brilliant the questioner is while dominating the attention of the whole room.” </li>
<li>There was a “companion track” for attendees’ non-geeky significant others, where they were taken on a tour of the city while their partners were at the conference. </li>
<li>They served some of the best food I’ve ever had at a developer conference. The lunches were at the Downtown Metropolitan Hotel, and the big dinner at the Drake Hotel was beyond anything I’ve ever had at a developer conference. </li>
<li>The conference also included parties at some of the best spots in the city, some of which you wouldn’t find on vanilla tourist guides. Better yet, those parties were open bar! </li>
<li>Not only was there an opening party at a brewery, complete with stand-up comic, rock band and DJ, but there was a great closing party on Unspace’s roof. </li>
<li>The organizers paid attention to little details that set the conference apart, from giving everyone transit passes to heralding speakers as they walked on stage with the song of the choice to the giant polaroid montage featuring every attendee. </li>
</ul>
<p>The organizers’ decisions in crafting RubyFringe made it a high-quality, memorable and inspiring experience, and its carefully limited scale gave it a sense of community that I could almost describe as familial. </p>
<p>Many people who went declared it the best conference they’d ever attended, and many who passed up the opportunity kicked themselves for missing it. Those pale next to the highest praise for the conference: the fact that after attending RubyFringe, a half-dozen handful of attendees were so inspired that they quit their day jobs to strike out on their own doing Ruby development.</p>
<h3>Now Comes FutureRuby</h3>
<p><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="FutureRuby comic" border="0" alt="FutureRuby comic" src="http://www.globalnerdy.com/wordpress/wp-content/uploads/2009/02/future-ruby-comic.jpg" width="583" height="563" /></p>
<p>With RubyFringe’s resounding success, it was only natural that people would ask if Unspace would be doing it again next year. They gave it some serious thought – the last thing that they wanted to create was a weak sequel. They didn’t want to simply rehash RubyFringe, but <em>reinvent</em> it, just as they had reinvented the developer conference with RubyFringe.</p>
<p>So they reinvented RubyFringe as FutureRuby.</p>
<p>FutureRuby will take place from July 9th through 12th, and will build on what RubyFringe accomplished. The organizers bill it as “an opportunity to prepare for the future by learning from the mistakes of the past”, and promise us that it won’t just be RubyFringe warmed over – we shouldn’t expect to find the same things in the same places!</p>
<p>What else will it have?</p>
<ul>
<li>Parties and nightly entertainment, three nights in a row </li>
<li>FAILCamp (which I co-hosted last year, and which I am invited to host again) is back with a vengeance, and an adorable sailor suit </li>
<li>“More better than” swag that you’ll be proud to wear in public </li>
<li>The return of the companion track for partners and secret lovers during the conference </li>
<li>An amazing two nights of lunches and dinners that you’ll photograph and tweet about </li>
<li>Loving attention to all of the details, like excellent wifi, transit passes, and no paid presentations </li>
</ul>
<p><a href="http://rethink.unspace.ca/2009/2/19/future-ruby">All the details are in this post at Unspace’s blog, <em>Rethink</em>.</a><em></em> You can bet that I’ll be at FutureRuby.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.globalnerdy.com/2009/02/23/futureruby-july-9th-12th-2009/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

