A few weeks back I tried to improve some code I was working on, but after a couple of hours I resided myself to the fact that it just couldn't be done in that small space of time.

Yesterday I looked at the same code and within half an hour managed to make a big improvement to it. So what was the difference between yesterday and a few weeks ago?

It could have been a number of different things. What was my workload like that morning? Did I have other things on my mind? Did I start the day with tea or coffee? Who knows. Hundreds of different factors could have affected my thinking that day.

When you're working you focus as much attention and energy as you can on delivering what is expected of you. Some days though you just need that bit longer to get your head round something.

We can't always be thinking and working 100% effectively all of the time. What I do know is I can't be switched on all the time.