Log Yourself

In my last post I briefly wrote about an impostor syndrome. Now, I would like to describe a basic technique that helps keep deceiver in his solitary cell. By no means this is a complete solution, this is just one element I believe is valuable on the road to beating the impostor syndrome and becoming a better programmer.

Why do we keep logs?

First, let’s briefly and from a high level perspective, consider why do we keep logs in our software. From my experience we keep logs to:

  • Keep track of the fragile/important events (and data input, output, results and whatnot).
  • Debug the application.
  • Inform about errors.
  • Measure time of processes.
  • Feed analysis.

Before you will rightfully bash me, please bear in mind that this is just loose description needed to draw some parallels.

One should also remember a handful of good practices. Log always should be considered in context (and carry this context). Messages should be concise, descriptive, easy to read and easy to parse.

The basic idea is simple - start keeping log of yourself. This is not personal, touchy-feely diary. It will help you detach and be both more realistic and objective. Being honest, many programmers know more about software that they are currently building than about software that is running within their minds. That calls for some priority check.

Is it even worth it?

I could sum up this paragraph in one word: Yes, but I am afraid that I would not convince that analytical mind of yours. Before considering benefits, let’s start with another question

What should I log?

As little as possible, but no less.

Many people have the attitude of “all or nothing” and usually they end up with the latter. Keeping a personal log is unfortunately manual, that means it depletes our discipline muscle. That is why I consider keeping small and brief log when starting. After some time, when it’ll grow onto you by becoming a habit you should add more elements that you want to track. I would start with only two questions:

  • What is one thing making you anxious, that you have to do today?
  • How actually the anxiety causing action went yesterday?

On the first day you can skip second question.

Those questions are aimed to make one think about thinking and think about feeling. This is quite a small step to confront your thoughts and in the result tame stream of thoughts.

In order to make it simple I’ve prepared Evernote template, so you do not have excuse of But there is so much overhead to start. There is none, simply start today.

When should I log?

Doing this at fixed, scheduled time is a good idea. Doing this as a first thing in the morning (and later on last thing in the evening) is a better idea.

Mindset

How you approach logging is important. Every time you sit down to write down something in a log keep your mind fresh, try to avoid leaning on yesterday’s answers. The goal here is not to be just done with it, it is to reflect.

Next steps

When keeping a log will become a natural habit, it means that time to expand has come. Fortunately, it is not rocket science. Simply add more things you would like to keep track of. As an extra step you can log two times per day - in the morning, and in the evening. Here you have link to Evernote notebook that contains starting log and for those more advanced - morning and evening log is included.

Okay, but why?

This is completely valid question, why go through all of that? Let me draw a short parallel - when you start programming you finally get to the point in which you have to abstract things out. At the beginning, it looks like a quite advanced concept and seems like you need a very keen eye to see patterns of inheritance and composition. But in the end it makes your code more readable, easier to understand, easier to change and has a number of other benefits that I don’t have to convince you about. It is quite similar when you apply abstraction or meta thinkinking to yourself. When you start it, feels clumsy, but when you finally get a grasp of it gives you a number of benefits like (those were observed on myself):

  • It makes easier to confront your unpleasant thoughts and feelings
  • It makes easier to take criticism, especially the constructive one
  • It teaches you to put things into perspective
  • It makes you think about your thoughts and feelings and in effect being more objective
  • It keeps you motivated

Afterthought

To briefly sum up, I do consider keeping a log/journal as a quite important tool in development both on personal and programming plane. It next installment we will take a look on dependency injection and how externalize willpower and discipline.


Do you want more?

If you like this content, subscribe to receive updates when more goodness like this is published. No spam, ever.


Leave a Comment