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

Author Archives: Peter Cooper

By Peter Cooper / September 23, 2011

On August 1, 2011, Ruby 1.9.3 preview 1 was released. The final version isn’t yet out (as of September 23) but Ruby 1.9.3 is going to be the next, full production-level release of MRI Ruby. But what’s the deal with 1.9.3 (and its successors, Ruby 1.9.4 and 2.0)? Keep reading!

The Summary

Ruby 1.9.3 is a relatively minor improvement on the Ruby 1.9.2 we already know and love. In short:

  • a focus has been placed on performance with file loading, File and Pathname all significantly improved
  • Ruby 1.9.2 mostly fixed down the language specification for 1.9; 1.9.3 is mostly work on a ‘better implementation’
  • you can tune the garbage collector via environment variables (more on this in a post coming soon!)
  • Ruby’s license changes from dual Ruby + GPLv2 to dual Ruby + 2-clause BSD
  • improved GC performance with a lazy garbage collector
  • a ‘better strategy’ for the GIL / GVL
  • test/unit supports parallel testing
  • Random.rand tweaks (and rand() now accepts ranges)
  • io/console, a new library in the stdlib
  • 4 new encodings (so far) – cp950, cp951, UTF-16, and UTF-32
  • extra String methods
  • a number of tweaks to formatting strings
  • Module#private_constant and Module#public_constant
  • a smattering of other bits and pieces, but this is the TLDR overview!
  • Read More

By Peter Cooper / September 20, 2011

In a presentation about Ruby 1.9.3, Yuki Sonoda notes that Ruby 1.8 has “no future” and its “end of life” is being discussed pretty seriously. Ruby 1.8 is becoming history, but what’s the alternative? Why, Ruby 1.9! :-)

Even amongst the groups I’m involved with, I’ve seen a lot of resistance to Ruby 1.9. Sometimes it’s because of deployment or library concerns, but often there’s a hesitancy over what’s changed, what’s new, or what has been flat out removed from 1.9. So I’ve been working on something to help out.. because I think Ruby 1.9 is awesome and everyone should be taking it seriously ASAP. Read More

By Peter Cooper / September 2, 2011

Despite RSpec‘s awesomeness, Test::Unit remains the most popular Ruby testing tool out there outside of Rails apps. I’ve recently been code walking through a lot of Ruby libraries for my Ruby Reloaded course and the typical arrangement is Test::Unit, sometimes coupled with Shoulda or Contest for some extra syntactic sweetness.

Part of the reason for Test::Unit’s enduring popularity is its presence in the Ruby standard library but, also, its general ‘lightness’ and speed. When you’re writing a large app, using a powerful full-featured system like RSpec has significant benefits (particularly stakeholder involvement in writing the specs). But when you’re working on a library that might spread far and wide and is aimed solely at developers, the pros of Test::Unit shine through. Read More

By Peter Cooper / August 27, 2011

jobs.pngIt seems the Ruby and Rails job scenes are on fire! I don’t remember running so many jobs across a single month before. 22 Ruby and Rails jobs are here and they’re spanning the world. US West Coast, East Coast, England, Scotland and Germany are all represented. It’s definitely not the common “San Francisco or nothing” roundup :-)

Also fresh this time around is the mention of “all levels” or “junior” roles. At least a few of the jobs listed here today are open to all skill levels or are explicitly junior in nature. I’ve had a lot of readers get in touch requesting more listings like these so I’m glad they’ve come along. Read More

By Peter Cooper / August 16, 2011

rbenv is a new lightweight Ruby version management tool built by Sam Stephenson (of 37signals and Prototype.js fame).

The established leader in the Ruby version management scene is RVM but rbenv is an interesting alternative if you want or need something significantly lighter with fewer features. Think of it as a bit like Sinatra and Rails. It’s not about which is the best, it’s about which is better for you and your current requirements.

What’s the deal with rbenv?

Compared to RVM, rbenv is light. For example, it doesn’t include any mechanism to install Ruby implementations like RVM does. Its sole job is to manage multiple Ruby “environments” and it allows you to quickly switch between Ruby implementations either on a local directory or default ‘system-wide’ basis. Read More

By Peter Cooper / August 5, 2011

In the past couple of months I’ve seen situations arise where developers aren’t entirely sure how Ruby has chosen to interpret their code. Luckily, Ruby 1.9 comes with a built-in library called Ripper that can help solve the problem (there’s a 1.8 version too, see later). Here, I give the 30 second rundown on what to do.

A Mystery To Solve

I’ve seen this confusion appear twice in the last month (the second time was what inspired me to write this post):

Despite thinking that we should be seeing Hash appear, we don’t. We get a blank line and NilClass in response. Read More

By Peter Cooper / August 3, 2011

Official project sites should set the benchmark for standards relating to that project in terms of the best quality and most up to date news updates, documentation, download links, tutorials, and so forth. On this front, Ruby’s official site at ruby-lang.org is doing a bad job (in the English language variant, at least).

Update: Since making this post, people have begun to volunteer and existing volunteers have started to update the site. The Download page now lists alternative implementations :-) Congratulations to everyone who stepped up. This means this article may progressively become out of date, so please read it in that context, since the problems may get fixed soon :-)

The site’s footer says it’s “proudly maintained by members of the Ruby community” and links to the homepage of the rather anonymous Ruby Visual Identity Team who redesigned it 5 years ago. Read More

By Peter Cooper / August 1, 2011

Over on the ruby-talk mailing list, Yuki “Yugui” Sonoda announced the release of Ruby 1.9.3 Preview 1:

It’s important to note that this is not the latest production release of Ruby 1.9 (that remains Ruby 1.9.2-p290 for now) but is a preview release so you can try out your libraries and other important code ahead of the full production release of Ruby 1.9.3-p0.

Pick up the tarfile of the release at http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-preview1.tar.gz if you fancy a crawl about. If you want to check it out with RVM, instructions follow.

Key Updates

Let’s waltz through some of Ruby 1.9.3 preview 1′s key updates over the existing Ruby 1.9.2:

By Peter Cooper / July 18, 2011

I don’t like being negative on Ruby Inside without good reason. Trivia like DHH’s test library preferences can provide a fun talking point but pointing out specific flaws in someone’s work is rarely insightful.

I wasn’t going to publish a review of this book but when I discussed the issues with people on IRC, Twitter and e-mail (to find second opinions), I was pressed to push on, primarily to serve as a warning to newcomers who may pick up this book. So, let’s tread carefully..

What is The Book of Ruby?

The Book of Ruby is a new Ruby book published by No Starch (who, as a publisher, I love – The Linux Programming Interface is one of the best books I’ve ever read) and written by Huw Collingbourne. Read More

By Peter Cooper / July 16, 2011

Over at the always-riveting official Ruby blog, Shota Fukumori has announced the release of Ruby 1.9.2-p290, the latest ‘patchlevel’ release of the current production release of Ruby MRI.

If you’re still on 1.8, check out The Ruby 1.9 Walkthrough, a mega screencast aimed at Ruby 1.8.7 developers who want to learn all about what’s new, what’s gone, and what’s different in Ruby 1.9.2 and 1.9.3.

Patchlevel 290 is the first production-level patchlevel release of MRI since patchlevel 180 back in February so it’s worth upgrading if you’re on 1.9.2. The release post duly notes:

So what changed? And how can you upgrade? Read More

By Peter Cooper / July 15, 2011

The Ruby and Rails job scene continues to grow through 2011 and we’ve got *drumroll* 13 (lucky for some) jobs to share from the Ruby Jobs board from companies like Simon & Schuster, AlphaSights and CustomInk. They’re all across the US with a couple in the UK for good measure.

To promote a job, see the Post A Job page. A bonus is your ad gets into the 6463 subscriber Ruby Weekly for free and our 5837-follower-strong @rubyinside Twitter account.

Braintree Seeks Internal Rails Developer – Chicago, IL

Braintree, a popular payment gateway provider and long-term user of Rails, is looking for an exceptional Rails developer. Read More

By Peter Cooper / July 15, 2011

Amazon has unveiled an official Ruby SDK for AWS! Amazon.com’s Amazon Web Services has been a rip-roaring success since its first publicly-available service, S3 (Simple Storage Storage), was released in 2006. It has since expanded to about 20 services in all, the most popular being S3 and the “elastic compute cloud” EC2.

There have previously been unofficial Ruby libraries for interfacing with Amazon’s many services, including PoolParty, right_aws, and Marcel Molina’s awesome aws-s3, and Amazon even released some bits and pieces of Ruby code before, but the new aws-sdk gem represents a stronger effort to have a single, official cohesive library for Rubyists using AWS. Read More

By Peter Cooper / July 14, 2011

Quick, quick, RubyConf 2011 registration has opened today and until they run out, you can buy tickets at this link. (They cost $350.) (Update July 15 – they seem to have sold out!) Why the urgency? RubyConf is notorious for selling out quickly (I think RubyConf 2009 sold out in 5 hours or something crazy?) and there are still tickets left now, 9 hours later.

RubyConf is taking place between September 29 – October 1, 2011 and it’s in New Orleans, Louisiana, as last year, at the Astor Crowne Plaza Hotel in the French Quarter.

The schedule has also been posted and its highlights include sessions like:

  • Exceptional Ruby by Avdi Grimm
  • Writing Solid Ruby Code by Jim Weirich
  • Advanced EventMachine by Jonathan Weiss
  • GitHub Flavored Ruby by Tom Preston-Werner
  • Ruby in the browser with NativeClient (NaCl) by Ilya Grigorik
  • ..
  • Read More

By Peter Cooper / July 13, 2011

Ruby Inside wouldn’t be what it is without you but it’s time for me to thank the companies who also help to keep Ruby Inside going by sponsoring my work. Thanks!

I take care not to accept sponsors who have little of interest to the Ruby scene so hopefully you’ll find something useful below – it’s not a roster of faceless companies, these folks are doing great stuff.

RubyMine by JetBrains – A Powerful Ruby and Rails IDE

RubyMine is a cross-platform Ruby and Rails IDE that works with and contains a full stack of essential developer tools, all tightly integrated into a convenient and smart development environment. Read More

By Peter Cooper / July 12, 2011

Yukihiro Matsumoto, creator of Ruby and more commonly known as Matz, has joined Heroku, the Salesforce.com-owned Ruby cloud hosting company, as its Chief Architect of Ruby.

Being the creator of Ruby and a much respected developer in his own right, Matz is hardly itching for a new job to pay the bills, but a head position at the biggest Ruby-related infrastructure company (perhaps excepting Engine Yard) is bound to provide Matz with the resources he needs to make an even bigger impact, particularly in the West.

For Heroku’s part, they’ve placed themselves squarely at the forefront of the Ruby industry with the recruitment of its friendly figurehead and benevolent dictator – usually Google or academia snap up the top language creators. Read More