Why we love metrics? Learning with Lead time

Every time I think about indicators and metrics I remember a phrase from H. James Harrington that says: “Measurement is the first step that leads to control and eventually to improvement. If you can’t measure something, you can’t understand it. If you can’t get it, you can’t control it. If you can’t control it, you … »

Stateless vs stateful web apps

Edit: We have got some great feedback that highlighted inaccuracies and unfairness in our post. We have amended the post accordingly but you can read the errata at the bottom. With Rails 5 soon to be released, many developers are planning to further explore Action Cable and add stateful features to their web applications via … »

Power of the metrics: Don’t use average to forecast deadlines

Almost all project stakeholders are used to ask for deadlines when the subject is software development. Every time I face this type of question I usually answer something like this: — “Well, the only thing I know is that uncertainty is one of the few certainties about software development, so let’s look at the team’s … »

Writing Acceptance tests in Phoenix

Acceptance testing seems to be in its first steps in the Elixir ecosystem, but there are already some cool libs that can help us out to do it. I’m going to show you how we did it with Hound. In this blog post, we’ll write a few acceptance tests for an expenses report listing page, … »

How to do remote meetings effectively

Several teams, different locations. As technology evolves, this scenario gets more and more common. When you need to set up a meeting between distributed teams, it usually leads to frustration. Noise, poor sound quality, interruptions and lack of focus tend to erode communication and make things chaotic. As a consultancy, we have learned a lot … »

Improve remember me cookie expiration in Devise (CVE-2015-8314)

A security bug (CVE-2015-8314) has been reported in Devise’s remember me system. Devise implements the “Remember me” functionality by using cookies. While this functionality works across multiple devices, Devise ended-up generating the same cookie for all devices. Consequently, if a malicious user was able to steal a remember me cookie, the cookie could be used … »