#443 — March 28, 2019

Read on the Web

Ruby Weekly

Why RubyMotion? — When a very long standing Ruby developer cheerleads for a particular technology, it’s worth seeing what they have to say! Here Lori Olson looks at RubyMotion, a toolkit for writing cross-platform native apps with Ruby. Its been around for several years but is continuing to move forward as a project at a healthy pace.

Lori Olson

Rails 5.2.3 Released — Until Rails 6 arrives, Rails 5.2 is still the latest version and 5.2.3 is mostly a lot of minor fixes rather than anything new (with the exceptions of HashWithIndifferentAccess#assoc now accepting either strings or symbols and Range#cover? can now accept a range argument).

Official Rails Blog

Creating Automated Build, Test, and Deploy Workflows for Orbs — Fifteen weeks out from the launch of CircleCI orbs, there are more than 405 orbs in the Orb Registry. That’s upwards of 25 new orbs per week.

CircleCI sponsor

Announcing Amazon Transcribe Streaming Transcription Support in the AWS SDK for Ruby — Amazon Transcribe’s ‘streaming transcription’ feature can be used to transcribe audio supplied, as a stream, on the fly. Here’s how to use it from Ruby.

Amazon Web Services

Rails 5.1.7 Released — Note that this is the final bug fix release of the 5.1 line.

Official Rails Blog

ActiveRecordExtended 1.0: Adds Additional Postgres Functionality to Active Record — Active Record is naturally database agnostic but PostgreSQL has so many great querying features that it’s a shame not to be able to use them. This gem brings things like array and JSON querying, CTEs, and unions to AR.

George Protacio-Karaszi

⏰ A Countdown to Rails 6 in New Features

BigBinary have been doing a great run of posts on useful, though relatively minor, new Rails 6 features, so we've pulled together a few here:

Rails 6 Adds create_or_find_by and create_or_find_by! — A useful addition designed to avoid race conditions, but use it wisely, especially if you have integer primary keys…

Rails 6 Shows Unpermitted Params in Logs in Color

Rails 6 Shows Routes in Expanded Format — The output of rails routes can get unruly, so a new optional table format is welcomed.

Rails 6 Adds ActiveModel::Errors#slice!

💻 Jobs

Sr. Fullstack Engineer (Remote) — Sticker Mule is looking for passionate developers to join our remote team. Come help us become the Internet’s best place to shop and work.

Sticker Mule

Full-Stack Engineer - React/Rails (NYC) — Rapidly growing healthcare startup in the addiction and sobriety space seeking talented developers to help build the future of online addiction and sobriety support.

Tempest, Inc

Find A Job Through Vettery — Vettery specializes in dev roles and is completely free for job seekers.


📘 Articles & Tutorials

Using ActiveStorage in Rails API-Based Apps — How to use and test ActiveStorage in a Rails API-only app and which pitfalls to be aware of.

Tim Landwerth

Protect Your Sign Up Form with Rack::Attack — A simple middleware to stop bots and hackers from signing loads of fake accounts up to your site.

Andy Croll

How We Built a Highly Performant App with Rails and Phoenix — Phoenix is a Web framework for Elixir, the Ruby-inspired Erlang-based language.

Zuzia Kusznir

Best Practices for Improving Page Load Speed Whitepaper. Download Now

Cloudinary sponsor

An Deep Dive into TensorStream — TensorStream, a machine learning framework, is based on TensorFlow that supports multiple backends, including pure Ruby.

Joseph Emmanuel Dayo

A Reminder About Hash#new — This is a really simple feature but easily overlooked if you’re used to creating hashes using the literal syntax only.

Scott Watermasysk

How to Work with Docker and Docker Compose from RubyMineRubyMine is a popular, commercial Ruby IDE whose early access version has just introduced Docker support. It’s also introduced support for profiling with rbspy.

Andrey Aksenov (JetBrains)

Scaling a Ruby Webapp on Heroku — Here’s an easy to remember process and a solid checklist of items to go after when you want to maximize performance on Heroku.

Scott Bartell

Ruby Under The Influence [of Scala] — Some subtle ways that programming in Scala has changed the way one developer writes Ruby code.

Rachel Mathew

▶  Discussing Rubymotion with Lori OlsonRubyMotion is a toolkit for writing cross-platform native apps with Ruby. See the top-most feature in this issue.

Ruby Rogues podcast

🔧 Code & Tools

faastRuby 0.5: Build Rich Serverless Applications using Ruby (and Crystal) — I’ve been watching this project mature from afar and they’re doing some interesting stuff in the serverless space for Rubyists.

Geoff Sullivan

Shop Like a Developer — Discover and experiment with hot new cloud services on Manifold. 🔥

Manifold sponsor

Truemail: Configurable Plain Ruby Email Validator — Offers three levels of email validation: regex, MX records, and SMTP.

Ruby Garage

E-Petitions: The Code for the UK Government's E-Petitions Service — This app has become relatively (in)famous over the past week for an overwhelmingly popular petition to revoke Brexit which brought the site down on several occasions.

UK Government Digital Service

Fast Binary Encoding (FBE): Fast and Universal Serialization — An interesting project that supports C++, C#, Go, Java, JavaScript, Kotlin, Python, and Ruby all out of the box on the three major platforms.

Ivan Shynkarenka

Signet: An OAuth 1.0/2.0 Implementation from Google

Google APIs

😢 And finally, a goodbye..

Bye Bye (Ruby Powered) Sass — I don’t think it’s an exaggeration to say that Sass had a huge impact on Web development and while it was originally written in Ruby, the Ruby-powered version is now officially deprecated.