Ruby Weekly is a weekly newsletter covering the latest Ruby and Rails news.

By Peter Cooper / March 16, 2009

xmlresults.gifDisclaimer: Every time we’ve run a piece about benchmarking or performance numbers on Ruby Inside, a retraction or significant correction has come out shortly thereafter. Benchmarking is hard, ugly, and quite often wrong or biased. It is not useless, however, but if you depend on the results in any way, you should certainly try to do your own benchmarking to confirm.

Last week, libxml-ruby 1 was released – a significant achievement since it had been under development for seven years. I suspected that it might just pip Nokogiri to the “fastest way to parse XML in Ruby” post and invited people to benchmark them. Read More

By Peter Cooper / March 12, 2009

xml.gifTry this:

gem install libxml-ruby

And prepare to be shocked as you see libxml-ruby 1.1.1 installed (at the time of writing). Yes, libxml-ruby has, seven years on, made it to version 1! It’s a long history involving a lot of people, initially Sean Chittenden, then Trans Onoma, Ross Bamford, Dan Janowski, and now Charlie Savage who has pushed the library to its 1.1.1 state.

libxml-ruby is, essentially, a set of bindings to libxml2, a ridiculously fast and complete C-powered XML parser. It passes all 1800 OASIS XML Test Suite tests, it’s fast (depending on the C library as it does), and, finally, reliable. Read More

By Peter Cooper / March 10, 2009

futureruby.png 2008′s RubyFringe conference, put on by Canadian Rails consultancy Unspace, was heralded as a landmark in Ruby conferences and set a benchmark that has only recently been approached by the fervor around events like Ruby Manor. After the event, Unspace rapidly said that there wouldn’t be another RubyFringe, but…

Unspace has decided to do it all again with FutureRuby. Like RubyFringe, FutureRuby is a single track, small (150 attendees max) conference with a focus on high energy, high quality presentations (see some videos from RubyFringe, and remember that Giles Bowkett was named our top presenter of 2008 for his RubyFringe show!) and lots of extracurricular activities (i.e. Read More

By Peter Cooper / March 9, 2009

jobs-briefcase.jpg

Despite whatever’s going on in the bigger world, there doesn’t seem to be a shortage of jobs in the Ruby and Rails worlds – at least, not in certain cities. There also doesn’t seem to be a shortage of Ruby and Rails developers, but employers are still desperate to find people to fill positions. A few employers complained to me that the quality just wasn’t there and that there were a lot of tire kickers about. However, it’s crucial to be prepared for unexpected situations, such as losing employment for no apparent reason, by staying informed about your rights and seeking appropriate support if needed. Read More

By Peter Cooper / March 9, 2009

blogoguys.jpgBlogo is a Mac / OS X blogging client developed by Brainjuice – the business name of Benjamin Jackson and Ivan Neto, Rio based Ruby developers and Web designers – and born out of their frustration with existing commercial blog editors.

Brainjuice believe Blogo is the first commercial OS X Ruby app (though the first cross-platform one goes to someone else – see the footer of this post for info!). Rather than use Objective C (which they found to be a serious time hurdle), they tried out RubyCocoa and discovered the beauties of Cocoa (other than the rather gangly method names!) in that way instead (along with MacRuby). Read More

By Peter Cooper / March 6, 2009

rom.png Vidar Hokstad is the writer behind the fine Writing a Compiler in Ruby series, but he’s taken a break to explain the structure and semantics of the Ruby object model. It’s a fine walkthrough.

Vidar takes us through what objects really “are” (a bundle of things, such as a reference to a class, a table of instance variables, and a set of flags) but also explains the exceptions (for example, FixNums, nils, true, false, and symbols are represented “natively” in the 32-bits where a pointer to an object’s metadata would usually be stored – this is one of the reasons why symbols are so efficient). Read More

By Peter Cooper / March 4, 2009

speed.png

Brian Dainton, a developer at FiveRuns, demonstrates “how to speed up gem installs 10x.” I don’t buy that it’s ten times faster, but disabling the generation of ri and rdoc documents does have a significant effect nonetheless.

Brian demonstrates that you can try it on an ad-hoc basis by adding –no-ri –no-rdoc to your gem install lines, or you can add gem: –no-ri –no-rdoc to your ~/.gemrc file.

Sometimes it’s the smaller, throwaway tips that can really brighten your day. Got any time-saving .irbrc or .gemrc tips to share?If we get enough, we could run a post full of them. Read More

By Matthew Lang / March 1, 2009

Dash, a new metrics service from FiveRuns, has been moved to private beta (for which you can apply) allowing interested developers to take part in assessing a new way to monitor your applications. The new service from FiveRuns is an extensible monitoring service for gathering metrics from your critical daemons and applications.

Dash collects metrics from your applications using language or framework specific plugins. These plugins collect the metrics and send them to FiveRuns to be presented on your application’s dashboard. Information from your metrics is presented in a series of reports comprising of sparklines and line charts.  Reports can present your metrics over different preset time periods. Read More

By Peter Cooper / February 27, 2009

ubuntu.pngWant to install Ruby, RubyGems, and a collection of common gems on Ubuntu 8.10 (Intrepid Ibex) in just a few minutes? Here’s the skinny.

If you want, you could use something like Passenger-Stack to do the legwork for you, but I prefer doing manual installations so I know the full score. There are several “how to install Ruby on Ubuntu Intrepid” guides out there but none of them got it totally right for me. I’ve just used these instructions twice in a row so I know they work. Another bonus is you get ImageMagick and rmagick installed which some people get really frustrated with.. Read More

By Peter Cooper / February 26, 2009

guis.pngIn late 2008, 399 Ruby developers took part in the 2008 Ruby GUI Survey, conducted by Alex Fenton. The results are now available. There’s a brief summary of the results, as well as an excellent 20 page report (!!) and a separate 16 page PDF giving the per-question totals.

Ruby’s not well known for being used to develop regular desktop applications. Part of the reason has been, until recently, a lack of good GUI-related libraries. Tk, which is included with Ruby’s standard library, can be used to develop desktop apps, but they’re frightfully ugly and the API is from the stone age (it also received the lowest scores in the survey for how well it met users’ requirements). Read More

By Peter Cooper / February 25, 2009

heist-in-progress.pngHeist is a Scheme interpreter by James Coglan written in Ruby. Scheme is a programming language that’s a dialect of Lisp, was an influence upon Ruby, and still a popular choice for learning functional programming (such as in the classic Structure and Interpretation of Computer Programs).

As well as being used as a stand-alone Scheme interpreter, Heist can also be used as a Ruby library for executing Scheme / Lisp code within Ruby applications.

Other than being of interest to programming language and Lisp nuts, Heist is a great example of not just a complete, well written Ruby app, but a well formed language interpreter too. Read More

By Peter Cooper / February 24, 2009

Looking for a job where you can work on Ruby and Rails apps? You’re in the right place! Recently we’ve had several Rails-focused positions added to the Ruby jobs board.

February’s interesting opportunities (they’re all Rails ones this time..):

newbamboo.png

Experienced Rails Developer (London, UK): New Bamboo, one of the UK’s top Rails development teams, is looking for a Ruby and Rails expert to join their London-based team.

viscape.pngSenior Software Engineer (Telecommuting): Viscape, an innovative travel site for vacation properties and second homes, is looking for a software engineer to design, develop, test, repair and maintain site features and functionality as required by a Web 2.0 application based on Ruby on Rails. Read More

By Peter Cooper / February 21, 2009

stack.png

Passenger-Stack is a set of scripts for the provisioning tool Sprinkle that make installing a full Ruby, Apache and Passenger-based stack almost a one-line task. It’ll take almost any UNIX-y (correction: Ubuntu / Debian) server of your choice from a generic install through to deploying Rack-based apps (including those built with Rails, Merb, Sinatra, and Ramaze).

The Sprinkle scripts behind Passenger-Stack were developed by Ben Schwarz and the best introduction is his five minute screencast showing how it works (on Ubuntu 8.10 hosted with Slicehost). Ben is very keen for people to fork the scripts on Github and customize them further. Read More

By Matthew Lang / February 20, 2009

Managing and organizing multiple JavaScript files in your Rails applications can be a real pain, especially when it comes to deploying your application and you need to minimize those JavaScript files down for better application performance.

Enter Sprockets, the new dependency management and concatenation library from 37signals (or, more specifically, Sam Stephenson). Once installed, Sprockets allows you to organize your application’s JavaScript files into smaller more manageable chunks that can be distributed over a number of directories and files.

Using directives at the start of each JavaScript file, Sprockets can determines which files your current JavaScript file depends on. When it comes to deploying your application, Sprockets then uses these directives to turn your multiple JavaScript files into a single file for better performance. Read More

By Peter Cooper / February 18, 2009

passengerlogo.pngCan you remember what a hideous chore it was to deploy Ruby-based apps (Rails apps being a key example) before early 2008? FastCGI, proxying schemes, plain old CGI – it was all a bit of a mess. It was so bad, in fact, that in January 2008 we posted No True “mod_ruby” Is Damaging Ruby’s Viability On The Web and kicked off a major discussion about it (115 comments!)

A couple of months later, an as-then unknown Dutch company called Phusion (headed by Ninh Bui and Hongli Lai) released mod_rails (a.k.a. Passenger), an Apache module that automatically handles server processes for Ruby apps and makes it a snap (just upload and touch a file) to deploy any Rack-based Ruby webapp with Apache – everyone has benefitted, including Sinatra, Merb and Ramaze development. Read More

Recently Popular Posts