---
title: "A thorough tutorial on building a Rails and React app"
publication: "Ruby Weekly"
issue: 437
published_at: "2019-02-14"
canonical_url: "https://rubyweekly.com/issues/437"
---

This week's Ruby news, issue 436       

#437 — February 14, 2019 

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

Ruby Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/x4tizqztmhj3uoqa6rbr.jpg)](https://medium.com/@baweaver/ruby-2-7-enumerable-tally-a706a5fb11ea)   

[Ruby 2.7 to Add `Enumerable#tally`](https://medium.com/@baweaver/ruby-2-7-enumerable-tally-a706a5fb11ea) — `Enumerable#tally` is a new function letting you count lists using a function - a long-wanted Ruby feature. [Related commit.](https://github.com/ruby/ruby/commit/673dc51c251588be3c9f4b5b5486cd80d46dfeee) 

Brandon Weaver   

[How to Create a CRUD App with Rails and React](https://hibbard.eu/rails-react-crud-app/) — A _really_ thorough tutorial covering fronting a Ruby on Rails API with a React client along with linting, flash messages, and handling 404s in React. 

James Hibbard   [![\](https://copm.s3.amazonaws.com/5008ea58.png)](https://www.redisgreen.net/?utm_source=rubyweekly&utm_medium=email&utm_campaign=prodquality&utm_content=primary&utm_term=perf) 

[Production-Quality Redis Hosting](https://www.redisgreen.net/?utm_source=rubyweekly&utm_medium=email&utm_campaign=prodquality&utm_content=primary&utm_term=perf) — Better tools, analytics and support for your high-performance Redis needs. 

RedisGreen sponsor   

[What’s Coming to Rails 6.0?](https://medium.com/rubyinside/whats-coming-to-rails-6-0-8ec79eea66da) — _“I’ve read through the CHANGELOGs of all Rails parts (ActiveRecord, ActionPack, ActiveSupport, etc.) and picked some of the features that I found the most interesting.”_ 

Guy Maliar   

[An Interesting Way to Quickly Refactor Exceptions](http://pdabrowski.com/blog/ruby/rescue-from-errors-with-a-grace/) — Clean up error handling by writing your own error classes that match against _other_ exceptions based on various attributes. 

Paweł Dąbrowski   

[How to Create Your Own Rails Generator](https://arsfutura.co/magazine/diy-create-your-own-rails-generator/) — Rails includes a mechanism for creating your _own_ generators. This tutorial shows you how it works and walks through creating one of your own. 

Ivan Matas   

[Exploring TracePoint](https://medium.com/@baweaver/exploring-tracepoint-in-ruby-part-one-example-code-2cf9b1a1b956) — The first in a five-part series on [TracePoint](https://ruby-doc.org/core-2.5.0/TracePoint.html) (the built-in object oriented API for Ruby’s tracing functionality) starts with initialization and how to pull information out of the current binding. 

Brandon Weaver  

💻 Jobs  

[Senior Ruby Backend Developer (f/m/d), Berlin, Germany](https://jobs.heyjobs.co/de/jobs/996501aa-82a2-4b9d-9a2c-58711572d5a3?utm_source=rubyweekly) — Role with impact. Great team spirit. Benefits & relocation. Building the world's leading talent acquisition platform. Interested? Check out Glassdoor & kununu. 

HeyJobs   

[Cloud Operations Engineer - Invoca (Santa Barbara, CA or Remote)](https://grnh.se/d21a58a52) — Be part of a team of Operations Engineers deploying code to our production SaaS platform & public cloud infrastructure. 

Invoca   

[Try Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-rubyweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-77582) — Vettery specializes in developer roles and is completely free for job seekers. 

Vettery  

📘 Articles & Tutorials  

[Be Careful Assigning to `has_one` Relations](https://andycroll.com/ruby/be-careful-assigning-to-has-one-relations/) — _“When you assign a new instance of an associated model to its has_one model the existing instance is removed from the association and causes **a permanent change** to be written to the database.”_ 

Andy Croll   

[Keeping Your Schema Close to You with the `annotate` Gem](https://www.joyfulbikeshedding.com/blog/2018-12-17-keeping-your-schema-close-to-you-with-the-annotate-gem.html) — Annotate adds comments to your model files that summarize that model’s schema, making it easier to look things up. 

Hongli Lai   

[Use The Lead Time Metric to Improve Your CI/CD Process](https://www.gocd.org/2019/01/14/cd-metrics-deployment-lead-time/?utm_campaign=CD_Analytics&utm_medium=newsletter_ad&utm_source=cooperpress_ruby&utm_content=CD_analytics_part3&utm_term=) — GoCD’s latest CD metrics blog will guide you on how to identify bottlenecks and improve your CI/CD process. 

GoCD sponsor   

[Early Hints and HTTP/2 Push with Falcon](https://www.codeotaku.com/journal/2019-02/falcon-early-hints/index) — How Falcon implements the burgeoning HTTP/2 web standard along with Rack’s early hints proposal. 

Samuel Williams   

[Using PostgreSQL To Perform Tasks in a User's Local Time Zone](https://scottw.com/using-postgresql-perform-tasks-user-local-time-zone) — This is a very cool trick that uses Postgres’s `IN TIME ZONE` function to find the users to target with a task. 

Scott Watermasysk   

[Make Delegated Methods Private in Rails](https://nithinbekal.com/posts/rails-delegate/) — Did you know that delegating methods in a private scope does not make them private? Me neither. Luckily, there’s a workaround (and a forthcoming fix.) 

Nithin Bekal   

[Tips for Running Free Dynos on Heroku in 2019](https://railsautoscale.com/heroku-free-dynos) — The somewhat convoluted rules around running stuff for free on Heroku. The short answer is free Heroku is for side projects and non-production environments. 

Adam McCrea   

[How to Build Application Search for a Rails App](https://www.elastic.co/blog/how-to-build-application-search-with-ruby-on-rails-and-elastic) — The folks behind Elasticsearch offer an Elastic App Search Service that can provide your app with fast, full-text searching capabilities with minimal integration effort. 

Kellen Person and James Rucker   

▶[Discussing TDD and Refactoring with Corey Haines](http://www.rubytestingpodcast.com/corey-haines) 

The Ruby Testing Podcast podcast  

🔧 Code & Tools  

[JRuby 9.2.6.0 Released](https://www.jruby.org/2019/02/11/jruby-9-2-6-0.html) — A relatively minor update but with lots of fixes and tweaks. The stdlib is now up to Ruby 2.5.3 standards. 

JRuby   

[Rubanok: Parameters-Based Transformation DSL](https://github.com/palkan/rubanok) — The idea is to tidy up how parameter names (such as via `params` in a webapp) relate to actions taken. You need to look at the examples really to see if this is for you or [read this introductory post.](https://dev.to/evilmartians/carve-your-controllers-like-papa-carlo-32m6) 

Vladimir Dementyev   

[Record Analytics Data from Your Ruby Code and Send It to Hundreds of Tools](https://segment.com/docs/sources/server/ruby/?utm_source=rubynl&utm_medium=email&utm_content=ss) 

Segment sponsor   

[Solrb: An Object-Oriented Solr Client for Ruby](https://github.com/machinio/solrb) — [Solr](http://lucene.apache.org/solr/) is an open source search server, though Elasticsearch is now more popular. 

Machinio   

[10 Essential Gems for Webapp Development with Rails 5.2](https://devtechnica.com/ruby-on-rails/essential-ruby-gems-for-web-application-development-with-rails-5-2) — Have we listed one of these posts in a while? Regardless, this is a solid list. 

Sreedev Kodichath         

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
