A code review is not like watching a football match

In my experience a code review must have a goal. Some common goals are: Telling others how you solved a common problem. Warning others about certain perils (i.e race conditions, coupling…) Asking concrete questions. Implementation or design questions. When you...

I visited Scytl

In October 2015, just two months before the Spanish elections I was lucky to visit Scytl and work there as a consultant for a week. Thanks to my good friends Manu Martin (@ManuCervello) and Alvaro Garcia (@alvarobiz) who are currently working in there as agile coach...

Only one MessageDialog may be displayed

On Windows 8, a call to “await aMessageDialog.ShowAsync()” can only be made once, otherwise System.UnauthorizedAccessException will be thrown (E_ACCESSDENIED 80070005). This is a helper method to display dialogs although it’s not thread-safe....

Polymorphic test setup with template method

We had a kind of duplication in our tests that we didn’t know how to deal with. The refactoring “Introduce Polymorphic Creation with Factory Method” explained by Joshua Kerievsky in his brilliant book “Refactoring to Patterns” gave me the...

Refactoring katas with your own codebase

When it comes to refactoring, my preferred katas consist of experimentation with the actual code base I am working on. I just create a new branch from a certain commit, play with several refactorings and then throw it away. I usually end up with several experimental...

Mind the age and context of the book

Usually IT books don’t age very well, things change very fast in the sector. This is specially true of books on particular tools, libraries, frameworks… but even books about methods and techniques require critical thinking when studying them. If the book...

Reflexiones tras una emotiva CAS2015

No habia participado en una Conferencia Agile Spain desde el 2010 que fué en Madrid, la primera. En aquel entonces iba ilusionado con 50 ejemplares en mi maleta de nuestro flamante libro de TDD, que colocamos en el stand de Plain Concepts porque amablemente me...

Pairing: don’t have to always agree on the plan

So your pair is proposing a route or plan that you don’t agree on. Am talking about a refactoring, a redesign or just the way to test drive the next feature. You have told him your reasons no to agree with him and there is no way to get to an agreement....

Learning with Peter

Last week I was lucky to host my good friend Peter Kofler in his visit to Gran Canaria, where he came to facilitate the Glodal Day of Code Retreat and also to work together a couple of days in our biggest project at the moment. We’ve been working in the same...