Using tracking to develop daily habits

For quite a long time I’ve been trying to develop good daily habits, and tracking my progress. I’ve been tweaking and improving my system a lot, and at this point it has pretty much stabilized, so I think it’s time to share what I’ve learned.

For tracking I’m using a great app TracknShare, although a simple text file worked well for me too. For tracking with text I’ve used an Emacs org-mode and it looked like this:

I’ve been thinking a lot about the most important habits I want to develop, and ended up with this list:

  • Eating healthy. Not a specific diet, just no unhealthy junk food.

  • Exercise. Jogging every morning.

  • Creativity. Writing fiction, nonfiction, or jokes every day.

  • Programming. Writing some code, or learning some CS every day.

and later I decided to add:

  • Information diet. Minimizing inane rechecking of social media, internet browsing, TV. Reading books instead.

  • Meditation.

Diet and exercise are the most important habits for a healthy lifestyle, writing and programming are the most important skills I wanted to develop.

Here are some things I have realized that helped me a lot:

Keep it simple, develop one habit at a time

It’s best to develop your habits one at a time, starting with the most important one. I recommend to start with a list of 4 habits or less, otherwise it gets way too overwhelming and spreads your attention, slowing down the progress.

Arrange the habits in the order of priority, and start the day by accomplishing the first, most important one.

It’s good to dedicate a week or a month to one habit, then move on to the next one. Start with an exercise week, or a writing month.

Have 3 grades for each habit

Instead of simple yes or no checkboxes, TracknShare allows to select different “grades” for each habit. After some experimentation, I have found that having 3 grades works best for me:

When you are just getting started, it’s best to aim for the minimal, most basic version of the habit, just the action necessary to sustain it and keep thinking about it every day. This should be something you can’t fail at.

After a few days of successfully maintaining the bare minimum level, or when you are feeling inspired, you can strive to do more and accomplish the more challenging version of a habit.

For example for sport the minimal version would be “Do any sort of exercise of any kind”, and the excellent version would be “Go for a run in the park and run a certain distance”. For programming the minimal version is “Write a few lines of code of code of any kind, and commit them to github”, and excellent version is “Make progress with my AI projects”.

As you get better, the excellent versions of habit become normal, and you can set new challenges for yourself.

It’s okay to fail

Changing habits is hard, and you want it to be, because you want to set challenging and ambitious goals that make significant improvements in your life. If you succeed on the first try, you have probably set a goal that’s way too easy.

Sometimes you will fail, and it’s okay. I’ve been trying to develop my habits for years and I still often fail, nevertheless I see a massive improvement. Don’t beat yourself up, even if you have been failing for a long time — just keep tracking and strive to improve whenever you can. Sometimes it takes months to see the progress, sometimes you relapse into the old patterns, but as you look back you can clearly see a good trend, a solid improvement, and it’s extremely satisfying.

What matters is not never failing, but getting back on top of your habits quickly once you did.

If you keep failing — redefine the success. Start with a ridiculously simple, minimal version of your habit that you can’t fail to accomplish. Once you succeed with it for long enough — step up your challenge.

Your brain loves optimizing for achieving clearly established goals, every time you successfully accomplish your habit your brain receives some reinforcement, and you get better. Every time you fail it receives negative reinforcement, so this works in your favor either way.


The longer you successfully maintain the habit, the longer your “streak” is, the more motivated you are to keep it going. So a nice visual representation is extremely helpful to keep up your motivation.

Habits vs Goals

Habits are like loops that you keep repeating every day, that’s their power, but it can also be a flaw. If you want to keep moving forward — you don’t want to keep doing the same thing over and over again.

Sometimes after successfully maintaining your habits for a few days you start feeling like you are stagnating, and you may lose your motivation.

That is why it’s important to set goals and new challenges, keep improving, and making sure that your habits don’t just maintain your existing skills, but keep moving you further towards your goals.

Some habits are okay to keep on a loop, for example I’m happy with the level of exercise I’m getting right now, and I don’t care to improve, as long as it keeps me healthy I just want to maintain it.

On the other hand to make progress in writing, just writing a certain number of words per day is not enough. You need to intelligently set challenges, try to craft longer, more interesting and elaborate stories, etc. You want to set goals and apply principles of deliberate practice, just repeating the same thing over and over again isn’t enough to make you better.