Managing Distractions and Setting Expectations

Today at work I had a rough day. The work wasn’t too hard, but it felt like an entire day of distractions for me. My goal was to get some data migrated to a new system and deploy it into production. Unfortunately, it hasn’t worked out that smoothly.

A few people asked for some help with some problems and I wanted to help out. Another needed a fix to production. The problem arises because it not only means mentally switching tasks, but it also means jumping few a version control and editor hoops to get things ready to go. I always forget this aspect and end up needing to rollback what little bits of progress I made. One the fix is there I had to remember a set of commands in order to make sure I kept the repo organized correctly in terms of heads and branches. These are all little things, but they are easy to forget. One option is automating them but honestly that seems like more trouble than it is worth. At the same time it might very well be the answer.

Besides the actual work distractions, I’ve been recovering from getting my wisdom teeth out. Sure enough the one complication, dry socket, it what I ended up having. This was extremely painful and kept me up a good portion of the night. I got up really early this morning to head to the doctor’s office and get it taken care of. They packed some gauze-like stuff that had been soaked in an anesthetic and packed in my gums. The good thing is that it worked and the pain was greatly reduced. The downside is that I had a battery taste in my mouth all day that made me feel a bit ill after a while. What’s more, after mostly drinking liquids for the last few days, as soon as I try to eat some more solid foods, I found that I had to get used to actual bowel movements again. Feel free to claim TMI and move along.

Looking back at today it is obvious that I could use some more practice managing distractions and setting expectations. When some coworkers asked me for some help, I pretty much dropped everything to do it. In one case I really needed to, but in another, I probably could have made it clear that the problem was not something I could look into at that very moment and suggest some options for when I would be able to look into it. Likewise, part of the reason that I did need to help out was because it was something that I was hoping would become unnecessary thanks to this project I was trying to deploy. No such luck there. In this case, I think I didn’t set my own expectations meaning that my estimates were off, which in turn sort of stressed me out when other things came up.

Beyond the expectations, it was difficult to constantly be pulled away from my computer, only to return and not really remember what I was working on. This is something that I’m sure practice will help, but I also think I could do better to leave myself a note or something on the screen to help me remember where I was in my work. This could get overly technical really fast, so a quick *reminder* buffer in Emacs seems like a simple, yet effective idea.

As I’ve gotten older the concept of managing expectations and distractions has become much more important to me. I’ve seen great programmers work and rarely are they fiercely typing away perfect code. In fact many pretty much hunt and peck while they cautiously work through problems and write perfect code ;) The point being that they are not letting outside pressures effect their work. The result is doing it right the first time. Give me a little time and I’ll get there.