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

This Week in Ruby: Nominate Your Ruby Heroes, Include/Extend, Ruby on Netbeans, Jekyll-Bootstrap, and more

By Peter Cooper / January 20, 2012

Welcome to this week's Web-based syndication of Ruby Weekly, my Ruby e-mail newsletter.


Vote for your 'Ruby Hero' in the Ruby Hero Awards
The Ruby Heroes awards run each year and present 6 community nominated 'heroes' with an award at RailsConf. Nominations are now open so go and drop your nomination for the Rubyist whose code has brightened up your life the most in the past year.

Heroku Receives InfoWorld's Technology of the Year Award
Sorry it's just a press release but it's great to see a company that came up from the Ruby world continue to do well. Congrats to the Heroku team.

Articles and Tutorials

Hashes and Encapsulation
Jon Leighton demonstrates why accessing hash elements in a "obj.hashthings['foo']" style isn't the way to go and how to act in a way that respects encapsulation, a tenet of object orientation.

Explaining Ruby's Include and Extend
Aaron Lasseigne gives a simple introduction to the ideas behind the 'include' and 'extend' methods.

Why Sinatra's Halt is Awesome
Myron Marston draws attention to Sinatra's 'halt' method which you can use to immediate stop a request within a filter or route, and explains why he likes it for handling exceptions in Sinatra apps.

Replace Your Test Helpers with a Reusable API
Eric Hodel makes an interesting argument that instead of leaning on test helper files all of the time, perhaps there are common bits of functionality you can bake into your library or app's own APIs.

Ryan Davis demonstrates why his popular minitest testing library doesn't have an assert_nothing_raised assertion by picking on a relatively useless test in Rails.

A Workaround for Ruby Support on Netbeans 7.1
Back in February 2011, Netbeans (a popular IDE) dropped its official support for Ruby but the JRuby team offered to pick up the slack. Thomas Enebo has been working on it and has some code to make Ruby support work on Netbeans 7.1 here.

Rails or Sinatra: The Best of Both Worlds?
Over at RubySource, Darren Jones rounds up the opinions and assessments of several well known Rubyists when it comes to choosing Sinatra or Rails for a project. An interesting high level collection of ideas.


The Ruby Rogues on Versioning and Releases
The world's favorite Ruby podcast, Ruby Rogues, is back with an episode all about the versioning of code, Ruby libraries, gems, and more. This time out, James Edward Gray II takes the helm.

Private Pub (RailsCasts)
Private Pub is a gem for use with Rails to publish and subscribe to real-time messages through Faye. You get real-time updates through an open socket without tying up a Rails process. Ryan Bates shows you how to use it in a mere 7 minutes.

Libraries and code

ROFLBALT: A Terminal-based ASCII Side Scroller Game
At RailsCamp X, Paul Annesley and Dennis Hotson built this nifty little side scrolling game which works straight from your terminal (256 color support needed though). Surprisingly good for a quick effort.

TwoStroke: A JavaScript Implementation Written in Ruby
Charlie Somerville presents an interesting working (but incomplete) JavaScript implementation, written entirely in Ruby. One of those projects that may seem useful somewhere down the line but for now is just a neat idea.

Guard::RSpectacle: An RSpec Plugin for Guard
Guard::RSpectacle automatically tests your application with RSpec when files are modified. This sounds like guard-rspec on the surface, but RSpectacle acts as an 'embedded' runner within a running Rails app and reloads changed files on the fly.

Juvia: An Open Source Commenting System from Phusion
For a while now, Hongli Lai of Phusion (the geniuses behind Passenger and REE) has been working on a Rails-based open source commenting system that you can include into your site using JavaScript.

Jekyll-Bootstrap: A Quick Way to Start Off Your Own Jekyll-Powered Site
Jekyll is a blog-focused static site generator, and Jekyll users often recommend cloning an existing Jekyll blog to use as a starting point. Jekyll-Bootstrap takes this idea to the next level by attempting to be the definitive Jekyll framework to clone.

OEmbedr: Lightweight, Flexible OEmbed Consumer Library
oEmbed is a format for allowing an embedded representation of a URL on third party sites OEmbedr makes consuming oEmbed from any source simple.

Hobson: A Resque-based Distributed Test Runner
Hobson distributes your test suite across N machines and aggregates the results live on a locally run webapp. I haven't tried it yet but on a trawl through the source code it seems to be for Cucumber and RSpec only.

Vesper: A New Sinatra-based Webapp Framework
Yes, it's 'yet another' webapp framework but Vesper is based on top of Sinatra, already has several plugins, and features a handy 6 minute screencast on its homepage.

Ruby Jobs of the Week

Ruby Framework Engineer Job at Zendesk [San Francisco]
The fantastic folks over at Zendesk, the help desk and support ticket app, are looking for a creative and seasoned Ruby engineer to focus on improving their code base. They want full stack engineers who can improve and refactor their frameworks and lead an open source effort by publishing some of the resulting gems.

Last but not least..

Owning Rails: Marc Andre Cournoyer's Online Rails Masterclass
Marc Andre Cournoyer (of Create Your Own Programming Language fame) is running another of his highly praised 2 day, online Rails masterclasses. Marc's given me a discount code you can use to get 80 dollars off - it's 'rubyweekly'. I disclose that I make a commission on this but I won't promote trash and the testimonials speak for themselves :-)

The Programming Language Masterclass: Another Marc-Andre Class
Along similar lines, Marc Andre Cournoyer also runs a more general class aimed at giving you an understanding of the inner workings of programming languages and programming language implementation. 'SAVEME50' gets you a discount and it's in mid February.

Other Posts to Enjoy

Twitter Mentions