The funny rules of SpamAssassin in 2023 (deep dive)
December 04, 2023 · 11 min read
This investigation was surprising to me so I thought it would be interesting to share my findings and I hope you'll like it. Some of my clients occasionally reported that the updown confirmation email (used to confirm a new email address, provided by Devise ( had been classified as spa...
Using `destroy_async` with Mongoid 8?
November 15, 2023 · 5 min read
I wanted to improve the responsiveness of the Delete account action, which could be slow for bigger/older accounts due to the many associated records to be destroyed (downtimes, metrics) being sparsely distributed in the database. This sounded like a wonderfully perfect use-case for the recent dependent: :destroy_async option [added in Rails 6.1.](
Welcome to the new blog 🎉
November 04, 2023 · 2 min read
For a while I've been thinking of "starting a tech blog". Well technically I already started one a while back on Medium (, but I didn't like Medium because of the—let's say poor—reader experience so I didn't want to write on it nor to promote it. I saw many blog tech and hosting platform rise (and die) in the following years, everytime telling myself: _"ma...
MongoDB SSD incident postmortem
April 06, 2019 · 5 min read
Note: This article was initially published on Medium ( in 2019 and later moved to this official blog. All times will be given in UTC+2 (CEST) to match monitoring tools screenshots. April 3rd 2019 at 2:30 am: primary database (MongoDB) server starts to answer queries about 200 times ...
Ruby + jemalloc: Results for
April 01, 2017 · 2 min read
Note: This article was initially published on Medium ( in 2017 and later moved to this official blog. I recently read this great article ( about compiling ruby with jemalloc for slightly better performa...