#435 — January 31, 2019

Read on the Web

Ruby Weekly

Ruby 2.6.1 Released — This release is primarily to resolve the critical Net::Protocol issue we mentioned a few weeks ago. If you’re using 2.6 in production at all, this is a must update.

Yui Naruse

Rails 6 to Keep Source Maps in Production, Decrees DHH — For performance reasons, source maps were originally not going to be included in production Rails apps, but this week DHH stepped in and reverted to ‘source-maps-by-default’ behavior in tribute to the Web’s tradition of ‘View Source’ actually being useful.

Ruby on Rails

Timeseries in Redis with Streams — A Ruby walkthrough on using the new Stream data type in Redis to model time series.

RedisGreen sponsor

42 Performance Tips for Rails Developers — A collection of pretty brief tips, but at least a few are likely to help you, whoever you are (most are not Rails specific). Covers things like eliminating N+1 queries, using HTTP2, and using rack-mini-profiler.

Magnus Skog

Another Look at What's New in Ruby 2.6 — Ruby 2.6 came out last month and this post does a good job of rounding up the most interesting new syntax and method improvements and some examples of them.

Nithin Bekal

ValueSemantics: A Gem for Making Value Classes — If you know what Value Objects are, this is worthy of your attention with its simple, dependency-free, extensible approach. If you don’t, this article makes a good case for their use.

Tom Dalling

💻 Jobs

Backend Engineer - (Dumbo, Brooklyn, NY) — Make an impact on our scalable e-commerce and inventory management application that services brands and customers worldwide.

Maisonette

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

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

Vettery

📘 Articles & Tutorials

Building a Service-Oriented Architecture with Rails and Kafka — Based on a talk at RailsConf, this post covers the basics of Kafka, evented architectures, and basic integration with Rails.

Heroku

RSpec Mocks and Stubs Explained in Plain English — A straightforward explanation of what they are in case of confusion, though the author also explains why he doesn’t actually use them much.

Jason Swett

eBook: Best Practices for Optimizing Postgres Query Performance — Learn how to get a 3x performance improvement on your Postgres database and 500x reduced data loaded from disk in this free pganalyze eBook.

pganalyze sponsor

Replace Timecop with Rails’ Own Time Helpers in RSpec — Timecop has long been used to set specific times (or ‘time travel’) in tests, but did you know that Rails has had similar functionality baked in since Rails 4.1?

Andy Croll

The Simplicity and Power of Ruby Struct — The what, when, and how of Struct along with comparisons to its ‘competitors’, such as OpenStruct & Hash.

Paweł Dąbrowski

“!” and “?”: Understanding One of Ruby’s Coolest Naming Conventions — Besides covering the basic conventions, Luan goes through an inconsistency and looks for similarities in other languages.

Luan Gonçalves

How ActionCable Broke Puma — ..and why iodine and/or AnyCable should be used instead.

Plezi

How to \watch Star Wars in Postgres

Citus Data sponsor

🔧 Code & Tools

rack-mini-profiler: Profiler for Your Rack Apps in Dev or Production

Sam Saffron et al.

Hanami v2.0.0 Alpha 1 Released — This is ‘more a preview’ as Hanami 2.0 is a total rewrite from 1.3 that includes a new router, application simplification, and better performing actions.

Luca Guidi

Apparition: A Capybara Driver for Chrome using CDP — CDP stands for Chrome DevTools Protocol and, here, means you can run Capybara tests headlessly without selenium or chromedriver. Cuprite is another such library - we have not yet done a comparison of the two.

Thomas Walpole

Dry-rb: 18 Useful Ruby Gems That Come Together — A nice introduction to a few of the 18(!) gems in the Dry.rb offering.

Jesus Castello

TTY: The Ruby Terminal Apps Toolkit — An ecosystem of gems for building elegant command line apps.

Piotr Murach

Textbringer: An Emacs-Like Text Editor Written in Ruby — We first linked this two years ago and its author has continued to improve things and make releases.

Shugo Maeda

EmailInquire: Validate Email Addresses for Common Typos

Maxime Garcia