alexis.bernard.io
@alexis.bernard.io
Next Wednesday I will give a presentation at Zurich.rb, and then on the 19th November at Geneva.rb:

How to protect web applications against spam bots and brute force attacks without annoying humans, and why I think captchas are not the best solution.
November 7, 2025 at 8:31 AM
Reposted
AI can write tests, but it doesn't understand what truly matters to you, your product, or your codebase. Without guidance, it follows patterns, and the output feels sometimes good, sometimes bad.

That's why I'm launching a new workshop: Reliable Test Case Generation with AI.
October 23, 2025 at 8:22 AM
If your are unsure about adding a new column to a table or creating a new model, always create a model. Your code base will thank you. Let's have a look to the User model.
October 23, 2025 at 3:27 PM
TIL: In SQL the RETURNING instruction accepts any expression, not only a column name. That seems so obvious, but I took all that time to notice it 😅
October 17, 2025 at 8:43 AM
Reposted
6 spots filled, 9 remaining for the Good Enough Workshop this Friday at 15:00 UTC

Here are all the details about the workshop. In case you have questions reply here or via email -> hello@goodenoughtesting.com
October 8, 2025 at 3:07 PM
Reposted
I tried to explain why I don't believe the recent accusations toward my former teammates, as well as how the Ruby and Rails Infra team at Shopify operates and why it can be trusted.

byroot.github.io/opensource/r...
Dear Rubyists: Shopify Isn’t Your Enemy
I’ve been meaning to write a post about my perspective on Open Source and corporate entities. I already got the rough outline of it; however, I’m suffering from writer’s block, but more importantly, t...
byroot.github.io
October 9, 2025 at 2:15 PM
I am very happy to have become dual citizen 💎 since last @euruko.org. Thanks @adrianthedev.com and @avohq.io 😀
October 7, 2025 at 7:24 AM
Switched to ReActionView in production! Deploy on Friday and go away 🙃
October 3, 2025 at 4:30 PM
So using Ruby, what is the largest Fibonacci number we can calculate quickly?

This article is a deep dive into the world of Fibonacci numbers to show some really neat tools that Ruby provides.

www.rorvswild.com/blog/2025/fi...
Fibonacci Funhouse: Exploring Ruby Algorithms for Fibonacci Numbers - RorVsWild
Mathematics is often very powerful and elegant. Do you know what else is powerful and elegant? Ruby.
www.rorvswild.com
September 11, 2025 at 10:06 AM
Developers who remove lines of code are the ones who maintain a project's productivity. Those who frantically add lines of code sabotage it.
August 8, 2025 at 8:33 PM
Reposted
“If this test fails, would I care or just ignore it?”
“If this works, what does it prove?”
“If this fails, do I know why?”

If a test doesn’t help you think better, it’s noise.

More on this mindset → Aug 1 workshop
goodenoughtesting.com
Good Enough Testing
A practical workshop that will show you a series of test design techniques, providing a systematic and repeatable approach to write test cases
goodenoughtesting.com
July 17, 2025 at 8:30 AM
Reposted
I just published a recap of my RailsConf 2025 talk on my blog!

Herb v0.4.0 is out, now with the Herb Linter, a Formatter preview, and deeper editor integration for HTML+ERB.

Plus: a look at ReActionView, my vision for the future of the Rails view layer.

#railsconf #railsconf2025 @rubycentral.org
July 17, 2025 at 9:28 AM
rubyfriends.app
July 17, 2025 at 7:09 AM
I knew that handling time in programming is hard, but not that hard: shanrauf.com/archive/how-....
How to Think About Time in Programming - Shan Rauf
A conceptual model for thinking about time in programming that encapsulates the complexity that many programmers cite online
shanrauf.com
July 11, 2025 at 7:51 AM
Do yourself a favor and buy a programming book in addition to your AI subscription. One is consumption, the other is investment in yourself. You will get more skilled at the end.
June 25, 2025 at 11:39 AM
Internet must remain decentralized. Cloudflare is the easy choice to protect your website, but it has a hidden cost. It controls which trafic goes to your website and can read it. This price is too high for me, and for you too.

torrentfreak.com/cloudflare-c...
Cloudflare CEO: Football Piracy Blocks Will Claim Lives; "I Pray No One Dies" * TorrentFreak
Cloudflare CEO Matthew Prince says he "Pray no one dies" after revealing that piracy blocking denies access to critical resources in Spain.
torrentfreak.com
May 28, 2025 at 8:24 AM
I released version 0.4.0 of active_hashcash. Thanks to @ivanverges.bsky.social and @elalemanyo.bsky.social for their contributions.

ActiveHashcash protects Rails applications against bots and brute force attacks without annoying humans.

github.com/BaseSecrete/...
Release v0.4.0 · BaseSecrete/active_hashcash
What's Changed Prevent from password managers to submit the form before the stamp has been computed Added support for the "button" submit form tag Added Catalan language Added base_controller_clas...
github.com
May 16, 2025 at 9:21 AM
Reposted
Namespaces 101

During the last days I have done an immersion into namespaces, the new big feature that is coming in Ruby.

Here's a digested mental model for you all.

gist.github.com/fxn/86ad8584...
namespaces.md
GitHub Gist: instantly share code, notes, and snippets.
gist.github.com
May 15, 2025 at 12:03 PM
Among things to do at least once in your life, there is attending Friendly.rb. The conf and the organizers are great!
May 14, 2025 at 7:35 AM
Got attacked by a botnet with more than 18000 IPs. ActiveHashcash saved that Rails app. I strongly believe that is the best protection since CPU is the most expensive in hardware and it does not annoy final users.
May 13, 2025 at 9:12 AM
Do you remember the song Ruby Ruby Ruby Ruby (www.youtube.com/watch?v=qObz...) ?
There is one version which has been recorded during a Ruby conference by Ruby developers a long time ago. I think it was in Poland. Could you help me find it?
Kaiser Chiefs - Ruby (Official Video)
YouTube video by KaiserChiefsVEVO
www.youtube.com
April 27, 2025 at 8:46 AM