Working Backwards


One of the Amazon values is being “Customer-Obsessed.”

Leaders start with the customer and work backwards.

The basic idea is to start with imagining what you want the customer experience to be, and then work backward to come up with changes to the software to make it happen.

(Now, I’m about to jump into a seemingly unrelated topic, but bear with me. It’ll connect.)

A fundamental principle of neural networks is backpropagation.

Our goal with backpropagation is to update each of the weights in the network so that they cause the actual output to be closer the target output, thereby minimizing the error for each output neuron and the network as a whole.

In simpler terms:

  1. you look at the difference between the output your model produced and the output you wish the model will produce, and
  2. you tweak the model to minimize that difference.

Specifically, you start by looking at the final step you took to produce the model’s output. You tweak this step. Then, you look at the second-to-last step and do the same. You work backwards to get to the first step, and you make the appropriate adjustment there, too.

Sound familiar?

I’ve been thinking about these ideas, and to me, they reveal an effective way of solving problems: starting with the result you want, thinking about where you are now, and adjusting your approach. The key is to start with the result, not where you are now, and then work backward.

For example, let’s say you want to clean your room. There are a couple of different ways you could achieve this:

  1. Just start somewhere and start decluttering and dusting surfaces.
  2. Plan out the different tasks you’ll have to do and make a checklist.

Alternatively, if you applied backpropagation to this task, you’d close your eyes and imagine what you want your room to look like. You’d think about all the details of the room – maybe you want more light in your room. Maybe you want your closet to have more room in it. Of course, you’d want the surfaces to have less dust on them, but maybe you’d also want fewer surfaces on which the dust can collect.

This reveals a lot more tasks you could add to the checklist. In the end, you’d achieve a more satisfactory result, too.

This was just a simple example, but you could use this for career planning, personal finance, and self-education.

For example, if you want to learn a foreign language, you could start with what level of fluency you want to achieve. Or, you could start with what you want to do with fluency of this language — do you want to speak with patients because you’re a nurse, or do you want to visit a country in which this language is spoken? Your self-education plan would be different depending on the answer.

Of course, the backpropapation method may not be suitable for every problem you want to solve. However, I think this is a valuable tool to add to your tool belt.