Matheus Richard's Avatar

Matheus Richard

@matheusrich

πŸ‘¨πŸ½β€πŸΌ Father πŸ‡§πŸ‡· Senior developer @ thoughtbot. πŸ“ Blogging @ https://tbot.io/blog/matheus πŸ’Ž Organizer of http://rubydf.com

49
Followers
57
Following
71
Posts
03.06.2025
Joined
Posts Following

Latest posts by Matheus Richard @matheusrich

Preview
Combine Capybara selectors to avoid the sequential timeout trap How I shaved over a minute off a test suite with a one-line change.

Here's one of those things that are easy to miss on code review and will make your tests super slow. Good news: it's easy to fix!

thoughtbot.com/blog/combine...

09.03.2026 13:25 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
ActionView::Helpers::FormTagHelper Action View Form Tag HelpersΒΆ ↑ Provides a number of methods for creating form tags that don’t rely on an Active Record object assigned to the template like FormHelper does.

TIL about Rails' image_submit_tag

api.rubyonrails.org/v8.1.2/class...

15.01.2026 14:54 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

This was a fun one to write!

07.01.2026 14:57 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I love seeing this UI evolve! What are you using for pagination?

27.11.2025 21:00 πŸ‘ 3 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Time.days_in_month(2) # defaults to current year
# => 28
Time.days_in_month(2, 2024)
# => 29
Time.days_in_year # defaults to current year
# => 365
Time.days_in_year(2024)
# => 366

Time.days_in_month(2) # defaults to current year # => 28 Time.days_in_month(2, 2024) # => 29 Time.days_in_year # defaults to current year # => 365 Time.days_in_year(2024) # => 366

Today I learned about Rails' Time.days_in_month and Time.days_in_year. So handy!

17.11.2025 15:12 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

πŸŽ‰ end_of_life 1.0.0.alpha is released! It includes:

- Macos install via homebrew
- Support for scanning EOL Node.js versions
- Support for detecting versions from `mise.toml`.
- A new `check` command to check if specific product releases are EOL
- A revamped CLI

Stay updated!

24.10.2025 18:53 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Git Large File Storage Git Large File Storage (LFS) replaces large files such as audio samples, videos, datasets, and graphics with text pointers inside Git, while storing the file contents on a remote server like GitHub.co...

TIL about Git LFS: An open source Git extension for versioning large files

git-lfs.com

20.10.2025 12:27 πŸ‘ 4 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0

Wait, what? Where?

10.10.2025 15:32 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Does the bot log in? How do you handle auth?

10.10.2025 15:31 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Beautiful!

03.10.2025 17:52 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Where's @marcoroth.dev to add a proper parser to Stimulus? πŸ™ˆ

01.10.2025 15:03 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

From the little I know it seems a lot more than that? Most of the times I'm good with plain HTML and I want to add a few things here and there. Svelt seems like an overkill solution for me?

01.10.2025 15:01 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I keep wanting to try it, but at the same time I so don't want another JS tool.

01.10.2025 14:46 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I'm curious about what the European developer interests are (compared to what also) πŸ‘€

19.09.2025 14:55 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

NOOOOO! I didn't have my chance to attend!

19.09.2025 14:52 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Just shaved 200-250ms from a CLI app by just requiring dependencies only when they're needed.

It might not seem much, but it really matters to get that snappy feel.

17.09.2025 21:50 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
The RubyGems.org 404 page

The RubyGems.org 404 page

This is my favorite 404 page

16.09.2025 19:52 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Great font in those slides!

11.09.2025 20:18 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

Did you know that Rails 7.1 stops receiving security updates in 3 weeks? Wished that you had a tool that would inform you about this kind of stuff?

Well, end_of_life v0.5 was just released and it now supports Rails!

Check it out: github.com/MatheusRich/...

10.09.2025 19:36 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

This look amazing. I might not need to add

config.action_view.annotate_rendered_view_with_filenames = true

to every app now

08.09.2025 17:09 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

That's exactly how it works. It uses Rails main by default, but you can specify any commit you want.

It'll use the same name as your app, so you get meaningful diffs only.

08.09.2025 14:44 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
Add support for scanning EOL Rails versions Β· MatheusRich/end_of_life@ba9a92a End of Life looks for an exact Rails version on the `Gemfile` file or `Gemfile.lock`.

Then, the easy change: adding support for Rails was just a 27loc change (not including tests).

Amazing payoff!

github.com/MatheusRich/...

08.09.2025 14:40 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

The code was not written in a generic way, so I followed Kent Beck's advice and started to make the change easy.

It took a diff of +1160/-927 , and it was mostly backwards compatible. Luckily I had tests to ensure nothing was broken.

08.09.2025 14:40 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I've hacked the first version of end_of_life in a weekend. I had limited time, so I decided to only support Ruby. It served me well for years, but I thought it was time to expand support for other tools (Rails, Node, Python, databases, etc).

08.09.2025 14:40 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
Add RuboCop cache to GHA workflow templates Β· rails/rails@ceb0678

For example, I just found-out that the they add caching to rubocop runs on CI!

github.com/rails/rails/...

04.09.2025 19:21 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
GitHub - MatheusRich/rails-diff: Compare Rails-generated files with the ones in your repository Compare Rails-generated files with the ones in your repository - MatheusRich/rails-diff

If you wanna use Rails 8.1 today, you can check if there's anything new in the dotfiles, Dockerfile, or the generated authentication system using rails-diff:

github.com/MatheusRich/...

04.09.2025 19:13 πŸ‘ 2 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0

I actually dig it.

04.09.2025 00:00 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

The amount of event listeners LLMs suggest when writing Stimulus controllers makes me think most people are not making the most out of Stimulus targets.

03.09.2025 16:18 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Zen Browser Beautifully designed, privacy-focused, and packed with features.

TIL about the Zen browser. Looks cool!

zen-browser.app

03.09.2025 11:59 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Join me at thoughtbot’s Open Summit! - Tim Riley I’m delighted to be joining the thoughtbot Open SummitΒ on 31st October this year! What is Open Summit? From the announcement: β€œa live, interactive, hands-on day of pairing and solving open...

Join me at @thoughtbot.com’s Open Summit this year! I’m extremely excited to be part of this event. Even better, it’s *free* and *online*, so I hope I can see you there!

timriley.info/posts/join-m...

01.09.2025 12:57 πŸ‘ 3 πŸ” 4 πŸ’¬ 0 πŸ“Œ 0