Picasso once said: “By the age of eight I could paint like Raphael, but it has taken me another 60 years to learn to paint like a child.”

What Picasso was getting at here was that in order to innovate you have to know the processes and rules very well. In fact you don’t even want to know them but you want to live them, breathe by them, make them automatic/reflex.

In the software development arena (e.g. the Games industry) do we sometime suffer from not knowing the processes and rules well enough before breaking the rules? I would say so. In my experience, I have been confronted in numerous situations where projects were in danger of failing. When asked about the reasons for being in danger (completed over 50 projects), more often then not I find the following issues (list non-exhaustive):

  • The process is not applied
  • The code is not fully tested
  • The communication points between business and technical team are loose
  • The architecture is not described
  • The iterations (assuming agile process) are ill defined

Most of the time, when I am looking for the reasons of these issues, I am finding answers such as: “Nobody really applies the process, why would we? We are better the way we do.”, or “No real time for testing by the book, let’s just apply common sense and save money”, or “We are agile, we don’t need documentation.” Ad infinitum.

Am I missing something here? Because to me this looks a lot like laziness hidden behind the ultimate excuse: creativity!

Let’s think about IT !