---
title: "A successor to Pow, Ruby Refinements, RSpec::Core Cheat Sheet"
publication: "Ruby Weekly"
issue: 309
published_at: "2016-08-04"
canonical_url: "https://rubyweekly.com/issues/309"
---

A successor to Pow, Ruby Refinements, RSpec::Core Cheat Sheet

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

Ruby WeeklyIssue 309 — August 4, 2016

Evan Phoenix[Puma-dev: A Development Server for OS X and Linux](https://github.com/puma/puma-dev)A tool to manage Rack apps in development that bills itself as _“the emotional successor to Pow.”_ Easily start up and idly shutdown Rack and Rails apps during development. There’s [a 6 minute screencast](https://www.driftingruby.com/episodes/puma-dev-replacement-for-pow-and-prax), if you’d like a video introduction.


Daniel P. Clark[The Pros and Cons of Ruby Refinements](https://blog.codeship.com/ruby-refinements/)Refinements were designed to scope changed behavior to a very specific area of code. I’ve not seen them getting much use yet but this is a good, brief rationale.


Tinco Andringa[Using Rails 5 ActionCable and RethinkDB to Build A Reactive WebSocket App](https://blog.phusion.nl/2016/08/04/using-rails-5-actioncable-and-rethinkdb-to-build-a-reactive-websocket-app/)How to build WebSocket driven applications or features using Rails 5’s ActionCable.


AppSignalSponsored[New feature: Track any metric and expose your app's deepest secrets](https://appsignal.com/for/metrics?utm_source=rubyweekly&utm_medium=email&utm_content=metrics&utm_campaign=309)Your application's infrastructure is unique. While error tracking and performance monitoring cover essentials, problems often originate in a deeper layer. Dive into your code and go where no developer has gone before.

[![AppSignal\](https://copm.s3.amazonaws.com/705235b7.png)](https://appsignal.com/for/metrics?utm_source=rubyweekly&utm_medium=email&utm_content=metrics&utm_campaign=309)


Serdar Doğruyol[An Introduction to Crystal: Fast as C, Slick as Ruby](https://blog.codeship.com/an-introduction-to-crystal-fast-as-c-slick-as-ruby/)Crystal is an interesting Ruby-esque language (not 100% compatible) with static typing and native code compilation.


Tom Dalling[RSpec::Core Cheat Sheet](http://www.rubypigeon.com/posts/rspec-core-cheat-sheet/)A round-up of RSpec 3.5’s core features with several short code examples.


Bo Wild[The Dark Side of the Rack and WebSockets Dreams](https://bowild.wordpress.com/2016/07/31/the-dark-side-of-the-rack/)_“Real time web applications in Ruby are hurting,”_ starts the author, before sharing some interesting ideas on webapp serving architecture in Ruby - some of which was being [considered](https://github.com/tenderlove/the_metal) for Rack 2.


Noel Rappin[Focus Your RSpec Workflow](https://medium.com/table-xi/focus-your-rspec-workflow-4cd5798d2a3e)Noel Rappin demonstrates how he uses a couple of RSpec’s configuration options to improve the way he runs his tests.


Jobs

- [Sr. Javascript / Ruby Developers](https://www.stickermule.com/jobs?job=714da6cc-dc8b-4453-8bd6-7b0fa41ebd37&title=sr-javascript--ruby-developer)Sticker Mule is looking for passionate engineers to join our remote team. Help us build the best e-commerce experience using Ruby, Rails, React, Node, Docker and more. Sticker Mule
- [Full Stack Rails Engineer at Instacart (San Francisco)](https://www.instacart.com/engineering/letter?utm_source=ruby-weekly-2016-08-04)Less than 2% of US grocery spend last year was online. We're going to change that. Come work with us on fun, challenging problems and help us give time back to our customers. Instacart
- [Find Your Perfect Company Match](https://hired.com/?utm_source=newsletters&utm_medium=petercooperpress&utm_campaign=q3-16-rubyweekly)You're smart, you're efficient. Why job hunt the old way? Try Hired and get your profile in front of thousands of top tech companies. Hired.com

In brief

- [Launch of The New Rails Tutorial Screencats for Rails 5](https://news.learnenough.com/rails-5-edition-of-rails-tutorial-screencasts?utm_source=rubyweekly&utm_medium=email) news Michael Hartl
- [$5000 fixed-cost upgrade of legacy 2.x/3.x Rails apps to Rails 5](http://www.rubyappcare.com/upgrade?utm_source=rubyweekly&utm_medium=email) 
Upgrading a legacy Rails app is a tedious task; let the specialists at RubyAppCare handle it for you. RubyappcareSponsored
- [Merging Query Strings When Redirecting in Rails](https://www.viget.com/articles/merging-query-strings-when-redirecting-in-rails?utm_source=rubyweekly&utm_medium=email) tutorial 
The Rails router provides a redirect method, but it doesn’t include the request query string. Zachary Porter
- [Understand Variable References and Mutibility of Ruby Objects](https://launchschool.com/blog/references-and-mutability-in-ruby?utm_source=rubyweekly&utm_medium=email) tutorial Pete Hanson
- [Decoding Rails Magic: How Does Calling Class Methods on Mailers Work?](https://karolgalanciak.com/blog/2016/07/31/decoding-rails-magic-how-does-calling-class-methods-on-mailers-work/?utm_source=rubyweekly&utm_medium=email) tutorial Karol Galanciak
- [Enumerable, Enumerator, Lazy and Domain Specific Collection Objects](http://www.eq8.eu/blogs/28-ruby-enumerable-enumerator-lazy-and-domain-specific-collection-objects?utm_source=rubyweekly&utm_medium=email) tutorial Tomas Valent
- [Using Selenium with Ruby](http://redgreenrepeat.com/2016/07/29/selenium-ruby/?utm_source=rubyweekly&utm_medium=email) tutorial 
An explanation of controlling Firefox with a basic Ruby script. Red Green Repeat
- [An Introduction to Dependency Injection in Ruby](https://medium.com/@Bakku1505/introduction-to-dependency-injection-in-ruby-dc238655a278?utm_source=rubyweekly&utm_medium=email) tutorial Christian Paling
- [Fix Rails Converting Backbone JSON Requests as 'text/html'](https://blog.benroux.me/fix-rails-converting-backbone-json-requests-to-text-html/?utm_source=rubyweekly&utm_medium=email) tutorial Ben Roux
- [Creating a 'Jailed' Rails Console](http://travisofthenorth.com/blog/2016/4/8/rails-jail?utm_source=rubyweekly&utm_medium=email) tutorial 
A look at creating a (slightly) safer version of the Rails console. Kitty Con Gato
- [Strategies for Selective Cache Expiration](http://sorentwo.com/2016/08/01/strategies-for-selective-cache-expiration.html?utm_source=rubyweekly&utm_medium=email) tutorial Parker Selbert
- [How To Create A Dynamic Robots.txt in a Rails App](https://solidfoundationwebdev.com/blog/posts/how-to-create-a-dynamic-robots-txt-in-rails?utm_source=rubyweekly&utm_medium=email) tutorial Weston Ganger
- [How to Install Rails 5 on Windows](http://blog.teamtreehouse.com/installing-rails-5-windows?utm_source=rubyweekly&utm_medium=email) tutorial Jay McGavren
- [Lightning fast SSD hosts for your Ruby project](https://welcome.linode.com/ruby-weekly/?utm_source=cooperpress&utm_medium=sponsored&utm_term=ruby&utm_campaign=ruby-weekly) tools 
Host Ruby 2.3.0 on Linode servers - the fastest cloud hosts available. Use promo code RUBY20 for $20 credit. LinodeSponsored
- [Ulid: Universally Unique Lexicographically Sortable Identifiers](https://github.com/rafaelsales/ulid?utm_source=rubyweekly&utm_medium=email) code Rafael Sales
- [CacheKeyFor: A Cache Key Generator for Collections](https://github.com/efigence/cache_key_for?utm_source=rubyweekly&utm_medium=email) code efigence
- [RDL: A Lightweight System for Adding Contracts to Ruby](https://github.com/plum-umd/rdl?utm_source=rubyweekly&utm_medium=email) code University of Maryland

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/309)

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