---
title: "#363: An Introduction to Concurrency Models in Ruby"
publication: "Ruby Weekly"
issue: 363
published_at: "2017-08-24"
canonical_url: "https://rubyweekly.com/issues/363"
---

#363: An Introduction to Concurrency Models in Ruby

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

Ruby WeeklyIssue 363 — August 24, 2017

Universe Engineering[An Introduction to Concurrency Models in Ruby](https://engineering.universe.com/introduction-to-concurrency-models-with-ruby-part-i-550d0dbb970)In this first of a series, we see the differences between and pros and cons of fibers, EventMachine, threads and processes.


Ben Lewis[Five Ruby Methods You Should Be Using](https://www.engineyard.com/blog/five-ruby-methods-you-should-be-using)Includes Object#tap, Array#bsearch, and Enumerable#flat_map.


Cẩm Huỳnh[Some Confusing Features in Ruby](https://hqc.io/posts/six-confusing-features-in-ruby)After looking at the five methods you should be using (above), here are six perhaps more bewildering bits of the language.


TimberSponsored[How We Solved Ruby's Noisy Logs](https://timber.io/blog/how-we-solved-rubys-noisy-logs)Learn how Concierge Live used logging tool Timber to find issues, reduce debugging time and clean up their logs.

[![Timber\](https://copm.s3.amazonaws.com/7835e59f.png)](https://timber.io/blog/how-we-solved-rubys-noisy-logs?utm_source=rubyweekly&utm_medium=email)


Spree Commerce[Spree 3.3 Released: A Rails-Based E-Commerce System](http://guides.spreecommerce.org/release_notes/spree_3_3_0.html)This popular system now has support for Rails 5.1 and Ruby 2.4.


Tinco Andringa[Using ActionCable and RethinkDB to Build a Reactive WebSocket App](https://medium.com/rubyinside/using-rails-5-actioncable-and-rethinkdb-to-build-a-reactive-websocket-app-7f77382cfb5)How to build a WebSockets driven application using Rails 5’s ActionCable.


Benjamin Roth[Five Quick Active Record Query Tricks](https://medium.com/@apneadiving/active-records-queries-tricks-2546181a98dd)Mainly focused on the various ways to intelligently handle joins and associated queries.


Jobs

- [Developer - Web Technologies](https://www.raizlabs.com/careers/?utm_source=rubyweekly&utm_medium=email)Broaden your impact and hone your craft; build apps from scratch for expert clients. Pick your tools: Ruby, JavaScript, Elixir… Raizlabs
- [Senior Full-Stack Developer at Razeware (Remote)](https://authenticjobs.com/jobs/29672/senior-fullstack-developer?utm_source=rubyweekly&utm_medium=email)We're seeking an engineer to help overhaul [raywenderlich.com.](http://raywenderlich.com/) Join our team and help bring the site to the next level. Razeware LLC

In brief

- [London Ruby Unconference - October 7, 2017](https://www.eventbrite.com/e/london-ruby-unconference-tickets-36286901098?utm_source=rubyweekly&utm_medium=email) news 
It’s cheap but there aren’t many tickets left. London Ruby Unconference
- [Passenger 5.1.8 Released: Nginx 1.12.1, Webpacker, and Fixes](https://blog.phusion.nl/2017/08/23/passenger-5-1-8/?utm_source=rubyweekly&utm_medium=email) news Phusion Blog
- [Database Performance Monitoring Buyer’s Guide](https://www.vividcortex.com/resources/database-performance-monitoring-buyers-guide?utm_campaign=Ruby%20Weekly&utm_source=ppc&utm_medium=Database%20Performance) 
This guide is designed to aid when evaluating database monitoring solutions for your unique environment. VividCortexSponsored
- [Factories or Fixtures? Give Me Both](https://evilmartians.com/chronicles/factories-or-fixtures?utm_source=rubyweekly&utm_medium=email) tutorial 
How to use a mix of factories and fixtures in Ruby to test for large data structures. Martian Chronicles
- [Managing Threads with Queue and SizedQueue](https://blog.redpanthers.co/managing-threads-queue-sizedqueue/?utm_source=rubyweekly&utm_medium=email) tutorial Red Panthers
- [Adding Token Based Auth to a Rails API with Devise Token Auth](https://www.valentinog.com/blog/devise-token-auth-rails-api/?utm_source=rubyweekly&utm_medium=email) tutorial Valentino Gagliardi
- [A Review of the Hanami Web Framework](https://www.nopio.com/blog/hanami-ruby-web-framework-review/?utm_source=rubyweekly&utm_medium=email) tutorial 
This brief introduction is followed by an attempt to make a simple CRUD app in under six hours. Nopio Blog
- [How to Make AJAX Calls in Rails 5.1](https://learnetto.com/blog/how-to-make-ajax-calls-in-rails-5-1?utm_source=rubyweekly&utm_medium=email) tutorial 
Three options for AJAX calls both with and without jQuery. Learnetto
- [The === (Case Equality) Operator in Ruby](http://blog.arkency.com/the-equals-equals-equals-case-equality-operator-in-ruby/?utm_source=rubyweekly&utm_medium=email) tutorial Arkency Blog
- [Handling Recurring Events with ice_cube](https://www.driftingruby.com/episodes/recurring-events-with-ice_cube?utm_source=rubyweekly&utm_medium=email) video Drifting Ruby
- [Testing Emails in Development with Mailcatcher](https://gorails.com/episodes/testing-emails-with-mailcatcher?utm_source=rubyweekly&utm_medium=email) video GoRails
- [#1 Way to Detect, Diagnose and Defeat Errors 🏆](https://rollbar.com/rubyweekly?utm_source=rubyweekly&utm_medium=email) tools 
Rollbar detects when code breaks in real-time. Get stack trace & diagnostic data to defeat Ruby errors. ROLLBARSponsored
- [Ruby Tests Profiling Toolbox: Tools to Analyze Test Suite Performance](https://github.com/palkan/test-prof?utm_source=rubyweekly&utm_medium=email) tools Vladimir Dementyev
- [sinatra-graphql: A Sinatra and GraphQL Starter Kit](https://github.com/lucas-aragno/sinatra-graphql/tree/master?utm_source=rubyweekly&utm_medium=email) code 
Brings together Trailblazer, Sequel, Sinatra, GraphQL, React and PostCSS. Lucas Aragno
- [tlsh: Trend Micro Locality Sensitive Hash Library](https://github.com/adamliesko/tlsh?utm_source=rubyweekly&utm_medium=email) code 
A fuzzy matching library which creates hashes that can be used for similarity comparisons. Adam Lieskovsky
- [Marginalia: Attach Comments to ActiveRecord's SQL Queries](https://github.com/basecamp/marginalia?utm_source=rubyweekly&utm_medium=email) code 
By default, it adds the app, controller, and action names as a comment. Basecamp
- [Zammad: A Web-Based Open Source Customer Support System](https://github.com/zammad/zammad?utm_source=rubyweekly&utm_medium=email) code 
It’s a Rails 4.2 app. Zammad
- [Geocoder: A Complete Ruby Geocoding Solution](https://github.com/alexreisner/geocoder?utm_source=rubyweekly&utm_medium=email) code 
A very long standing project but kept very much up to date. Alex Reisner
- [We’ve solved the problems of ROR Operations](https://reinteractive.com/enquiries/new?code=ops_care&sid=132) OpsCare® by reinteractiveSponsored

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

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