For searching in large database tables we usually use PostgreSQL's fulltext search capabilities. While this works reasonably well for...

This is a presentation from 2019-01-21. Summary We want to move away from jQuery in future projects

Spammers have started abusing other application to send their spam. This works like this: The application has some form that...

I had this error: > gem install bundler Successfully installed bundler-2.0.1 1 gem installed > bundle install Traceback (most recent call...

When building an application that sends e-mails to users, you want to avoid those e-mails from being classified...

makandra dev
developer.mozilla.org

The standard way to abort async code is that your function takes a AbortSignal { signal } property. The caller can use...

The rendered font often depends on the local font your system provides, therefore you often find a rule like below...

Cucumber has an output format that prints step definitions only. You can use this to find unused ones: Temporarily add...

The Ace editor is a great enhancement when you want users to supply some kind of code (HTML, JavaScript, Ruby...

When projects run for many years, they require special regular maintenance to stay fresh. This kind of maintenance is usually...

makandra dev

If your Rubymine does not recognize a file type correctly although you have entered the unmistakeable file extension like material_orders_controller.rb...

Ubuntu has decided to disable PDF processing because ImageMagick and the underlying Ghostscript had several security issues. When your Ghostscript...

developers.google.com

Mobile Chrome and Safari support the "web share API" which allow you to use the native share functionality of an...

Font Awesome 5 is a comprehensive solution for vector icons on your website. Originally, Font Awesome came as an icon...

In this example we assume that not only the storage gem changes but also the file structure on disc.

makandra dev

Cross-Site Request Forgery (CSRF) is an attack pattern for websites. A CSRF attack is usually relevant in a...

If validations failed for a record, and you want to find out if a specific validation failed, you can leverage...

Let's say you have a gem which has the following module: # within the imaginary super gem module SuperClient

makandra dev

Option 1: JSON dump In config/webpack/environment.js you can get inspect environment which includes all webpack config options set for the...

As a web developer, you know Google Analytics (GA). Probably you've dropped the GA snippet into more than one...

makandra dev

For webpages to load fast it's recommended to optimize images. Ideally an image's file size should be as...

If you want to fill in textareas with multiple lines of text (containing line breaks / new lines) you can use...

To make a local copy of an S3 bucket, I use the s3cmd command line tool. Configure access keys:

Rails defines a #truncate helper as well as a method String#truncate. = truncate("my string", length: 5) = "my string".truncate...