---
title: "This week's Ruby news, issue 283"
publication: "Ruby Weekly"
issue: 283
published_at: "2016-02-04"
canonical_url: "https://rubyweekly.com/issues/283"
---

This week's Ruby news, issue 283

This week's Ruby and Rails news[Read this e-mail on the Web](http://rubyweekly.com/issues/283)

Ruby WeeklyIssue 283 — February 4, 2016

GitHub[Scientist: A Ruby Refactoring Tool from GitHub](http://githubengineering.com/scientist/)[Scientist](https://github.com/github/scientist) helps you ‘carefully’ refactor critical paths in your app by leaving the original code in place but suggesting an alternative to test against. Wired has [a higher level look.](http://www.wired.com/2016/02/rebuilding-modern-software-is-like-rebuilding-the-bay-bridge/)


Leigh Halliday[Building a CLI in Ruby with GLI](https://www.leighhalliday.com/building-cli-ruby-with-gli)GLI provides a handy DSL to define the different tasks your script can handle and which flags, switches, and arguments each task expects to receive.


Mike McCabe[A Single Line of 'Ugly' Ruby](https://medium.com/@mccabe615/ugly-ruby-d6b0a43704d7)A fun attempt to create a really ‘ugly’ Ruby one liner (_puts flamejacket on_… so it’s basically Perl) and an explanation of what it means.


ReinteractiveSponsored[Fixed Price Ruby on Rails Ops? Seriously?](https://www.reinteractive.net/service/ops-care?sid=34)Yes! We've built one of the world's most robust and stable Operations as a Service platforms running on your own dedicated AWS account. Get 24/7 support for your app by our dedicated team from less than $1 per hour.

[![Reinteractive\](https://copm.s3.amazonaws.com/bbbe2b60.png)](https://www.reinteractive.net/service/ops-care?sid=34)


Maciej Nowak[Running Concurrent Workflows in Ruby](http://blog.chaps.io/2016/02/01/running-concurrent-workflows-in-ruby.html)Gush is graph based gem devised to facilitate organization of jobs into self-describing workflows.


Ross Kaffenberger[Recurring Events in Ruby Using The Montrose Gem](https://rossta.net/blog/recurring-events-in-ruby.html)Montrose allows you to easily create ‘recurrence’ objects, like so: `Montrose.weekly.on(:monday).at('10:30 am')`


Kyle Szives[Action Cable and WebSockets: An In-Depth Tutorial](http://www.sitepoint.com/action-cable-and-websockets-an-in-depth-tutorial/)Action Cable has been a highly anticipated Rails 5 feature and you can use it today with the Rails 5 beta. Kyle presents a quick introduction for beginners.


Ian Whitney[Factories: From Simple to Ridiculous](http://designisrefactoring.com/2016/02/03/factories/)“There’s not a level of abstraction that’s universally wrong, it’s always context dependent. You have to find the level that’s right for your code and your programmers.”


Simon Coffey[Stubs, Mocks and Spies in RSpec](https://about.futurelearn.com/blog/stubs-mocks-spies-rspec/)A look at testing simple Ruby objects with three types of test double: Stubs, Mocks and Spies.


Eugene Pirogov[Raw SQL in A Rails Project](http://gmile.me/raw-sql-in-a-rails-project)A look at how to pull it off elegantly, with a summary of “SQL has been around for more than 40 years. It’s a giant. Why not build standing on the shoulders of a giant?”


Jobs

- [Get 10 offers from top tech companies in one week.](http://www.indeed.com/prime?sid=xp_cooperpress&kw=ruby)Indeed Prime is an elite new program from Indeed.com that presents in-demand tech talent like you to top employers. Indeed Prime opens the door to exciting career opportunities with one simple application. Join today! Indeed
- [​Senior and Mid Ruby Engineers at HouseTrip (London UK)](https://www.linkedin.com/jobs2/view/98158716?utm_source=rubyweekly&utm_medium=email)One of the world’s largest holiday rental marketplaces, we’re looking for engineers to join our friendly and ambitious team. Like teamwork, responsible autonomy and pragmatism? Come work with us. HouseTrip
- [Rails Developers (Mid to Sr. Level) for eCommerce Software Development](https://weblinc.workable.com/jobs/17597?utm_source=rubyweekly&utm_medium=email)WebLinc - a Commerce platform and services provider in Old City Philadelphia - is looking for Rails developers to join our team. If you like being able to drive your day to day and be challenged but supported, check us out. WebLinc

In brief

- [Rails 5.0.0.beta2: Slashed Action Cable Dependencies, Fixes Galore](http://weblog.rubyonrails.org/2016/2/2/Rails-5-0-beta2/?utm_source=rubyweekly&utm_medium=email) news David Heinemeier Hansson
- [Projects That Are Making Blazing Fast Ruby a Reality](http://www.sitepoint.com/projects-that-are-making-blazing-fast-ruby-a-reality/?utm_source=rubyweekly&utm_medium=email) news 
A quick look at OMR and Truffle+Graal. Robert Qualls
- [Is Ruby 2.3 Faster? A Look at Date Parsing Performance](http://ruby-performance-book.com/blog/2016/02/is-ruby-2-3-faster-date-parsing-performance.html?utm_source=rubyweekly&utm_medium=email) news Alexander Dymo
- [Jump Start your Next Ruby on Rails Project](https://www.happybearsoftware.com/?utm_source=rubyweekly&utm_medium=email) 
Happy Bear Software is a small technical consultancy that builds web applications for startups, established businesses and non-profits. Happy Bear SoftwareSponsored
- [Integrate Jasmine into Rails for Solid JavaScript Testing](http://www.sitepoint.com/integrate-jasmine-into-rails-for-solid-javascript-testing/?utm_source=rubyweekly&utm_medium=email) tutorial Hendra Uzia
- [Skipping Tests in Minitest](http://dev.paperlesspost.com/skipping-tests-minitest/214?utm_source=rubyweekly&utm_medium=email) tutorial Ivan Tse
- [Hackable PDF Typesetting in Ruby with Prawn](http://www.sitepoint.com/hackable-pdf-typesetting-in-ruby-with-prawn/?utm_source=rubyweekly&utm_medium=email) tutorial Robert Qualls
- [Improve The Console Print Debugging Experience](http://undefined-reference.org/2016/01/31/super_awesome_print-as-debugger.html?utm_source=rubyweekly&utm_medium=email) tutorial Oleg Antonyan
- [How To Locally Save A Bundler Gem with Git Source to /vendor/cache](http://solidfoundationwebdev.com/blog/posts/how-to-locally-save-a-bundler-gem-with-git-source-to-vendor-cache?utm_source=rubyweekly&utm_medium=email) tutorial Weston Ganger
- [Add Chat to a Rails App with Twilio IP Messaging](https://www.twilio.com/blog/2016/02/add-chat-to-a-rails-app-with-twilio-ip-messaging.html?utm_source=rubyweekly&utm_medium=email) tutorial Greg Baugues
- [The Ultimate Guide to Blocks, Procs and Lambdas](http://www.blackbytes.info/2016/02/ruby-procs-and-lambdas/?utm_source=rubyweekly&utm_medium=email) tutorial Jesus Castello
- [Translating Existing Rails Applications Made Easier](https://www.amberbit.com/blog/2016/1/31/translating-existing-rails-applications-made-easier/?utm_source=rubyweekly&utm_medium=email) tutorial Kamil Dziemianowicz
- [What I Learned Migrating A Rails App to Elixir/Phoenix](https://medium.com/@stueccles/what-i-learned-migrating-a-rails-app-to-elixir-phoenix-f707436749aa?utm_source=rubyweekly&utm_medium=email) opinion Stuart Eccles
- [Patterns for Successful Rails Engines](https://medium.com/ruby-on-rails/patterns-for-successful-rails-engines-a7dae3db6921?utm_source=rubyweekly&utm_medium=email) opinion Alessandro Desantis
- [Leveraging Ruby Libraries](http://www.oreilly.com/pub/e/3635?utm_source=rubyweekly&utm_medium=email) video 
Note: Requires a free registration. Jay McGavren
- [Trailblazer: A High-Level Architecture for Rails Apps](http://trailblazer.to/?utm_source=rubyweekly&utm_medium=email) code 
Logic that used to get 'violently' pressed into MVC is restructured and decoupled from the Rails framework. Nick Sutterer
- [Dalli::RateLimiter: Arbitrary Memcached-Backed Rate Limiting](https://github.com/mwpastore/dalli-rate_limiter?utm_source=rubyweekly&utm_medium=email) code Mike Pastore
- [ruby-kafka: Ruby Client Library for the Kafka Distributed Log System](https://github.com/zendesk/ruby-kafka?utm_source=rubyweekly&utm_medium=email) code Zendesk
- [Free eBook: Orchestrate Containers with Docker Compose](http://resources.codeship.com/ebooks/orchestrate-containers-with-docker-compose?utm_source=rubyweeklysecondary) 
In this free Codeship eBook you will learn what Docker Compose is, how it works, and how to easily recreate a microservice architecture on your development machine with Docker Compose. CodeshipSponsored

Curated by [Peter Cooper](https://twitter.com/peterc) and [Glenn Goodrich](https://twitter.com/ruprict), and published by [Cooperpress](https://cooperpress.com/).
Send feedback by simply replying to this mail.
Want to sponsor an issue? See our [media kit.](https://cooperpress.com/mediakit)
Want to post a job? Email us or [use our self-serve system.](https://booking.cooperpress.com/jobs)

[Unsubscribe](*|UNSUB|*) | [Change email address](*|UPDATE_PROFILE|*) | [Read this issue on the Web](http://rubyweekly.com/issues/283)

© Cooperpress Ltd. Office 30, Lincoln Way, Louth, LN11 0LS, UK
[Email policy](https://cooperpress.com/spam.html) [Privacy policy](https://cooperpress.com/privacy.html)
