Why I use markdown for my todo lists

In the world of productivity, one of the most important tools each person should have is a task manager. It’s a stretchable definition, you can track every single task in your life or just have a general idea of what projects you are working on, but no matter how you organize your tasks, you should have one. And here are a few reasons why:

  • It makes sure you won’t forget the task. Our brains have limited RAM available and by writing the task into long-term storage, we can free our precious RAM yet make sure, that we won’t forget to send the invoice.

  • It helps you to see everything you have to do from a bird-eye view and decide what is the most important stuff to do right now, and what you can get rid of.

  • I also find it very calming to write down all my tasks for the day, if I feel overwhelmed. Seeing it on paper makes it look like much less work, that my brain makes me believe it is.

And I’ve gone through so many task tracking tools! Everyone’s brain works a tiny bit different from the rest of us, and that means everyone has their very own preferred way of storing tasks. But I’ve stuck with two: trello & markdown files.


If you haven’t heard about trello before, go check it out right now! In short, it’s a free tool, that is very bendable to your own will, and I had no idea that I was supposedly using it wrong until I’ve heard it mentioned on one of the Cortex podcast episodes. The basic premise is that you have a bunch of index cards, that you can attach anything you want (including stuff like checkboxes, etc), and you create a bunch of columns, that you can move the cards between.

The way I use it, is that I have a board for major topics, like future projects, and in the board, each column is a category, like programming, reading list, etc. I’ve also used to have a board for each project I was working on before I switched to markdown.


Well, I’ve not exactly switched. I’d say I’ve replaced it in the task of keeping track of my development tasks. Trello is now home to my future ideas & some more general stuff, but I update it much less frequently, that I’ve used to.

I do not know, how it all started. I do not know when exactly either, but I think it’s safe to assume the start of the Java branch of Burning Knight was the time I made the switch. These days in the root directory of my projects I usually have a file called todo.md (or multiple, depending on the project complexity). It’s nothing fancy, it usually looks something like this:

* Fix wall clipping bug in the hub
* Allow escaping from dialogs

# Overscope
* Implement online PVP
...1k more lines...

It doesn’t even matter, that it’s markdown, it’s just really helpful for me to have a * at the beginning of each task to separate them all out. Sometimes I have more complex structures in there as well:

* Bugfixes {
 + Emeralds dropping twice
 + Crash reporter not starting up

And it is insanely, INSANELY convenient for me to update my todo stuff because of this. Instead of opening a browser and going to the trello board, I can just quickly cut the line out of the file, or add a new one. And since I’m editing the code anyway, having it in the root of the project means I always can access it really quickly!

Opening a browser isn’t such a big issue, you say? You have it open most of the time anyway? Well, in my situation, no. You see, right now I’m working on a really old laptop, that dies almost instantly if I try to open any browser on top of my open IDE. That means no quick googling and especially no quick todo editing in trello. I’m looking into getting a new laptop, but for the past 3 years, the reality has shaped my toolset to be as RAM & CPU efficient as it can be.

Another huge benefit comes in due to my heavy usage of git: I can go back in time and see how my todo looked 3, 4, 10 months ago. And it’s insanely useful!

There is always space for improvement

I’ve been dreaming for a long time about improving this system. You see, it works amazingly if you have just one ongoing project. But as soon as you introduce another one, it starts to get harder to understand the whole picture of your todo list, and it just keeps getting harder and harder with each project you add.

So I’ve been thinking about writing some kind of a solution, that I could tell paths to all my todo files, and that would allow me to view & edit them as a single huge todo file. It would keep all the benefits of the separate todo files per project while fixing my issues with estimating the most important project to work on each morning.

But for now, it will sit in my projects ideas list. And what about you? What do you use for your task management? I would love to hear how you decide to work on, please let me know either in the comments or on twitter!

Join the discussion!