I recently noticed that better_errors allows you to to open files from within your favorite editor. However it was...

Debugging your integration tests, that run a headless Chrome inside a docker image, is tricky. In many cases you can...

A convenient way to test SNS Subscription Filter Policies is using an email address as the subscription endpoint. However, for...

Within Capybara you most certainly use the #check- and #uncheck-method to (un)check checkboxes. But there's one problem...

When you allow file uploads in your app, a user might upload content that hurts other users. Our primary concern...

Every Rails response has a default ETag header. In theory this would enable caching for multiple requests to the same...

You have an async function that rejects: async function failingFunction() { throw new Error("Something went wrong") } When you call that...

To navigate between test and test subject Rubymine requires you to set the test root sources as Test Sources Root...

Haml 6 was a major rewrite with performance in mind. To achieve a performance improvement of 1.7x, some design...

Maintaining larger projects makes it more difficult to balance refactoring and upgrade tasks according to its actual value. Consider to...

A lot of web applications require being called over https, which is a good thing. It's possible to configure...

By activating strict_loading you force developers to address n+1 queries by preloading all associations used in the index...

Testing your responses in Rails allows to parse the body depending on the response MIME type with parsed_body.

makandra dev

If you need a sample video with certain properties for a test you can create one using ffmpeg.

In the past we validate and set default values for boolean attributes in Rails and not the database itself.

Not all email clients support external images in all situations, e.g. an image within a link. In some cases, a...

Let's assume that we have a model Movie that registers a callback function when a new instance of Movie...

makandra dev

Timecop is a great gem to set the current time in tests. However, it is easy to introduce flakyness to...

Usually, design development starts with drafts, sketches and prototypes. These are reviewed, refined and iterated until the final design is...

makandra dev

In a Jasmine spec you want to spy on a function that is imported by the code under test. This...

We had a strange behaviour on one of our mariadb-servers: Everyday at around midnight we saw that the root...

When changing glibc versions, it's possible to end up with corrupt indexes in PostgreSQL. Are My Indexes Affected?

makandra Curriculum

Congratulations, you just made it through about half of our curriculum deck! 🎉 We've covered the basics of your future...

Jasmine specs for the frontend often need some DOM elements to work with. Because creating them is such a common...