Spammers have started abusing other application to send their spam. This works like this: The application has some form that...
To remove all tables from a database (but keep the database itself), you have two options. Option 1: Drop the...
When building an application that sends e-mails to users, you want to avoid those e-mails from being classified...
When upgrading Rails versions -- especially major versions -- you will run into a lot of unique issues, depending on the exact...
The Ace editor is a great enhancement when you want users to supply some kind of code (HTML, JavaScript, Ruby...
The exception_notification gem supports to provide custom data to e.g. the fail mail within foreground or background jobs. ExceptionNotifier.notify...
We figured out, that ActiveJob Inline might lead to autoloading problems in development. The result was an exception when running...
When you created a project on the Google API Console which is not being used, you may receive an e...
Ubuntu has decided to disable PDF processing because ImageMagick and the underlying Ghostscript had several security issues. When your Ghostscript...
Mobile Chrome and Safari support the "web share API" which allow you to use the native share functionality of an...
It is possible to access Rails config (for example secrets) from within your webpack bundles, thanks to rails-erb-loader...
Phusion Passenger changed the way how it gets restarted several times. Through the project's history, these all were valid...
In this example we assume that not only the storage gem changes but also the file structure on disc.
Cross-Site Request Forgery (CSRF) is an attack pattern for websites. A CSRF attack is usually relevant in a...
Most forms have a single submit button that will save the record when pressed. Sometimes a form needs additional submit...
Migrating data from a legacy into a new system can be a surprisingly large undertaking. We have done this a...
In general, the tracker should always be the definitive source of truth of what needs to be done as part...
At makandra, we've built a few gems over the years. Some of these are quite popular: spreewald (> 1M downloads...
Why secure-only cookies used to be necessary Cookies have an optional secure flag. It tells the browser to not...
Background information about session storage in Rails Rails has a default mechanism to store the session in the CookieStore. This...
The 90s are calling: they want their tables back. Unfortunately, you need them all for laying out your HTML emails...
In medium-sized to large Rails applications, asset compilation can take several minutes. In order to speed up deployment, asset...
When your application is running on a multi-server setup, application logs are stored per server (unless you choose a...
By default, Capistrano truncates server responses and places an ellipsis at the end of lines that are longer than your...