#631 — December 1, 2022 |
If you missed last week's issue, make sure to take a look. It was a bumper week with lots of cool stuff including a major new JRuby release, Hanami 2.0, plus an interview with the Pickaxe's newest author. Now, without further ado, on to this week.. |
|
Ruby Weekly |
Kevin Newton's Advent of YARV — Let’s start with something incredibly advanced and work our way down :-) Kevin works at Shopify and his projects include SyntaxTree, Exreg, and contributing to YJIT. He knows his stuff, so it’s great to see him kick off a month of posts “detailing different aspects of the CRuby virtual machine.” Part 0 covers the terminology and bare basics, with part 1 pushing on to cover the stack. Kevin Newton |
🧈 Retire your Legacy CMS with ButterCMS — ButterCMS is your new content backend. We’re SaaS so we host, maintain, and scale the CMS. Enable your marketing team to update website + app content without needing you. Try the #1 rated SaaS Headless CMS for Ruby today. Free for 30 days. 🧈 ButterCMS sponsor |
Ruby 3.1.3 Released (and 3.0.5 and 2.7.7) — Don’t get too excited - these are minor releases principally to cover a security fix for a nagachika / Ruby Core Team |
QUICK BITS
|
🎄 The Advent of Code 2022: 25 Days of Code Challenges — If you have a little time each day for a programming puzzle, the Advent of Code is back. There’s a sub-Reddit where people discuss their solutions and I’ve had my brain stretched and flexed from looking at other people’s creative approaches. The Advent of Code |
Consider MuumiJumala's solution for today's (very easy) puzzle. |
How to Migrate a Rails App from Heroku to Dokku (Updated) — If you want a cheaper hosting solution for your side projects or staging environments, it’s not too tricky to move a Heroku app to your own Dokku instance (especially now that Heroku's free option has gone away) including migrating the database and SSL with Let’s Encrypt. Paweł Urbanek |
📕 Articles, Videos, and Opinions |
Tracking a Process's Memory Usage in Ruby — Another title for this post could be “Create a Basic Yet Useful C Extension in Ruby”, so you’ll learn more than just tracking memory usage. A fun bit of poking about. Victor Andrey (BetterUp) |
Hanami 2.0 Thoughts — Last week we told you about Hanami’s newest major release, and here’s one Rubyist’s thoughts on it. Spoiler: It’s missing a couple of bits (coming in 2.1) but it’s really fast. Ryan Bigg |
🕵️💎 Rails’ Hidden Gems - ActiveRecord Store — The latest article in our series spotlighting Rails’ lesser-known gems. Check it out and level-up your Rails game. Honeybadger sponsor |
Dealing with Flaky Tests — Is it possible to have a significant test suite without having lots of flaky tests? It is, says, David, who shares some tips on how he avoids the problem for himself, including writing tests that are prepared to handle random data. David Bryant Copeland |
Safe Gem Upgrades with Pessimize — Pessimize is a tool that adds pessimistic constraints (e.g. those using Hanami Mastery |
From Paperclip to Active Storage at Scale — One developer’s experience of migrating from Paperclip to Active Storage on a production site. Finnian Anderson |
▶ Kevin Newton Talks About Ruby Parsing — Kevin works on the Prettier for Ruby code formatting plugin (plus, y'know, all that stuff in the top most item above). Ruby Rogues podcast |
The State of Notifications Report - User Preferences Courier.com sponsor |
Creating Multi-Line Strings in Ruby — How do I write strings? Let me "count" %{the ways}.. David Boureau |
Handling Third-Party Webhooks with Rails Event Store
|
🛠 Code & Tools |
RubyMine 2022.3 Released — After an extensive early access program and round of betas, the latest incarnation of JetBrains’ (commercial) Ruby IDE is here boasting a (optional) new UI, significant improvements to working with RBS and type signatures in code generally, improved navigation of ERB templates, and more. JetBrains |
Pay 6.1: A Payments Engine for Rails Apps — Supports Stripe, Paddle, Braintree, as well as a ‘fake’ processor for trials, freebies, testing, etc. There’s a screencast showing it off, too. Chris Oliver |
Free eBook: Advanced Database Programming with Rails and Postgres pganalyze sponsor |
Vanilla Rails Authentication with Authentication Zero — Devise has been the go-to authentication app for Rails since forever. Still, if you want something simpler that doesn’t pollute your dependencies, Authentication Zero has a great set of features and almost zero magic. Simon Chiu |
telegram-bot-ruby 0.23.0: A Ruby Wrapper for Telegram's Bot API — Telegram is a popular messaging app that’s particularly friendly to bots. Alexander Tipugin |
Typeless: An Interpreter for Λ-Calculus Implemented in Ruby
|
|
|
🔮 Now for something completely different.. |
📗 Know Ruby? Try Crystal for Rubyists — A 10-chapter (but very short) online book to introduce Crystal (a statically typed and compiled language with Ruby-inspired syntax) to interested Rubyists. It sticks to the basics to give you an easily accessible taster. Crystal might even be a good candidate for trying Advent of Code with..? Serdar Dogruyol |