Wednesday, 15 June 2016

Fresh New Eyes

I haven't written for a while now. It has been a pretty hectic period.

On top of that my beautiful daughter, Sophia, has come into my life.

I know, No Excuses, but, no matter how well you think you're organised, sleep deprivation and all new concerns can disrupt a little bit your routine.

My daughter birth has been an incredibly formative learning experience. There are a lot of aspects of it I could talk about for hours, picking up on metaphors about iterative and adaptive processes.

However there is one, little aspect, in particular, I would like to highlight in this post.

My wife's labour has been longer and more troubled than expected. Everything went very well at the end, but during the process I've been all the time very attentive with all the things that were going around. What struck me the most was the fact that the midwife in charge any few hours shouted: "fresh eyes!".

That was the signal that anyone who hadn't dealt with the patient yet, had to review the log and the action taken by that time and validate the next step.

A simple acknowledgement that we're not perfect. We can make mistakes. But we can reduce errors relying on collective intelligence.

As software developers we must be aware of our limits as well.
When I can't do pair programming (not a very popular practice nowadays) I usually call very often for code reviews or a second opinion. It happened to me to send a code review request on a semi-finished features, just because I wanted to validate my choices. This practice has been seen, from time to time, as a sign of weakness: it doesn't comply with the manly idea of the omniscient, infallible, lone developer.

This way, I tend to release bug-less, reviewed, well-known and well-structured code. Hence, I think I'll keep going my way, sharing and taking the opportunity to look at my work, whenever I feel like, with fresh new eyes.