Growing up in Yugoslavia in the 80’s involved watching a lot of animated movies. These movies were primarily eastern European production. One of my favorite cartoons back in those days was a Czechoslovak movie called “Pat & Mat” (originally, A je to!, Pat a Mat).
It was a cartoon about two friends who tackled different daily issues in every episode. What made the movie interesting was their approach to problem solving. The approach was a combination of innovative thinking and quick improvisations to get to the fastest result as quickly as possible.
Every episode starts with setting the goal and ends in the goal being achieved. The interesting part is the stuff in the middle. The improvisations that Pat and Mat do never stop to amaze the audience, and as soon as you think they are done they manage to pull off yet another astonishing improvisation.
Observing software projects and the way they are delivered often reminds me of the approach that Mat and Pat take. Especially agile projects delivered in iterations referred to as “sprints.”
In these projects we developers, even though highly intelligent people, get so focused in reaching the sprint goal that many times we don’t stop to think and look at the bigger picture and the mess that we are creating while trying to reach the goal quickly. In the race for delivering features we often forget about one of the essential parts of engineering. We forget about quality. We even have a dedicated term for the mess we are making in the effort of delivering fast: “technical debt." We use this term when we deliver features quickly but with poor quality.
By the time the goal is reached, there is no time to set things straight; a new episode, a new sprint begins, and with the new sprint new adventures start.
Here are several Pat & Mat videos. Enjoy watching technical debt in the making, and try to avoid doing this in your projects.