Go Profile Yourself


Last month I read, along with every coder on twitter, the “Smart guy productivity pitfalls” article. I then proceeded to watch Randy Pausch’s time management talk. (Links at the bottom.. Can you believe Randy Pausch died almost 5 years ago?)

It is a talk about time management, and in this talk, Randy asks us to wait a month and then write about how our life has changed. Here I am, a bit over a month later, writing about it. Here is what I learned and why I think it will benefit you too:

If you are not measuring where your time is going, you are wasting time. 

There is no productivity silver bullet; no magic tool. The key is to see what works, what doesn’t and iterate. One has to try and fail until something works.

I have been actively changing myself to become more productive for the past couple of years. The pomodoro technique didn’t work for me and neither did blocking Facebook. I found that exercise and meditation helps me a lot.

What really prompted me to write this post is that for more than a month now, since watching Randy Pausch’s talk, I have been measuring my time. It has been eye-opening. It is an invaluable tool for increasing productivity.

It is a unique tool because unlike meditation, diet and exercise, you can use it to your benefit until you are actually so productive that you are sacrificing other parts of your life.

Sounds good?


Human intuition is great for Math and Music and Painting and Terrible Life Decisions but it sucks for measuring how long it takes for something to do something else.

Coders use profilers to find what parts of their code are slow. Then they make the slow code go fast. Then they iterate. It is actually quite fun.

It is very unlikely that a programmer will guess where a performance bottleneck is. It is why we need profilers to measure time for us.

We are just as bad at measuring our own time as we are at measuring our program’s time, but we can tackle the problem of productivity exactly as we tackle the problem of slow code. Measure. Fix. Iterate.

Let me show you by example:

I was doing some research on Bayesian Networks for a presentation. I found a good introductory article and I read it.

By the time I was done, I was not an expert on Bayesian Networks, but I could (and did) talk in public about the topic and designed a project around it.

It was a dense article, and reading it felt like an eternity. I was going back and forth, making sure I had understood every definition and getting the concepts into my head.

When the day was done, I did what I had been doing for a while: check how I had distributed my time at the computer.

I was shocked when I saw that I actually spent just one hour reading the article. I had also spent one hour that same day looking at YouTube videos, but it felt like a second compared to the time I spent studying. Our perception of time is relative to what we are doing. That is a fancy way of saying that we are terrible clocks.

By the end of that week, I took a look at the total time I spent on YouTube: Seven hours and nineteen minutes.

Screen Shot 2013-04-18 at 10.39.48 PM

That red bar is YouTube.

The source? A habit of eating in front of my computer every day while watching YouTube.
By avoiding YouTube during my lunch break, I got rid of my bottleneck. 8 extra hours per week.


I could have sworn that my bottleneck would be Facebook and Twitter, but in reality I spend relatively little time using them.

The opposite was true too. There was a day I could have sworn I had just spent 5 hours of non-stop coding; it turned out to be less than 2.

For about four weeks I have been changing habits and eliminating bottlenecks from my day.

This is my graph for this week (Blue: Good. Red: Bad)

Screen Shot 2013-04-18 at 11.01.58 PM

It looks good, right?

Actually I have spent almost half my time this week doing “unproductive” tasks. There just aren’t any bottlenecks anymore. It’s time to micro-optimize, but the benefits are already evident. This week I had a crazy school schedule, a steady flow of crazy end-of-semester work. I still found time to work on my own stuff. That never would have happened before.

For more than a year now I have also been measuring my sleep habits. It has not had such a big impact on my productivity, but it is fun and it let me know that I actually need around 7.5 hours of sleep.

The way we use our time is by far the most important factor for success.

If you are satisfied with your skill, there is still value in eliminating useless cycles from your day so that you can spend more time with your family, playing piano, reading books or watching movies. Every second you were misspending is now yours to use as you see fit.

Just as that extra serving will make you obese over a year, that extra VSauce video will make you lose a month of the year.

Smart Guy Productivity Pitfalls: http://bookofhook.blogspot.mx/2013/03/smart-guy-productivity-pitfalls.html

Randy Pausch’s time management talk. http://www.youtube.com/watch?v=oTugjssqOT0

Software I used:

Rescuetime www.rescuetime.com (You can use a cd player, but this is 2013… Use anything, just Measure!)

Sleep as Android: https://play.google.com/store/apps/details?id=com.urbandroid.sleep&hl=en


4 thoughts on “Go Profile Yourself

    • Thanks!
      Now that I think about it, I think the problem is not lack of awareness, it’s that it is difficult to keep focus and willpower. We have full control of our processes and that makes them easy to measure and change. We do not have full control of ourselves. I can stop profiling myself anytime I want.

  1. Admiro tanto la manera en la que estás organizando tu vida, y la forma en que compartes tu experiencia, con tanta claridad. Tu texto puede ser leído como un ensayo informativo del cómo aprovechar el tiempo y, por lo tanto, la vida, pero también es un testimonio honesto de tu visión del mundo.
    Gracias por recordarnos que el tiempo es, como todo lo demás, relativo, y que el distribuirlo y organizarlo no nos limita, sino que abre mil posibilidades más para vivir, y no sólo para pasar el tiempo aquí.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s