<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/stylesheets/rss.css" type="text/css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Yup Dot Com: Category Ruby</title>
    <link>http://www.yup.com/articles/category/ruby</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Advanced Web Services</description>
    <item>
      <title>Teaching Kids to Hack with Hackety Hack</title>
      <description>&lt;p&gt;&lt;img src="/linked/hackety_hack.gif" style="float: right; margin: 4px; padding: 4px; border: 1px dotted #ccc;" /&gt;&lt;/p&gt;

&lt;p&gt;Ruby&amp;#8217;s own Edgar Allen Poe, _why the lucky stiff, mastermind of the continually-evolving &lt;a href="http://poignantguide.net/ruby/"&gt;Why&amp;#8217;s (Poignant) Guide to Ruby&lt;/a&gt; and &lt;a href="http://poignantguide.net/ruby/"&gt;Try Ruby!&lt;/a&gt;, has done it again with &lt;a href="http://hacketyhack.net/"&gt;Hackety Hack: The Coder&amp;#8217;s Starter Kit&lt;/a&gt;. But what exactly has &lt;a href="http://whytheluckystiff.net/"&gt;_why&lt;/a&gt; done, and why?&lt;/p&gt;

&lt;p&gt;In &lt;a href="http://whytheluckystiff.net/articles/theLittleCodersPredicament.html"&gt;The Little Coder&amp;#8217;s Predicament&lt;/a&gt;, _why posits that, unlike us first generation hackers who grew up with Vic 20s, C64s, Amigas, and other machines which came with simple, accessible programming environments, kids aren&amp;#8217;t learning programming on today&amp;#8217;s consoles and desktops because companies are now fearful of placing the power of a programming language in the hands of its users. With Hackety Hack, the expressiveness of Ruby, the power of web-based applications using JavaScript and AJAX, and _why&amp;#8217;s own creativity and artistry have converged to produce a quirky, easy-to-use, and, most of all, &lt;strong&gt;fun&lt;/strong&gt;, programming environment that kids will take to faster than you can type &lt;code&gt;FOR X=0 TO 255: POKE 32768+X,X: NEXT&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Brian DeLacey &lt;a href="http://www.greaterbostonrubyandrails.com/HacketyHackBlog.html"&gt;explains&lt;/a&gt;, &amp;#8220;Hackety Hack is as significant a computer-age innovation as the mouse because it makes computers accessible in wholly new educational and transformational ways.&amp;#8221;&lt;/p&gt;

&lt;p&gt;Hackety Hack currently comes as a standalone installer for Windows (&lt;a href="http://code.whytheluckystiff.net/hacketyhack/chrome/site/dist/HacketyHack-0.3.1.exe"&gt;Version 0.3.1 if you want it&lt;/a&gt;), and it works pretty damn well. (Further platform support should be forthcoming, as well as non-English translations.) As you create programs and follow through the self-guided tutorials, you can create, edit, and save files, which are preserved between sessions. Ruby&amp;#8217;s expressiveness is encapsulated in a DSL which integrates beautifully with JavaScript. &lt;code&gt;say&lt;/code&gt; writes to the output area; &lt;code&gt;ask&lt;/code&gt; uses a JavaScript dialog to grab input from the user, and &lt;code&gt;sleep&lt;/code&gt; presents an animated JavaScript progress bar. All and all, a very kind and sensible interface for the babies.&lt;/p&gt;

&lt;p&gt;I&amp;#8217;ve been asked what I would recommend as ways to get kids involved with programming, and in the past I&amp;#8217;ve recommended Try Ruby!, but Hackety Hack has taken the self-guided tutorial and freedom of a true, (albeit sandboxed), programming environment to the next level, with a powerful set of methods that make common and &lt;strong&gt;modern&lt;/strong&gt; tasks easy. The simplicity shows through, and as _why explains in &lt;a href="http://code.whytheluckystiff.net/hacketyhack/wiki/TheHacketyManifesto"&gt;The Hackety Manifesto&lt;/a&gt;, &amp;#8220;Hello world should be &lt;em&gt;one line&lt;/em&gt;. In fact, downloading an MP3 should be &lt;strong&gt;one line&lt;/strong&gt;!!.&amp;#8221;&lt;/p&gt;

&lt;p&gt;Best of all, Hackety Hack is free, and will remain so. Thanks, _why. And thanks to all (the 50+) who contributed to this creation.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/Hackety_Hack"&gt;Hackety Hack @ Wikipedia&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Fri, 27 Apr 2007 10:42:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:698a6d15-2e7c-4927-bb8a-6694827cb9aa</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2007/04/27/teaching-kids-to-hack-with-hackety-hack</link>
      <category>Ruby</category>
      <category>Open Source</category>
      <category>Programming</category>
    </item>
    <item>
      <title>What is the Ruby Way?</title>
      <description>&lt;p&gt;&lt;img style="float: right; margin: 4px; padding: 4px; border: 1px dotted #ccc;" src="http://static.flickr.com/81/225431728_861a035b13_m.jpg" /&gt;Hal Fulton, a computer scientist from Austin, Texas, has graciously provided an updated second edition of &lt;a href="http://www.awprofessional.com/bookstore/product.asp?isbn=0672328844&amp;amp;rl=1"&gt;&lt;em&gt;The Ruby Way&lt;/em&gt;&lt;/a&gt;. An article at &lt;a href="http://www.infoq.com"&gt;InfoQ&lt;/a&gt; provides a thoughtful excerpt from his new book, which abounds with quoted wisdom about design and simplicity. An example of his writing:&lt;/p&gt;

&lt;blockquote&gt;
    &lt;p&gt;What Larry Wall said about Perl holds true: &amp;#8220;When you say something in a small language, it comes out big. When you say something in a big language, it comes out small.&amp;#8221; The same is true for English. The reason that biologist Ernst Haeckel could say &amp;#8221;&lt;a href="http://en.wikipedia.org/wiki/Recapitulation_theory"&gt;Ontogeny recapitulates phylogeny&lt;/a&gt;&amp;#8221; in only three words was that he had these powerful words with highly specific meanings at his disposal. We allow inner complexity of the language because it enables us to shift the complexity away from the individual utterance.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Ruby has transformed my way of thinking about programming, now that I continually take simplicity, elegance, form &lt;em&gt;and&lt;/em&gt; function into consideration when crafting a solution, and I am eagerly awaiting the release of this book.&lt;/p&gt;

&lt;p&gt;Thanks, Hal!&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.infoq.com/articles/what-is-the-ruby-way"&gt;Article: &lt;em&gt;What is the Ruby Way?&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Wed, 18 Oct 2006 21:12:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:83fec4ea-91c5-4fc9-8c48-346977a83781</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2006/10/18/what-is-the-ruby-way</link>
      <category>Intelligence</category>
      <category>Ruby</category>
      <category>Programming</category>
    </item>
    <item>
      <title>New Ruby Web Application Framework: Merb</title>
      <description>&lt;p&gt;&lt;img style="float: right; border: 1px dotted #ccc; margin: 4px; padding: 4px;" src="http://static.flickr.com/1/123880662_4ad4046fe4_m.jpg" /&gt;Ezra Zygmuntowicz of Yakima, Washington, has announced a new lightweight Ruby web application framework: Merb, named by combining the lightweight HTTP application server &lt;a href="http://mongrel.rubyforge.org/"&gt;Mongrel&lt;/a&gt; with the templating system &lt;a href="http://www.ruby-doc.org/stdlib/libdoc/erb/rdoc/"&gt;Erb&lt;/a&gt;. Using ActiveRecord, a simpler-than-rails routing system and taking full advantage of Mongrel&amp;#8217;s X-SendFile features, the &amp;#8220;pocket framework&amp;#8221; can server dynamic templated pages at 400 requests/second on a MacBook.&lt;/p&gt;

&lt;p&gt;It&amp;#8217;s simple to get started:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ sudo gem install merb
$ gem unpack merb
$ cd merb-0.0.3/examples/sample_app
# edit the conf/merb_init.rb to add your database password info.
# then add a posts table to your db with a title and body column.
$ merb start -t
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Once you do that, visit &lt;a href="http://localhost:4000/posts/new"&gt;http://localhost:4000/posts/new&lt;/a&gt;, &lt;a href="http://localhost:4000/posts/list"&gt;http://localhost:4000/posts/list&lt;/a&gt;, or &lt;a href="http://localhost:4000/uploads/start"&gt;http://localhost:4000/uploads/start&lt;/a&gt; to see the little framework that could in action.&lt;/p&gt;

&lt;p&gt;Thanks, Ezra!&lt;/p&gt;

&lt;p&gt;&lt;a href="http://rubyforge.org/frs/?group_id=2383"&gt;The RubyForge Project Page&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://merb.devjavu.com/"&gt;The Merb Trac Page&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://svn.devjavu.com/merb/"&gt;The Merb SVN Repository&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://brainspl.at/articles/2006/10/15/merb-gets-cool-routes-and-file-uploads"&gt;An article on Merb at Brainspl.at&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Wed, 18 Oct 2006 09:49:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:7dbceb3b-e70b-4a53-be81-4c67dbf44522</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2006/10/18/new-ruby-web-application-framework-merb</link>
      <category>Ruby</category>
      <category>Web Development</category>
    </item>
    <item>
      <title>Leonard Richardson on Ruby Libraries</title>
      <description>&lt;p&gt;&lt;img src="http://static.flickr.com/62/208086434_16c53c78b1_m.jpg" style="float: right; border: 1px dotted #ccc; margin: 4px; padding: 4px" /&gt;Pat Eyler has a short interview with the author of &lt;i&gt;Ruby Cookbook&lt;/i&gt;, Leonard  Richardson, who touches on the ability of great Ruby libraries which change the way you think about the problems of programming. &lt;/p&gt;

&lt;blockquote&gt;
    &lt;p&gt;Leonard: I&amp;#8217;m looking forward to more libraries that use Ruby&amp;#8217;s idioms to radically simplify entire domains. I think this is where dynamic languages like Ruby and Python show their power: Rails, ActiveRecord, ActiveResource, gserver, DRb, Starfish, Twisted, PyGame, etc. These libraries tackle a problem that&amp;#8217;s been around for years, and succeed by hiding a huge amount of the work and/or changing the way you think about the problem.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Leonard even lists his top 5 libraries in Ruby, including mine, Hpricot:&lt;/p&gt;

&lt;blockquote&gt;
    &lt;p&gt;Leonard: Hard to pick just five, but I&amp;#8217;ll showcase some lesser-known libraries that I think deserve attention:&lt;/p&gt;
    
    &lt;ul&gt;
    &lt;li&gt;&lt;a href="http://code.whytheluckystiff.net/hpricot/"&gt;hpricot&lt;/a&gt;, by _why, which makes me think I should just pack up Rubyful Soup.&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://rufy.com/starfish/doc/"&gt;Starfish&lt;/a&gt;, a really simple distributed programming library that Lucas wrote.&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://rubyforge.org/projects/char-encodings/"&gt;char-encodings&lt;/a&gt; deserves more attention. By which I mean, people should work on it as a way to improve Ruby&amp;#8217;s internationalization support, and yet I shouldn&amp;#8217;t have to do any work on it.&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://ferret.davebalmain.com/trac/"&gt;Ferret&lt;/a&gt; is a Ruby port of Lucene, the best Java library ever. It lets you do full-text search on structured data.&lt;/li&gt;
    &lt;li&gt;Finally, &lt;a href="http://www.ryandaigle.com/articles/2006/06/30/whats-new-in-edge-rails-activeresource-is-here"&gt;ActiveResource&lt;/a&gt; isn&amp;#8217;t a real library yet, and everybody knows about it, but it&amp;#8217;s going to be awesome.&lt;/li&gt;
    &lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://on-ruby.blogspot.com/2006/09/author-interview-leonard-richardson.html"&gt;Leonard Richardson Interview&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Mon, 11 Sep 2006 18:53:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:d5cb7139-2823-4b5d-8e78-0387b07ec3d0</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2006/09/11/leonard-richardson-on-ruby-libraries</link>
      <category>Ruby</category>
    </item>
    <item>
      <title>A Natural Language Date/Time Parser for Ruby: chronic</title>
      <description>&lt;p&gt;Chronic is a natural language date/time parser written in pure Ruby.&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;
  &lt;span class="ident"&gt;require&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;chronic&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;

  &lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;now&lt;/span&gt;   &lt;span class="comment"&gt;#=&amp;gt; Sun Aug 27 23:18:25 PDT 2006&lt;/span&gt;

  &lt;span class="comment"&gt;#---&lt;/span&gt;

  &lt;span class="constant"&gt;Chronic&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;parse&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;tomorrow&lt;/span&gt;&lt;span class="punct"&gt;')&lt;/span&gt;
    &lt;span class="comment"&gt;#=&amp;gt; Mon Aug 28 12:00:00 PDT 2006&lt;/span&gt;

  &lt;span class="constant"&gt;Chronic&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;parse&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;monday&lt;/span&gt;&lt;span class="punct"&gt;',&lt;/span&gt; &lt;span class="symbol"&gt;:context&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="symbol"&gt;:past&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
    &lt;span class="comment"&gt;#=&amp;gt; Mon Aug 21 12:00:00 PDT 2006&lt;/span&gt;

  &lt;span class="constant"&gt;Chronic&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;parse&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;this tuesday 5:00&lt;/span&gt;&lt;span class="punct"&gt;')&lt;/span&gt;
    &lt;span class="comment"&gt;#=&amp;gt; Tue Aug 29 17:00:00 PDT 2006&lt;/span&gt;

  &lt;span class="constant"&gt;Chronic&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;parse&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;this tuesday 5:00&lt;/span&gt;&lt;span class="punct"&gt;',&lt;/span&gt; &lt;span class="symbol"&gt;:ambiguous_time_range&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="symbol"&gt;:none&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
    &lt;span class="comment"&gt;#=&amp;gt; Tue Aug 29 05:00:00 PDT 2006&lt;/span&gt;

  &lt;span class="constant"&gt;Chronic&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;parse&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;may 27th&lt;/span&gt;&lt;span class="punct"&gt;',&lt;/span&gt; &lt;span class="symbol"&gt;:now&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;local&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;2000&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;))&lt;/span&gt;
    &lt;span class="comment"&gt;#=&amp;gt; Sat May 27 12:00:00 PDT 2000&lt;/span&gt;

  &lt;span class="constant"&gt;Chronic&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;parse&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;may 27th&lt;/span&gt;&lt;span class="punct"&gt;',&lt;/span&gt; &lt;span class="symbol"&gt;:guess&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;false&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
    &lt;span class="comment"&gt;#=&amp;gt; Sun May 27 00:00:00 PDT 2007..Mon May 28 00:00:00 PDT 2007&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;blockquote&gt;
    &lt;p&gt;Chronic uses Ruby’s built in Time class for all time storage and computation. Because of this, only times that the Time class can handle will be properly parsed. Parsing for times outside of this range will simply return nil. Support for a wider range of times is planned for a future release.&lt;/p&gt;
    
    &lt;p&gt;Time zones other than the local one are not currently supported. Support for other time zones is planned for a future release. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://chronic.rubyforge.org/"&gt;Cronic @ Rubyforge&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Sun, 10 Sep 2006 19:00:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:ccc8148b-1205-46df-9a49-b91b8df60257</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2006/09/10/a-natural-language-date-time-parser-for-ruby-chronic</link>
      <category>Ruby</category>
    </item>
    <item>
      <title>Yet Another Ruby on Rails IDE: RideMe</title>
      <description>&lt;p&gt;&lt;img style="float: right; border: 1px dotted #ccc; margin: 4px; padding: 4px;" src="http://static.flickr.com/46/113218714_177f0116ea_m.jpg"/&gt;&lt;/p&gt;

&lt;p&gt;While nothing can really compare to TextMate on OS X for its simplicity and natural flexibility, Windows users have yet another Ruby on Rails IDE to satiate your need of file drawers, tab completions, and that debilitating syntax-highlighting addiction: RideMe. Jeff Cohen declared version 1.0 as indulging you in the following ways:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;100% free, open source, and not built on top of anything else.  You
just need Ruby 1.8.2 and .NET 2.0 installed.&lt;/li&gt;
&lt;li&gt;Mission in life is to be lightweight and very fast.  This is not a
general purpose Ruby editor, it&amp;#8217;s an IDE for getting your Rails work
done.&lt;/li&gt;
&lt;li&gt;File-system based approach. No messy workspace files or extra RIDE-ME
specifics junking up your directory.&lt;/li&gt;
&lt;li&gt;Syntax highlighting for Ruby Files, Views, Layouts, JavaScript, SQL,
CSS, and HTML.&lt;/li&gt;
&lt;li&gt;Familiar Visual Studio-style tabbed document editor.&lt;/li&gt;
&lt;li&gt;Model / Member drop downs for easy movability in code. (Think Visual
Studio above your code file)&lt;/li&gt;
&lt;li&gt;Code folding for Ruby files&lt;/li&gt;
&lt;li&gt;script/console built into the IDE (think Visual Studio &amp;#8220;Immediate
Mode&amp;#8221;)&lt;/li&gt;
&lt;li&gt;Server Error notification (template errors will actually open the
view file and go to the LOC)&lt;/li&gt;
&lt;li&gt;Internal web browser (optional)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="http://www.projectrideme.com/"&gt;Project RideMe&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://www.projectrideme.com/downloads/RideMe.Setup.msi"&gt;Download Installer: RideMe.Setup.msi&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Mon, 07 Aug 2006 17:23:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:4e7ace44-ccd6-4072-87a3-c97d55ce112d</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2006/08/07/yet-another-ruby-on-rails-ide-rideme</link>
      <category>Ruby</category>
      <category>Open Source</category>
      <category>Ruby on Rails</category>
      <category>IDE</category>
    </item>
    <item>
      <title>Typo 4.0.0 Released</title>
      <description>&lt;p&gt;Scott Laird writes:&lt;/p&gt;

&lt;blockquote&gt;
I’d like to announce the release of Typo 4.0.0, the latest version of the most widely-used Ruby-based blogging software. This is the first official release of Typo 4.0, and the product of almost a year’s work by the Typo team. This is a huge upgrade over the previous Typo release, version 2.6.0. You can download it from Rubyforge, or you can use the new Typo .gem and installer.
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://scottstuff.net/blog/articles/2006/07/22/typo-4-0-0"&gt;Typo 4.0.0 Announcement&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Sun, 23 Jul 2006 15:35:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:89cbe30f-f888-4e13-a755-7d32daf1a411</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2006/07/23/typo-4-0-0-released</link>
      <category>Ruby</category>
      <category>Open Source</category>
      <category>Ruby on Rails</category>
    </item>
    <item>
      <title>Gardens Point Ruby .NET Compiler</title>
      <description>&lt;p&gt;&lt;img style="float:right; border: 1px dotted #ccc; margin: 4px; padding: 4px;" src="http://static.flickr.com/25/66725371_ed630790c4_m.jpg"&gt;&lt;/p&gt;

&lt;p&gt;The Queensland University of Technology in Brisbane Australia has announced a Ruby .NET compiler for the .NET CLR. Their aim is to &amp;#8220;support 100% of Ruby language semantics, including all dynamic constructs such as closures and continuations. We plan to generate 100% managed and verifiable CIL code.&amp;#8221;&lt;/p&gt;

&lt;blockquote&gt;
Announcing Preliminary Beta Release!

We are pleased to announce the preliminary Beta release of the Gardens Point Ruby.NET compiler. Note: this is not just a Ruby/.NET bridge, nor a Ruby Interpreter implemented on .NET, but a true .NET compiler. The compiler can be used to statically compile a Ruby source file into a verifiable .NET v2.0 assembly or it can be used to directly execute a Ruby source file (compile, load and execute). Our implementation is not yet fully complete, but it is the only Ruby compiler that we know of for either the .NET or JVM platforms that is able to pass all 871 tests in the samples/test.rb installation test suite of Ruby 1.8.2.
&lt;/blockquote&gt;

&lt;p&gt;They are actively seeking &amp;#8220;keen Ruby and .NET programmers&amp;#8221; to help with further testing and development.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://plas.fit.qut.edu.au/Ruby.NET/"&gt;Announcement Page at QUT&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://plas.fit.qut.edu.au/Ruby.NET/Download.aspx"&gt;Source Code Download&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Sun, 25 Jun 2006 07:25:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:854a8a3a-c768-4c29-aab6-b4944d821d40</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2006/06/25/gardens-point-ruby-net-compiler</link>
      <category>Ruby</category>
    </item>
    <item>
      <title>Ruby goes 256-color in xterm</title>
      <description>&lt;p&gt;Two-hundred and fifty six colors in your Unix terminal, you ask? Yes, it&amp;#8217;s possible, but 256-color support isn&amp;#8217;t very common among the terminal emulators out there (Konsole and Gnome-Terminal don&amp;#8217;t support it yet). And &lt;a href="http://elinks.or.cz/"&gt;elinks&lt;/a&gt; is the only program I know of that supports 256 colors natively. So, here&amp;#8217;s a little Ruby program that generates 256-color color cubes in Ruby. I&amp;#8217;ve translated it from a Perl script, so it&amp;#8217;s not very ruby-like, but it makes pretty pictures.&lt;/p&gt;

&lt;p&gt;&lt;div style="" class="lightboxplugin"&gt;&lt;a href="/lib/images/t640/xterm-001-blue.png" rel="lightbox" title=""&gt;&lt;img src="/lib/images/t384/xterm-001-blue.png" alt="" title=""/&gt;&lt;/a&gt;&lt;/div&gt;&lt;/p&gt;

&lt;p&gt;The source code follows.&lt;/p&gt;</description>
      <pubDate>Sat, 15 Apr 2006 10:17:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:d0ced00b-1c47-47a8-b5e6-161300f66662</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2006/04/15/ruby-goes-256-color-in-xterm</link>
      <category>Ruby</category>
      <category>Programming</category>
    </item>
    <item>
      <title>Camping 1.4 Released</title>
      <description>&lt;p&gt;Camping is a micro&amp;mdash;nay! nano&amp;mdash; development framework for web-connected applications, like blogs, 
to do lists, or other teeny utilities. Version 1.4 is out, and &lt;a href="http://redhanded.hobix.com/inspect/campingOnePointFour.html"&gt;why the lucky stiff &lt;/a&gt;  nourishes our collective intellect with this:&lt;/p&gt;

&lt;p&gt;&lt;img src="/lib/images/camping-1.4-signing.gif" alt="Why Camping"/&gt;&lt;/p&gt;</description>
      <pubDate>Fri, 14 Apr 2006 11:28:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:804165dd-e2ff-48d5-97ef-8f01c96f0749</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2006/04/14/camping-1-4-released</link>
      <category>Ruby</category>
      <category>Programming</category>
      <category>framework</category>
      <category>ruby</category>
      <category>camping</category>
    </item>
    <item>
      <title>Palindromes in Ruby</title>
      <description>&lt;p&gt;Need to find palindromic words in ruby? Try this:&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;long_palindromes&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;File&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;open&lt;/span&gt;&lt;span class="punct"&gt;(&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;/usr/share/dict/words&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;).&lt;/span&gt;&lt;span class="ident"&gt;select&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt;
  &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;w&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt; &lt;span class="ident"&gt;w&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;chomp!&lt;/span&gt;&lt;span class="punct"&gt;;&lt;/span&gt; &lt;span class="ident"&gt;w&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;reverse&lt;/span&gt; &lt;span class="punct"&gt;==&lt;/span&gt; &lt;span class="ident"&gt;w&lt;/span&gt; &lt;span class="punct"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="ident"&gt;w&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;length&lt;/span&gt; &lt;span class="punct"&gt;&amp;gt;&lt;/span&gt; &lt;span class="number"&gt;3&lt;/span&gt; &lt;span class="punct"&gt;}&lt;/span&gt;
&lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="ident"&gt;long_palindromes&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;join&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;, &lt;/span&gt;&lt;span class="punct"&gt;')&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Thu, 13 Apr 2006 15:47:00 -0400</pubDate>
      <guid isPermaLink="false">urn:uuid:296ba8a5-4b96-4f54-8314-37c16fe84732</guid>
      <author>Daniel Butler</author>
      <link>http://www.yup.com/articles/2006/04/13/palindromes-in-ruby</link>
      <category>Programming</category>
      <category>Ruby</category>
    </item>
  </channel>
</rss>
