---
title: "'Beginless' ranges, using React.js with Rails, and building a chat app"
publication: "Ruby Weekly"
issue: 445
published_at: "2019-04-11"
canonical_url: "https://rubyweekly.com/issues/445"
---

This week's Ruby news, issue 445       

#445 — April 11, 2019 

[Read on the Web](https://rubyweekly.com/issues/445)   

Ruby Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/cxvtdolchzdaaeg4okjf.jpg)](https://iridakos.com/tutorials/2019/04/04/creating-chat-application-rails-websockets.html)   

[Let's Build a Chat App from Scratch using Rails and WebSockets](https://iridakos.com/tutorials/2019/04/04/creating-chat-application-rails-websockets.html) — Our _Step-by-Step Tutorial of the Week_™! A thorough look at using ActionCable to create a nice looking real-time chat app. 

Lazarus Lazaridis   

[React-Rails 2.5: Easily Integrate React.js into Rails Apps](https://github.com/reactjs/react-rails/releases/tag/v2.5.0) — Are you a React developer who likes a bit of Rails on the backend? React-Rails is for you and makes it easy to integrate React with the Rails asset pipeline, views, and controllers. [Docs here](https://github.com/reactjs/react-rails#readme). 

React Community   [![\](https://copm.s3.amazonaws.com/32b7b4e9.png)](https://pganalyze.com/ebooks/optimizing-postgres-query-performance?utm_source=RubyWeeklyPrimary) 

[eBook: How to Get a 3x Performance Improvement on Your Postgres Database](https://pganalyze.com/ebooks/optimizing-postgres-query-performance?utm_source=RubyWeeklyPrimary) — The pganalyze team shares their best practices, learned over the last few years by helping companies like Atlassian optimize their Postgres databases. 

pganalyze sponsor   

[Rails 6 Requires Ruby 2.5 or Newer](https://blog.bigbinary.com/2019/04/09/rails-6-requires-ruby-2-5-or-newer.html) — Also, Rails 6 will [not support PostgreSQL versions older than 9.3](https://blog.bigbinary.com/2019/04/10/rails-6-drops-support-for-postgresql-less-than-9-3.html) (11.x is the latest version but 9.x versions are still very common in production). 

Vishal Telangre   

['Beginless' Ranges Experimentally Added to Ruby 2.7](https://github.com/ruby/ruby/commit/95f7992b89efd35de6b28ac095c4d3477019c583) — e.g.`..100` — `_“It might not be as useful as an endless range, but would be good for DSL purpose.”_ What happens if we use it with an endless range? 😂 

Ruby Core   

[The 3rd Edition of 'The Well-Grounded Rubyist' Is Out](https://livebook.manning.com/#!/book/the-well-grounded-rubyist-third-edition/about-this-book/1) — _The Well Grounded Rubyist_ is a _very_ popular Ruby book and it’s great to see a new edition out [(available on Amazon.com)](https://amzn.to/2D7jGwd). There’s also [a book signing and talk](https://www.eventbrite.com/e/the-well-grounded-rubyist-3rd-edition-book-signing-tickets-59485095522) in New York City next Wednesday if you can make it. 

David A. Black and Joseph Leo III   

[Google App Engine Now Supports Ruby 2.5 (in Alpha)](https://cloud.google.com/blog/products/serverless/announcing-cloud-run-the-newest-member-of-our-serverless-compute-stack#ruby25) — It’s buried way down in a post about something else entirely, but Google’s serverless app platform now has (very) initial support for Ruby 2.5. 

Google Cloud Blog  

💻 Jobs  

[Sr. Software Engineer - Rails](https://jobapply.page.link/NLd4) — You get it done with Rails, have strong programming fundamentals, are adaptable, and ready to jump in anywhere. Leafly is looking for you. 

Leafly   

[New Career for Ruby Engineers. All Levels (Edinburgh, Remote)](https://www.freeagent.com/careers/) — Popular, award-winning Ruby/Rails SaaS product. Flexible, inclusive, happy team. Great work/life balance and benefits. Join us. 

FreeAgent   

[Find A Ruby Job Through Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-rubyweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-77583) — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started. 

Vettery  

📘 Articles & Tutorials  

▶[Faking Method Inputs with OpenStruct](https://avdi.codes/faking-method-inputs-with-openstruct-feat-kerri-miller/) — A useful, quick tip that can be used to refactor a method without having to build all its dependencies. 

Avdi Grimm and Kerri Miller   

[Object Marshalling in Ruby](https://blog.appsignal.com/2019/03/26/object-marshalling-in-ruby.html) — A detailed look at how Ruby serializes/deserializes data, the methods involved, and how to customize the marshalling process. 

Mehdi Farsi   

[Creating a Basic, Native Ruby Extension in C](https://dev.to/vinistock/creating-ruby-native-extensions-kg1) — It’s not entirely straightforward but this tutorial breaks down the key steps. 

Vinicius Stock   

[A Rails Model Test 'Hello World'](https://www.codewithjason.com/a-rails-model-test-hello-world/) — A tutorial showing off the basic process for getting RSpec set up and using it to do a simple model test. 

Jason Swett   

[Replace `chromedriver-helper` with `webdrivers`](https://everydayrails.com/2019/04/09/chromedriver-helper-webdrivers.html) — `webdrivers` is now the way you’ll want to manage Selenium drivers when testing from a Rails app and improves support for non-Chrome browsers. 

Aaron Sumner  

🔧 Code & Tools  

[JRuby 9.2.7.0 Released](https://www.jruby.org/2019/04/09/jruby-9-2-7-0.html) — The JVM-oriented Ruby implementation gets a variety of bugfixes and stays in sync with CRuby 2.5.x standards. 

JRuby Core Team   

[Automated Dependency Updates for On-Premises GitHub and GitLab](https://depfu.com/enterprise?utm_source=rubyweekly&utm_campaign=sponsored&utm_content=enterprise) — Run Depfu Enterprise behind your firewall and keep your app dependencies up-to-date effortlessly. 

Depfu sponsor   

[InSpec: An Auditing and Testing Framework for Infrastructure](https://github.com/inspec/inspec) — Write tests to check firewall rules, installed packages, etc, and run locally or remotely. Targets most production OS including Windows. 

InSpec   

[Arbre: A Way to Build HTML Views in Ruby Code](https://github.com/activeadmin/arbre) — Billing itself as an ‘object-oriented DOM tree in Ruby’, Arbre is extracted from the popular [Active Admin](https://github.com/activeadmin/activeadmin) Rails administration framework system. 

Active Admin   

[lol_dba: Scan Your Application for Columns That Should Be Indexed](https://github.com/plentz/lol_dba) — It can also generate the SQL/migrations to create the indexes. 

Diego Plentz   

[critical-path-css-rails: Only Load CSS Required for the Initial Viewport in Rails](https://github.com/mudbugmedia/critical-path-css-rails) 

Mudbug Media   

[device_invitable: An Invitation (by Email) Strategy for Devise](https://github.com/scambra/devise_invitable) 

Sergio Cambra   

[Get the Fastest Website Deployments. Ever.](https://buddy.works/?utm_source=sscprw&utm_campaign=sscprw0410&utm_content=bl) 

Buddy sponsor   

[Asciidoctor: A Fast AsciiDoc Text Processor and Publishing Toolchain](https://github.com/asciidoctor/asciidoctor) — Convert AsciiDoc content to HTML, PDF and other formats. The recent [2.0 release](https://github.com/asciidoctor/asciidoctor/releases/tag/v2.0.0) is a big step forward. 

Asciidoctor   

[imap-backup: A Tool to Backup Gmail (or Other IMAP) Accounts to Disk](https://github.com/joeyates/imap-backup) — Written in Ruby, of course. 

Joe Yates         

Curated by [Glenn Goodrich](https://twitter.com/ruprict) and [Cooperpress](https://cooperpress.com/). 

[Change your email address](https://rubyweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://rubyweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
