#520 — September 24, 2020 |
Ruby Weekly |
▶ Triage with Me: 11 Issues and 2 PRs in 1.5 Hours — The creator of CodeTriage takes us behind the curtain to see how he triages and works with issues on open source projects. Well worth watching if you’re curious how to productively work on open source projects or are just curious how another experienced developer does so. Richard Schneeman |
Under Deconstruction: The State of Shopify’s Monolith — This is a long post about the status of Shopify’s move to modularity with some wonderful lessons learned and insights on how they got here and where they are going based on what they’ve learnt. Shopify Engineering |
Reduce Test Time Without Sacrificing Security 🚀 — Run your build infrastructure on your terms. Self-hosted agents mean the choice between the speed of cloud-native and security of on-prem is over. Buildkite works with all source code tools, languages and platforms, speeding up mobile tests at scale. Try now. Buildkite sponsor |
Puma 5: We Made Puma Faster With Sleep Sort — Puma 5 includes three experimental performance enhancements that should reduce latency at high loads and memory usage. They need people to try them and report back, so upgrade and get experimenting. Nate Berkopec |
▶ Russ Hanneman from Silicon Valley Loves StimulusReflex 3.3 — If you like the TV show Silicon Valley this will give you a laugh as the creators of StimulusReflex, a way to bring reactive, real-time features to Rails, got the Russ Hanneman character to endorse their 3.3 release 😂 The 3.3 release focuses on Morphs, a fresh way to think about how StimulusReflex updates your live pages. Even if you don't like this, it's always fun to see an open source project trying a novel way to get the word out. GitHub repo. YouTube |
💻 Jobs |
Senior Software Engineer (SF/Remote) — Join our team, and help us make mortgage closings fast, secure, transparent, and error-free. Snapdocs |
Staff Engineer (SF) — Join our team, and help us make mortgage closings fast, secure, transparent, and error-free. Snapdocs |
Find a Job Through Vettery — Create a profile on Vettery to connect with hiring managers at startups and Fortune 500 companies. It's free for job-seekers. Vettery |
ℹ️ Interested in running a job listing in Ruby Weekly? There's more info here.
📘 Articles & Tutorials |
Writing a Ractor Base Job Scheduler — Another Ractor article (which is great), this one focusing on the most parallel-worthy of tasks: job processing. There are some issues, but it’s still very promising. Gustavo Caso |
Interacting with NFC on a Raspberry Pi from Ruby with Taptag — Near Field Communications (NFC) is a wireless point-to-point protocol and Taptag works with the Waveshare PN532. Justin Piotroski |
Be Ahead of the Curve — Upgrade Your Rails Application — Snazz things up with Multiple Database support, Parallel Tests, better JavaScript ecosystem support and much much more. Kodius sponsor |
Tracking a PaperTrail Version from a Single Request with Correlation UUIDs — PaperTrail provides a way to track/audit changes to data managed by Active Record models. Here’s how to go a step further from just tracking the history of an object to the specific request that caused changes. Karol Galanciak |
Modern Rails Flash Messages — A two-part series that uses ViewComponent, Tailwind CSS, and Stimulus to make nice flash messages complete with features like soft-delete. Petr Hlavicka |
The Mehdi Farsi |
Automating Rails Server Provisioning and Deployment with Ansible and Capistrano Axel Kee |
Writing Good Test Descriptions Guilherme Simões |
🛠 Code and Tools |
Browser 5.0: A Browser Detection Library — A handy API for browser detection from within Ruby. Pass in a user agent string and query it in various ways (e.g. Nando Vieira |
Rubyspeed: Compile Basic Ruby Functions to C — Certainly an experimental work in progress, this project compiles (the most primitive of) Ruby functions to C which results in a sizable performance boost. A fun tangent is that the Hacker News post about this project turned into a big debate about the continuing relevance of Ruby (or not) 😏 Alexander Thiemann |
Quickly Resolve Ruby App Issues in Datadog with Distributed Tracing Datadog sponsor |
Packwerk: Enforce Boundaries for More Modular Rails Apps — A gem created at Shopify that can be used to enforce boundaries and modularize Rails applications. Shopify |
Down 5.2: Streaming HTTP Downloads using Janko Marohnić |
Stripe::Rails 2.0: A Rails Engine for Integrating with Stripe SengMing Tan |