Interesting Ruby Tidbits That Don’t Need Separate Posts #12
RubyCamp 2008 in Vancouver, Canada - January 26, 2008

RubyCamp 2008 in Vancouver, Canada - January 26, 2008





I love finding a library that does exactly what it claims to do, and does it in the simplest way possible. Faker by Ben Curtis is a Ruby library, packaged as a Ruby Gem, that generates "fake data" for you, in the form of names, telephone number, e-mail addresses, addresses, and so forth.
Amazon EC2 (Elastic Compute Cloud) Control Library


The TIOBE "Programming Community Index" chart for November 2007 has been released and Ruby has climbed one place from #10 to #9, overtaking JavaScript in the process. The TIOBE chart is not a particularly accurate chart of programming language use, but it provides a data point used by many. Over the last two years we've watched Ruby scale quite a few places.

Ramaze is a simple, light weight (in a good way!), modular Web framework developed in Ruby. Like Rails, and unlike some of its newer competitors, such as Sinatra, Ramaze sticks to the MVC (Model, View, Controller) paradigm, making it more like a lighter, more modular Merb-alike. Ramaze is already a year old, and one thing that the official Ramaze Web site does right is provide lots of example code and documentation. The framework has also seen four releases in the last six months, a sure sign that someone cares about it.
jRails - Seamlessly Redefines Rails Helpers to Use jQuery Instead of Prototype

Wuby, developed by Chris Matthieu, is a new light-weight Ruby Web application framework, much in a similar vein to Sinatra or Camping.
One of the differences of Wuby is that no third party applications or gems are required to run Wuby apps, and the Wuby library itself contains everything necessary to run an HTTP daemon and start serving requests. The wuby.org site itself is running on the Wuby system and certainly seems to serve up pages extremely quickly. No database connections are required (although MySQL and SQLite are easily usable), and data can be stored in a persistent hash for ultra simplicity.

Ryan Davis starting off the RejectConf proceedings (License: CC ASa)

Robert Dempsey of non-profit Rails advocacy group, Rails For All, writes in to remind everyone about the acts_as_conference Rails conference taking place in Florida in February 2008 and to let us know that registration is now open. Tickets cost $100 (plus $2.50 booking fee). Obie Fernandez and Dan Benjamin are the keynoter speakers, but there are many others. Too many to name individually here, although Charles Nutter (JRuby), Ezra Zygmuntowicz (Merb), and Evan Phoenix (Rubinius) are particular standouts. Anyway, if you fancy getting some winter sun while doing the Rails schmooze, hit it up. It doesn't sound like you're going to be bored at this one.
Interview with Evan Phoenix about Rubinius

Eivind Uggedal has written in with a note about a new blog system he's built using the lightweight Sinatra framework. It's about 100 lines long including the inline templates! An example of the finished software powers Eivind's own blog. Sinatra is looking to be an absolutely excellent mini-framework for running up basic non-MVC applications, and you can learn more about it here.


Will Larson has put together a great "from start to finish" tutorial on building a graphical application on OS X using Shoes, the cross platform GUI library by whytheluckystiff. It goes right from explaining what Shoes actually is, through to its installation, some basic examples, and then to building a basic graphics-focused application.
Thomas Enebo of the JRuby team has announced the release of the first beta of JRuby 1.1. This is a significant release, focusing heavily on performance increases. The performance increases yielded so far are so significant that in most like-for-like tests, JRuby beats the regular Ruby interpreter (a.k.a. MRI) JRuby 1.1. On Rails-focused tests, JRuby also wins.. making JRuby the fastest way to run Rails applications at present. Charles Nutter talks about the improvements, along with a number of other interesting JRuby-related topics, in his latest blog post - a must read for Ruby implementation nuts.

Thanks to an article called "Top Programming Books on Google Book Search", I've discovered that many of the pages of my book, Beginning Ruby (available also in e-book format here), are available here on Google Book Search. Most of Chapter 3 is there, along with chunks of every other chapter, including quite a bit of Chapter 16, a reference of "Useful Ruby Libraries and Gems".


In "How the Ruby heap is implemented," Hongli Lai looks at how Ruby manages its memory and stores your objects. It's reasonably technical but a very interesting read for those with the stomach for it.
Ryan Bates is being a total champ in rolling out more and more consistently good Rails related screencasts for free at RailsCasts.com. Some of the latest include:

CplusRuby is a new library by Michael Neumann that makes it really easy (as in, even easier than RubyInline, although CplusRuby is of a smaller scope) to define custom C structures from within Ruby. The major goal of CplusRuby is performance, and the ability to easily define small methods within a class that compile to C and which can call each other directly. An example is always better than an explanation, so check out this code.


DeepTest is a new library that allows you to run test suites in separate processes simultaneously. The obvious benefit is that on multiple core machines, as are becoming hip with the kids nowadays, test performance can be increased significantly. Initial tests by the developers showed that a test suite ran in half the time on a dual core machine, although real life performance is bound to vary.