Rodolfo Ferreira Calmer than you are.

This Is How I Blog

I thought it would be nice to describe how I actually post to this blog, meaning which technologies and services I use and how did I got to a state I’m comfortable with, for now.

I don’t pay anything to keep this blog running, thanks to the great service that is GitHub and to the great community that is open source. I also write all the content in Markdown, which is IMHO a lot better than having to deal with a WYSIWYG editor.

For example, all my posts are sourced from this directory

Idea For A Brief And Productive Retrospective

I work at a small dev team (~8), that is part of a bigger dev team (~35). We were undergoing a period where we were having some trouble planning our next sprint, and also we wanted to look at ways to better our productivity even more, compared to other teams.

So I tried a retrospective method which worked well for us at that time, and it’s a combination of some methods I read about at:

The beauty of sequence comprehensions in Scala

While working through some problems, I’ve found a quite nice solution to a problem using Scala’s sequence comprehensions.

The problem is this one:

A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 × 99.

Find the largest palindrome made from the product of two 3-digit numbers.

Firstly, a palindrome number is one that reads both ways:

def pal(a: Int): Boolean =
  a.toString == a.toString.reverse

Test Your Server Against Heartbleed

Here’s the link to find out if your server is vulnerable to CVE-2014-0160:

Very useful and has a nice UI

Better Way To Process Long Streams Of Data


When sequentially processing a huge set of records in an SQL database, for example, what we developers usually do is this:

  1. SELECT COUNT(*) on the records we will process and save that to a variable c
  2. SELECT again with a LIMIT clause (or ROWNUM if you’re using Oracle; argh..)
  3. Repeat step 2 until the total of processed records matches c

I was almost doing that for a task today, and then I realized I could do something much smarter.