Short Ruby Newsletter

Share this post

Short Ruby News - Edition #64

newsletter.shortruby.com

Discover more from Short Ruby Newsletter

A Monday summary of the articles, discussions, and news from the Ruby community
Over 4,000 subscribers
Continue reading
Sign in

Short Ruby News - Edition #64

Discover the world of Ruby in this comprehensive newsletter covering week 42 of 2023. Find code samples, community updates, gems, resources, and thought-provoking discussions.

Lucian Ghinda (from ShortRuby)
Oct 23, 2023
Share this post

Short Ruby News - Edition #64

newsletter.shortruby.com
Share
Consider becoming a paid subscriber to support this newsletter for just $1.8/week ($7.5/month), and you will receive an ad-free version. Your contribution aids growth and maintains the quality of ShortRuby for everybody

Support the newsletter for 1.8$/week

You can jump directly to a section:

๐Ÿš€ New Products & ๐Ÿ“… Events

๐Ÿ‘‰ย All about Code and Ruby

๐Ÿงฐย Gems, Libraries, and Updates

๐Ÿค Related (but not Ruby-specific)

More content: ๐Ÿ“š ๐Ÿ—ž ๐ŸŽง ๐ŸŽฅ โœ๐Ÿพ (articles, podcasts, videos, newsletters)


๐Ÿš€ New Products

๐Ÿš€ย Georgie Boyย announcedย a library of components built with Phlex โ†’ PhlexUI - Component Library

Source:ย @george_kettleย (read onย nitter)

๐Ÿš€ Thoughtbot announced an update of the Ruby Science book to work with Rails 7 and Ruby 3.2.2

Source: https://thoughtbot.com/blog/ruby-science-on-the-web-and-updated-to-rails-7

๐Ÿš€ Keshav Biswa launched a new programming language for fun called Confuscript

Source: confuscript-lang.org

๐Ÿš€ย Dave Paolaย announced applications for the Agency of Learning are open at agencyoflearning.com

Source:ย @dpaola2ย (read onย nitter)

๐Ÿš€ย Ruby Cademyย announced they are going to launchย RubyCademy on 27 October:

Source:ย @RubyCademyย (read onย nitter)

๐Ÿ“… Events

๐Ÿ“… Rubyfuza & Friendsย sharedย they will organise a new conference in 2024 in Cape-Town:

Source:ย @rubyfuzaย (read onย nitter)

๐Ÿ“…ย Adrian Marin announced the first meetup ofย Ruby Romania meetup #01, Wed, Nov 22, 2023, 6:30 PM | Meetup

Source:ย @adrianthedevย (read onย nitter)

๐Ÿ‘‰ All about Code and Ruby

๐Ÿ‘‰Benoitย sharedย ย a benchmark between Struct.new VS Data.define

Source:ย @benoit@ruby.social

๐Ÿ‘‰ย Emmanuel Hayfordย sharedย a Rails config to start the rails console in the sandbox by default:

Source:ย @siaw23ย (read onย nitter)

๐Ÿ‘‰ย Dhaval Singhย sharedย a good picture showing a high-level overview of how Ruby works:

Source:ย @Dhavalsingh7ย (read onย nitter)

๐Ÿ‘‰ Joel Drapperย sharedย about how to use ChatGPT to explain code from the book:

Source:ย @joeldrapper@ruby.social

๐Ÿ‘‰ Paul Mucurย sharedย about how to get the client IP when using Cloudflare:

Source:ย @mudge@ruby.social

๐Ÿ‘‰ Robertย sharedย about bundler supporting an option to use a local gem file:

Source:ย @fnordfish@ruby.social

๐Ÿ‘‰ย Lucas Mendelowskiย sharedย about how to make Turbo work with View Transitions while keeping the header persistent:

Source:ย @lcmen_ย (read onย nitter)

๐Ÿ‘‰ย Brad Gesslerย sharedย how to generate Dockerfiles for Rails using dockerfile-rails gem:

Source:ย @bradgesslerย (read onย nitter)

๐Ÿ‘‰ Joel Drapperย sharedย a code sample from their new web framework Yippee!

Source:ย @joeldrapper@ruby.social

๐Ÿ‘‰ Stephenย sharedย a new channel for SQLite onย Join the Naming Things Discord Server!

Source:ย @fractaledmind@ruby.social

๐Ÿคย David Heinemeier Hanssonย sharedย about Rails being fit for software entrepreneurship:

Source:ย @dhhย (read onย nitter)

Support ShortRuby by subscribing for only $7.5/month ($1.8/week). 
Get an ad-free experience and help us maintain our quality for everyone.

Support the newsletter for 1.8$/week


๐Ÿ‘‰ ย Irina Nazarovaย sharedย a thread (read it on nitter) about Rails world:

Source:ย @inazarovaย (read onย nitter)

๐Ÿ‘‰ย Andrew Culverย sharedย how to fix then rbenv install fails with LDFLAGS error:

Source:ย @andrewculverย (read onย nitter)

๐Ÿ‘‰ย John Pollardย sharedย a before and after refactoring code sample (the code screenshots are too big to include them here - you have to open the post on twitterย orย nitter):

Source:ย @johnlpollardย (read onย nitter)

๐Ÿ‘‰ย Chris Oliverย sharedย that Jumstart Rails now also offers the option to use Stripe Checkout:

Source:ย @excid3ย (read onย nitter)

๐Ÿ‘‰ย Brad Gesslerย sharedย a code sample from the Superform showing how to build a UI with Ruby code:

Source:ย @bradgesslerย (read onย nitter)

๐Ÿ‘‰ย Vladimir Dementyevย sharedย they added view transitions for AnyCable Docs (click on theย postย or onย nitter to see the video of view transitions)

๐Ÿ‘‰ย Nate Berkopecย sharedย how quickly a multi-million line Rails monolith starts:

Source:ย @nateberkopecย (read onย nitter)

๐Ÿ‘‰ย Ernest Anyewe Adonuย sharedย their reasons why they chose Ruby on Rails for a project:

Source:ย @adonu_ernestย (read onย nitter)

๐Ÿ‘‰ย Bram Jettenย sharedย how they are avoiding N+1 queries with a mix of AR and Ruby processing:

Source:ย @BramJettenย (read onย nitter)
Source:ย @BramJettenย (read onย nitter)

๐Ÿ‘‰ย Chris Oliverย asked the community about what questions they will like to ask DHH and got a lot of replies:

Source:ย @excid3ย (read onย nitter)

Heย also asked for questions for Jorge and Amanda:

Source:ย @excid3ย (read onย nitter)

I think it is good to read the replies. It shows a bit of some community concerns or questions.

๐Ÿ‘‰ย Nate Berkopecย sharedย a quick tip to improve performance:

Source:ย @nateberkopecย (read onย nitter)

๐Ÿ‘‰ย David Alejandroย sharedย about using local_time gem to display time in local users time:

Source:ย @itsdavidramosย (read onย nitter)

ย ๐Ÿ‘‰ย John Nunemakerย sharedย a use case for Github Copilot Chat:

Source:ย @jnunemakerย (read onย nitter)

๐Ÿ‘‰ย Stanislav Katkovย sharedย two improvements when using Solid Cache:

Source:ย @5katkovย (read onย nitter)

๐Ÿ‘‰ย Brad Gesslerย sharedย about advantages and disadvantages when using Tailwind:

Source:ย @bradgesslerย (read onย nitter)

๐Ÿ‘‰ย Rob Zolkosย sharedย they encountered an issue when using Turbo with route paths that contains dots:

Source:ย @robzolkosย (read onย nitter)

Tony Messiasย explained why it does not work:

Source:ย @tonysmdevย (read onย nitter)

Benjamรญn Silva H.ย sharedย a possible solution:

Source:ย @bsilva96ย (read onย nitter)

๐Ÿ‘‰ย Samuel Cochranย sharedย about reverting from GraphQL and React to Rails:

Source:ย @sj26ย (read onย nitter)

๐Ÿ‘‰ย David Alejandroย sharedย a thread (read it allย or onย nitter) about printing to local printer from Rails with Turbo (this is just the first part of it):

Source:ย @itsdavidramosย (read onย nitter)

๐Ÿ‘‰ย Lewis Youlย sharedย about Rails mark_for_destruction:

Source:ย @lewisyoulย (read onย nitter)

๐Ÿ‘‰ย Bhumiย sharedย a Ruby trick about associating a name for a class:

Source:ย @bhumi1102ย (read onย nitter)

๐Ÿ‘‰ย Matt Swansonย sharedย about using Rails core concepts:

Source:ย @_swansonย (read onย nitter)

๐Ÿ‘‰ย Amanda Brooke Perinoย sharedย a threadย (read onย nitter) about the purpose of Rails Foundation:

Source:ย @AmandaBPerinoย (read onย nitter)

๐Ÿ‘‰ย Brad Gesslerย sharedย a perspective about Rails sessions:

Source:ย @bradgesslerย (read onย nitter)

๐Ÿ‘‰ย Nate Berkopecย sharedย about collecting data with Resource Timing API:

Source:ย @nateberkopecย (read onย nitter)

๐Ÿ‘‰ย Akash Manoharย sharedย a code sample showing how to load partial data for multiple rows of a table:

Source:ย @HashNukeย (read onย nitter)

๐Ÿ‘‰ย Josef Strzibnyย sharedย a perspective about how to think about Kamal:

Source:ย @strzibnyjย (read onย nitter)

๐Ÿ‘‰ Avoย sharedย the discounted prices for Avo 3 are available until the final launch:

Source:ย @avo_hqย (read onย nitter)

Please consider becoming a paid subscriber to support this newsletter for just $1.8/week ($7.5/month), and you will receive an ad-free version. Your contribution aids growth and maintains the quality of ShortRuby for everybody

Support the newsletter for 1.8$/week


๐Ÿงฐ Gems, Libraries, Tools and Updates

๐Ÿ†• ๐Ÿงฐ Simon Chiuย announced a new projectย geetfun/deployed: Mountable deployment engine for Ruby on Rails using Kamal

Source:ย @geetfunย (read onย nitter)

๐Ÿงฐ Andy Malehย published a new release of Glimmer Wordle:

Source: https://andymaleh.blogspot.com/2023/10/glimmer-wordle-115.html

๐Ÿงฐ JRuby released a new version of JRuby 9.4.4.0 version

Source: https://www.jruby.org/2023/10/18/jruby-9-4-4-0.html

๐Ÿ†• ๐Ÿงฐ Jeffrey Charles announced a new project called Ruvy - Ruvy aims to initialize the ruby VM using wizer and execute ruby code passed into the wasm

Source: https://github.com/Shopify/ruvy

๐Ÿงฐ Cรฉdric Delalandeย  announced a new version forย barley: Barley is a dead simple, fast, and efficient ActiveModel serializer

Source: https://github.com/MoskitoHero/barley/releases/tag/v0.4.0

๐Ÿงฐย Dr Nicย announced they are adding RBS signatures to tiktoken ruby gem โ†’ย RBS signatures by drnic ยท Pull Request #16 ยท IAPark/tiktoken_ruby

Source: https://github.com/IAPark/tiktoken_ruby/pull/16

๐Ÿงฐย RubyGemsย announced a new releaseย 3.4.21 Released

Source: https://blog.rubygems.org/2023/10/17/3.4.21-released.html

๐Ÿงฐย David Heinemeier Hanssonย announced a new release of kredis โ†’ย Release v1.6.0 ยท rails/kredis

Source: https://github.com/rails/kredis/releases/tag/v1.6.0

๐Ÿงฐย Marco Rothย announced a new release for stimulus-lspย Release v0.2.0 ยท marcoroth/stimulus-lsp

Source: https://github.com/marcoroth/stimulus-lsp/releases/tag/v0.2.0

๐Ÿงฐ Maciej Mensfeld announced a new release of karafka version 2.2.8

Source: https://github.com/karafka/karafka/releases/tag/v2.2.8

๐Ÿค Related (but not Ruby-specific)

๐Ÿคย Gergely Oroszย sharedย about the influence of current economy on software engineering:

Source:ย @GergelyOroszย (read onย nitter)

๐Ÿคย Tony Dinhย sharedย about ChatGPT affecting Stack Overflow traffic (see the source for this data):

Source:ย @tdinh_meย (read onย nitter)

๐Ÿคย Chris Wanstrathย sharedย a thread about how Github started:

Source:ย @defunktย (read onย nitter)

๐Ÿคย Jason Swettย asked a question about priorities in a software project:

Source:ย @JasonSwettย (read onย nitter)

๐Ÿคย Emma Bostianย asked managers and engineers how to celebrate a job well done and received a lot of answers. Read the repliesย (read onย nitter)

Source:ย @EmmaBostianย (read onย nitter)

๐Ÿคย Daniel Vassalloย sharedย a perspective about motivation:

Source:ย @dvassalloย (read onย nitter)

๐Ÿคย Cameron Mollย sharedย about their experience with Tailwind:

Source:ย @cameronmollย (read onย nitter)

There is an interesting discussion with Adam Wathan (the creator of Tailwind):

Source:ย @cameronmollย (read onย nitter)

๐Ÿคย Nate Hopkinsย sharedย about talking and doing when operating a business:

Source:ย @hopsoftย (read onย nitter)

๐Ÿคย Irina Nazarovaย shared a thread about the important of documentation:

Source:ย @inazarovaย (read onย nitter)

More content: ๐Ÿ“š ๐Ÿ—ž ๐ŸŽง ๐ŸŽฅ โœ๐Ÿพ

๐Ÿ—ž Newsletters

๐Ÿ—ž Greg Molnarย published a new edition of This Week in Rails aboutย Rails World Talks Online, Fix Of A 13 Years Old Bug And More!

๐Ÿ—ž Awesome Ruby Newsletterย published a new edition aboutย Awesome Ruby Newsletter Issue 387, Oct 19, 2023

๐Ÿ—ž Hotwire Weeklyย sharedย ย Week 42 - Welcome new Subscribers, Rails World Recordings, and more!

๐Ÿ—ž Ruby Weeklyย published a new edition aboutย The state of Ruby HTTP clients

๐Ÿ—ž Harrison Broadbent published a new edition aboutย The Rails Notes Newsletter Issue #15

๐Ÿ—ž Ruby Radar published a new edition aboutย Hacking at RubyConf 2023

๐ŸŽง Podcasts

๐ŸŽงย Indie Railsย published a new podcast aboutย IndieRails | Greg Molnar - Security on Rails

๐ŸŽง Lucas Barretย published a new episode aboutย Gem Ruby Show: Stephen Margheim , Active Record Enhanced SQLite Adapter

๐ŸŽงย Ruby For Allย published a new podcast aboutย Plants, Zombies, and Pull Requests | Ruby for All | Episode 48

๐ŸŽงย Remote Ruby published a new episode about Live With Adam Wathan At Rails World 2023

๐ŸŽง The Ruby on Rails Podcastย published a new episode aboutย The Ruby On Rails Podcast Episode 492: Vladimir Dementyev On Layered Design

๐ŸŽง Stephanie Minn and Joรซl Quennevilleย published a new episode aboutย The Bike Shed: 404: Estimation

๐Ÿ“ฝ๏ธ ๐ŸŽฅ Videos

๐ŸŽ™๏ธ Conference Talks

๐ŸŽ™๏ธ Euruko published the videos at https://2023.euruko.org/recordings

๐ŸŽ™๏ธย Ruby On Railsย published a new video aboutย Rails World 2023 - Amsterdam - Oct 5 & 6

Screencasts

๐ŸŽฅย Dean DeHart published a series of videos:

  • Ruby Tutorial For Beginners

  • Strings And Variables In Ruby For Beginners 2

  • Math And Numbers In Ruby For Beginners 3

  • True Or False Booleans In Ruby For Beginners 4

  • User Input In Ruby For Beginners 5

๐ŸŽฅย  Yaroslav Shmarovย published a new video aboutย Ruby on Rails #146 Generate Barcodes with JsBarcode. StimulusJS, Importmaps

๐ŸŽฅย Jason Swettย published a new video aboutย Building a Word Stemmer Part 2 (Ruby OOP + Testing)

๐ŸŽฅ Thoughtbotย published a live video aboutย ย Rails Development

๐ŸŽฅย Drifting Rubyย published a new video aboutย Episode 424 - Solid Cache | Drifting Ruby

๐ŸŽฅย Steven R. Bakerย published a new video aboutย The Shitshow 2: Adding AppSignal to a Rails 7 Application

โœ๐Ÿพ Articles

Whatโ€™s new ๐Ÿ†•

Amanda Perino published an article aboutย Rails World 2023: A Recap Of Two Days Of Rails โ†’ โ€œThe first edition of Rails World in Amsterdam was a two-day, two track community conference featuring technical talks, demos, workshops, networking, and keynotes about the latest features and best practices in Rails developmentโ€

Milesย published a new article aboutย New App Sneak Peek โ†’ โ€œThe existing tools I found were more focused on tracking after eating which is great in terms of capturing data and measuring over time, but I found really didnโ€™t help me with locking in a routine. I wanted to fix this and bring some of this planning side along with tracking into an easy to use appโ€

Craig Kerstiensย published a new article aboutย Postgres Goodies in Ruby on Rails 7.1 โ†’ โ€œIn conversations with developers over the week, I had some notable takeaways from the newest version of Ruby on Rails that I just had to get written upโ€

Alkesh Ghorpade published an article aboutย Rails Adds The Ability To Pass The Expires At Option To Active Storage/Blog#Signedย โ†’ โ€œWhen using the expires_in option to generate an expiring URL, the URL will change each time it is generated. This means the browser cannot cache the URL, and the user will have to download the file each time they access itโ€ and published an article aboutย Ruby 3.3 Introduces Range Overlap? Method

Ruby Centralย published an article aboutย September 2023 Monthly Updateย โ†’ โ€œDuring September, Ruby Central's open source work was supported by 35 different companies, including Fastly, Ruby member Zendesk and Ruby Shield sponsor Shopifyโ€

Jeff Charles published an article aboutย Introducing Ruvy (2023)ย โ†’ โ€œWeโ€™ve recently open sourced a project called Ruvy! Ruvy is a toolchain that takes Ruby code as input and creates a WebAssembly module that will execute that Ruby codeโ€

Iย published an article aboutย A Quest For A Method Defined In Mainย โ†’ โ€œExplore the question: Where is a method defined in Ruby when not defined inside an object?โ€

Ruby Gemsย published an article aboutย September 2023 Ruby Gems Updates Ruby Gems Blogย โ†’ โ€œRead on to find out what updates were made to RubyGems and RubyGems.org in Septemberโ€

Vladimir Dementyev published an article aboutย The Future Of Full Stackย Rails: Turboย Morphย Drive โ†’ โ€œIn this two-part series, Iโ€™d like to explore these aforementioned frontend technologies and demonstrate how we can use them today with Turbo 7โ€

Stephan Hagemannย published an update about their bookย ย Message to Readers of Gradual Modularization โ†’ โ€œA message I sent to the readers of Gradual Modularization for Ruby and Rails regarding the new update published todayโ€

Deep Dives ๐Ÿ”

Victor Shepelevย published another article in his series about new features in Ruby aboutย โ€œUseless Ruby Sugarโ€: Pattern Matching (Pt. 1)ย โ†’ โ€œThe importance of this feature and its effect on the Ruby code is a source of severe disagreements. Some put it in the โ€œmere syntax sugarโ€ bin (which is how it ended up as a part of this seriesโ€ฆ which I already regret a bit because the feature is a huge thing to discuss!). At the opposite extremum, there are people who believe that pattern matching is a separate paradigm, and โ€œif you want a language with one, you just switch to that language.โ€

Bill Tihenย published an article aboutย Rails Design: Protected Modules With Injection โ†’ โ€œLong-term Manageable Rails through Low Dependency/Entanglement and Loose Couplingโ€

Noel Rappinย published an article aboutย Better Know A Ruby Thing #1: Method Missing โ†’ โ€œI do think the way that Ruby uses method_missing to make infinite APIโ€™s not just possible but easy to write is very basic to what I think of as the Ruby aesthetic. Itโ€™s also not something that everybody loves, and itโ€™s something that you can get into trouble with.โ€

Akshay Khotย published an article aboutย Understanding The Instrumentation Api In Railsย โ†’ โ€œThe Instrumentation API in ActiveSupport serves a dual purpose. You can use it to implement the observer (pub-sub) pattern, as well as benchmark how long it took to execute some actionโ€

Radan Skoricย published an article aboutย Understand Rails Async Database Queries By Reimplementing Them In 51 Lines Of Simple Rubyย โ†’ โ€œIโ€™ve read the original PRs that added the async loading functionality and used the debugger to dig down to the actual raw happy path logic and summarised my findings here. So letโ€™s peel away the layers from ActiveRecord async queriesโ€

David Copelandย published an article aboutย The Katz Conjecture: You Must Understand What An Abstraction Abstractsย โ†’ โ€œTo effectively use any abstraction, you mustโ€”eventuallyโ€”have a solid understanding of what itโ€™s abstracting. Iโ€™m calling this the Katz Conjecture because Yehuda Katz made this statement in a conference talkโ€

How-Tos ๐Ÿ“

Mike Coutermarshย published an article aboutย Easy Rails Controller Rate Limiting With Rails.Cacheย โ†’ โ€œHere's an easy trick I reach for when wanting to add simple rate limiting to an endpointโ€

Brad Gesslerย published an article aboutย Better Rails Forms With Superformย โ†’ โ€œSuperform is a new form helper library built from scratch on top of Phlex that makes building forms in Rails less tediousโ€

Josef Strzibny published an article aboutย Adding Slugs To Active Record Models In Railsย โ†’ โ€œHereโ€™s how to implement a Sluggable module that turns an ActiveRecord model into one with a user-defined slug for nice page identifiersโ€

Ahmed Nadarย published a new article aboutย Mastering Rails Web Navigation with link_to and button_to Helpers โ†’ โ€œIn Part 1 (you are reading), we'll explore the Rails web navigation system, understand how Rails handles requests, and delve deep into the world of middlewareโ€ and Mastering Rails Web Navigation With Link To And Button To Helpers Part 2

Iย published an article aboutย Chat GPT, Github Copilot: How To Generate Tailwind Width Configurationย โ†’ โ€œExamining the results of ChatGPT 4, Github Copilot and Chat and Phind in generating Tailwind width configurations utilizing the golden ratioโ€

Aestimo Kirina published an article aboutย Advanced Usages Of Action Policy For Ruby On Railsย โ†’ โ€œIn part one of this series, we looked at some basic usages of Action Policy. Now we'll leverage Action Policy for more advanced authorization use casesโ€

Harrison Broadbentย published an article aboutย Action Mailer Console Script For Bulk Testing Mailersย โ†’ โ€œHere's a handy ActionMailer console script for sending test emails locally (packaged up as a rake task)โ€

Hopper Geeย published an article aboutย Rest Manย โ†’ A visual guide about how to use the rest-man gem

Khash Sajadi published an article aboutย Using Rails With SES, SNS And SQS To Avoid Bounce Rateย โ†’ โ€œUsing SES directly, you will not get some of the features you might need to control the bounce rate of your emails. In a perfect world, you'd want to monitor bounce rate of your emails and take them out of your email list so no further email is sent to those recipientsโ€

Rishi Jain published an article aboutย ย I18n Gem Gotchas in Ruby 3.0: What You Need to Know โ†’ โ€œIf you are using the i18n gem opens a new window with Ruby 3.0 or are planning to upgrade Ruby to 3.0 while using the i18n gem, this blog post will cover a gotcha that can be tricky to understandโ€

๐Ÿ”‚ Related

Julia Evansย published an article aboutย Some Miscellaneous Git Factsย โ†’ โ€œNone of these things feel super surprising in retrospect, but I hadnโ€™t thought about them clearly beforeโ€

Josef Strzibnyย published an article aboutย Marketing My Book To 1000 Salesย โ†’ โ€œHereโ€™s a simple list of what I was doing on my way to 1000 sales of my book and how much success I had with themโ€


Please consider becoming a paid subscriber to support this newsletter for just $1.8/week ($7.5/month), and you will receive an ad-free version. Your contribution aids growth and maintains the quality of ShortRuby for everybody:

Support the newsletter for 1.8$/week

If you consider upgrading and want more information, please read Why to subscribe to paid.

Share this post

Short Ruby News - Edition #64

newsletter.shortruby.com
Share
Previous
Next
Comments
Top
New
Community

No posts

Ready for more?

ยฉ 2023 Lucian Ghinda
Privacy โˆ™ Terms โˆ™ Collection notice
Start WritingGet the app
Substack is the home for great writing