github.com

For Sidekiq to be able to retry your jobs it has to be able to catch errors that occur while...

makandra dev

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

A JavaScript error in an E2E test with Selenium will not cause your test to fail. This may cause you...

makandra dev

Geordi provides a pretty neat way to generate beautiful commit messages according to your stories in Linear: geordi commit

Geordi's cucumber command has a --rerun option that reruns failing tests the given number of times. Usage: geordi cucumber...

developer.mozilla.org

...HTML's accepts a single file. You can allow multiple files via . But sometimes, selecting multiple files is not enough...

Let's say you have a gem which has the following module: module SuperClient def self.foo 'Foo' end

keepachangelog.com

We want to keep a changelog for all gems we maintain. There are some good practices for writing a changelog...

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...

In a project team for a bigger project people have several roles: Developer: at makandra Project lead: at makandra

At makandra, we've built a few gems over the years. Some of these are quite popular: spreewald (> 1M downloads...

makandra dev

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

Background information about session storage in Rails Rails has a default mechanism to store the session in the CookieStore. This...

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

Whenever is a Ruby gem that provides a nicer syntax for writing and deploying cron jobs. Leading zeros are important...

makandra dev

Authentication is a special part of web applications. On the one hand, it usually is a crucial security mechanism restrict...

developer.mozilla.org

Browsers' printing methods usually don't print background colors. In most cases this is the desired behavior, because you don...

makandra dev
content.pivotal.io

A matcher is a function that returns an object with a compare key. Usually it is registered with beforeEach...

guides.rubyonrails.org

TL;DR Append your locale keys with _html to have them marked as html_safe and translate them with = t...

For outputting a given String in HTML, you mostly want to replace line breaks with or tags.

makandra dev
rubydoc.info

CarrierWave comes with some RSpec matchers which will make testing more comfortable. Let's say you have an Uploader like...

jsfiddle.net

When you need test images, instead of using services like lorempixel or placehold.it you may generate test images yourself.