I built a web app called Blogosphere over the past weekend. It took two days to not just build the app but also set up the whole infrastructure on a VPS with monitoring and alerting along with CI/CD. Without going too much into it, CI/CD allows me to make a change and see it live within 2-3 minutes (this will come up later in this post).

This is not to highlight how quickly I could build the app. Many others could build it in a day. I mention this because I had the idea for this app back in December (three months back).

If it only takes two days to build, why did I not build it earlier? I asked myself this question for the 879th time. Not this specific question but the core of it.

Why did I not do something earlier if all it takes is just {some small duration}?

And that’s when I realized I have a Start-Stop Problem. It’s not the first time I came to this realization. It’s the first time I came up with this phrase for what I already know.

What is the Start-Stop problem?

Something that could be done relatively easily doesn’t get done because you don’t start working on it. That something gets done much quicker than expected because once you start, you cannot stop working on it.

This is a constant battle.

Most people acknowledge that procrastination - not starting something - is a problem. What people don’t realize is that not stopping is also a problem, albeit a much smaller one. We will get to this later.

Why can we not start something?

There are two kinds of tasks:

  1. Things we really want to do
  2. Things we need to do

We are not going to discuss the second kind in this post, although most of it should apply. It’s a topic that needs a separate blog post. In the meantime, there are many books and some good talks on this topic. Here’s one of my favorite talks: Inside the Mind of a Master Procrastinator.

We are going to talk about the first kind of task - things we really want to do.

How to start doing X

After analyzing my patterns in the past and reading many blog posts, it comes down primarily to two things:

  1. Friction to start
  2. Time to first win

There are other things that contribute to it as well but the effects of those are negligible.

For instance, yak shaving is a problem. When you want to get started, you might get diverted or nerd sniped into something else. This is a concern but typically, when you yak shave, you still have a high chance of starting X more energised.

In my case of building the Blogosphere app, it was unnecessary to set up monitoring on day one. But I did it anyway. Once I set it up, I had extra incentive to get the project live so that I can see monitoring come alive with real numbers.

Everything else, like social media, is a challenge but at it’s core, they still fit in the two buckets I listed above (friction to start and time to win). Social media wins your attention because it excels at these two things. Starting is as simple as opening the app. Time to win is the first item you see in your feed.

1. Friction to start

It’s the time it takes to start doing X. In other words, what do you need to do to actually start doing X?

Take for example, building an app. We often think sitting in front of a computer is the first step to start building an app. This is far from the truth. You need to open your IDE, start a new project. Or if you’re working on a new feature, pull the latest code -> create a branch -> open the branch in your IDE -> start writing code.

In this case, you need to complete multiple steps, often relying on external slow systems - time to pull the code, how fast your IDE starts, before you can get to the actual act - writing code.

To take a non-coding example, let’s say you want to write a blog post. Staring at a blank screen is an age old and often discussed problem. But before you even get to that, you have to open your publishing tool, whether that is opening WordPress (I’m sorry) or opening your static site code in your editor and creating a markdown file with the necessary frontmatter.

In this case as well, there is friction to start.

Compare that to Twitter or Instagram. It takes one click to open the app. This is what we are competing with. You would not subconsciously open Twitter or Instagram if you had to go over multiple steps to open the app (friction).

If you want to start doing X, it needs to be quick - a breeze - to get started.

There are two ways to optimize for this:

  1. Reduce friction to do X
  2. Increase friction for distractions

If starting to do X is like losing weight, reducing friction to do X is like reducing calorie intake and increasing friction for distractions is like exercising. Weight loss is 80% diet and 20% excercise.

I post only occasionally on this blog having decided multiple times to post more frequently, like a YouTuber who uploads a video after three months promising that they will start uploading more often. It’s not that I don’t have things to write about. But the process to start writing involved lot of friction. I have to open the blog folder in the editor, create a markdown file with the frontmatter, and then start writing.

I was approaching this the wrong way. I questioned myself: Why do I need to open a markdown file in the right folder to get started with writing?

Starting to write only requires a pen and a notebook. This switch in perspective changed everything.

Getting started now is as simple as opening the notebook and writing. This beats unlocking the phone and opening an app.

My process now is to jot down the points I want to cover. For example, here’s what I wrote down for this post, at the risk of showing you my terrible handwriting.

notes for this post on start-stop problem

As it is obvious from the notes, if you were even able to read it, there’s no structure, grammar, anything to it. That’s not the goal. It’s about getting down the quick thoughts onto the paper. If you aim for well written points, you have a higher chance of staring at a blank paper (more on this in the next point - time to win).

Take the process to start something and strip it down to bare minimum to accomplish the same goal.

This is how you reduce friction.

To increase friction for distractions, you can do something simple like removing the app shortcut from the homepage and adding it to a folder that’s not easily accessible. You could also do something extreme like using a basic phone. There are options in the middle like apps that intercept your disctraction app and show a 5 second countdown before opening the app.

Choose what works for you. I don’t have Twitter or Instagram installed on my mobile. I use them via browser. It’s not a pleasant experience - which is the goal for this step.

2. Time to first win

You’ve got started which is the harder of the two problems. In most cases, it will carry you through to the finish line.

This trick is for the hard things - things that take more work.

For this, let’s learn from the social media apps. There’s a reason they are addictive.

The time to win, or in the case of the social media apps - the time to dopamine rush, is almost zero.

As soon as you open, it’s right there. The first tweet or an Instagram post/reel. Instant gratification.

Don’t like what you see? Just swipe to the next reel. Scroll to the next tweet.

While it’s close to impossible to get such instant gratification from the things we typically want to do, we want to try and optimize for a quick win.

The sooner you can see the results, the stronger your urge to fully see it through.

James Somers writes:

The obvious benefit to working quickly is that you’ll finish more stuff per unit time. But there’s more to it than that. If you work quickly, the cost of doing something new will seem lower in your mind. So you’ll be inclined to do more.

The converse is true, too. If every time you write a blog post it takes you six months, and you’re sitting around your apartment on a Sunday afternoon thinking of stuff to do, you’re probably not going to think of starting a blog post, because it’ll feel too expensive.

- Speed matters: Why working quickly is more important than it seems

At the beginning of the post, I mentioned that setting up CI/CD (automatic instant deployments) for a sideproject, especially when just getting started, might be an overkill. It is. But it allows me to see the results of the changes in production almost instantly. There’s a huge difference in seeing your changes in local vs in production.

The biggest companies spend millions to make their CI/CD systems faster because if it takes hours instead of minutes to see the results, the less often you will do it. The converse is true: If you can make a change and see it quickly, you will likely work on more items. Speed really does matter.

In the case of writing a blog post, take again for example this post, if I can only see the result at the end of writing the post, it will take more energy to keep going.

By taking notes quickly, by not pursuing perfection, by simply jotting down the thoughts in the order they come, I get things on paper and I can sense the final post already.

It is not perfect but it gives me some gratification almost instantly, enough to run the remaining distance of writing the actual post.

The idea is to break down the task in such a way that you can get a quick win, and then another, and then another, instead of waiting till the end of it to see any result.

If you are building a full stack app, instead of starting with the database schema which is an obvious choice for many, maybe start with the UI so you can visually see the result.

If you are writing a screenplay, try writing the sequences first (The Sequence Approach) before you write the first scene.

How to stop doing X

…or why you should stop doing X?

Why put all the effort to start doing something only to put intentional effort to stop doing it? Because knowing when to stop is critical. To be clear, I’m not talking about entirely stopping doing something. It’s taking a pause to resume again.

For many people, this is likely not a problem. Feel free to skip this section. Not stopping is not a major problem when compared to starting. But it is worthwhile to talk about.

Here’s the problem I have: Once I start working on something, especially big projects, I work long hours, often sleeping very late or not sleeping.

There are consequences to this. Sure, I’m doing what I love. Sure, I’m in the flow. But I eventually lose steam, and not get back to the project again.

You cannot sprint a marathon. You want to stop doing something for two reasons:

1. Avoid burnout

Burnout is real. I’ve heard many people say that burnout doesn’t come from working long hours. It comes from working on unimportant or not meaningful things. That might be true. But there is a threshold to working long hours. Do it long enough and you will burnout even if it’s something you are most passionate about.

I love pizzas. There is certainly a limit of how many days I can eat pizzas consecutively eat before I start hating pizzas.

2. Avoid blank screen problem

If you are writing a screenplay, try leaving a chapter unfinished at the end of the day. When you go back to write the next day, it’s easier to start because you are not staring at a blank paper.

It’s good to stop when you know what needs to be done next. Use stopping as a catalyst for starting the next day.

The Start-Stop Solution

I started with the start-stop problem and I want to end it with a summary of the start-stop solution so in case you did not read the whole thing, this tweet sized summary should still convey the core.

And to do that, I want to use this highlight I came across on Kottke.org which is a highlight from this talk about making a city more walkable.

In the typical American city, in which most people own cars and the temptation is to drive them all the time, if you’re going to get them to walk, then you have to offer a walk that’s as good as a drive or better. What does that mean? It means you need to offer four things simultaneously: there needs to be a proper reason to walk, the walk has to be safe and feel safe, the walk has to be comfortable, and the walk has to be interesting.

- 4 ways to make a city more walkable

In the typical world, in which a wide range of dopamine pumping entertainment is available on your fingertip and the temptation is to scroll for instant gratification, if you’re going to get yourself to do something meaningful, then you have to offer an experience that’s as good as an Instagram reel or better. What does that mean? It means you need to offer yourself two things simultaneously: there needs to be a way to start doing what you strive to as quickly as possble without any friction, and the act of starting should have immediately results that can be experienced.