Short Ruby News - Edition #33

Briefly about everything happening in Ruby world - week 10 of 2023 (email version)

You can jump directly to a section:

πŸ‘ Our Community

More content: πŸŽ₯ 🎧 πŸ—ž (articles, podcasts, videos, and newsletters)

πŸ€— Founding Members supporting this newsletter

βœ‹ I am helping organize the Friendly.rb conference:

There are still a few (but not so many) early-bird tickets available and of course, the call for speakers is still open in case you are considering submitting a talk proposal.

πŸ‘ Our Community

πŸ“’ Proud to announce that ShortRuby is growing bigger: 

rubyandrails.info is now becoming part of ShortRuby. Read more in the announcement I published πŸ‘‡

πŸ‘ James Adam asked for recommendations of accounts to be suggested on Ruby.social instance:

πŸ‘ Matt Valentine House shared they are the newest Ruby core committer:

πŸ‘ Wnb.Rb shared they are organizing a CfP working group session for Brighton Ruby. Subscribe at WNB.rb

πŸ‘ Brad Gessler shared that we should use Little Gestures of Confidence and from time to time focus on first-time experience with our projects and tools:

πŸ‘‰ All about Code and Ruby

🀞 If you like this newsletter and can afford to pay ~1.50$/week to support it

πŸ‘‰ Nate Berkopec shared a code sample showing Ruby code that causes memory growth over time:

πŸ‘‰Mudge shared a code sample showing how to duplicate active storage blobs from one record to another:

πŸ‘‰Prabin Poudel shared a benchmark about Rails object instantiation being 70 faster than OpenStruct

Among the replies, Benoit Daloze shared a pull request about improving performance of OpenStruct.

There are also good resources shared in that thread:

Lucian Ghinda (that’s me) added the following:

πŸ‘‰ Andrea Rocca continues the series about Hotwire. Here is a screenshot from only one of the many tips shared this week:

πŸ‘‰Jeremy Smith asked about what Rails blog post has been the most influential:

There were 3 resources shared:

πŸ‘‰Lewis Youl shared a code sample showing what does ActiveModel::Name does

πŸ‘‰Jeremy Smith shared two tips about refactoring Rails views:

πŸ‘‰The Rubber Duck Dev Show announced they are doing a Stream Tech Chat on their Rubber Duck Dev Show Discord:

πŸ‘‰Josias Schneider shared how the rake db:migrate works:

πŸ‘‰Kevin Newton shared a code sample showing how pattern matching is used at ruby/assembler.rb at master

πŸ‘‰Dev shared a thread with Ruby books recommendations:

Here are the recommendations but you should read the thread as he also describes why he recommends each book:

πŸ‘‰Nate Berkopec shared that safe_constantize can sometimes appear as a bottleneck when used a lot:

The results look like this:

πŸ‘‰Carla Urrea Stabile asked a question about what improvements people look forward in the next Ruby versions:

Here are some of the replies:

  • Easy initialize ivars

  • Built-in memoization

  • PHP-like construction promotion feature

  • Types

  • Better support for parallelism and distributed computing for fiber scheduler

  • default frozen literals

  • Better types tooling

  • Performance

πŸ‘‰Nate Berkopec shared about how queueing Puma works (read the comment in the PR)

πŸ‘‰Vladimir Dementyev shared a code sample showing how they integrated Hanami with Phlex:

πŸ‘‰Moncef Belyamani shared commands to run when webpacker takes too much time to compile:

David Teren transformed that into a task:

πŸ‘‰Shiva shared a thread about string manipulation in Rails. Here is one of the code samples they shared:

πŸ‘‰ Stanislav (Stas) Katkov shared a preview of this new tool PoshTUI (API documentation browser in console for ruby developers)

πŸ‘‰Lucian Ghinda shared in the context of the discussion about Ruby safe navigation operator vs Rails try:

πŸ‘‰Jess Brown shared a thread about how to work with db schema changes:

πŸ‘‰Moncef Belyamani shared a code sample showing how expressive is Ruby:

πŸ‘‰Kevin Newton shared an update on the YARD:

πŸ‘‰Kirill Shevchenko shared a code sample about the iterator pattern:

πŸ‘‰ Samuel Williams shared a code sample about a deadlock bug in Async:

πŸ‘‰Thomas Riboulet shared a thread about Ruby and Docker:

πŸ‘‰Greg Navis shared about how to use as_json to control the keys:

πŸ‘‰ If you like this content and can afford it consider upgrade to paid

For ~1.5$/week (6.5$ per month), you can support its growth and ensure that high-quality information about the latest developments in Ruby continues to be available to everyone, both paying and non-paying subscribers alike. Check out why subscribe to paid.

If you want to expense this on your company budget or convince your company to sponsor this newsletter, I can help you write an email to your manager (write to me at [email protected])

🧰 Gems, Libraries, and Updates

🧰 Joel Drapper announced they released Phlex versions 1.5.0, 1.6.0 and 1.6.1. Read the release notes

🧰 Jared White announced they ported Preact Signals to Ruby. Checkout the signalize gem

🧰Joel Drapper shared a PR where someone describes how they plan to use Phlex to render PHP: A possible use-case for unsafe_raw and unescaped attributes Β· joeldrapper/phlex Β· Discussion #519

🧰 Ben Sheldon shared a gem called derailed_benchmarks that helps benchmark Rails or Ruby apps.

🧰 Justin Searls announced that the standardrb is now supported by lsp-zero plugin for Neovim. Read the pull request

🧰Kasper Timm Hansen announced a new gem called showcase-rails that lets you build previews for your partials, components, view helpers, Stimulus controllers, and more:

🧰 Rubocop released a new version 1.48 adding two new cops: Style/DirEmpty and Style/FileEmpty. Read the full changelog for 1.48 here

You can also read the ticket on Ruby tracker: feature 19420 and maybe you want to read the article Takashi published RJIT: A Pure-Ruby JIT for Ruby

🧰 Joel Drapper announced that turbo-rails has now support for rendering Phlex and ViewComponents Read the pull request here

🧰 Stan Lo announced that irb can now be independently updated as the following PR was merged Make irb a railties dependency

🧰 Vladimir Dementyev shared a PR about rspec-mocks not working well with Rails 7.1 breaks receive().with. There is already a fix merged to rspec-mocks

🧰 Konstantin Gredeskoul announced they created a PR for making puma-daemon to work with Puma v5+ Read the PR here

🧰 Mari Imaizumi announced the release of IRB v1.6.3 Read the changelog

🧰 Vinicius Stock announced the release of vscode-ruby-lsp v0.2.0 Read the changelog

🧰DHH announced the release of mrsk v0.9.0 Read the release notes

🧰 Andrew Culver shared a PR that shows how to integrate Nice Partials into bullet train Update callers to Nice Partials method accessors

🀝 Related (but not Ruby-specific)

🀝Eric Berry shared a configuration to change the Discord window

🀝Emma Bostian asked an excellent question about the mood we are in now.

🀝Drew Bragg shared a funny take about hard things in computer science:

🀝 Shiva shared a thread about working with Redis. Here is one of the posts:

You should also read the second thread about Redis.

🀝 Wes Bos shared a tip about configuring ngrok-like behavior via Cloudflare:

If you like this content and want to receive it every week by email:

More content: πŸŽ₯ 🎧 πŸ—ž

πŸ—ž Newsletters

πŸ—žοΈ Ruby Weekly published a new edition: RubyGems' answer to npx

πŸ—ž Ruby Radar published a new edition Ruby Radar #93 - IRB Making Waves

πŸ—žοΈ Ruby LibHunt published a new edition of the Awesome Ruby Newsletter

Podcasts

🎧 Joel Drapper published a new episode of Rooftop Ruby 4: Green Dots and Boogie

Videos

Talks

πŸ“½οΈ Joe Masilotti published a live video about Launching TurboNavigationController

πŸ“½οΈ Prabin Poudel shared their video about Maintaining Code Standards

πŸ“½οΈ The Rubber Duck Dev Show published a new episode about Monetizing Dev Content

Screencasts

πŸŽ₯ Justin Searls published the third episode of their series called Searls after Dark where he build an AI chat app with Ruby on Rails #3 - Going end-to-end

πŸŽ₯ Ruby Weekly shared a new video from WebCrunch showing how to implement Ruby on Rails Drag and Drop Uploads with Active Storage, Stimulus.js

πŸŽ₯ Dave Kimura published a new episode about MRSK in Depth | Drifting Ruby

πŸŽ₯ Phil Smy published a new episode about Rails 7: Tabulator & Stimulus - Ruby on Rails Tutorial

πŸŽ₯ Deanin published a series of videos:

πŸŽ₯ Yaroslav Shmarov published new episodes:

Articles

What’s new

How-Tos

Deep Dives

Related

πŸ€— Founding Members supporting ShortRuby

Read more about what is a Founding Member or about Why pay for ShortRuby newsletter

Reply

or to participate.