---
title: "This week's Ruby news, issue 238"
publication: "Ruby Weekly"
issue: 238
published_at: "2015-03-19"
canonical_url: "https://rubyweekly.com/issues/238"
---

This week's Ruby news, issue 238

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

Ruby WeeklyIssue 238 — March 19, 2015

Jarkko Laine[How Do You Know If Your Rails App Is Thread-Safe or Not?](https://bearmetal.eu/theden/how-do-i-know-whether-my-rails-app-is-thread-safe-or-not/)Now that Puma, a threaded app server, is the preferred Web server for Rails apps on Heroku, it’s worth considering if your app is ready for such an environment. Jarkko digs into the issues.


rubytogether[Ruby Together: An Association for Improving Ruby Tools](https://rubytogether.org/news/2015-03-17-announcing-ruby-together)A new non-profit trade association bringing together resources to improve community tools like Bundler and RubyGems. A developer has been funded to work on such tools and folks like Aaron Patterson, Sarah Mei and Steve Klabnik are on its board.


ProfileItSponsored[Your Rails app fast in dev, slow in production? Fix it with Profileit.io.](https://profileit.io/)Profileit.io provides what others can't: a performance profile of any page in your Rails app, live, in production, with zero overhead for your users. See slow SQL queries, method calls, and server-side rendering times. Even XHR redirects. Try [profileit.io](http://profileit.io/) free.

[![ProfileIt\](https://copm.s3.amazonaws.com/45ad1f1f.png)](https://profileit.io/?utm_source=rubyweekly&utm_medium=email)


Santosh Wadghule[Voice Based Phone Verification using Twilio](http://blog.bigbinary.com/2015/03/18/voice-based-phone-verification-using-twilio.html)A look at building a system that can call a number supplied by a user of your app and request they push ‘1’ to validate.


Montana Low[A Very Short Ruby-based Markov Model Explained](https://www.omniref.com/github/omniref/hn_title_generator/0.1.0/symbols/HNTitleGenerator::MarkovModel?#line=11)A quick look at code behind a Hacker News ‘title generator’ that uses Markov chains.


Justin Weiss[How Rails Sessions Work](http://www.justinweiss.com/blog/2015/03/17/how-rails-sessions-work/)What is a session? How does Rails know to show the right data to the right person? And how do you decide where you keep your session data?


The Pragmatic Studio[How To Add jQuery and Ajax To Your Rails App](https://pragmaticstudio.com/blog/2015/3/18/rails-jquery-ajax)A very professional (but free) 20 minute screencast by Mike Clark covering the basics of introducing various JavaScript-backed effects and features into a Rails 4 app.


Benjamin Tan[How Does Symbol#to_proc Work?](http://benjamintan.io/blog/2015/03/16/how-does-symbol-to_proc-work/)`words.map { |s| s.length }` can be reworked as `words.map :length` but what’s really happening and how can you reimplement this idea yourself?


Monkey and Crow[Time Travel in Rails](http://www.monkeyandcrow.com/blog/reading_rails_time_travel/)The ‘travel’ and ‘travel_to’ helpers in Rails 4.1+ help you test time related code, but how are they implemented?


Aaron Patterson[Drop Millions of Allocations by Using A Linked List](https://github.com/rubygems/rubygems/pull/1188)Aaron ‘tenderlove’ Patterson has made a huge gain in array allocation efficiency in RubyGems by leaning on good old linked lists.


Jobs

- [Wanted: Software Engineers for long-term relationship. FreeAgent, Edinburgh](http://www.freeagent.com/company/jobs?utm_source=rubyweekly&utm_medium=email)TL;DR. FreeAgent WLTM talented, experienced software engineer looking for new friendships and technical challenges. Must enjoy shipping. GSOH essential. No LDR, Edinburgh only. Dog friendly. TYVM. TTFN. FreeAgent
- [StatusPage.io Hiring A Senior Rails Developer (SF, Denver)](https://jobs.lever.co/statuspageio/0a8a9e28-79e9-40f0-ab0a-69c6afa8a2d5?utm_source=rubyweekly&utm_medium=email)StatusPage.io is hiring an experienced Ruby developer to help us make it easier for companies to be transparent around downtime. We're profitable, and believe in running a sustainable company with teammates that help us grow and enrich our lives. StatusPage
- [Ruby skills are in demand.](https://hired.com/?utm_source=newsletters&utm_medium=rubyweekly&utm_campaign=n-mar19_15-rubyweeklyspons&utm_content=indemand)Join Hired get 5+ job offers in one week! You'll see compensation figures up front you'll be able to decide what opportunities interest you. No risk. All reward. Join Hired today! Hired.com

In brief

- [RubyMotion #inspect 2015 - Two Days, One Track, 100% RubyMotion](http://conference.rubymotion.com/?utm_source=rubyweekly&utm_medium=email) news 
July 1-2 in Paris, France. RubyMotion
- [ParallelCI by Codeship – Run your tests in parallel](https://codeship.com/features/parallelci?utm_source=rubyweekly&utm_medium=email) news 
Codeship now supports running your tests in parallel. Set up test pipelines, split up test commands and run your test suite in parallel. Learn more. CodeshipSponsored
- [Generating Complex PDF Documents in Rails with Prawn](http://www.yoniweisbrod.com/generating-complex-pdf-documents-in-rails-with-prawn/?utm_source=rubyweekly&utm_medium=email) tutorial Yoni Weisbrod
- [Docker, Rails, & Docker Compose Together in Your Development Workflow](http://blog.carbonfive.com/2015/03/17/docker-rails-docker-compose-together-in-your-development-workflow/?utm_source=rubyweekly&utm_medium=email) tutorial Andrew Hao
- [Ruby Random: Random Strings and Numbers](http://www.blackbytes.info/2015/03/ruby-random/?utm_source=rubyweekly&utm_medium=email) tutorial Jesus Castello
- [Optimizing Rails for Memory Usage Part 4: Lazy JSON Generation and Final Thoughts](http://collectiveidea.com/blog/archives/2015/03/13/optimizing-rails-for-memory-usage-part-4-lazy-json-generation-and-final-thoughts/?utm_source=rubyweekly&utm_medium=email) tutorial 
Last in a series. Brian Hempel
- [Running a Rails app on Docker using the Passenger Image](https://rossfairbanks.com/2015/03/06/rails-app-on-docker-using-passenger-image.html?utm_source=rubyweekly&utm_medium=email) tutorial Ross Fairbanks
- [Sinatra Testing 101: RSpec](http://binarylies.ghost.io/sinatra-tests-101/?utm_source=rubyweekly&utm_medium=email) tutorial 
A little slapdash but if you want to know how to rig up RSpec in a Sinatra app it’ll be useful. Tiago Casanova
- [No Date.today? It's DateTime](http://www.bignerdranch.com/blog/no-date-today-its-datetime/?utm_source=rubyweekly&utm_medium=email) tutorial Jay Hayes
- [Fun with Rails' 'has_one through' Association](http://dev.mikamai.com/post/113951227084/fun-with-rails-has-one-through-association?utm_source=rubyweekly&utm_medium=email) tutorial Mikamayhem
- [How BJ Clark Went From No Ruby Knowledge to Hiring Devs in 4 Years](https://rubysteps.com/podcast/001-bj-clark-zero-ruby-knowledge-hires-rails-devs-four-years-later?utm_source=rubyweekly&utm_medium=email) podcast 
An hour long interview. RubySteps Podcast
- [Advanced Ruby on Rails Error Tracking - A Few Lines of Code is All it Takes](https://raygun.io/ruby-on-rails?utm_source=sponsored-link&utm_medium=email&utm_content=mar19&utm_campaign=rubyweekly) tools 
Real-time error tracking for Ruby on Rails that you can set up in minutes. RaygunSponsored
- [Sidekiq (Redis) vs Shoryuken (AWS SQS)](http://www.pablocantero.com/blog/2015/03/14/sidekiq-%28redis%29-vs-shoryuken-%28aws-sqs%29/?utm_source=rubyweekly&utm_medium=email) opinion Pablo Cantero
- [Tired of Conditionals? The State Pattern Could Help](http://bits.citrusbyte.com/state-design-pattern-with-ruby/?utm_source=rubyweekly&utm_medium=email) opinion Emiliano Mancuso
- [rubygems_plugin_generator: A RubyGems Plugin to Generate RubyGems Plugins](https://github.com/brianstorti/rubygems_plugin_generator?utm_source=rubyweekly&utm_medium=email) code Brian Storti
- [Introducing the tco_method Gem to Enable Tail Code Optimization](http://blog.tdg5.com/introducing-the-tco_method-gem/?utm_source=rubyweekly&utm_medium=email) 
[tco_method](https://github.com/tdg5/tco_method) lets you selectively eval Ruby code with tail call optimizations turned on. Danny Guinther
- [Canada: Add Support for Canadian Programming Conventions to Ruby](https://github.com/vanruby/canada?utm_source=rubyweekly&utm_medium=email) code 
Yes, this is a joke. Vancouver Ruby Meetup Group
- [to_range: Converts Parseable Strings into Ruby Range Objects](https://github.com/metaware/to_range?utm_source=rubyweekly&utm_medium=email) code Metaware Labs

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

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