#​666 🤘 — August 10, 2023

Read on the Web

Together with  Stytch logo

Ruby Weekly

Building an ActiveStorage and S3-Powered Direct Drag-Drop Uploader — A fantastic series of posts walking through the building of an elegant file uploader control for a Rails app, from setting up the model and controller to using Stimulus, hooking up ‘direct to S3’ uploads, and a way to monitor upload progress.

Avi Flombaum

How Two GC Improvements Made Shopify's Storefronts 8% Faster — Shopify famously runs Ruby and Rails at a mind-boggling scale, so any improvements make a real impact to their bottom line. They've found two new such improvements that have reduced their response times by 8% and will be released as part of Ruby 3.3, meaning we'll all benefit.

Peter Zhu (Shopify)

JWTs Vs. Sessions: Which Authentication Approach Is Right for You? — JWTs are low-latency and offer better interoperability than session cookies for authentication, but they can also be less secure. Read more about the tradeoffs (and learn what Stytch uses in our Ruby SDK).

Stytch sponsor

Sinatra 3.1: The Long Standing Ruby Webapp DSLv3.1.0 adds start/stop lifecycle events (on_start and on_stop), reintroduces Sass support, and makes Puma the default server where available. GitHub repo.

Sinatra Contributors

🔐  It's Time to Level Up Your RubyGems Account Security with Security Devices — The RubyGems registry has upped its security game considerably in recent years and Webauthn is its preferred multi-factor authentication approach. If you have a security key (or even a Macbook with TouchID) you're encouraged to set this up ASAP to help protect your account from abuse.

Jenny Shen (RubyGems Blog)

Introducing the Rails Luminary Awards: Nominations Now Open — Starting at Rails World in October, the Rails Foundation will establish a new tradition of celebrating Rails Luminaries – people who’ve contributed to the Rails ecosystem and community in exceptional ways. If this reminds you of the Ruby Hero Awards (▶️ here's a classic example when José Valim and Aaron Patterson both picked up awards, among others) then.. yes.

Amanda Perino (The Rails Foundation)

📕 Tutorials, Articles, and Videos

You Don't Need Ruby on Rails to Start Using HotwireHotwire, an ‘HTML over the wire’ approach to making Web pages more dynamic, is closely tied to Rails, but Rails isn’t a must. Akshay shows how you can use Turbo Drive, Turbo Frames and Turbo Streams with a Sinatra-based app here. (If you’re getting déja vu, this is a (big) update of an earlier article.)

Akshay Khot

A Look at Overmind, A Better bin/dev for your ProcfileOvermind is a turbo-charged Procfile manager, like Foreman and bin/dev, but… a lot better, says Harrison, who tries to win you over to using it here. “Overmind builds on from where Foreman left off to deliver something even more impressive.”

Harrison Broadbent

Let’s Talk Wicked Prawn PDFkits! 😈🦐📑 — Working with invoices, contracts, or reading your favorite novel, PDFs are everywhere! Learn how PDFs work within Ruby.

Honeybadger sponsor

Various Ways to Run Shell Commands in Ruby — It’s no surprise that a language heavily inspired by Perl has numerous ways to do this ;-)

Akshay Khot

Setting an Actions Secret with Octokit.rb
Mike Coutermarsh

Using Concerns with Ruby on Rails
Cody Norman

🛠 Code & Tools

Rails I18n Manager 1.0: Complete Translation Editor and Workflow — A Rails engine that provides an interface for working on your app’s translations. It provides a workflow with import and export, access to translation assistance, and keeps your files in your app’s git repo.

Weston Ganger

ruby_memcheck 2.0: Find and Debug Memory Issues in Native Gems — Use Valgrind memcheck on your native gem (it’s no use for plain Ruby) to dig into memory related issues. It’s pretty useful, as Peter Zhu noted on Twitter, as v2.0 has already caught two memory leaks in Ruby’s current parser.

Peter Zhu (Shopify)

Got Tech Debt? Fixed-Cost Monthly Ruby/Rails Upgrades by FastRuby.io@FastRubyIO's monthly upgrade service reduces your tech debt without impacting your velocity. Starting at $2k/month. 🚀

🌳 Bonsai by FastRuby.io sponsor

YARP 0.6: Yet Another Ruby Parser“I just released the first published version of the YARP gem. If you want to build tools that require a Ruby AST and want them to be fast and semantic, you should check it out.” Docs.

Kevin Newton

MailCatcher 0.9: Simple SMTP Server with a Web UI to See Mails — This project is a whole thirteen years old now but is still inching towards that eventual 1.0 release ;-)

Samuel Cochran

Jobs

Senior Backend Engineer (Backend) — 12M user devices sent us data daily last week, 6M of them opened the app. Apply your knowledge and help make our users healthier.
Sweatcoin

Senior DevOps Engineer - Stability Team (America) — Booqable prides itself on being a global company with team members working together from across the world. We are remote-first, so you can join us from wherever you are.
Booqable

Find Ruby Jobs with Hired — Hired makes job hunting easy-instead of chasing recruiters, companies approach you with salary details up front. Create a free profile now.
Hired

QUICK RELEASES:

🎄 Four months to go...

Ruby 3.3 YJIT comment