07 Jan 2020

Organizing unread content

History / Edit / PDF / EPUB / BIB / 4 min read (~625 words)

How can I organize all the webpages I never read?

  1. Delete articles you know you will never read
  2. Add articles you'd like to read one day in a system such as pocket
  3. Track when articles are added to your "must-read" list, after 1 year "graduate" them by deleting them from the list
  4. Estimate how long an article takes to read and how much value you expect it will bring you
  5. Use the ROI to order your reading list

The following method applies to content online as well as offline (magazine article, books).

The first, most important, and difficult strategy, is to simply let go of those articles. Most of the time, we keep certain things out of fear of missing out. We may also think that if at some point we have free time we'll go through them, however that never happens. We always try to find something new instead. This can be seen as a way for the mind to communicate that it doesn't think it would be worthwhile to spend its time reading this content so it's better not to and instead we should look for alternative content to read.

Once you've gotten rid of all those articles you decided you would never read you can add them to tracking systems such as pocket. The idea here is that it may be possible for you to read this content, but in other contexts than when you're in front of your computer. Maybe you'd be likelier to read the article if you're waiting in line or waiting for your bus/subway. Maybe you'd read it if you're on your way to work.

Track when you add articles to your list. The older an article becomes, the less likely you will be to read it. As articles reach a certain age, it might be time to graduate them to the graveyard, in other words, to never read them. Mark them as read or remove them from your reading list.

You should have an idea of how long an article takes to read. Pocket offers an estimate of how long it takes to read an article. Knowing how long it takes to read an article is important since one of the techniques to get rid of articles is to go through all the short articles first since the time investment may be low.

As in the case of task management, the strategy we will want to adopt to organize and prioritize our reading will be related to the return on investment (ROI) metric. Each article should have an estimate of the value it will bring you to read it (e.g., how much you would have paid to acquire this knowledge), as well as an estimate of the effort (duration, e.g., how long it takes to read the article according to pocket) necessary to go through it. You can then order your reading list from articles with the highest ROI to the least ROI and feel more confident that you are reading high (expected) value content.

06 Jan 2020

How to prioritize which book to read

History / Edit / PDF / EPUB / BIB / 3 min read (~490 words)

How can I easily identify the next book I should read when I have over 500 to choose from?

  • Pick highly read books
  • Determine why you want to read, this will filter out many books from your list
  • Track how long you've wanted to read a book, you're more likely to read ones you recently added to your list
  • Fiction: pick based on your tastes of the moment
  • Non-fiction/technical: select a few books on the same topic, skim through them, then pick the best

My first heuristic when deciding which book to read is to consider how many people have already read it by using a site such as goodreads. The reason is that I want to read books that I may be able to discuss with others who will also have read the book. Reading niche books might be interesting, but it makes discussing them a lot more difficult.

For fiction books, I read books from a collection I've enjoyed at least one book. You could basically consider it book "social" proofing. For new books that are not part of a collection and from authors I've never read, I mostly decide based on my interests of the moment.

For non-fiction/technical books, I skim through a few books on the same topic and determine which book I feel the most confident will provide me with the most information presented in the most appropriate and succinct way.

Determining why you want to read will help you figure out what the most appropriate next book might be. You may want to relax and thus reading a technical book may not be appropriate while a fiction book would be. You may want to learn a new programming language and thus reading about a programming language you already know will not achieve that goal.

I suggest using a book tracker like goodreads as it will allow you to track when you added a book to your list. This will let you know how long the book has been sitting in your reading list, waiting to be read. Generally, the longer a book stays "shelved" the less likely it is you will ever read it. This generalizes to stating that most books are read in a LIFO (last in, first out) fashion.

04 Jan 2020

How to prioritize numerous tasks

History / Edit / PDF / EPUB / BIB / 4 min read (~702 words)

How do you prioritize things when there are so many of them competing against one another?

My approach to task prioritization, assuming that you have a list of tasks with no other information, involves adding information that will help you prioritize them.

Assuming you are using an issue tracking system like Redmine, Notion.so or JIRA, I would add two new properties to each task: important and urgent. This approach is based on the Eisenhower method of time management. You will want to go through all the tasks and determine whether they are important and whether they are urgent.

With this first pass of information added to your tasks, you should be able to prioritize them in the following order:

  1. Important/Urgent
  2. Important/Not urgent
  3. Not important/Urgent
  4. Not important/Not urgent

You should avoid as much as possible spending your time on tasks that are not important.

This is the first step to prioritizing your task. It is a lightweight approach to prioritization which will also allow you to consider whether a task has any importance, something that is sometimes not considered and leads people to work on low priority/importance tasks.

At this point, we now assume that you have a lot of tasks that are not urgent but important. So many in fact that it is hard to decide which ones to do. It may feel like you're back to square one, but now the important/urgent properties are not useful to order these tasks anymore since they all have the same value. This is where the return on investment (ROI) metric is useful.

Similar to the important/urgent properties, we will add two new properties: estimated value (in dollars) and estimated effort (in hours). A third field, the ROI, is automatically derived from the previous two by computing estimated value divided by estimated effort.

For each task, you will want to estimate to the best of your knowledge how much effort would be required to complete the task, as well as how much value you expect it to bring. Once you have those numbers for all your tasks, you should be able to order them by descending ROI. This will provide you with the list of tasks you should work on in order, as they are the ones likely to provide you with the highest amount of ROI, that is, the most value for the time spent.

If at this point you still have many tasks that have the same ROI, you can first try to tackle the ones with the least amount of effort to get them out of the way and have quick wins.

If you still have too many of your top ROI tasks with the same ROI value, my current approach cannot deal with this situation. It becomes a question of defining a higher level roadmap, determining which collection of features may have more impact than others, etc. It may also be possible to look into additional properties of the task, such as how long since they've been created and left incomplete.

03 Jan 2020

When to stop working on a task

History / Edit / PDF / EPUB / BIB / 3 min read (~512 words)

Given that you define a return on investment (ROI) on a task, when should you stop working on a task and abandon it given its cost?

Let's assume that your task has an estimate of effort (in hours) and an estimate of value (in dollars). The ROI is defined as the value divided by the effort ($/h).

Before starting any task, you should define what is the minimal ROI a task should have to be considered (i.e., your ROI threshold). If you value your time at 50 $/h and a task has an estimated ROI of 25 \$/h, then it is probably not worth your time to work on this task. Any task with a ROI superior to 50 $/h is considered worthwhile.

A task should be reviewed at half the estimated effort duration. If you estimated the task will take 8h, then at 4h you should reevaluate whether you think you will finish the task in the remaining 4 hours. If 8h still stands, then you can proceed. If you believe you can accomplish the task in less time, then update your effort estimate. This should by the same act increase its ROI. If on the other hand you think that the task requires more time, then update the effort estimate as well. If you have increased your effort estimate, then I suggest reevaluating the task at the midpoint of the remaining effort (e.g., an 8h task updated to 12h would be first evaluated at 4h, then at 8h).

Since you are updating your ROI estimate, you can also update your estimate of the value of the task you are working on. If it is a large task, maybe after having prototyped the idea you realize it will not provide as much value as anticipated. You can then review its value down. If on the other hand you get excited by what it brings to the table, by all means, increase its estimated value.

Once you have adjusted the estimated effort and value, take a look at your estimated ROI. If it has gone below your threshold, consider dropping it. Investing additional time in it may provide less value than working on a new, more valuable task. If on the other hand, the ROI is still superior to your threshold, then continue working on the task.