<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="http://feeds.feedburner.com/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><!-- generator="wordpress/2.3.3" --><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">

<channel>
	<title>The Prokrammer</title>
	<link>http://blog.prokrams.com</link>
	<description>Phenomenal Cosmic Powers Krammed Into An Itty Bitty Cubicle</description>
	<pubDate>Tue, 09 Sep 2008 01:32:53 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/TheProkrammer" type="application/rss+xml" /><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2FTheProkrammer" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FTheProkrammer" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2FTheProkrammer" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.rojo.com/add-subscription?resource=http%3A%2F%2Ffeeds.feedburner.com%2FTheProkrammer" src="http://blog.rojo.com/RojoWideRed.gif">Subscribe with Rojo</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.bloglines.com/sub/http://feeds.feedburner.com/TheProkrammer" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FTheProkrammer" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FTheProkrammer" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FTheProkrammer" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><item>
		<title>Agile Summer Camp Recap</title>
		<link>http://blog.prokrams.com/2008/09/08/agile-summer-camp-recap/</link>
		<comments>http://blog.prokrams.com/2008/09/08/agile-summer-camp-recap/#comments</comments>
		<pubDate>Tue, 09 Sep 2008 01:32:53 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Agile Summer Camp]]></category>

		<category><![CDATA[ASC]]></category>

		<category><![CDATA[Conferences]]></category>

		<category><![CDATA[Events]]></category>

		<guid isPermaLink="false">http://blog.prokrams.com/2008/09/08/agile-summer-camp-recap/</guid>
		<description><![CDATA[I had the pleasure of spending this past weekend with a group of about two dozen of the most talented and passionate developers in this region, and some from outside.&#160; This was no ordinary conference though, this was camping!&#160; We had no electricity, no flushing toilets, and a hand pump for running water.&#160; The great [...]]]></description>
			<content:encoded><![CDATA[<p>I had the pleasure of spending this past weekend with a group of about two dozen of the most talented and<a href="http://blog.prokrams.com/wp-content/uploads/2008/09/agilesummercamp.png"><img title="AgileSummerCamp" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="129" alt="AgileSummerCamp" src="http://blog.prokrams.com/wp-content/uploads/2008/09/agilesummercamp-thumb.png" width="130" align="right" border="0" /></a> passionate developers in this region, and some from outside.&#160; This was no ordinary conference though, this was camping!&#160; We had no electricity, no flushing toilets, and a hand pump for running water.&#160; The great thing about the lack of power&#160; though is that distraction was at an absolute minimum, all we could really do was talk and listen.&#160; I kept a camp journal, below is the transcription (with some embellishment):</p>
<p>&#8212;&#8212;</p>
<p><font size="2">9/5/08</font></p>
<p><font size="2">We have arrived at Agile Summer Camp.&#160; After claiming a bottom bunk in the rear of the cabin, I am sitting in my camp chair enjoying a beer while <a href="http://blog.sonerdy.com/" target="_blank">Brandon Joyce</a>, funky town dancer extraordinaire, cranks the camp radio so we can listen to <a href="http://www.isaachayes.com/" target="_blank">Chef</a> (RIP) croon on a 70s station.&#160; <a href="http://www.codinggeekette.com/" target="_blank">Sadukie</a> is dead-tree blogging and <a href="http://blog.cloudsocket.com/" target="_blank">Woody</a> and <a href="http://matthew.werstler.name/page.asp?page=bio" target="_blank">Matt Werstler</a> have gone for firewood.&#160; We are anxiously awaiting the arrival of <a href="http://michaeleatonconsulting.com/blog/" target="_blank">Mike Eaton</a> who has recently called and is nearby.&#160; </font></p>
<p><font size="2">Suddenly, a car arrives.&#160; Could this be Mr. Eaton?&#160; Or a guy with a chainsaw (I hope he has <a href="http://www.youtube.com/watch?v=7aO3TO5L0bM" target="_blank">bud light</a>!).&#160; It turns out to be <a href="http://www.joshholmes.com/" target="_blank">Josh Holmes</a> (who looks like he could have a chainsaw…).&#160; He is followed shortly by Eaton, and then others.</font></p>
<p><font size="2">There was a guest log in the back of the cabin packet that contained a riddle, as people arrived we asked for them to take it on, but no one could come up with an answer, see if you can:</font></p>
<blockquote><p><font color="#c0c0c0" size="2">We buried the loot where the fish used to swim</font></p>
<p><font color="#c0c0c0" size="2">40 paces westerly of monitor, third stopper (not for bathtub) from the left.&#160; one foot down right side.</font></p>
<p><font color="#c0c0c0" size="2">1st Clue:&#160; Are you good enough?</font></p>
<p><font color="#c0c0c0" size="2">-John from Beaverton May 26, 2008</font></p>
</blockquote>
<p><font size="2">The evening ends with awesome discussions on community and a few already on the topic of agile.&#160; Also me and Mike Eaton finish a fifth and a pint of <a href="http://www.jackdaniels.com/Default.aspx" target="_blank">Jack</a> ourselves (okay <a href="http://www.platinumbay.com/blogs/" target="_blank">Steve Andrews</a> helped a <em>little)</em>.</font></p>
<p>&#8212;&#8212;</p>
<p><font size="2">9/6/08</font></p>
<p><font size="2">CLANK! CLING! CLANG!&#160; I am roused from my fitful sleep by the sharp cry of metal to metal.&#160; I change in my sleeping bag and make my way out of the cabin to find turkey sausage and eggs being cooked on the, now assembled, camp stove….</font></p>
<p>&#8212;&#8212;</p>
<p><a href="http://www.flickr.com/photos/sadukie/2838455464/sizes/m/" target="_blank"><img src="http://farm4.static.flickr.com/3091/2838455464_e73bf697dd.jpg" /></a> </p>
<p>The rest of the journal devolves into generic notes, most of which can be found <a href="http://www.agilesummercamp.com/wiki/proposedTopics.ashx" target="_blank">here</a> (along with a lot more detail on the actual sessions). </p>
<p>Needless to say it was very educational and loads of fun.</p>

<p><a href="http://feeds.feedburner.com/~a/TheProkrammer?a=kxMzoF"><img src="http://feeds.feedburner.com/~a/TheProkrammer?i=kxMzoF" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/TheProkrammer?a=1jAKL"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=1jAKL" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=L1XXl"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=L1XXl" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=IdUTl"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=IdUTl" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=gvQ4l"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=gvQ4l" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=mXQOl"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=mXQOl" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheProkrammer/~4/387199704" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.prokrams.com/2008/09/08/agile-summer-camp-recap/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Interviewed on Alt.NET Podcast</title>
		<link>http://blog.prokrams.com/2008/08/29/interviewed-on-altnet-podcast/</link>
		<comments>http://blog.prokrams.com/2008/08/29/interviewed-on-altnet-podcast/#comments</comments>
		<pubDate>Sat, 30 Aug 2008 02:19:31 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Aaron Junod]]></category>

		<category><![CDATA[Alt.NET]]></category>

		<category><![CDATA[Blowmage]]></category>

		<category><![CDATA[IronRuby]]></category>

		<category><![CDATA[Michael Moore]]></category>

		<category><![CDATA[Podcast]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[Tranqy]]></category>

		<guid isPermaLink="false">http://blog.prokrams.com/2008/08/29/interviewed-on-altnet-podcast/</guid>
		<description><![CDATA[I had the pleasure of being interviewed along side Aaron Junod on the Alt.NET Podcast to discuss IronRuby.  
Michael  Moore was a wonderful host and did an amazing job editing the conversation down to something tight.  It was an exciting opportunity to talk about IronRuby specifically and Ruby in general.  Hopefully it will help spark [...]]]></description>
			<content:encoded><![CDATA[<p>I had the pleasure of being <a href="http://altnetpodcast.com/episodes/9-state-of-ironruby" target="_blank">interviewed</a> along side <a href="http://rubydoes.net/" target="_blank">Aaron Junod</a> on the <a href="http://altnetpodcast.com/" target="_blank">Alt.NET Podcast</a> to discuss <a href="http://www.ironruby.net" target="_blank">IronRuby</a>.  <img src="http://blog.prokrams.com/wp-content/uploads/2008/08/altdotnetmike.png" title="altdotnetmike" style="border-width: 0px" alt="altdotnetmike" align="right" border="0" height="170" width="113" /></p>
<p><a href="http://blowmage.com/" target="_blank">Michael  Moore</a> was a wonderful host and did an amazing job editing the conversation down to something tight.  It was an exciting opportunity to talk about IronRuby specifically and Ruby in general.  Hopefully it will help spark even more interest in it.</p>
<p>On a personal note, I’m interested in any feedback you might have, from the technical to the stylistic. It was my first time doing a podcast, so it’s definitely a learning experience for me.</p>

<p><a href="http://feeds.feedburner.com/~a/TheProkrammer?a=C5DZkS"><img src="http://feeds.feedburner.com/~a/TheProkrammer?i=C5DZkS" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/TheProkrammer?a=2agnDK"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=2agnDK" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=XnZYAk"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=XnZYAk" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=Y2d4pk"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=Y2d4pk" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=nnwPdk"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=nnwPdk" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=2UP3yk"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=2UP3yk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheProkrammer/~4/378588032" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.prokrams.com/2008/08/29/interviewed-on-altnet-podcast/feed/</wfw:commentRss>
		</item>
		<item>
		<title>devLink 2008: Open Spaces and Waffle Houses</title>
		<link>http://blog.prokrams.com/2008/08/27/devlink-2008-open-spaces-and-waffle-houses/</link>
		<comments>http://blog.prokrams.com/2008/08/27/devlink-2008-open-spaces-and-waffle-houses/#comments</comments>
		<pubDate>Thu, 28 Aug 2008 03:06:54 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Bus]]></category>

		<category><![CDATA[Conferences]]></category>

		<category><![CDATA[devLink]]></category>

		<category><![CDATA[Heartland]]></category>

		<category><![CDATA[Open Spaces]]></category>

		<category><![CDATA[Ratt]]></category>

		<guid isPermaLink="false">http://blog.prokrams.com/2008/08/27/devlink-2008-open-spaces-and-waffle-houses/</guid>
		<description><![CDATA[I had the pleasure of attending devLink this past weekend in Murfreesboro, Tennessee.  Honestly, I almost blew this conference off.  The sessions really didn’t appeal to me, and it was a bit of a hike to get to.  But then Amanda Laucher announced the DevLink Bus. And I started to waver…  Then I heard that [...]]]></description>
			<content:encoded><![CDATA[<p>I had the pleasure of attending <a href="http://www.devlink.net/" target="_blank">devLink</a> this past weekend in <a href="http://www.mtsu.edu/" target="_blank">Murfreesboro, Tennessee.</a>  Honestly, I almost blew this conference off.  The sessions really didn’t appeal to me, and it was a bit of a hike to get to.  But then <a href="http://www.pandamonial.com/" target="_blank">Amanda Laucher</a> <a href="http://www.pandamonial.com/2008/06/devlink-bus-route.html" target="_blank">announced</a> the <a href="http://www.devlink.net/TravelInfo/RidethedevLinkBus/tabid/116/Default.aspx" target="_blank">DevLink Bus</a>. And I started to waver…  Then I heard that <a href="http://netcave.org/" target="_blank">Alan Stevens</a> would be organizing <a href="http://www.openspaceworld.org/" target="_blank">Open Spaces</a> during the conference. I was sold.</p>
<p>Wednesday evening around 7:30, my wife dropped me off at <a href="http://www.codinggeekette.com/" target="_blank">Sadukie’s</a> house. <a href="http://blog.sonerdy.com/" target="_blank">Brandon Joyce</a> was already there, watching <a href="http://www.familyguy.com/" target="_blank">Family Guy</a>.  After Sadukie finished gathering up her wares, we piled into her Durango and headed off to pick up <a href="http://www.coreyhaines.com/coreysramblings/" target="_blank">Corey Haines</a>. A quick trip across town and we were <a href="http://maps.google.com/maps?f=d&amp;saddr=Cleveland,+OH&amp;daddr=Toledo,+OH&amp;hl=en&amp;geocode=&amp;mra=ls&amp;sll=41.540243,-81.444292&amp;sspn=0.007757,0.019312&amp;ie=UTF8&amp;t=h&amp;z=9" target="_blank">on our way</a> to Toledo to catch the bus.</p>
<p>Well, more accurately we were on our way to Toledo to <em>wait</em> for the bus.  The bus apparently went to the wrong side of town and it had to turn around to pick us up.  This wasn’t entirely bad.  It gave us enough time to pick up beer and for Corey to have an impromptu parking lot concert. And what’s better then beer and music?</p>
<p style="text-align: center"><img src="http://farm4.static.flickr.com/3071/2793807246_80ea256399_m.jpg" /></p>
<p>Eventually the bus arrived and we REALLY began our journey.  A journey of <a href="http://www.imdb.com/title/tt0090305/" target="_blank">corny movies</a> and <a href="http://en.wikipedia.org/wiki/Insomnia" target="_blank">lack of sleep</a>.  After much tossing and turning and cursing of lack of leg room, we arrived in Tennessee about 9am.  At which point I collapsed in my <a href="http://doubletree1.hilton.com/en_US/dt/hotel/MBTDTDT/index.do" target="_blank">hotel</a> room and passed out. Waking up in the evening, I followed my instinct to the local hotel bar/restaurant. Later on, I ended up making my way to Alan’s room where a party was going down.  Guitars, Cigars, and Beers were being passed around with abandon until hotel security came to the door and asked us nicely to stop.</p>
<p>The rest of the time in Tennessee is really a blur.  I wish I could give a detailed synopsis of each day, replete with details and names.  But honestly, the days meld into one another, linked only by great conversations, new experiences, and wonderful people.  I can’t stress enough the amount of knowledge I gained, and the success of the Open Space format that was put into place.</p>
<p>Alas, it was over much too soon.  By Saturday night it was time to board the bus once again, and make the long, <a href="http://www.imdb.com/title/tt0118715/" target="_blank">movie</a> filled trip back to Ohio… Who knows, maybe this time I could get some sleep? I cuddled up to the window and slowly drifted…</p>
<p>“THUMP, THUMP, THUMP, THUMP!”  Okay, so sleep wasn’t going to happen.</p>
<p><a href="http://www.flickr.com/photos/29942169@N08/2797454393/sizes/s/in/set-72157606951193028/" target="_blank"></p>
<p style="text-align: center"><img src="http://farm4.static.flickr.com/3266/2797454393_a608e72fa4_m.jpg" /></p>
<p></a></p>
<p>A blown tire. Great, <a href="http://infozerk.com/averyblog/" target="_blank">James Avery’s</a> ribbing about <a href="http://en.wikipedia.org/wiki/Cliff_Burton" target="_blank">“Everyone was screaming… except Cliff”</a> went through my head.  It didn’t help that we passed <a href="http://en.wikipedia.org/wiki/Carrollton_bus_disaster" target="_blank">a sign commemorating a 1988 bus tragedy</a> (<a href="http://twitter.com/AlanBarber/statuses/897100189" target="_blank">no joke</a>). The bus slowly inched along, until we pulled into a gas station in <a href="http://maps.google.com/maps?hl=en&amp;q=english+kentucky&amp;ie=UTF8&amp;ll=38.641009,-85.128593&amp;spn=0.129521,0.30899&amp;t=h&amp;z=12" target="_blank">English, Kentucky</a>.  Our faces aglow in the soft light of nearby Waffle House.  We waited.  And Waited.  <a href="http://www.cootersplace.com" target="_blank">Cooter</a> showed up, and proceeded to sheer three bolts off the wheel.  So we continued to wait.  But while we waited, a remarkable thing happened.  Incredible conversations took place.  On <a href="http://www.flickr.com/photos/29942169@N08/2797907590/in/set-72157606951193028/" target="_blank">Comments</a>, on <a href="http://en.wikipedia.org/wiki/Single_responsibility_principle" target="_blank">SRP</a>, and any number of things.  The Open Spaces continued into the most open space possible, the world beyond the conference. Then the acetylene torch came out.</p>
<p><a href="http://www.flickr.com/photos/29942169@N08/2797488593/sizes/s/in/set-72157606951193028/" target="_blank"></p>
<p style="text-align: center"><img src="http://farm4.static.flickr.com/3036/2797488593_dbbb788cab_m.jpg" /></p>
<p></a></p>
<p>So we waited a bit more.  Marriages came and went we waited so long. Eventually a new tire was on and we were off.  By 1pm I was home holding my daughter and reflecting on a fantastic conference.  I was thankful I ended up going, though some images will be seared into my brain, forever.</p>
<p align="center"><a href="http://www.flickr.com/photos/29942169@N08/2797451193/sizes/s/in/set-72157606951193028/" target="_blank"><img src="http://farm4.static.flickr.com/3014/2797451193_e8576bf235_m.jpg" /></a></p>
<p>I’ll at least be able to say I shared a tour bus with a member of <a href="http://en.wikipedia.org/wiki/Ratt" target="_blank">Ratt</a>.</p>
<p align="center"><img src="http://farm4.static.flickr.com/3277/2797212777_60a629222e_m.jpg" /></p>
<p>The best part is that the conversation continues at the <a href="http://heartlandopenspaces.com" target="_blank">Heartland Open Spaces Wiki</a>. Be sure to stop by and join in!</p>
<p>Next, I’ll be at <a href="http://www.agilesummercamp.com/" target="_blank">Agile Summer Camp</a>, and then I’m home until <a href="http://www.codemash.org/" target="_blank">CodeMash</a> in January 2009.  To all my new friends, old friends, and friends to be, I hope to see you there!</p>

<p><a href="http://feeds.feedburner.com/~a/TheProkrammer?a=bXcY35"><img src="http://feeds.feedburner.com/~a/TheProkrammer?i=bXcY35" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/TheProkrammer?a=DMmIfK"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=DMmIfK" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=jQsbok"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=jQsbok" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=sATR5k"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=sATR5k" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=CqFphk"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=CqFphk" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=JHIWhk"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=JHIWhk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheProkrammer/~4/376746418" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.prokrams.com/2008/08/27/devlink-2008-open-spaces-and-waffle-houses/feed/</wfw:commentRss>
		</item>
		<item>
		<title>IronRuby vs JRuby vs MRI. Performance Mini-Shootout.</title>
		<link>http://blog.prokrams.com/2008/08/27/ironruby-vs-jruby-vs-mri-performance-mini-shootout/</link>
		<comments>http://blog.prokrams.com/2008/08/27/ironruby-vs-jruby-vs-mri-performance-mini-shootout/#comments</comments>
		<pubDate>Thu, 28 Aug 2008 01:15:52 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Benchmarks]]></category>

		<category><![CDATA[IronRuby]]></category>

		<category><![CDATA[JRuby]]></category>

		<category><![CDATA[MRI]]></category>

		<category><![CDATA[Performance]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[ShootOut]]></category>

		<guid isPermaLink="false">http://blog.prokrams.com/2008/08/27/ironruby-vs-jruby-vs-mri-performance-mini-shootout/</guid>
		<description><![CDATA[One of the things I went over in my eRubyCon talk was the relative performance of IronRuby compared to both JRuby&#160; (which I consider to be a cousin of sorts to IronRuby) and MRI. I did this by running the same tests that Antonio Cangiano ran in December. 
There were a few test results that [...]]]></description>
			<content:encoded><![CDATA[<p>One of the things I went over in my <a href="http://blog.prokrams.com/2008/08/25/erubycon-recap/" target="_blank">eRubyCon talk</a> was the relative performance of <a href="http://www.ironruby.net/" target="_blank">IronRuby</a> compared to both <a href="http://jruby.codehaus.org/" target="_blank">JRuby</a>&#160; <a href="http://flickr.com/photos/46576087@N00/2141649813/sizes/s/" target="_blank"><img src="http://farm3.static.flickr.com/2254/2141649813_03e886d464_m.jpg" align="right" /></a>(which I consider to be a cousin of sorts to IronRuby) and <a href="http://www.ruby-lang.org/en/" target="_blank">MRI</a>. I did this by running the <a href="http://antoniocangiano.com/2007/12/03/the-great-ruby-shootout/" target="_blank">same tests</a> that <a href="http://antoniocangiano.com/" target="_blank">Antonio Cangiano</a> ran in December. </p>
<p>There were a few test results that really stood out.&#160; The lists test was by far the worst for IR, where it was 56 times as slow as MRI and 3 times as slow as JRuby.&#160; But this wasn’t the only sore spot, there were other places that show room for improvement.&#160; Namely, vm1_blocks in which IronRuby was almost 9 times as slow as MRI.&#160; Also so_exception where IronRuby brought up the tail by being 10 times as slow as MRI. </p>
<p>The nitty gritty is that IronRuby is about twice as slow as MRI with JRuby being slightly faster, overall.&#160; As the below graph illustrates:</p>
<p><a href="http://blog.prokrams.com/wp-content/uploads/2008/08/image.png"><img title="image" style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="290" alt="image" src="http://blog.prokrams.com/wp-content/uploads/2008/08/image-thumb.png" width="575" border="0" /></a>&#160;</p>
<p>There are a few high points in this test though.&#160; Number one, is that IronRuby ran the majority of the tests.&#160; There were only four failures out of forty, for a 90% success rate.&#160; For comparison JRuby had 95% success rate. Number two, there were actually a few tests in which IronRuby beat JRuby and MRI.&#160; No small feat for such a young implementation.</p>
<p>I think this mini-shootout illustrates that there is a lot of room for improvement for IronRuby.&#160; However, a little perspective goes a long way.&#160; JRuby was <a href="http://groups.google.com/group/comp.lang.ruby/msg/7d05f2ad7d84e6f3?hl=en" target="_blank">announced in 2001</a>, IronRuby was <a href="http://www.iunknown.com/2007/04/introducing_iro.html" target="_blank">announced last April</a>.&#160; The JRuby team has had 7 years to get to where they are today, whereas IronRuby has only had almost a year and a half! As the DLR improves IronRuby will receive those performance gains for free, and as compatibility becomes more stable the core team can focus on performance as well. The raw data can be downloaded <a href="http://prokrams.com/files/ShootOut.csv" target="_blank">here</a>.</p>

<p><a href="http://feeds.feedburner.com/~a/TheProkrammer?a=YcSW6S"><img src="http://feeds.feedburner.com/~a/TheProkrammer?i=YcSW6S" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/TheProkrammer?a=b6VxAK"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=b6VxAK" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=zQax3k"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=zQax3k" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=2bfl8k"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=2bfl8k" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=PQZ7wk"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=PQZ7wk" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=dLpyLk"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=dLpyLk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheProkrammer/~4/376672314" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.prokrams.com/2008/08/27/ironruby-vs-jruby-vs-mri-performance-mini-shootout/feed/</wfw:commentRss>
		</item>
		<item>
		<title>eRubyCon Recap</title>
		<link>http://blog.prokrams.com/2008/08/25/erubycon-recap/</link>
		<comments>http://blog.prokrams.com/2008/08/25/erubycon-recap/#comments</comments>
		<pubDate>Tue, 26 Aug 2008 01:30:28 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Conferences]]></category>

		<category><![CDATA[Demo]]></category>

		<category><![CDATA[eRubyCon]]></category>

		<category><![CDATA[Events]]></category>

		<category><![CDATA[IronRuby]]></category>

		<category><![CDATA[Slides]]></category>

		<guid isPermaLink="false">http://blog.prokrams.com/2008/08/25/erubycon-recap/</guid>
		<description><![CDATA[&#160;
What a fantastic conference this was two weeks ago.&#160; A great lineup of speakers, and fantastic after event gatherings.&#160; And I missed the first day!&#160; Josh Holmes has a great series of posts detailing the event, so I won’t repeat the play by play here.&#160; But I can say that I will definitely be making [...]]]></description>
			<content:encoded><![CDATA[<p>&#160;</p>
<p>What a fantastic conference this was two weeks ago.&#160; A great lineup of speakers, and fantastic after event gatherings.&#160; And I missed the first day!&#160; <a href="http://www.joshholmes.com" target="_blank">Josh Holmes</a> has a great <a href="http://www.joshholmes.com/CategoryView,category,eRubyCon.aspx" target="_blank">series of posts</a> detailing the event, so I won’t repeat the play by play here.&#160; But I can say that I will definitely be making the trip to Columbus for <a href="http://www.erubycon.com/" target="_blank">eRubyCon</a> 2009.&#160; </p>
<p>This was the first conference I have gone to where I actually presented.&#160; My talk was originally geared more towards .NET developers interested in Ruby, thinking that there would be more Java and .NET enterprise folks there then it turned out.&#160; After I arrived, as I listened to the attendees, I realized the audience was primarily people already doing Ruby.&#160; I also noticed a certain level of distrust around Microsoft in general, even though the event was hosted in their office!&#160; As I was going to be speaking on <a href="http://www.ironruby.net" target="_blank">IronRuby</a>, a Microsoft project, this concerned me a bit.&#160; So I ended up putting in an opening section about some of, what I believe to be, the positive changes at Microsoft over the last half-decade or so.&#160; I highlighted efforts like <a href="http://www.codeplex.com" target="_blank">CodePlex</a> and <a href="http://port25.technet.com" target="_blank">Port25</a>.&#160; A number of people seemed to copy down the Port25 address, so I hope I helped open some eyes in this case.&#160; I also went over the current state of IronRuby, and compared it’s performance to <a href="http://jruby.codehaus.org/" target="_blank">JRuby</a>.&#160; I then asked who did .NET work in their day to day jobs and must have had about 5 people raise their hands.&#160; Then I went through a short demo of opening up and changing a standard WinForms app using IronRuby. It seemed to go well, I’ve gotten positive feedback on it and a number of suggestions for improvement.</p>
<p>I can’t thank <a href="http://www.objo.com/" target="_blank">Joe O&#8217;Brien</a> enough for the opportunity or confidence in me he showed by allowing me to speak.&#160; The slides and demo used for my presentation are <a href="http://prokrams.com/decks/eRubyCon/2008/IronRubyRealWorld.zip" target="_blank">here</a>.</p>

<p><a href="http://feeds.feedburner.com/~a/TheProkrammer?a=DtYpaH"><img src="http://feeds.feedburner.com/~a/TheProkrammer?i=DtYpaH" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/TheProkrammer?a=oWBJbK"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=oWBJbK" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=kmLdJk"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=kmLdJk" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=bkcMRk"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=bkcMRk" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=ejyk7k"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=ejyk7k" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=r6KCok"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=r6KCok" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheProkrammer/~4/374778456" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.prokrams.com/2008/08/25/erubycon-recap/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Boy Howdy! The Elder and Woody Get It On!</title>
		<link>http://blog.prokrams.com/2008/06/12/boy-howdy-the-elder-and-woody-get-it-on/</link>
		<comments>http://blog.prokrams.com/2008/06/12/boy-howdy-the-elder-and-woody-get-it-on/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 02:43:15 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Chris Woodruff]]></category>

		<category><![CDATA[Deep Fried Bytes]]></category>

		<category><![CDATA[Keith Elder]]></category>

		<category><![CDATA[Podcasts]]></category>

		<category><![CDATA[Technology]]></category>

		<category><![CDATA[The Elder]]></category>

		<category><![CDATA[Woody]]></category>

		<guid isPermaLink="false">http://blog.prokrams.com/2008/06/12/boy-howdy-the-elder-and-woody-get-it-on/</guid>
		<description><![CDATA[There’s a new podcast in town y’all, and wooeee is it good. (A little Southern lingo for you there).&#160; Keith “The Elder”&#160; Elder and Chris “Woody” Woodruff, two extremely smart gentlemen who I have the honor of knowing, have recently begun podcasting about Development and Technology with a Southern Twang.&#160; The title and theme of [...]]]></description>
			<content:encoded><![CDATA[<p>There’s a new <a href="http://deepfriedbytes.com/" target="_blank">podcast</a> in town y’all, and wooeee is it good. (A little Southern lingo for you there).&#160; <a href="http://keithelder.net/blog/" target="_blank">Keith “The Elder”&#160; Elder</a> and <a href="http://blog.cloudsocket.com/" target="_blank">Chris “Woody” Woodruff</a>, two extremely smart gentlemen who I have the honor of knowing, have recently begun podcasting about Development and Technology with a <a href="http://en.wikipedia.org/wiki/Southern_American_English" target="_blank">Southern Twang</a>.&#160; <a href="http://images.foodnetwork.com/webfood/images/tv/paulashomecooking/videos/paula_image.jpg" target="_blank"><img style="margin: 0px 0px 0px 15px" height="204" src="http://images.foodnetwork.com/webfood/images/tv/paulashomecooking/videos/paula_image.jpg" width="141" align="right" /></a>The title and theme of this endeavor?&#160; Why, <a href="http://deepfriedbytes.com/" target="_blank">Deep Fried Bytes</a> of course!</p>
<p>The first episodes are based at the <a href="https://www.mvpsummit2008.com/public/aboutthisevent.aspx" target="_blank">MVP summit</a> that took place in April.&#160; From a <a href="http://deepfriedbytes.com/podcast/episode-2-interview-war-stories/" target="_blank">discussion</a> on what interface a Chicken should implement to lay eggs (my vote is for IEggLayer) to <a href="http://deepfriedbytes.com/podcast/episode-3-twitter-war-stories/" target="_blank">extolling</a> the Power of <a href="http://www.twitter.com" target="_blank">Twitter</a>, each episode has been filled with warm humor and good information.&#160; The passion they, and their guests, have for technology really comes shining through.&#160; Leaving you with a contented, full feeling, similar to eating a good bucket of wings fresh from the deep fryer.</p>
<p>The production values are surprisingly high for such a new podcast.&#160; Even though the podcast is only 3 episodes old (really two, the <a href="http://deepfriedbytes.com/podcast/episode-1-introducing-deep-fried-bytes/" target="_blank">intro one</a> almost doesn’t count ;) ), you would think these guys have at LEAST 10 episodes under their belts, minimum.&#160; And there has been steady improvement. In the first episode or two, Woody sounded much quieter then Keith, by the third episode that’s been resolved.&#160; The new intro from Elly Mae is top notch, leading you in that this is a serious (but not too serious) affair. The last episode shows a marked improvement in over all production (though you can tell they are still playing with editing, in the beginning there are parts where it sounds &quot;clippy&quot;).&#160; If better is yet to come, you&#8217;ll find me there!&#160; And now that they have a <a href="http://www.red-gate.com/products/ants_profiler/ahead_of_the_game_ebook1.htm?utm_source=dfb&amp;utm_medium=box&amp;utm_content=aheadgame-ebook1&amp;utm_campaign=antsprofiler" target="_blank">sponsor</a>, the future is looking bright.</p>
<p>So come on down, take yer shoes off, and pop a squat with the <a href="http://www.youtube.com/watch?v=VC-Yc_qvr30" target="_blank">Paula Deens</a> of Podcasting!</p>
</p>
</p>
<h2>Links</h2>
<ul>
<li><a href="http://deepfriedbytes.com/" target="_blank">Deep Fried Bytes Homepage</a></li>
<li><a href="http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/browserRedirect?url=itms%253A%252F%252Fax.phobos.apple.com.edgesuite.net%252FWebObjects%252FMZStore.woa%252Fwa%252FviewPodcast%253Fid%253D281776316" target="_blank">Deep Fried Bytes on iTunes</a></li>
<li><a href="http://social.zune.net/my/ContentRedirect.ashx?mtype=Podcast&amp;mid=9a86997e-3762-40bd-bcf5-0ecb9e2a32b8" target="_blank">Deep Fried Bytes on Zune Market Place</a></li>
<li><a href="http://www.twitter.com/deepfriedbytes" target="_blank">Deep Fried Byte&#8217;s Twitter</a></li>
<li><a href="http://keithelder.net/blog/" target="_blank">Keith&#8217;s Blog</a></li>
<li><a href="http://blog.cloudsocket.com/" target="_blank">Woody&#8217;s Blog</a></li>
</ul>

<p><a href="http://feeds.feedburner.com/~a/TheProkrammer?a=8PLhKh"><img src="http://feeds.feedburner.com/~a/TheProkrammer?i=8PLhKh" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/TheProkrammer?a=VTF3OI"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=VTF3OI" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=ebUAvi"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=ebUAvi" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=L2iHbi"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=L2iHbi" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=Bvajci"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=Bvajci" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=v8heHi"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=v8heHi" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheProkrammer/~4/310853143" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.prokrams.com/2008/06/12/boy-howdy-the-elder-and-woody-get-it-on/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Speaking at eRubyCon</title>
		<link>http://blog.prokrams.com/2008/06/11/speaking-at-erubycon/</link>
		<comments>http://blog.prokrams.com/2008/06/11/speaking-at-erubycon/#comments</comments>
		<pubDate>Wed, 11 Jun 2008 03:20:16 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Conferences]]></category>

		<category><![CDATA[IronRuby]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[Speaking]]></category>

		<guid isPermaLink="false">http://blog.prokrams.com/2008/06/11/speaking-at-erubycon/</guid>
		<description><![CDATA[Just a heads up to my faithful readership, I’ll be speaking about IronRuby at erubycon this August.&#160; It&#8217;ll be my first&#160; public speaking engagement at a technical conference, and my first real public speaking since High School (in-house presentations don&#8217;t count in my book).&#160; I&#8217;m quite nervous but it&#8217;s a topic I&#8217;m passionate about so [...]]]></description>
			<content:encoded><![CDATA[<p>Just a heads up to my faithful readership, I’ll be speaking about <a href="http://www.ironruby.com" target="_blank">IronRuby</a> at <a href="http://www.erubycon.com" target="_blank">erubycon</a> this August.&#160; It&#8217;ll be my first&#160; <a href="http://www.erubycon.com/index.html" target="_blank"><img height="90" src="http://www.erubycon.com/images/banner_small_speaker.png" width="120" align="right" /></a>public speaking engagement at a technical conference, and my first real public speaking since High School (in-house presentations don&#8217;t count in my book).&#160; I&#8217;m quite nervous but it&#8217;s a topic I&#8217;m passionate about so I&#8217;m really excited as well.&#160; The title of the talk is<em> &quot;Because Iron is Battleship Gray: IronRuby In The Real World&quot;</em>, and it won&#8217;t mention <a href="http://silverlight.net/default.aspx" target="_blank">Silverlight</a> or <a href="http://www.rubyonrails.com/" target="_blank">Rails</a>.&#160; Ruby is so much more than glitz and glam, and I think that tends to get lost in the hype.&#160; She&#8217;s a sexy lady, but she&#8217;s got brains too! </p>
<p>Hope to see you there!</p>

<p><a href="http://feeds.feedburner.com/~a/TheProkrammer?a=lwi130"><img src="http://feeds.feedburner.com/~a/TheProkrammer?i=lwi130" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/TheProkrammer?a=LcHM1I"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=LcHM1I" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=9ZzhFi"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=9ZzhFi" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=9JtTDi"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=9JtTDi" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=EsUtHi"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=EsUtHi" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=IqZ4xi"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=IqZ4xi" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheProkrammer/~4/309307872" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.prokrams.com/2008/06/11/speaking-at-erubycon/feed/</wfw:commentRss>
		</item>
		<item>
		<title>IronRuby QuickStart ReDuex</title>
		<link>http://blog.prokrams.com/2008/06/10/ironruby-quickstart-reduex/</link>
		<comments>http://blog.prokrams.com/2008/06/10/ironruby-quickstart-reduex/#comments</comments>
		<pubDate>Tue, 10 Jun 2008 02:54:32 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Compile]]></category>

		<category><![CDATA[IronRuby]]></category>

		<category><![CDATA[Microsoft]]></category>

		<category><![CDATA[Quick Start]]></category>

		<category><![CDATA[Reduex]]></category>

		<category><![CDATA[Ruby]]></category>

		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://blog.prokrams.com/2008/06/10/ironruby-quickstart-reduex/</guid>
		<description><![CDATA[Back in January I did a post on getting started with IronRuby.  That post was based on Rev. 75 of the SVN tree.  As of  today (June 9th) the SVN tree is up to Rev. 113.  Obviously with things like RailsConf and TechEd driving a lot of the core teams work, a number of things [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.prokrams.com/2008/01/28/ironruby-quick-start/" target="_blank">Back in January</a> I did a post on getting started with IronRuby.  That post was based on Rev. 75 of the SVN tree.  As of  today (June 9th) the <a href="http://ironruby.rubyforge.org/svn/" target="_blank">SVN tree</a> is up to Rev. 113.  Obviously with things like <a href="www.railsconf.org" target="_blank">RailsConf</a> and <a href="http://www.microsoft.com/events/TechEd2008/default.mspx" target="_blank">TechEd</a> driving a lot of the core teams work, a number of things have changed since January.  This post will basically be a rehash of the previous one, but updated for all the new quirks that have been introduced.</p>
<h3></h3>
<h1>Getting The Source</h1>
<p>As before, I recommend using <a href="http://tortoisesvn.org/" target="_blank">TortoiseSVN</a> to grab the <a href="http://rubyforge.org/scm/?group_id=4359" target="_blank">source</a>. Downloading will take a bit, after the 3.5MB of source is downloaded you should end up with a directory structure like the following:</p>
<p><a href="http://blog.prokrams.com/wp-content/uploads/2008/06/image.png"><img src="http://blog.prokrams.com/wp-content/uploads/2008/06/image-thumb.png" title="image" style="border-width: 0px" alt="image" border="0" height="411" width="236" /></a></p>
<h2></h2>
<h2></h2>
<h1>Compiling IronRuby</h1>
<h2></h2>
<p>Inside of the trunk directory you will find the IronRuby.sln file, double-clicking it will open the solution (note that the solution file is now in VS2008 format instead of the previous VS2005 format).  You may get a warning, you can select “Load the Project Normally” and uncheck “Ask me this for all projects in the solution.”</p>
<p>Once the solution is loaded, keep the solution on the “Debug” configuration.  Do NOT select “ExternalDebug” (you’ll get broken references if you do):</p>
<p><a href="http://blog.prokrams.com/wp-content/uploads/2008/06/image1.png"><img src="http://blog.prokrams.com/wp-content/uploads/2008/06/image-thumb1.png" title="image" style="border-width: 0px" alt="image" border="0" height="62" width="158" /></a></p>
<p>Next we will manually remove the “SIGNED” compilation symbol from all the projects, as of Rev. 113 you have to manually remove it from the IronRuby.Libraries, Microsoft.Scripting, and Microsoft.Scripting.Core (be sure not to delete the DLR symbol) projects.</p>
<p><a href="http://blog.prokrams.com/wp-content/uploads/2008/06/image2.png"><img src="http://blog.prokrams.com/wp-content/uploads/2008/06/image-thumb2.png" title="image" style="border-width: 0px" alt="image" border="0" height="155" width="410" /></a></p>
<p>Once those are removed you can build the source!</p>
<h2></h2>
<h1>Running That Which You Have Wrought</h1>
<p>Where has previously our compilation would output into a bin\Debug folder, the resulting files are now found in \trunk\build\debug, which should look like this:</p>
<p><a href="http://blog.prokrams.com/wp-content/uploads/2008/06/image3.png"><img src="http://blog.prokrams.com/wp-content/uploads/2008/06/image-thumb3.png" title="image" style="border-width: 0px" alt="image" border="0" height="458" width="675" /></a></p>
<p>Due to a conflict with <a href="http://rubini.us/" target="_blank">rubinius</a>, the rbx executable is now ir.</p>
<p>As before you can just run ir.exe and <a href="http://www.ruby-lang.org/en/documentation/quickstart/" target="_blank">enter the wonderful world of ruby</a>, or you can continue on to see how we roll in the .NET world.</p>
<h3>Speaking C# With A Ruby Accent</h3>
<p>The initial steps are basically the same as before, start a new C# console project and add references to Microsoft.Scripting.dll, Microsoft.Scripting.Core.dll, IronRuby.dll, and IronRuby.Libraries.dll.</p>
<p>We are going to create a simple console app that shows passing variables into and out of a ruby script.</p>
<p>The below program should be a good example:</p>
<div style="background: #1b1b1b;">
<p class="code" style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial">&nbsp;</p>
<pre ?="?"><a href="http://11011.net/software/vspaste"></a>
<pre class="code"><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #bbddff">using </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">System</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">;

</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #bbddff">using </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">Ruby</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">;

</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #bbddff">using </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">Microsoft</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">Scripting</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">Hosting</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">;
</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #bbddff">namespace </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">IronRubyConsoleApp

</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">{

    </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #bbddff">class </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #46aa0c">Program

    </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">{

        </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #bbddff">static void </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">Main</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">(</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #bbddff">string</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">[] </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">args</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">)

        {
</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #46aa0c">ScriptRuntime </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">irruntime </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">= </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #46aa0c">IronRuby</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">CreateRuntime</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">();

            </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #46aa0c">ScriptEngine </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">ir </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">= </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #46aa0c">IronRuby</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">GetEngine</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">(</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">irruntime</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">);

            </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #46aa0c">ScriptScope </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">scope </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">= </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">ir</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">CreateScope</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">();

            </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #46aa0c">ScriptSource </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">script </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">= </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">ir</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">CreateScriptSourceFromString</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">(</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #fd7979">&#8220;puts \&#8221;Hello, #{name}!\&#8221;\ninput + 2&#8243;</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">);

            </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">scope</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">SetVariable</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">(</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #fd7979">&#8220;name&#8221;</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">, </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #fd7979">&#8220;.NET&#8221;</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">);

            </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">scope</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">SetVariable</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">(</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #fd7979">&#8220;input&#8221;</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">, </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #fd7979">2</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">);

            </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #bbddff">int </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">x </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">= </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">script</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">Execute</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">&lt;</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #bbddff">int</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">&gt;(</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">scope</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">);

            </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #46aa0c">Console</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">WriteLine</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">(</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #bbddff">string</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">Format</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">(</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #fd7979">&#8220;The Result was {0}&#8221;</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">, </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">x</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">));

            </span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #46aa0c">Console</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">.</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: #a3a3a3">ReadLine</span><span style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: silver">();

        }

    }

}</span></pre>
<p><a href="http://11011.net/software/vspaste"></a></pre>
</div>
<p>You can see a clear hierarchy here:</p>
<p>We have a Runtime</p>
<p>That has an Engine</p>
<p>That has a Scope</p>
<p>That has a Source</p>
<p>We create a runtime, and we get our IronRuby engine into the runtime, we create a scope and load a script using that engine.  Set a couple of variables in the scope and then execute the script within the scope that we have set the variables in.</p>
<p>Hopefully this is enough to get you started, you should probably check out the other CreateScriptSource methods that the engine contains, you have a veritable cornucopia of options:</p>
<p><a href="http://blog.prokrams.com/wp-content/uploads/2008/06/image4.png"><img src="http://blog.prokrams.com/wp-content/uploads/2008/06/image-thumb4.png" title="image" style="border-width: 0px" alt="image" border="0" height="241" width="692" /></a></p>
<h3>Ruby with a .NET Accent</h3>
<p>Another of the popular activities with IronRuby, if not the most popular, is going to be interfacing with both the .NET framework and other .NET code.  The below example shows us interfacing with System.Windows.Forms and making a simple GUI app.</p>
<p style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial">&nbsp;</p>
<div style="background: #1b1b1b;">
<pre>
<p style="background: #1b1b1b none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial">require &#8216;mscorlib&#8217;

require &#8216; System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089&#8242;

require &#8216;System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a&#8217;

Swf=System::Windows::Forms

Sd=System::Drawing

class RubyForm &lt;Swf::Form

def add_button text, location

button = Swf::Button.new

button.Text = text

button.Location = location

self.Controls.Add button

button

end

def initialize

self.Text = &#8220;RubyForm&#8221;

@rbutton = add_button &#8220;Click Me!&#8221;,  Sd::Point.new(150, 150)

@rbutton2 = add_button &#8220;Click Me!&#8221;, Sd::Point.new(150, 100)

@rbutton.Click {|sender, e| Swf::MessageBox.show &#8216;Hello World!&#8217;}

@rbutton2.Click {|sender, e| Swf::MessageBox.show &#8216;Hello, .NET!&#8217;}

end

end

rf = RubyForm.new

rf.ShowDialog</pre>
</div>
<p>As you can see above, when requiring items from the GAC we must include the Fully Qualified Name, including version and StrongNameToken if applicable. The above code inherits from System.Windows.Forms.Form and adds a helper class for adding buttons and wires up a couple of event handlers.  Again this is just a simple example to get you started.</p>
<h1>Summary</h1>
<h1></h1>
<p>In this post we downloaded the IronRuby source, compiled it, and worked with IronRuby both from C# and by running a ruby script against .NET objects.  Hopefully this gets you going a little faster and onto the fun stuff quicker!</p>
<h1>Links</h1>
<p><a href="http://www.ironruby.com/">IronRuby Homepage</a></p>
<p><a href="http://rubyforge.org/projects/ironruby">IronRuby RubyForge Project</a></p>
<p><a href="http://www.ruby-lang.org/en/">Ruby Language Homepage</a></p>
<p><a href="http://www.iunknown.com/">John Lam’s homepage</a></p>

<p><a href="http://feeds.feedburner.com/~a/TheProkrammer?a=SwaFro"><img src="http://feeds.feedburner.com/~a/TheProkrammer?i=SwaFro" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/TheProkrammer?a=Fi5zKI"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=Fi5zKI" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=QGqf4i"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=QGqf4i" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=4ji3Li"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=4ji3Li" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=sTks6i"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=sTks6i" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=4XAtCi"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=4XAtCi" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheProkrammer/~4/308496670" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.prokrams.com/2008/06/10/ironruby-quickstart-reduex/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How I Got Started In Software Development</title>
		<link>http://blog.prokrams.com/2008/06/06/how-i-got-started-in-software-development/</link>
		<comments>http://blog.prokrams.com/2008/06/06/how-i-got-started-in-software-development/#comments</comments>
		<pubDate>Fri, 06 Jun 2008 18:48:28 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[How I Got Started In Software Development]]></category>

		<category><![CDATA[Programming]]></category>

		<category><![CDATA[Ratt]]></category>

		<guid isPermaLink="false">http://blog.prokrams.com/2008/06/06/how-i-got-started-in-software-development/</guid>
		<description><![CDATA[
Michael Eaton started it, and others took off and ran with it.  Now it’s a certified meme. So I guess I might as well join in the fray and relate the beginnings of my geekdom.


A Long, Long Time Ago…
How old were you when you started programming?
I was about 7ish when I first started. Read on [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/mwichary/2225159966/" target="_blank"><img src="http://farm3.static.flickr.com/2371/2225159966_73af44c2c3_m.jpg" align="right" /></a></p>
<p><a href="http://www.michaeleatonconsulting.com/blog/" target="_blank">Michael Eaton</a> started <a href="http://michaeleatonconsulting.com/blog/archive/2008/06/04/how-did-you-get-started-in-software-development.aspx" target="_blank">it</a>, and others took off and ran with it.  Now it’s a certified <a href="http://catb.org/jargon/html/M/meme.html" target="_blank">meme</a>. So I guess I might as well join in the fray and relate the beginnings of my geekdom.</p>
<h2></h2>
<h2></h2>
<h2>A Long, Long Time Ago…</h2>
<p><font color="#8080ff">How old were you when you started programming?</font></p>
<p>I was about 7ish when I first started. Read on for more details…</p>
<p><font color="#8080ff">How did you you get started in programming?</font></p>
<h3></h3>
<h4></h4>
<h4></h4>
<p>When I was around 7, my uncle had an <a href="http://www.myoldcomputers.com/museum/comp/atari400.htm" target="_blank">Atari 400</a>.  I initially just played games on it, but one day I noticed a stack of <a href="http://en.wikipedia.org/wiki/Byte_(magazine)" target="_blank">Byte magazines</a> in the corner.  Inside this magazine was source code, it said it was “BASIC” and needed to be typed in… hmm.. there’s this <a href="http://en.wikipedia.org/wiki/Atari_BASIC" target="_blank">Atari-BASIC</a> cartridge, and there’s a keyboard.  A light went off, I can make this machine /do/ something?  So I typed in the program, saved it to the cassette drive, and then tweaked it.</p>
<p>Next thing I know I’m begging my parent’s for a computer.  For my 8th birthday I got an <a href="http://www.computercloset.org/atari65xe.htm" target="_blank">Atari 65XE</a> and a couple of BASIC games books, and I’ve been totally hooked ever since.  Time passed, and eventually I got into things like QBASIC, DOS Batch, and C/C++ (via an old copy of <a href="http://en.wikipedia.org/wiki/Turbo_C" target="_blank">TurboC</a> a friend loaned me).  Then in high school someone gave me a Linux CD and having a whole slew of development tools really helped.</p>
<p>I just kept hacking away…</p>
<p><font color="#8080ff">What’s the most fun you’ve ever had … programming?</font></p>
<p>Staying awake for 48 hours straight and hacking an ANSI art viewer in C with <a href="http://profile.myspace.com/index.cfm?fuseaction=user.viewprofile&amp;friendID=16084237" target="_blank">Jim Balcomb</a>.  We were probably 15 and 16 at the time and just didn’t need to rest when programming was to be had.  I think it’d kill me today.  Oh yeah, and then I delivered papers in the morning after being jacked up on coffee and Jolt and my father was convinced I was on speed…</p>
<h2></h2>
<h2>Googoo gah gah?</h2>
<p><font color="#8080ff">What was your first language?</font></p>
<p>Well it was BASIC obviously, from Atari-BASIC, to BASICA, to QBasic, eventually to QuickBasic…</p>
<p><font color="#8080ff">What was the first real program you wrote?</font></p>
<p>One that really stands out was a grading program I wrote in high school for the Learning department at the school.  It was all done in QBasic and had menus that were keyboard driven, grid data entry, and a printing subsystem.  I wish I still had that code…</p>
<p><font color="#8080ff">What languages have you used since you started programming?</font></p>
<p>Define use? Here are all the languages I have written something of some complexity in:</p>
<ul>
<li><a href="http://www.autoitscript.com/autoit3/" target="_blank">AutoIT</a> (don’t ask…)</li>
<li>Bash Shell</li>
<li>BASIC (variations there of)</li>
<li>C/C++</li>
<li>C#</li>
<li>DOS Batch</li>
<li>JavaScript</li>
<li>PHP</li>
<li>Ruby</li>
<li>TSQL (don’t ask)</li>
</ul>
<p>..and [Insert Deity Here] knows what else…</p>
<h2></h2>
<h2>Get a good job with more pay and you’re okay.</h2>
<p><font color="#8080ff">What was your first programming gig?</font></p>
<p>I’ve always loved programming, and have been doing it has a hobbyist since as far back as I can remember.  However, without experience (and never having finished college) I was never able to really get a foot in the door.  I worked in support at <a href="http://www.harley-davidson.com/wcm/Content/Pages/Career_Opportunities/loc_valley_view.jsp?locale=en_US" target="_blank">Harley-Davidson Dealer Systems</a> for 6 years and had a chance to do some development work (I had written a number of utilities for support including <a href="http://setuserprinter.sourceforge.net/" target="_blank">SetPrinter</a>) I jumped at the opportunity.  I actually took a “demotion” from Team Lead to Developer for the chance.</p>
<p>After a couple years of doing development work there I had pretty much tapped out all I could do and was stuck, that’s when I was introduced to <a href="http://www.preemptive.com" target="_blank">PreEmptive Solutions</a> and am currently doing development there.  My work at PreEmptive is much more like a “real” development job then HDDS.  At HDDS I was pretty much a cowboy left on my own.  Here I’m working with a true development team.</p>
<p><font color="#8080ff">If you knew then what you know now, would you have started programming?</font></p>
<p>Oh hell yes, I truly believe I was born to be a computer programmer, I can imagine doing nothing else.</p>
<p><font color="#8080ff">If there is one thing you learned along the way that you would tell new developers, what would it be?</font></p>
<p>RTFM.</p>
<h2>Thanks Mike!</h2>
<p>A big thank you to <a href="http://michaeleatonconsulting.com/blog/" target="_blank">Mike Eaton</a> for getting the ball rolling on this, it’s fascinating to see how my fellow <a href="http://www.twitter.com" target="_blank">tweeps</a> and hackers got started.  I’m not going to “tag” anyone, because that’s silly, but I do encourage anyone who reads this post to do the same and link back to mike’s blog, he’s keeping a list of people responding!</p>

<p><a href="http://feeds.feedburner.com/~a/TheProkrammer?a=jmLAzC"><img src="http://feeds.feedburner.com/~a/TheProkrammer?i=jmLAzC" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/TheProkrammer?a=slQ4lI"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=slQ4lI" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=AUOQxi"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=AUOQxi" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=Hnp9Ti"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=Hnp9Ti" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=ZuXo5i"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=ZuXo5i" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=3HQURi"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=3HQURi" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheProkrammer/~4/306287647" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.prokrams.com/2008/06/06/how-i-got-started-in-software-development/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Top 10 Commands In Your Shell History</title>
		<link>http://blog.prokrams.com/2008/04/20/top-10-commands-in-your-shell-history/</link>
		<comments>http://blog.prokrams.com/2008/04/20/top-10-commands-in-your-shell-history/#comments</comments>
		<pubDate>Sun, 20 Apr 2008 23:43:27 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[Geek]]></category>

		<category><![CDATA[Memes]]></category>

		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.prokrams.com/2008/04/20/top-10-commands-in-your-shell-history/</guid>
		<description><![CDATA[Saw this post on objo&#8217;s blog, apparently it&#8217;s a meme of some kind, though his was the first I&#8217;ve seen.  But I thought it was pretty cool none the less.  Here&#8217;s mine:
$  history 1000 &#124; awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' &#124; sort -rn
&#124; head
114 cd
84 ls
79 irb
39 git
31 pedump
10 ps
10 objdump
10 [...]]]></description>
			<content:encoded><![CDATA[<p>Saw <a href="http://objo.com/2008/4/19/history-blog-meme" target="_blank">this post</a> on <a href="http://twitter.com/objo" target="_blank">objo&#8217;s</a> blog, apparently it&#8217;s a meme of some kind, though his was the first I&#8217;ve seen.  But I thought it was pretty cool none the less.  Here&#8217;s mine:</p>
<pre>$  history 1000 | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn
| head
114 cd
84 ls
79 irb
39 git
31 pedump
10 ps
10 objdump
10 e
8 ssh
8 dd</pre>
<p>You can see a bit of my dual developerness there, irb and git for ruby, and pedump and e for the windows side (this is in cygwin).  What does your shell history have to say?</p>

<p><a href="http://feeds.feedburner.com/~a/TheProkrammer?a=CCxoaD"><img src="http://feeds.feedburner.com/~a/TheProkrammer?i=CCxoaD" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/TheProkrammer?a=8XoOL"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=8XoOL" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=QMcbl"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=QMcbl" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=UHecl"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=UHecl" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=bh2Ul"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=bh2Ul" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/TheProkrammer?a=kcmml"><img src="http://feeds.feedburner.com/~f/TheProkrammer?i=kcmml" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheProkrammer/~4/274330293" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.prokrams.com/2008/04/20/top-10-commands-in-your-shell-history/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
