Hide table of contents

TLDR

  • Final Version Perfected (FVP) is a highly effective algorithm for deciding which tasks from your To-Do lists to do in what order.
  • The design of the algorithm makes it far more efficient than exhaustive ranking, while (in my experience) far more effective than just reading through the tasks and picking one out.
  • FVP is most useful when you have a large number of tasks to choose from, don’t have time to do all of them, and are initially unsure about which is best.
  • I find FVP very effective at overcoming psychological issues like indecision, procrastination, or psychological aversion to particular tasks.
  • Currently there are limited online tools available, and I mostly use FVP with paper lists. Ideas (or tools) for better online execution of FVP would be very valuable to me.

Introduction

Execution is the Last Mile Problem of productivity infrastructure. You can put as much effort as you like into organising your goals, organising your To-Do lists, organising your calendar, but sooner or later you will be presented with more than one thing you could reasonably be doing with your time. When that happens, you will need some sort of method for choosing what that thing will be, and actually getting started.

Most people, I think, face this problem by either just doing the thing that is top-of-mind or looking through their To-Do list and picking something out. This works fine when the next thing to do is obvious, and you have no problems getting started on it. But when you have many potential things to do and aren’t sure which is best, or when you kind of know what the best next thing is but are avoiding it for one reason or another, you need a better system.

That system needs to be quick to execute, easy to remember, and effective at actually having you do the best next task. It needs to be robust to your psychological weaknesses, minimising procrastination, indecision, and ugh fields. It needs to be efficient, requiring as little work as possible to identify the most valuable task.

Enter Final Version Perfected.

The FVP Algorithm

The algorithm for executing tasks under FVP is pretty simple. You can find a description of it by the designer here, but here’s my version:

  1. Put all the tasks you have to choose from into one big unsorted list.
  2. Mark the first item on the list. Don’t do it yet.
  3. For each subsequent item on the list, ask yourself, "Do I want to do this task more than the last task I marked?" If yes, mark it. If no, don't mark it. Move on to the next item.
  4. When you reach the end of the list, trace back up to find the bottom-most marked task. Do it, then cross it off the list.
  5. Beginning with the next unmarked task after the task you just crossed off, repeat step 3, comparing each task to the bottom-most uncrossed marked task (i.e. the one prior to the one you just crossed out).
  6. Go to step 4. Repeat until you run out of time or list items.

In FVP, then, you perform a series of pairwise comparisons between tasks, in each case asking whether the new task is something you want to do more than the old task. The “want to do more than” comparison is deliberately vague: Depending on context, it might be the thing that would best move your project forward, the thing that would have the worst consequences if you didn’t do it, or the thing you would most enjoy doing. The key thing is that at each stage, you’re only comparing each task to the most recent task you marked, ignoring all previous tasks.

I'll talk more in a moment about why I think this algorithm is a good one, but first, let’s work through an example. (If you're sure you already understand the algorithm, click here to go straight to the pros and cons.)

A long-ish example

Let's say this is my to-do list for today:

  • Buy milk
  • Finish term paper
  • Play video games
  • Work out
  • Save the world
  • Walk the dog

I start by marking the first item:

  • × Buy milk
  • Finish term paper
  • Play video games
  • Work out
  • Save the world
  • Walk the dog

Then I compare it to the next item on the list. Which do I want to do more, finish the term paper or buy milk? Well, the term paper is due today, and I don't need milk until tomorrow, so I decide to do the term paper first.

  • × Buy milk
  • × Finish term paper
  • Play video games
  • Work out
  • Save the world
  • Walk the dog

Moving on to item 3. I already decided I want to finish the term paper before buying milk, so I can ignore the milk for now. Do I want to play video games or finish my term paper? Well, in some sense I want to play video games more, but my all-things-considered endorsement is to finish the term paper first, so I leave item 3 unmarked.

Next, item 4: do I want to finish the term paper or work out? Well, in some sense I'd rather not do either, and in another sense the term paper is more urgent, but working out is important, I've heard it has cognitive benefits, and I know from experience that if I don't do it first thing I won't do it, so it takes precedence:

  • × Buy milk
  • × Finish term paper
  • Play video games
  • × Work out
  • Save the world
  • Walk the dog

Item 5: oh yeah, I forgot, I need to save the world today. Damn. Well, I can't work out if there's no world to work out in, so I guess I’ll do that first.

  • × Buy milk
  • × Finish term paper
  • Play video games
  • × Work out
  • × Save the world
  • Walk the dog

Ditto for walking the dog: much though I love him, I won't have anywhere to walk him if I don't save the world first, so that takes precedence again.

I've finished the list now, so it's time to do the last item on the list. Looks like that's saving the world. Luckily, it doesn't take long:

  • × Buy milk
  • × Finish term paper
  • Play video games
  • × Work out
  • × Save the world  ✓
  • Walk the dog

Now that I've done the highest priority task on the list, I go back to FVP to determine the next one. There's actually only one comparison I need to make: work out or walk the dog? Walking the dog can wait until the evening, so it’s time to head to the gym.

  • × Buy milk
  • × Finish term paper
  • Play video games
  • × Work out  ✓
  • × Save the world  ✓
  • Walk the dog

Again, there's only one more comparison I need to do to determine my next top task: do I want to finish my term paper, or walk the dog? And again, walking the dog isn't that urgent, so I spend a few hours on the term paper.

  • × Buy milk
  • × Finish term paper  ✓
  • Play video games
  • × Work out  ✓
  • × Save the world  ✓
  • Walk the dog

Now I'm all the way back to the top of the list! But now there are two more comparisons to make to decide on the next task. First, do I want to buy milk, or play video games? I've worked pretty hard so far today, and buying milk isn't that important, so let's play games first:

  • × Buy milk
  • × Finish term paper  ✓
  • × Play video games
  • × Work out  ✓
  • × Save the world  ✓
  • Walk the dog

Finally, do I want to walk the dog or play video games? The dog has been waiting for hours for a walk now, and I could do with some fresh air, and I'd feel guilty just gaming without taking him out, so let's do that first:

  • × Buy milk
  • × Finish term paper  ✓
  • × Play video games
  • × Work out  ✓
  • × Save the world  ✓
  • × Walk the dog

There's no unmarked tasks in the list now, so to finish I just work up the list in order: first walking the dog, then playing games, then, finally, buying milk.

FVP: Why and why not

The usefulness of FVP depends on a few key assumptions.

  • Firstly, the algorithm assumes your preferences are transitive, and that you can accurately assess the value of each task according to your preferences. These are pretty fundamental assumptions that will be integral to almost any list-based execution system. In reality, your preferences probably aren’t quite transitive, but hopefully they are close enough that pretending they are is reasonable. As for accurately assessing each task, well, no execution algorithm can prevent you from making any mistakes, but FVP is more effective than most at eliciting your best guesses.
  • Secondly, FVP assumes that your preferences are stable over the timeframe you're using it. If your preferences shift substantially over that period, such that you need to re-prioritise among the existing tasks on your list, you'll need to throw out your previous FVP and start again. This places some constraints on the timescale you can organise using a single FVP iteration: I seldom stick with the same iteration for longer than a day. (Note, though, that FVP can handle the addition of new tasks quite easily, as long as they don’t alter the existing order.)
  • Thirdly, the value of FVP is greatest when you are unsure about which task you should do next, and especially when you don’t have time to do every task you might want to do that day. I find FVP most useful when I have a lot of different tasks competing for my time; it is much less useful when my time is pre-allocated to a single, well-planned-out task.

When these conditions are met, FVP is a very effective method for guiding action. It is both efficient and exhaustive: guaranteed to identify the top-priority task while avoiding most of the work involved in producing a complete ranking. It is a simple algorithm, easy to remember and quick to perform. After doing it for a while, I find it scarcely requires conscious thought – but still reliably identifies the most valuable task for me to work on.

The biggest benefit I get from FVP, though, is how much easier it makes it to do important things I'd rather avoid. There is something about a bald, pairwise comparison between two tasks that is highly effective at overcoming my aversion to difficult things. If an important but unpleasant task is nestled within a long to-do list of minor-but-rewarding busywork, it is easy for my eye to skip over the difficult task, defer it till tomorrow, and work on something more pleasant instead. It's much harder to do that when comparing the important task to each minor task in isolation.

FVP is also good at minimising time lost due to indecision. When presented with a menu of tasks to choose from, it can be quite hard to select a single task to work on first. When that choice process is reduced to a series of simple pairwise comparisons, the choosing process as a whole becomes much easier. And, once I've finished with FVP and selected a single winning task, there's an impetus towards starting that makes me much less prone to procrastination.

One last brief note on infrastructure: due to its relative obscurity, I haven’t found great online tools for FVP. Complice’s starred-task system can be passably adapted to the algorithm, but in general I’ve found physical paper lists to work best. When I was at work I would print off my Todoist task lists and use those; now I’m working from home I mostly write them out by hand. This is kind of time-consuming and redundant, so if you dislike paper notes and don’t have access to a printer it might be a significant mark against FVP.

I’d really love it if someone created a great online tool for FVP or integrated it more formally into an existing productivity application, but I don’t expect that to happen any time soon. In the meantime, if you have ideas for existing ways to execute FVP online, I’d love to hear about them!

36

0
0

Reactions

0
0

More posts like this

Comments3


Sorted by Click to highlight new comments since:

Thanks a lot for writing this! 

I read this post back in 2020 and I've been using FVP regularly since then, so you've had a decent bit of impact on my life!

For a computer implementation you could probably use a more intricate algorithm, like a binary heap, to pick faster. Although that may be less psychologically convincing. 

The link to the original blog post seems to be down. 

Curated and popular this week
 ·  · 4m read
 · 
TLDR When we look across all jobs globally, many of us in the EA community occupy positions that would rank in the 99.9th percentile or higher by our own preferences within jobs that we could plausibly get.[1] Whether you work at an EA-aligned organization, hold a high-impact role elsewhere, or have a well-compensated position which allows you to make significant high effectiveness donations, your job situation is likely extraordinarily fortunate and high impact by global standards. This career conversations week, it's worth reflecting on this and considering how we can make the most of these opportunities. Intro I think job choice is one of the great advantages of development. Before the industrial revolution, nearly everyone had to be a hunter-gatherer or a farmer, and they typically didn’t get a choice between those. Now there is typically some choice in low income countries, and typically a lot of choice in high income countries. This already suggests that having a job in your preferred field puts you in a high percentile of job choice. But for many in the EA community, the situation is even more fortunate. The Mathematics of Job Preference If you work at an EA-aligned organization and that is your top preference, you occupy an extraordinarily rare position. There are perhaps a few thousand such positions globally, out of the world's several billion jobs. Simple division suggests this puts you in roughly the 99.9999th percentile of job preference. Even if you don't work directly for an EA organization but have secured: * A job allowing significant donations * A position with direct positive impact aligned with your values * Work that combines your skills, interests, and preferred location You likely still occupy a position in the 99.9th percentile or higher of global job preference matching. Even without the impact perspective, if you are working in your preferred field and preferred country, that may put you in the 99.9th percentile of job preference
 ·  · 5m read
 · 
Summary Following our co-founder Joey's recent transition announcement we're actively searching for exceptional leadership to join our C-level team and guide AIM into its next phase. * Find the full job description here * To apply, please visit the following link * Recommend someone you think could be a great fit here * Location: London strongly preferred. Remote candidates willing to work from London at least 3 months a year and otherwise overlapping at least 6 hours with 9 am to 5 pm BST will be considered. We are happy to sponsor UK work visas. * Employment Type: Full-time (35 hours) * Application Deadline: rolling until August 10, 2025 * Start Date: as soon as possible (with some flexibility for the right candidate) * Compensation: £45,000–£90,000 (for details on our compensation policy see full job description) Leadership Transition On March 15th, Joey announced he's stepping away from his role as CEO of AIM, with his planned last day as December 1st. This follows our other co-founder Karolina's completed transition in 2024. Like Karolina, Joey will transition to a board member role while we bring in new leadership to guide AIM's next phase of growth. The Opportunity AIM is at a unique inflection point. We're seeking an exceptional leader to join Samantha and Devon on our C-level team and help shape the next era of one of the most impactful organizations in the EA ecosystem. With foundations established (including a strong leadership team and funding runway), we're ready to scale our influence dramatically and see many exciting pathways to do so. While the current leadership team has a default 2026 strategic plan, we are open to a new CEO proposing radical departures. This might include: * Proposing alternative ways to integrate or spin off existing or new programs * Deciding to spend more resources trialling more experimental programs, or double down on Charity Entrepreneurship * Expanding geographically or deepening impact in existing region
 ·  · 6m read
 · 
I am writing this to reflect on my experience interning with the Fish Welfare Initiative, and to provide my thoughts on why more students looking to build EA experience should do something similar.  Back in October, I cold-emailed the Fish Welfare Initiative (FWI) with my resume and a short cover letter expressing interest in an unpaid in-person internship in the summer of 2025. I figured I had a better chance of getting an internship by building my own door than competing with hundreds of others to squeeze through an existing door, and the opportunity to travel to India carried strong appeal. Haven, the Executive Director of FWI, set up a call with me that mostly consisted of him listing all the challenges of living in rural India — 110° F temperatures, electricity outages, lack of entertainment… When I didn’t seem deterred, he offered me an internship.  I stayed with FWI for one month. By rotating through the different teams, I completed a wide range of tasks:  * Made ~20 visits to fish farms * Wrote a recommendation on next steps for FWI’s stunning project * Conducted data analysis in Python on the efficacy of the Alliance for Responsible Aquaculture’s corrective actions * Received training in water quality testing methods * Created charts in Tableau for a webinar presentation * Brainstormed and implemented office improvements  I wasn’t able to drive myself around in India, so I rode on the back of a coworker’s motorbike to commute. FWI provided me with my own bedroom in a company-owned flat. Sometimes Haven and I would cook together at the residence, talking for hours over a chopping board and our metal plates about war, family, or effective altruism. Other times I would eat at restaurants or street food booths with my Indian coworkers. Excluding flights, I spent less than $100 USD in total. I covered all costs, including international transportation, through the Summer in South Asia Fellowship, which provides funding for University of Michigan under