Things I have written recently

  • Consistent Design

    Features in any product vary in complexity. Designing for the median complexity and reusing the design is not a cost-effective practice.

    February 2021
  • Interesting content (January 2018)

    Interesting books, talks and blog posts I have viewed or read during January 2018 and that I consider worth sharing for one reason or another.

    February 2018
  • Interesting content (December 2017)

    Interesting books, talks and blog posts I have viewed or read during December 2017 and that I consider worth sharing for one reason or another.

    January 2018

Things I wrote some time ago

  • The smell of that potion

    Some thoughts on Ruby, Rails, Elixir and Phoenix and how libraries, frameworks and communities influence the practices and the sustainability of languages.

  • Starting with EventMachine IV

    Using EventMachine is not easy and people make well known mistakes. Let's review the most common ones and find and explain the problems behind them.

  • A useful shell function

    Nowadays it's very common to put some of your configuration values, like API secrets, in environment variables. But dealing with those variables can be painful.

  • Starting with EventMachine III

    The event loop and reactor pattern are the two patterns EventMachine is powered by . Understanding them is key to write successful EventMachine applications.

  • Starting with EventMachine II

    Writing evented code has implications that may not be explicit at first look. There are 3 aspects that will be affected: flow, program structure and testing.

  • Starting with EventMachine I

    Earlier this year I wrote a couple ruby programs using EventMachine. I found it hard to start with it and the documentation or tutorials scarce. Let's fix that.

  • I

    Internal vs. External DSL

    Lately I've been struggling with one of my apprentice tasks because I only knew about Internal DSLs. It turns out that there is another kind: external DSLs.

  • T

    The key to Ruby hashes is eql? hash

    I've been struggling for a few hours with key hashes in Ruby. We usually use primitive values as keys but what happens when we want to use one of our objects.

  • On code and natural language

    I gave a talk about the importance of code readability and how it is tightly related to code quality. But what is the readability level we should achieve?

  • 2011: a tale of two cities (part 2)

    This is the part of my 2011 retrospective. During the second half of the year a lot of interesting things happened to me, and most of them in Madrid.

  • 2011: a tale of two cities (part 1)

    This is my 2011 retrospective. A year that has been a life-changing one for me. In the first part of it I write about what took place in Valladolid.

  • A

    A fresh start

    A lot has changed since the last time I wrote a post. In this one I reflect about why this blog has been dead for months and what I'm going to do about it.

  • SC2011 or why you should learn English

    Instead of talking about Software Craftsmanship UK 2011 I will share my insights on why everyone in the software industry must understand and speak English.

  • P

    Pedigree vs Awesomeness

    Tom Preston-Werner gave the best definition of what University is to professionals in the programming field during his interview on the Teach me to code podcast.

  • I

    Inception at Wiseri: day 2

    Finishing the round up to the inception at Wiseri with the activities of the second day and the final conclusions about the results.

  • I

    Inception at Wiseri: day 1

    This week I attended an inception at Wiseri which was facilitated by Enrique Comba. I'll tell you what an inception is and what we did during the first day.

  • R

    RSS feed available

    The RSS feed is now available. Check out what I researched about the RSS specfication and how I have developed the feed using HAML and Sinatra.

  • D

    Developing my own blog

    The beginnings of my pet project: developing my blog using a custom blogging engine with Ruby, Sinatra and Heroku.

  • N

    No arrows in Vim

    Configure your Vim to disable the arrow keys and learn how to move with the right keys.

  • F

    February Kata: Roman Numerals

    Katacast showing the implementation of the Roman Numerals kata in Ruby with RSpec and Autotest. My February katacast for the 12 months 12 katas initiative.

  • Una semana en BeCode

    Retrospectiva de la semana que pasé en Valencia trabajando con la gente de BeCode.

  • J

    January Kata: String Calculator

    Katacast showing the implementation of the String Calculator kata in Ruby with RSpec and Autotest. My January katacast for the 12 months 12 katas initiative.