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

The Past 2 Weeks in Ruby: 1.9.3-p286, JRuby 1.7RC2, Sidekiq Pro and Much More

By Peter Cooper / October 18, 2012

Welcome to this week's Web-based syndication of Ruby Weekly, the Ruby e-mail newsletter (just passed 17,000 subscribers - c'mon, sign up! :-)). While I have you, be sure to follow @RubyInside on Twitter as I'm going to be posting news more frequently there than on the Web site from now on.

The latest highlights include:


Ruby 1.9.3-p286 Released
The latest, official production patch-level release of MRI 1.9 is out. The primary motivation was for fixing a couple of security vulnerabilities and a handful of bugs.

A Whirlwind Tour of Rails 4
Andy Lindeman presents a 40 minute tour of some of the forthcoming Rails 4's new features, including strong_parameters, Russian Doll caching, PATCH verb support, removal of Rails 2 finder syntax, and more. Recording and audio quality is very good.

The British Ruby Conference: Standard Tickets Now on Sale
Rubyists like Avdi Grimm, Russ Olsen, Dr Nic Williams, Aaron Patterson (and many more!) will be in Manchester, England in March 2013. Join us by grabbing a ticket now.

101 Things You Didn't Know Ruby Could Do
James Edward Gray II just gave a talk at the Aloha Ruby Conference covering a bundle of random tricks you can do with Ruby. Here's the slidedeck.

Sidekiq Pro: A Commercial, Supported Version of Sidekiq
Sidekiq is a efficient background job processor (think Resque on steroids) that's free and open source, but creator Mike Perham is now offering a commercial variant with extra features and support.

RubyConf Australia 2013 Call for Proposals Open till October 31st
The conference itself is in Melbourne between February 20-22, 2013. Fancy a trip to the homeland of Dr Nic?


7 Ways to Decompose Fat ActiveRecord Models
Some handy tips and examples on breaking apart 'fat models' into separate objects that each encapsulate a concept.

So You Want To Optimize Ruby
Charles Nutter of the JRuby core team explains some of the 'hard problems' Ruby implementations need to solve before getting all gung-ho with benchmarks.

Explain: A Ruby Source to Natural Language Compiler
An interesting experiment in automatically converting Ruby code to English prose.

Would You Like A Mobile App With That?
Want to build your first Rails API-backed iPhone app? Follow along with Richard Schneeman here.

Lazy User Registration for Rails Apps
Goes into the concept of having your auth system providing an omnipresent anonymous user which can then be 'upgraded' to a regular user when the visitor chooses.

An Interview with Xavier Noria, The Code Gardener
Xavier Noria (a Ruby Hero and Rails core contributor) faces Pat Shaughnessy for an interview about how he got started with Ruby and Rails, what's coming in Rails 4.0, and more.

Booleans are Baaaaaaaaaad
John Nunemaker is back and flying the flag for state machines saying that 'using true/false for state is bad.' Several interesting comments on this one; go join the fray.

Ruby Microframeworks: Camping and Cuba
Dhaivat Pandya looks at two unconventional webapp 'microframeworks'.

How to Win a Hackathon
The Rails Rumble is just around the corner, so Brian Burridge has put together a series of seven short posts looking at how to do well in a hackathon situation.

Moving Forward With The Rails Asset Pipeline
A look at what's happening with the Rails asset pipeline in Rails 4.0 and beyond.

Automating Web Performance with mod_pagespeed
mod_pagespeed is a just in time (JIT) performance compiler for the web. This free and open-source Apache module automates all of the most popular web-performance best practices by dynamically rewriting and optimizing your website assets. Google's Ilya Grigorik shows it off.

Capistrano + Rails + Bundler + RVM + Unicorn + EC2 == Deployed
Practical instructions for deploying a Rails app on Amazon EC2 using Capistrano, RVM, Bundler and Unicorn.

Watching and Listening

Exploring RubyGems (RailsCasts)
In a mere 7 minutes, Ryan Bates offers some tips on researching gems to decide which ones to choose, or when to build something from scratch.

Ruby's Symbols Explained
Never quite got your head around how Ruby's symbols work and what they represent? Here's a video from my Ruby Reloaded course now available to watch on YouTube.

Go Ahead, Make a Mess!
Sandi Metz, OO guru and author of 'Practical Object-Oriented Design in Ruby', talks about using the principles of object oriented design to make 'messes' in code manageable. Sandi always gives great talks; check it out.

How to Find Valuable Gems
At RailsConf 2012, Nathan Bibler talked about ways to find the right gems for your project (along similar lines to Ryan's video above). My answer, of course, is to read Ruby Weekly and check out RubyFlow ;-)

The Ruby Rogues on (Physical) Developer Environments
A discussion about ergonomics, chairs, standing desks, working in coffee shops, colors, multiple monitors, background noise, and more with the five always charming and chatty Ruby Rogues.

Live Reloading with Rails 4
Aaron 'tenderlove' Patterson shows off something he's working on that brings live reloading functionality to edge Rails.

PeepCode Releases 'Meet Chef' Screencast
Chef is a handy sysadmin and server configuration tool and former 37signals sysadmin Joshua Sierles goes through the basics of building Chef recipes including for deploying Rails apps.

RubyTapas Episode 7: Constructors
Avdi Grimm continues with his RubyTapas project with this free episode digging into how Ruby constructs new objects and how to customize constructors for your own ends.

Libraries and Code

Opal: Ruby to JavaScript Compiler
A source-to-source compiler (so no special VM required) and the compiled code aims to be fast and efficient by mapping directly to underlying JavaScript features and objects where possible. Not the first such experiment but well presented.

Selfstarter: Roll Your Own Crowdfunding
A project called Lockitron raised $1.9m recently in a crowdfunding campaign. They had to build their own Kickstarter-esque software as Kickstarter rejected them and.. it's in Rails and they've shared the source.

Fun with Unicode Math in Ruby
Want to use Unicode's square root, sine, fraction, infinity, pi, or other mathematical symbols in your Ruby code? The unicode_math gem gets you there.

node-mruby: Embedding Ruby into Node.js
mruby is an embeddable Ruby interpreter and node-mruby makes it possible to embed mruby into Node.js. Very much a prototype/work in progress for the curious.

digest-sha3-ruby: An SHA-3 Library for Ruby
Based on the reference C implementation and attempting to maintain the typical 'Digest' API style, Phusion has released a library that implements the SHA-3 (Keccak) cryptographic hashing algorithm.

Poltergeist 1.0: Hooking Up Capybara to PhantomJS
Allows you to run your Capybara tests on a popular and powerful headless WebKit browser: PhantomJS.

ClientSideValidations 3.2 Released: A Key Release
ClientSideValidations extracts the validations from your Rails models and applies them to your forms directly on the client. 3.2 brings quite a few changes and extras, such as support for Rails 4.0's Turbolinks feature.


Ruby Engineer
Zendesk is looking for a Ruby engineer to join a team in San Francisco that's focused on improving the application from the inside out. We care about elegant code and we are passionate about shipping great software - just like you.

Last but not least..

rubytune: Rails Shop Specializing in Performance and Troubleshooting
Joshua Sierles (ex-37signals) and Sudara Williams (ex-Engine Yard) have launched a consultancy focused on providing scaling, performance and server advice for Rails developers.

Next Ruby Reloaded Course to be Announced Soon
From time to time I run an online Ruby course aimed at intermediate Rubyists looking for a refresher or Rails developers who want more of a deep dive into Ruby itself. The 5th run finished a few weeks ago and I'll be opening registration for Ruby Reloaded 6 very soon. Sign up to the list at the far bottom of the page to get a discount code and notified first (since it fills quickly.) Thanks!

Other Posts to Enjoy

Twitter Mentions