Checking if a JavaScript value is of a given type can be very confusing: There are two operators typeof and...

makandra dev

An end-to-end test (E2E test) is a script that remote-controls a web browser with tools like Selenium...

When your public-facing application has a longer downtime for server maintenance or long migrations, it's nice to setup...

Slides for Henning's talk on Sep 21st 2017. Understanding sync vs. async control flow Talking to synchronous (or "blocking...

If you are using PDFKit / wkhtmltopdf, you might as well want to use custom fonts in your stylesheets. Usually this...

Download the dictionary from http://www.winedt.org/dict.html, e.g. http://www.winedt.org/dict/de_neu.zip unzip de_neu.zip mkdir ~/Documents/dic iconv -f UTF-16 -t...

reactarmory.com

The linked article shows how to exploit websites that include unsanitized user input in their CSS. Although the article often...

Let's say you have a form that you render a few times but you would like to customize your...

When localizing model attributes via I18n you may run into errors like this: I18n::InvalidPluralizationData: translation data {...

...} can not be...

api.rubyonrails.org

Rails 5 (don't know about the others) comes with an initializer wrap_parameters.rb. Here you can tell rails to wrap...

When using geordi for integration tests you might get the following error when trying to run geordi cucumber:

Webpack is the future. We're using it in our latest Rails applications. For tests, we want to compile assets...

github.com

When storing a file with Carrierwave, it is always cached prior to actually storing it (to support form roundtrips).

Rails default config uses the ActiveSupport::Cache::NullStore and disables controller caching for all environments except production: config.action_controller.perform_caching = false...

These tools help you in checking websites globally: DNS Checker This tool allows for global DNS propagation checking. GeoScreenshot

This is useful if, for example, you want to use a background-image that has to scale with the width...

Typhoeus has a different way of representing array params in a get request than RestClient. Typhoeus: http://example.com/?foo[0]=1&foo[1]=2&foo[2]=3

By default Middleman generates files with a .html extension. Because of this all your URLs end in /foo.html instead of...

Middleman is a static page generator that brings many of the goodies that Rails developers are used to.

rspec.info

In modern default RSpec configurations, your tests are usually run in random order. This helps to detect "flickering" tests that...

jetbrains.com

RubyMine provides a visual tool for resolving merge conflicts locally. Follow Git > Resolve Conflicts in the context menu to open...

github.com

The parallel-gem is quite easy to use and can speed up rendering time if you want to render the...

Imagine the following HTML structure, where the scrolling container has overflow-y: scroll: +--scrolling container+-+ | | | +-child element+----+ | | | ++iframe++ | | | | | | | | | | | | | | +-----------------------+ | | | | <-- actually cut...

When filling out forms in Selenium tests, Chrome shows the (usual) bubble, asking to store those credentials. While the bubble...