#414 — August 30, 2018

Read on the Web

Ruby Weekly

Rails.. Still? Plus Some Ruby Metaprogramming — Thoughts on two talks given at the Amsterdam.rb meetup earlier this week. The first reflecting on Ruby webapp frameworks, and the second covering metaprogramming for generalists - you can watch the Euruko version here.

Floor Drees (Phusion)

Ruby's 'main' Object Does What? — Noah takes a dive into the main object: “Spoiler: there will be a bunch of spelunking, first in Ruby and then in Ruby’s C source code. We’ll talk about how to find code in both places.” This is a follow up to this post on Rake.

Noah Gibbs

Save Weeks per Year Fixing Unseen Bugs in Your Ruby App with Sentry — Relying on users to report errors? Use Sentry to cut time to resolution from 5 hours to 5 minutes. Eliminate noise and route alerts to the right person or team based on the commit. Sentry is open source and loved by 500K developers. Sign up for free.

Sentry sponsor

Ruby 2.6 Adds Enumerable#filter as an Alias of Enumerable#select — The motivation for this is to make things easier for people coming from other languages.

Amit Choudhary

Creating a Linux Desktop Application with Ruby — It’s several months old, but desktop Ruby posts are rare things, indeed, and this one goes into quite some depth on using GTK+ to create a To-Do app.

Lazarus Lazaridis

Build a Collaborative Playlist over WhatsApp with Rails, Twilio, and Spotify — Leans on Twilio’s recent support for WhatsApp along with Spotify’s API for manipulating playlists.

Phil Nash

Why The CSV Standard Library Is Broken (and How to Fix It) — An author of many Ruby-based CSV tools chimes in on why the standard library parser and it’s not because of its strict RFC implementation.

Gerald Bauer

💻 Jobs

Senior/Lead Ruby Developer - Nimbl3, Bangkok (Relocation Support) — Join Nimbl3 to work on large-scale software development projects. We use top-notch technology, follow best practices and have fun.

Nimbl3

Principal Software Engineer - Edinburgh or Remote (UK) — Running on Rails since 2006, FreeAgent are hiring experienced Rubyists to lead architectural design, refactoring, and mentoring.

FreeAgent

Find A Ruby Job Through Vettery — Create a profile to connect with inspiring companies seeking Ruby devs.

Vettery

📘 Articles & Tutorials

Security Tips for Rails Apps — It’s easy to let a security vulnerability slip into your Rails code by blindly following conventions, so read this list to be safer.

Adrien Siami (Drivy Engineering)

Rails Console Magic Tricks — These can be mind-blowing if you don’t know about them, especially the ability to send requests to an instance of your app.

Luis Vasconcellos

The Ruby Bibliography: Academic Writing on Ruby — A list of theses and peer-reviewed papers and articles on or about Ruby.

Chris Seaton et al.

Cloud Hosting Ruby Developers Love. Sign Up w/ $100 Credit — Deploy your next Ruby application on the most developer-friendly cloud platform with predictable pricing.

DigitalOcean sponsor

Exporting Significant SQL Reports with ActiveRecord — Without blowing up your memory. The strategy used here involves using the MySQL client’s streaming support.

Nicolas Zermati (Drivy Engineering)

Discussing Where, What and How to Test with Adam Hawkins

The Ruby Testing Podcast podcast

Discussing Upgrading a Rails Application Incrementally with Luke Francl

Ruby Rogues podcast

The Best Image Uploader for Rails — Revisited

Stanko Krtalić Rusendić

Is Rails Still Relevant in 2018? — Is it that time of year again? Addressing a question we have heard way too many times, including at the top of this very issue :-D

Tomas Valent

🔧 Code & Tools

Active Storage Validations: Simple Validations for Active Storage

Igor Kasyanchuk

Jongleur: A Process Scheduler and Manager — Define a set of executable tasks along with their precedences and Jongleur will manage their execution. It can also run tasks in parallel.

Fred Heath

Attendance: Speed Up ActiveRecord#present? Calls — This gem monkeypatches ActiveRecord to speed up the present? call by not loading objects into memory. If it gets traction, Richard will submit it to the Rails core team.

Richard Schneeman

Strings::ANSI: Handle ANSI Escape Codes in Strings — Check for presence or strip those ANSI codes out.

Piotr Murach

Rack::Attack: Rack Middleware for Blocking and Throttling

Kickstarter

Manifold Is the Marketplace for Independent Developer Services

Manifold sponsor

Marginalia: Adds Comments to ActiveRecord's SQL Queries — By default, it adds the app, controller, and action names as a comment, which may help with your analysis.

Basecamp

Localhost: Generating Per-User Self-Signed Root Certificates — The kind of thing that could help with using HTTP/2 (which requires SSL) in your local dev environment.

Socketry