🇺🇦 #​604 — May 19, 2022 |
Ruby Weekly |
Shopify Invests in Research for Ruby at Scale — This is exciting! If you’ve kept an eye on industry comings and goings in recent years, you may have noticed Shopify has brought together quite the team of Ruby and VM experts (whether through direct hires or collaborations) and it’s only continuing – this bodes extremely well for Ruby and reminds me somewhat of when Google went all in on V8.. Chris Seaton (Shopify) |
Using Scientist to Refactor Critical Rails Code — We’ve mentioned Scientist a few times over the years as a neat way to introduce change to an untested or complex app through executing the old and new code and comparing results. The LabTech gem introduced in this post makes this process even easier. Darren Broemmer (AppSignal) |
All The Convenience of Heroku Without the Cost — The convenience of Heroku, but on any cloud and in any region, with persistent storage, custom network configuration, zero downtime deployments, blue/green and canary releases, WAF, and more. Try it today for free plus an extra $100 in credits with the code: Cloud 66 sponsor |
New Official Guides on How to Contribute to Ruby — There are lots of ways you can contribute towards the future of Ruby whether through testing it, reporting issues, making changes, submitting proposals, or improving the docs.. and the docs now have some new practical guides on how to do all of those things. Ruby Docs |
Quick Bits:
|
|
📕 Articles & Tutorials |
Soft Deletion with Postgres: Writing the Logic in Postgres Itself — Of course we love writing everything in Ruby, but Postgres, like many database systems, is quite powerful on its own and if you wanted to add ‘soft’ deletion (marking records as hidden rather than deleting them) to your app, you could give the job to Postgres itself by way of rules. Kozin and Turner |
Syntax Tree and Lambda-Local Variables — The author of Syntax Tree (a Ruby parsing and formatting toolkit) has to deal with every dark corner of the language. Kevin Newton |
A Case for Query Objects in Rails — Making your queries reusable is an excellent idea and bound to save you frustration cycles later. Here are a few ways to build them right. Thiago Araújo Silva (thoughtbot) |
How Lyft's Mobile Team Does Mobile CI at Scale — How does Lyft do mobile CI/CD and unblock their ~200 mobile app contributors? Lyft shares all the details. Buildkite sponsor |
How to Get a Random Number in Ruby — It’s a basic thing to do, but did you know there are several options? Shino and David |
How to Mock ActionMailer — Using RSpec custom matchers to make clean ActionMailer mocks. Nolan Phillips |
Linting and Auto-Formatting Ruby Code with RuboCop — An introductory post. Existing RuboCop users scroll on :-) Ayooluwa Isaiah |
Some Benefits of Having a |
Four Things You Can Try Before Using a Counter Cache in Rails
|
🛠 Code & Tools |
Magnus 0.3.0: Ruby Bindings for Rust — We linked this project recently but it’s coming along at a fast pace. Magnus offers a way to write Ruby extensions in Rust (or, alternatively, call Ruby code from Rust) and Ruby’s string encoding API is now better supported, integer/float conversions are much better, and you can create Proc objects from Rust closures. Mat Sadler |
Ruby2JS 5.0: A Ruby to JavaScript Transpiler — A transpiler aimed at keeping the resulting code looking ‘hand crafted’ rather than merely transpiled. Fiddle with the demo on the home page to get a feel for it. Sam Ruby and Jared White |
Issue Tracking Has Never Been Easier with Shortcut Shortcut (formerly Clubhouse.io) sponsor |
Clayoven: A Site Generator Aimed at Math-Heavy Sites — A curiously specific static site generator that’s targeted specifically at rendering math stuff. Ramkumar Ramachandra |
DataChecks: A DSL for Regression Testing on Data — For post-hoc checks when validations or database constraints haven’t done their job (or haven’t done it in the way you were expecting, at least). fatkodima |
queue_classic 4.0: A Simple Worker Queue for Ruby and Postgres
|