- Short Ruby Newsletter
- Posts
- Short Ruby News - Edition #35
Short Ruby News - Edition #35
Briefly about everything happening in Ruby world - week 12 of 2023
Update
The images are now clickable. I also wrote a longer post about an update I plan to do to the newsletter probably in April.
You can jump directly to a section:
More content: 🎥 🎧 🗞 (articles, podcasts, videos, and newsletters)
🤗 Founding Members supporting this newsletter
✋ I am part of the organizing team for Friendly.rb conference:
There are early-bird tickets available and the call for speakers is still open in case you are considering submitting a talk proposal.
👐 Our Community
Ruby 2.7 might be EOL at the end of March 2023:
👐 Postmodern shared a possible explanation about why it seems that few people are learning Ruby:
👉Lucian Ghinda asked about the most significant advantage of using Rails today:
Here are five of the answers, but I collected them all here:
👐 Calvin Walzel announced that ruby-companies.org reached 20 companies:
👐 Andy Croll shared an open invitation to join as a mentor at firstrubyfriend.org
👐 Jason Swett announced that Code with Jason Meetup will have from April some Europe-friendly time slots. Register here
👐 Kevin Newton started a discussion about the sustainability of open-source projects:
👐 Joe Masilotti announced that RailsDevs Github Repo now has over 100 contributors:
🤞 By becoming a paid subscriber, you can support this Ruby community for just $1.5/week ($6.5/month). Your contribution aids growth and maintains the quality of ShortRuby for everybody:
If you consider upgrading and want more information, please read Why to subscribe to paid
👉 All about Code and Ruby
👉Will Cosgrove shared a code sample showing a helper for stimulus data attributes:
👉Nate Berkopec shared a performance tip about the recommended number of threads with Puma on MRI:
Volodymyr.Mykhailyk asked about the reason why this recommendation and Nate Matykiewicz explained
👉Joel Drapper shared a piece of code showing how Phlex can asynchronously render content:
👉Shiva shared a code sample showing how Policy Object Pattern can handle permissions, roles and policies:
👉Matt Swanson shared a code sample about how to use ActiveSupport::MessageVerifier:
👉Brad Gessler shared a code sample showing how to use Phlex inside a controller:
Brad also shared a code sample showing Phlex views with the same name as controller actions:
👉Josef Strzibny shared a tip about how to check generators from gems:
👉Janko Marohnić shared a comparison between Sequel and ActiveRecord:
👉Rishi Pithadiya shared a short Rails tip that reduces database calls:
👉 Shiva Kumar shared a thread about the Query Object Pattern:
👉Greg Navis shared a code sample showing how to implement final classes using in Ruby:
👉Eric Berry shared a command that helps showing the list of all gems in a Rails app:
👉Greg Navis shared a code sample showing how to implement lazy accessors:
👉Kirill Shevchenko shared a thread about the State Pattern:
And you can see here the implementation of parent class:
🧰 Gems, Libraries, and Updates
This is what Shoes were:
And this is what Scarpe is:
🧰 Kevin Newton announced that yarp: Yet Another Ruby Parser is 100% compliant on all test targets:
🧰 Steve Polito announced they released a new gem called invisible_ink: Keep your private notes in plain sight
🧰 Janko Marohnić shared a gem called tus-server - a Ruby server for the tus resumable upload protocol.
🧰 Vinicius Stock shared a new release v0.4.2 of ruby-lsp
Vinicius also announced the release of v.0.2.2 of the VScode Ruby LSP extension. Read the release notes
🧰 Avo announced an update to their roadmap for Avo 3 → Avo Admin for Rails
🧰 Dima Fatko announced a new PR about Performance and memory optimizations ruby/rexml:
🧰 Jeremy Evans announced a new release v 2.29.0 of Rodauth 2.29.0 Released
🧰 Mike Coutermarsh created a new PR in Rails project about Fix Rails generated index name being too long (this might be part of Rails 7.1 - but is not yet merged)
🧰 Ben Pickles announced a new gem parklife and also published an article about Introducing Parklife
🤝 Related (but not Ruby-specific)
🤝 Gabriel Arcangel Zayas shared a quote about legacy code
🤝Samuel Motal shared how learning changes as we gain more knowledge:
🤝Tobias Petry.Sql shared a SQL sample showing how to Delete Duplicate Rows - Database Tip
🤝Jason Swett shared tips about how to facilitate writing tests:
🤝 Nate Berkopec shared a brute force-like way to make SQL performance improvements that he calls SQL Shotgun method:
🤝Victoria Melnikova shared a thread about lessons learned while building communities:
Here are some of the points shared, but you should read the thread as it has concrete examples:
“Start building your community as early as possible, but ONLY when you're ready to show up consistently”
“Empower your community by giving them a voice in decision-making”
“Break down barriers to participation by recognizing and rewarding novice and experienced contributors alike”
“Create incentives for engineers to stick around and encourage senior members to educate less experienced ones”
“Toxic community cannot unlearn being toxic”
“A good community leader is honest, transparent, communicates with integrity, and is a good diplomat”
“Running a community is hard”
“Learn to leverage your community for major releases”
“Cultivate a welcoming community”
“Software engineers are tough customers”
🤝 Robby Russell shared a thread with multiple articles about interns experiences:
Here is the list of articles shared:
Starting Over - A Career-Switcher’s Guide to Being an Intern
Just the Beginning: How My Internship is Launching My New Tech Career
Starting Over - A Career-Switcher’s Guide to Being an Intern
Things I Learned as an Intern that I Did Not Learn in Code Bootcamp
My Internship Experience: Learning Through Research and Reproducing Issues
5 Lessons I Learned from my Ruby on Rails Internship at Planet Argon
🤝Nate Berkopec shared a thread about reasons to work on performance on web applications:
If you like this content and want to receive it every week by email:
More content: 🎥 🎧 🗞
Courses
👀 Graceful.Dev announced that their course Flawless Ruby is now free:
👀 Aaron Francis announced their free course MySQL for Developers — PlanetScale
👀 Eric Berry shared their intention to create a course about RubyMine. If you are interested reply to Eric. I think this is indeed needed:
👀 Avdi Grimm announced they are opening their Coaching & Counsel with Avdi
👀 Andrea Rocca announced a pre-order of their book about Learn Hotwire
🗞 Newsletters
🗞 Greg Molnar announced a new edition of This Week in Rails written by Wojciech Wnętrzak → Composite primary keys improvements and more
🗞️ Ruby Weekly published a new edition: ChatGPT makes a contribution to Rails
🗞 Ruby Radar published a new edition Ruby Radar #95 - Scarpe Diem!
🗞️ Ruby LibHunt published a new edition of the Awesome Ruby Newsletter
Podcasts
🎧 Tightly Coupled Book Club published their intro episode S01 - 0.5 The Prequel
🎧Rooftop Ruby published a new episode about 5: Vanilla Never Tasted So Hot — Rooftop Ruby
🎧 Indie Rails published a new episode Getting Started As An Indie Rails Dev, Diversifying Income & Outsourcing
🎧 The Ruby On Rails Podcast published a new episode about Episode 462: Scarpe Diem: Seize the Shoes (Brittany + Nick)
🎧 Ruby For All published a new episode about Career and ADHD Management with Celso De Sá
Videos
Talks
📽️ Jason Swett published a new episode of Code With Jason Meetup about Code review (2023-03-23)
📽️Adrian Marin shared a video hosted by EvilMartians about Dev Propulsion Labs — Ep. 1 Building communities around dev tools products
📽️ Eric Berry shared a conference talk Roda: Simplicity, Reliability, Extensibility, Performance by Jeremy Evans (2022)
Screencasts
🎥 Justin Searls published a new video about Searls After Dark #5 - Tailwind on Rails
🎥 Drifting Ruby published two episodes:
🎥 Adrian Marin published a video showing how they Add Avo admin on RubyAndRails.info
🎥 Matt Swanson published a video talking about single file principle - Building a feature in one single file
🎥Yaroslav Shmarov published two new episodes:
Articles
What’s new
Ben Sheldon published an article explaining How GoodJob's mountable Rails Engine delivers Javascript importmaps and frontend assets
Rishi Pithadiya shared an article about Eight Graphs that Explain Software Engineering Salaries in 2023 → “The numbers from job search firms Dice and Hired have been released. These 2022 numbers have been eagerly anticipated, given the turmoil generated by a spate of tech layoffs in the latter part of the year, which Dice estimates at more than 140,000”
Paweł Swiątkowski published a new article about Modeling business logic with ECS in Ruby → “This blog post explores the possibility of using Entity Component System architecture to model business logic in a “regular business application”
Joshua published an article about Rails deployment pipeline with Planetscale & Heroku
I asked last week a question about What is the best article what you ever read about Ruby? - if you still want to contribute please add it there in comments.
How-Tos
Kevin Murphy published a new article in their series about Anyone can play guitar called Programming Guitar Greatness → “Stevie Ray Vaughan is one of my favorite guitarists. Unfortunately, I can’t play anything like he can. To make up for it, let’s teach a computer to play guitar like him and see what we can learn.”
Lucas Barret published a new article about Reversing DidYouMean Gem
Any Cable published a new article showing AnyCable off Rails: connecting Twilio streams with Hanami
Josef Strzibny published a new article about How to send emails in Rails with Postmark
Paweł Dąbrowski published a new article How to not get into trouble with Active Record → “Improve the performance, produce fewer bugs, and make the code responsible for database communication readable and testable by selecting the right Active Record features for the given scenario”
Harsh Patel published a new article about Basic Understanding of Webhooks with examples
Steve Polito published an article showing How to encrypt files with Ruby and Active Support
John Nunemaker published a new article about How to benchmark your ruby gem
Aestimo Kirina published a new article on AppSignal’s blog about Authorization Gems in Ruby: Pundit and CanCanCan
Phil Reynolds published a new article about Search and Select Multiple with Rails and Hotwire → “This post walks though a user selector for adding users to a chat. The key feature here is searching one model with the pg_search gem and then selecting objects from that search to add them to another model”
Jason York published an article about Using ViewComponents with Turbo
Deep Dives
Ollie Haydon-Mulligan published an article about Debugging Lock Wait Timeouts (in Ruby on Rails) → “I recently learned — through an investigation that rumbled on for a while — that it’s not always straightforward to work out what’s causing Lock Wait Timeouts. So here, I’m going to share how that investigation unfolded, focusing on the techniques that helped.”
Akshay published a two new articles about Progressive Application Development with Hotwire and Understanding the Attribute Assignment API in Rails
Related
Jeremy Smith shared an article about Numbers To Know For Managing (Software Teams) → “Learning how to manage is a long race - it takes many years and each lap offers new learnings. Along the way, anchors emerge that can help orient a manager when a number of other variables are in flux”
🤗 Founding Members supporting ShortRuby
Drew Bragg, host of Code and the Coding Coders who Code it
Avi Flombaum, the founder of Flatiron School, is a product engineer interested in full-time/contract work.
Adrian Marin, creator of Avo - a Ruby on Rails application building framework
Adam McCrea, creator of Judoscale (formerly Rails Autoscale)—the dead-simple autoscaler for Rails, Sidekiq, etc.
Stephen Ierodiaconou from www.diaconou.com
Harry Lascelles
Jason Charnes from Remote Ruby
Andy Croll from One Ruby Thing and FirstRubyFriend
Read more about what is a Founding Member or about Why pay for ShortRuby newsletter
Reply