The Ruby and Rails community linklog
Made a library? Written a blog post? Found a useful tutorial? Share it with the Ruby community here or just enjoy what everyone else has found!
Submit a post
Post Preview
Note: Only the first pargraph is shown on the front page and overly long paragraphs may be broken up.
Yesterday
Solidus v3.3 has been released
Exciting news for the Solidus community! We are thrilled to announce the release of Solidus v3.3. Please, read our upgrade instructions at https://guides.solidus.io/upgrading-solidus/v3.3. We’ll be releasing v4 later this year, so stay tuned!
Localizing Rails applications
I work on Phrase Strings, a localization platform which is itself translated to 11 languages. I put together a thread on localizing Rails applications which you might find interesting.
Bridgetown "Bonny Slope" 1.2 is Released
We’re pleased to announce the v1.2 release of Bridgetown, the Ruby-based site generator & fullstack framework. Bridgetown 1.2 features a new plugin configuration format, slotted content, easier access to data, and more. Check out the details of our first big release of 2023!
Calling Ruby Methods in C: Avoid Memory Leaks
Discover how you can avoid memory leaks in your C extension by using functions like rb_protect
: https://blog.appsignal.com/2023/01/25/calling-ruby-methods-in-c-avoid-memory-leaks.html
How and Why to Upgrade the Ruby Version in Your Project
After seeing many people struggle to install older Ruby versions, I wrote this detailed guide that explains the why, when, and how to update the Ruby version in your project (Rails, Jekyll, Sinatra, ReactNative, etc.).
Handling external API errors: A resumable approach
Clarifying a few possible ways to implement resumable workflows when working with external APIs. Examples in Ruby. [more inside]
HTML from markdown made simple! | Hanami Mastery #39
Have you ever considered how to efficiently render HTML out of your markdown input in ruby? Here we cover this problem with additional custom cosmetic improvements. [more inside]
Using FormObject pattern in Ruby APIs
An article about why and how to use FormObject pattern outside Ruby forms https://dev.to/povilasjurcys/using-formobject-pattern-in-ruby-apis-3f8c
Rubber Duck Dev Show Episode 70 | Teaching Young Developers with Melissa Amaya
In this episode, we discuss how to teach young developers with Melissa Amaya: https://www.rubberduckdevshow.com/episodes/70-teaching-young-developers-with-melissa-amaya/
actual_db_schema supports Rails 6 and older now
actual_db_schema got a new release today that adds Rails 6 and older versions. Big thanks to https://github.com/OuYangJinTing who applied the fix to make it happen!
Ruby Gemverse Leaderboard - "I only believe in statistics that I doctored myself"
Hello, to answer the question what have you done for ruby (by publishing & updating gems, for example) I put together a new ruby leaderboard formula that counts the totals of new gems times two plus all updates (over all years). Note: Yes, you can use the gemvervse gem to calculate your own leaderboard score. The first standing (for reference) so far: - 244 Gems, 1652 Updates - Gerald Bauer; 134 Gems, 1642 Updates - Andrew Kane; 100 Gems, 773 Updates - Jan Lelis; 32 Gems, 149 Updates - Victor Shepelev … Happy data wrangling with ruby. PS: For another “real-world” leaderboard example see the Vienna.rb / Wien.rb - Ruby Meetup / Stammtisch in Vienna, Austria page.
The Power of Fibers for Background Jobs
An article about the advantages of using fibers and async for a background job processor READ MORE
An Overview Of Ruby on Rails 7.1 Features. Part III.
This post brings us to the last in the “An Overview Of Ruby on Rails 7.1 Features” series. Rails has improved a lot over the years, no question about that, but this minor version, in my books, is the most exciting. Rails now comes inbuilt with Dockerfiles.
Rails 7. StartKit. Release 1.1
Rails 7. StartKit It is dockerized Rails app which can be run in 3 steps in some minutes. Release 1.1 has an integration with gem “whenever” to run periodic tasks in rails. Read Release 1.1 description to get more details. Happy coding!
gemverse gem - gem universe incl. rubygems API V1 wrapper lite; gem cache & more
Hello, interested in what you have been up to in the latest 10+ years in rubyland / gemverse? To (auto-)generate timelines for personal profiles or for “curated” collections I have started to put together a new gem, that is, gemverse, for easy (re)use. The gemverse incl. rubygems API V1 wrapper lite; gem version cache, gem timeline reports, ‘n’ more. For some first real-world sample pages see the gem timeline of Thomas Leitner, Gerald Bauer, Victor Shepelev or the Ruby Code Commons (COCOS) Collection. It’s still the early days. Questions, comments & suggestions more than welcome. Cheers. Prost.
How to Use Sorbet to Type-Check Ruby
Learn what static typing is, how to add Sorbet to a Ruby on Rails application, and even how to run Sorbet in a continuous integration pipeline. [more inside]
Uniqueness validation does not work since the beginning of Ruby on Rails
Check out my recent article about the uniqueness validation problem and how to solve it. Spoiler: unique index is not enough! https://evgeniydemin.medium.com/uniqueness-validation-does-not-work-since-the-beginning-of-ruby-on-rails-57f129c58576
Making Sense of Rails Assets
https://fly.io/ruby-dispatch/making-sense-of-rails-assets/ - If you’re as confused about “which Rails asset pipeline to use” as I was when I wrote this, have a read! I ran into a problem today where I pulled this up to clarify a few things. It covers the differences between Sprockets, Tailwind, Dart SaaS, Webpacker, & Propshaft.
whatson gem v2023 (incl. rubyconf, pycon, & more) - tools (using the event.db gem)
Hello, in a new gem series - oldies but goldies or is it ruby isn’t dead yet? - I
try to update and polish hidden “forgotten” gems. Today let’s welcome the whatson gem, v2023 that incl. the rubyconf, pycon & more command-line tools (powered by the event.db gem machinery). Use $ rubyconf
to list upcomfing ruby conferences with day countdowns & more (sourced via the planet ruby conference2023.yml datafile. Cheers. Prost. PS: Want to learn more about python? Use $ pycon
;-).
How to Parse Arguments in Your Ruby C Extension
Let’s explore two ways to set up a complex Ruby API written in C: https://blog.appsignal.com/2023/01/18/how-to-parse-arguments-in-your-ruby-c-extension.html
Server Side Request Forgery in Rails
I wrote a blog post about Server Side Request Forgery, how it can affect Rails applications, and how to prevent it: https://greg.molnar.io/blog/server-side-request-forgery/
Binary heaps explained
An article about binary heaps, how to use them as priority queue and how to implement everything in Ruby. https://www.michalmlozniak.com/notes/binary-heaps-explained.html