The Agile Breakfast

Do you know which is the best way to start the day? It’s a fact: A good day starts with a good breakfast. Don’t you agree?

This is the reason why every Tuesday morning we, people from Devscola, buy a bunch of food full of sugar and saturated fats and eat it while making what we like most: Coding. And this nutritional heresy received the name of Katayuno.

Katayuno is a combination of the words ‘Code Kata’ and ‘Desayuno‘. It is an event during which we sharpen our programming skills using code katas and Agile and XP methodologies, like pairing, TDD and code reviews.

But, what does ‘Agile’ and ‘XP’ refer to?

Continue reading “The Agile Breakfast”

Pair programming

This post belongs to this root post and may be out of context if it is read separately.

Pairing is a practice where two developers work together in the same computer. We can imagine it like a ride in a car: The driver manipulates the steering wheel and uses its driving skill, while her companion guides and supports her.

In the same way, during pairing, the driver uses the keyboard and writes the code, while the navigator guides her.

Continue reading “Pair programming”


This post belongs to this root post and may be out of context if it is read separately.


How many times have you entered a meeting thinking ‘oh my god, this will take hours. I have no idea around what time this meeting will end.‘ Many of us experienced this situation before.

Continue reading “Timebox”

Test Driven Development

This post belongs to this root post and may be out of context if it is read separately.

The Test Driven Development (TDD) is a software development technique that uses tests to make the design merge using the Red-Green-Refactor cycle.

How could I illustrate this…

Have you ever use a ‘gap filling’ exercise? They are used in grammar and language learning, and they look like this:

Gap filling exercise

Continue reading “Test Driven Development”


This post belongs to this root post and may be out of context if it is read separately.

The retrospective is a meeting during which the team discusses about the last three or four weeks. This is a conversation about factual subjects surrounding our work as a team. What did work? What did not work so well? What can we improve?

Continue reading “Retrospective”

Code it yourself

This post was titled after a talk I gave to people attending a course to learn how to develop software. One of the main purposes of my talk was to prevent wrong ideas about what software development really means.

In the past (and nowadays), the industry has considered programmers as ‘coding monkeys’, like if developing software was a repetitive task, similar to assembly lines in factories. But the truth is that the work of a programmer does not consist in writing code, but in THINKING. Thinking solutions that solve problems. It is a creative and adaptive job, therefore, the methodology used for repetitive tasks does not work for software development.

Continue reading “Code it yourself”

Indie games IV – Game design

This post is the first part of the talk I gave at IES Alfons III and belongs to this root post.

Now we know the employable tools, it’s time to get into the core. This post will be composed by two parts: Lifecycle and How to make it work.

The former makes a small tour around different steps that a game has, from its conception to its distribution, while the latter explains how to build a place on the market for your game.

Continue reading “Indie games IV – Game design”

Indie games

Last week I gave a talk about indie games at IES Alfons III in Vall d’Alba. One of its teachers saw my previous talk, where I was speaking about AI. He thought it could be interesting for students to learn about video game development, but he was not sure if they would understand a technical lesson. So we spoke on the phone and arranged a more suitable talk, focused on explaining video games creation and motivating students to choose a related career.

Continue reading “Indie games”

SOLID principles

I’m applying for a job in a frankly interesting company, so I’m reviewing all the good programming practices I was taught and learned during my career. Those are essential for developing good code, however an alarming number of “programmers” don’t really understand them (or actually never heard about them).

Continue reading “SOLID principles”

AI in games III – Pathfinding

This post is the third part of the talk I gave on the WTM and belongs to this root post.

We call pathfinding to the process by which the machine calculates the shortest or fastest path from its position to the position of its target.

Pathfinding sits on the border between Autonomous Movement and Decision Making, because usually we first decide where we want to go, then pathfinder works out how to get there, and finally we move to the goal using a movement control system.

Continue reading “AI in games III – Pathfinding”

Proudly powered by WordPress | Theme: Baskerville 2 by Anders Noren.

Up ↑