- Short Ruby Newsletter
- Posts
- Short Ruby Newsletter - edition 114
Short Ruby Newsletter - edition 114
The one where we find out what's next for Rails and SQLite, with the new Rails demo and where Nick invites us to discover their blog via DRB
Table of Contents
Ditch the complexityβPinataβs File API gets you uploading in minutes
Pinataβs File API is designed to make your life as a developer easier. Say goodbye to time-consuming setups and configuration hassles. With just a few lines of code, you can add file uploads and retrieval to your app, freeing up time to focus on building features that matter. Whether you're building large-scale projects or a weekend app, Pinata provides fast, secure, and scalable file management.
π Launches and discounts
π Josh Branchaud launched Ruby Operator* Lookup
Source: @jbranchaud.bsky.social
π Andrea Rocca launched blackfridaycapitalist.com - a pay to play directory of Black Friday deals
Source: @ilrock__
π Mikkel Malmberg launched Nitro Kit - is a set of generic UI components to help you build your Ruby on Rails application
Source: @mikker
π Tonton Cyber launched ShipOnRails AI - a specialized and up-to-date AI for Ruby on Rails developers with Rails 8, Kamal, Turbo, Stimulus, and more than 100 gems
Source: @tontoncyber_fr
π Events
π Jason Swett announced that tickets for SinCityRuby are now on sale:
Source: @JasonSwett
π Ruby Conf invites us to share our interest in the final RailsConf in 2025:
Source: @rubyconf
π Greg Molnar announced they are thinking of organizing a Ruby conference in Furnas, on Sao Miguel island of the Azores. The vote ended but if you are interested you should reply to Greg and let him know about your interest:
Source: @GregMolnar
π There are 15 meetups happening this week. Check RubyConferences.org for when and where they are happening.
π All about Code and Ruby
π David Heinemeier Hansson shared about whatβs next for Rails and SQLite: making it suitable for SaaS on the scale of Basecamp:
Source: @dhh
He also shared a Rails 8: The Demo
Source: @dhh
π» Code Samples
π» Nick Schwaderer published the most exciting way to read blog posts and interact with it:
Source: @schwad_rb
οΈπ» Xavier Noria shared a code sample about
Source: @fxn.bsky.social
Source: @fxn.bsky.social
οΈπ» Victor Shepelev shared a code sample about implementing Elixir-like pipes in Ruby
Source: @zverok
π» James shared a code sample about Download file using multiple parallel Range requests
Here is just a part of the shared script:
# https://gist.github.com/floehopper/fe59485e96c6f856a9c060b892d03f00
# ...
hydra = Typhoeus::Hydra.new
parts = []
ranges.each_with_index do |range, index|
request = Typhoeus::Request.new(url, headers: { "Range" => range })
request.on_complete do |response|
if response.success?
file_name = "part_#{index}"
File.write(file_name, response.body)
parts << file_name
puts response.headers["Content-Range"]
puts "Downloaded part #{index}: #{response.code}"
else
puts "Failed to download part #{index}: #{response.code}"
end
end
hydra.queue(request)
end
hydra.run
File.open(filename, "wb") do |output|
parts.each do |part|
File.open(part, "rb") do |input|
IO.copy_stream(input, output)
end
end
end
parts.each { |part| File.delete(part) }
puts "Download complete: #{filename}"
οΈπ» Jorge Manrubia shared a codes sample to replicate Bug #20890: MacOS 15.1, Macbook pro 2024 m4, YJIT: Kernel Panic on network access, works w/o YJIT - Ruby master - Ruby Issue Tracking System
Source: @jorgemanru
Source: @jorgemanru
π»οΈ Jeremy Smith shared a code sample about
Source: @jeremysmith.co
π»οΈ RoRvsWild shared a code sample about stop waiting for Redis responses with pipelining:
Source: @rorvswild.com
οΈπ» Emmanuel Hayford shared about using polynomially_longer in Rails 8:
Source: @siaw23
οΈπ» Nick Schwaderer shared a code sample about using bloopsaphone:
Source: @schwad_rb
οΈπ» Adrian Marin shared about optimising Appsignal when deploying on Hatchbox:
Source: @adrianthedev
οΈπ» Ruby Cademy shared a code sample about a class inheriting from self
:
Source: @RubyCademy
π»οΈ Lucian Ghinda shared a code sample about
Source: @lucianghinda.com
π»οΈ Kuba Suder shared a code sample about using a the skyfall gem to listen to the public stream of posts on Bluesky:
Source: @mackuba.eu
οΈπ» Lukasz Reszke shared about upgrading to Rails:
Source: @lreszke
οΈπ» Ruby Cademy shared a code sample about using scoping
in rails:
Source: @RubyCademy
they also shared a code sample about using all_queries
:
Source: @RubyCademy
οΈπ» Greg Molnar shared about defining aliases in Kamal:
Source: @GregMolnar
οΈπ» Ruby Cademy shared about using before?
and after?
in Rails to do date-related calculations:
Source: @RubyCademy
they also share a code sample about defining has_many instead scopes:
Source: @RubyCademy
π Thinking about Code Design
π οΈAdam Fortuna shared about migrating from Next.js to Ruby on Rails + Inertia. I am adding here two posts, but you should read the entire thread:
Source: @adamfortuna.com
Source: @adamfortuna.com
They also shared they are using this gem grover - to generate OG images
οΈπ Jason Swett shared about service objects:
Source: @JasonSwett
Here are two replies:
Source: @inemation
Source: @lreszke
Not a directly reply to Jason post but somehow related:
Source: @fariastweets
οΈπ Igor Alexandrov shared dev-sec/ansible-collection-hardening: This Ansible collection provides battle tested hardening for Linux, SSH, nginx, MySQL and about kamal server
:
Source: @igor_alexandrov
οΈπ Nate Berkopec shared a reaction to the new DHH Rails video:
Source: @nateberkopec
οΈπ Michael Koper shared about how to approach webhooks:
Source: @michaelkoper
Here are some other ideas:
Source: @mbuckbee
Source: @jwkicklighter
οΈπ Jason Swett asked about who is practicing or not TDD:
Source: @JasonSwett
Here are some replies:
Source: @mhenrixon
Source: @TheDumbTechGuy
Source: @bradgessler
Source: @cgenco
Source: @michaelkoper
Jason added about learning TDD:
Source: @JasonSwett
οΈπ Nate Berkopec shared about setting the side of the database pool to 25 connections:
Source: @nateberkopec
Source: @nateberkopec
οΈπ Igor Alexandrov shared about simplicity in Ruby:
Source: @igor_alexandrov
Here are some of the replies:
Source: @onerinas
Source: @sudobooo
Source: @DeeperAndDowner
π‘Around code (news, findings, books, and more - all about Ruby)
π‘ In case you are planning to join Bluesky and want to follow people from Ruby and Rails community there are a couple of starter packs available (a starter pack is a curated collection of people to follow on a specific topic):
β€οΈ Why Choose Ruby and Rails
β€οΈMichael Edlund shared about Rails 8:
β€οΈ Miles Woodroffe shared a code sample about Rails 8 and how they got started with Rails:
Source: @mileswoodroffe.com
β€οΈ Alan Ridlehoover shared a code sample about
β€οΈ Dave Rooney shared a code sample about returning to Rails:
Source: @daverooneyca.bsky.social
β€οΈ Adam Fortuna shared a code sample about switching to ActiveRecord and Rails:
Source: @adamfortuna.com
β€οΈ Irina Nazarova shared about ehow AnyCable is powering Doximity voice and real-time features:
Source: @inazarova
β€οΈ Dbo shared about no build with Rails 8:
Source: @dimitribosch
β€οΈ Irina Nazarova shared that StepfuTraining is built with Rails:
Source: @inazarova
π§° Gems, Libraries, Tools and Updates
π New Gems and Repos
π Marc KΓΆhlbrugge announced a new Rails repository showing about how to work with omniauth and atproto:
π Peter Bhat Harkins published a new gem called quickquestion - cli utility for asking Claude a quick question:
π Igor Alexandrov announced Kamal Deploy Β· Actions Β· GitHub Marketplace
Source: @igor_alexandrov
π Eth3rnit3 published a new gem chromate - Chromate is a Ruby library to control Google Chrome with the Chrome DevTools Protocol
π§° Updates
π§° Jeremy Evans announced a new version of Roda 3.86.0 Released Β· jeremyevans/roda Β· Discussion #369 Β· GitHub
Source: @jeremyevans0
π§° 37signals announced a new version of ONCE Writebook Changelog
π§° Marius Balteanu announced a new version of Redmine:
Source: https://www.redmine.org/news/147
π§°Kuba Suder announced an update about skyfall - A Ruby gem for streaming data from the Bluesky/AtProto firehose
Source: @mackuba.eu
π§° Obie Fernandez announced a new version of raix Ruby AI eXtensions
Source: @obie
π§° Chris Oliver announced a new version of Release v1.0.0 Β· excid3/refer
Source: @excid3
π§° Jet Brains Ruby Mine announced a new version of Rubymine:
Source: @rubymine
π§° Solius announced the release of version 4.4.0
π Keep an eye on
Daniel DeLorme submitted a new feature request for Ruby about reserve "Ruby" toplevel module for Ruby language
π€ Adam Wathan shared that Tailwind CSS 4.0-beta will be out on Tuesday:
Source: @adamwathan
π€ Greg Molnar shared about fuzzing subdomains:
Source: @GregMolnar
π€ Kelsey Hightower shared about creating:
Source: @kelseyhightower.com
π€ Tobi Lutke shared
Source: @tobi
π€ Ruby Cademy shared about their process of writing a book:
Source: @RubyCademy
More content: π π π§ π₯ βπΎ
Ruby Central shared the slides from Ruby Conf about The State of RubyGems
Yusuke Endoh shared their slides from Ruby Conf about An Invitation to TRICK: How to write weird Ruby programs
Ivo Anjo shared their slides from RubyConf 2024 - How the Ruby Global VM Lock impacts app performance
Koichi Sasada shared their slides from RubyConf about Ractor on Ruby 3.4
π Ruby On Rails published a new edition about Ruby on Rails β Rails 8 demo, Rails World re-edited videos, NotificationAssertions and more!
π Hotwire Weekly published a new edition about Week 46 - Hotwire Tips from thoughtbot, Inline Form Updates, and more!
π Ruby Weekly published a new article about Rails 8.0 pulls into the station
π Andy Croll published a new edition of One Ruby Thing about Use blank? and present? in Rails - Andy Croll
π Vova Dem published a new article about Any Cables Monthly #24: AnyCable speaking!
π Awesome Ruby Newsletter published a new article about π Issue 443 - Rails 8.0: No PaaS Required
π Sajjad Umar published a new article about Ruby on Rails - Nov 2024 (Edition #35)
π§ Podcasts
π§ Indie Rails published a new podcast about IndieRails | Always Something, Never Nothing - Becky Searls
π§ The Ruby on Rails Podcast published a new episode about Evangelizing Rails with Irina Nazarova
π§ Jason Swett shared a podcast episode where he was invited about Jason Swett - Software Developer & Consultant - on book writing, podcasting, AI & entrepreneurship
π§ Ode To Rails Conf published a new episode about Andrew Mason
π§ CTO Insights published a new episode about Creating a Culture of Flow to Boost Team Performance-with DHH, CTO at 37 Signals
π§ Thoughtbot published a new podcast about The Bike Shed: 446: All about rewrites
π§ Claire Giordano published a new podcast about Talking Postgres with Claire Giordano | Helping Rails developers learn Postgres with Andrew Atkinson
π§ Ruby Rogues published a new article about Kamal and Docker: Efficient Application Deployment Strategies
π½οΈ π₯ Videos
Ruby on Rails published a new article about Rails World 2024 videos re-edited and localized in 3 languages
π₯ Nate Hopkins published a video about working with fmt gem Intro demo of the Fmt Ruby gem
π₯ Yaroslav Shmarov published a new video about Clickable Video Chapters. Vimeo Player API | SupeRails | SupeRails and about Hotwire Native - Rails World 2024 Lightning talk (Unofficial recording)
π₯ Thoughtbot published a new video about AI in Focus: ChatGPT structured data and calling functions
π₯ Kaleb Lape published a new video about How I used Rails 8 and AI to create landing pages
π₯ Yusuke Endoh published a new video about RubyConf Chicago Quine
π₯ Dave Kimura published a new video about Action Text PDFs
π₯ Kaleb Lape published a new video about The CHEAPEST Way to Deploy Rails 8 Apps in 2024 | Fly.io Hidden Features
βπΎ Articles
Whatβs new π
Victor Shepelev published a new article about Elixir-like pipes in Ruby (oh no not again)
Ruby Central published an article about Ruby Centralβs First Annual OSS Report (2024)
Exequiel Rozas published an article about Add meta tags to a Rails application
Mohit Sindhwani published an article about Rails 8.0 with Ruby 3.3 on Windows: It just works! (and what to do if it doesn't!)
Stan Lo published a new article about A RDoc Maintainerβs View on Rubyβs Documentation
Alexandre Calaca published an article about Ruby: One of the top 5 highest-paying technologies, according to Stack overflow
Rails Designer published an article about Railsβ Partial Features You (didnβt) Know
Samuel Williams published a new article about Streaming Rack with Falcon
Cirdes Henrique published an article about Why Your Company Should Sponsor Events
Richard Schneeman published an article about RubyConf 2024: Cloud Native Buildpack Hackday (and other Ruby deploy tools, too!)
Davide Santangelo published an article about A Comprehensive Guide to Multithreading in Ruby
Nick Schwaderer published an article about Ruby pomodoro timer with exceptional tunes
Vladimir Dementyev published an article about t Hey, AnyCable speaking! Needing help with a Twilio-OpenAI connection?
JetThoughts published an article about Minitest Advantages: Simple Testing for Rails Projects
Tomasz Stolarczyk published an article about The difference between Turbo Streams and Turbo Frames
Lucian Ghinda published a new article about My published Ruby Content and Reflections from this week
Kevin Murphy published a new article about At RubyConf 2024
Anna Zykova and Iryna Pisklyarova published a new article about RubyMine 2024.3: Rails 8 Support, Inline AI Prompts, Integration With RBS Collection, Ruby 3.4 Updates
Chetan Mittal published an article about Why 78% of Rails Upgrades Fail: And How to Ensure Yours Doesnβt
Vini Oyama published an article about Parsing External Data with DTOs (Data Transfer Objects) β Practical Javascript and Ruby Guide
How-TOs π
Prabin Poudel published a new article about Setup RSpec Tests in Rails with Gitlab CI
Javi Ramirez published an article about Kamalβs missing tutorial β how to deploy a Rails app with Postgres
Akshay Khot published an article about Using Hotwire for Inline Form Updates Without Form Submission
Hugo Vast published an article about Deploy your Preprod and Production Rails Application using Kamal
Stefan Wienert published an article about Rails: add maintenance (read-only) mode to move everything off to a new server
Josef Strzibny published an article about Show all running apps on the server with Kamal and about Subclassing STI models in Rails
Prasanth Chaduvula published an article about Understanding inverse_of
In Rails Associations
Kyrylo Silin published a new article about How to self-host Plausible Analytics with Kamal
Jon Sully published a new article about Cloudflare + Heroku SSL / Certificates Explained
Reply