To safely transport an arbitrary string within a URL, you need to percent-encode characters that have a particular meaning...

As the web is being used for more and more tasks, expectations rise. Not only should web pages offer rich...

Method lookup Understand all the terms in How Ruby method lookup works, in particular: include extend singleton class

makandra Curriculum

Understand how nested attributes appear in the params. See how the Rails form helpers encode the names of nested...

If you have problems installing a gem and get a error collect2: error: ld returned 1 exit status it's...

If the project team consists of at least 2 members, do a daily standup. It should not take much longer...

We organize our daily work with issues in our Linear workspace. Issue format A good issue needs to be precise...

When starting a project we always make a good estimate of all known requirements, and plan budgets and available developers...

PhantomJS has no binary builds for Linux, and building it yourself is painful. However, you can install it through npm...

digitalocean.com

I recommend install Node.js using nvm. This way you can have multiple Node versions in your ~/.nvm. You also won...

makandra dev
github.com

SitePrism gives you a simple, clean and semantic DSL for describing your site using the Page Object Model pattern, for...

You have the following HTML structure:

If you want to run Javascript code whenever someone clicks on a ...

..., you...

devdocs.io

All browsers + IE9 know the CSS :empty selector. It lets you hide an element when it has no content, i.e...

Many of our clients can't or don't want to design their user interfaces. In the absence of a...

In our daily life as web developers we are constantly faced with technical problems that can be solved with a...

makandra dev
netvlies.nl

Looking for a way to embed raster images for both low- and high-DPI displays, this developer had some good...

makandra Curriculum

We've already learned how to integrate user-provided images uploads to our application in 205 basic file uploads and...

makandra Curriculum

Your MovieDB gained traction and is now a popular tool among cineasts. This comes with a downside: You noticed a...

Talk with a colleague and find out why we're using building some of our sites using static site...

We are using the BEM pattern ("Block, Element, Modifier") to structure our CSS in all new projects. We try to...

For each movie in MovieDB, we want to track which other movie it was inspired by. For...

We use Selenium WebDriver integrated with Cucumber/Capybara for full-stack integration testing. Try and use it Your forked MovieDB should...

makandra Curriculum

Built-in matchers Get an overview of all the matchers that are built into RSpec. Play with some of...

Ruby has Enumerable.find(&block), which returns the first item in the collection for which the block evaluates to true.