Break bad habits by making them annoying

Want to finally stop going on Twitter every single hour of every single day? I can help you!


July 1, 2020 - 6 min read
productivity
Break bad habits by making them annoying

Breaking bad habits can be really hard. Willpower alone is often not enough to get the job done or it simply takes too much of it. Willpower is also often regarded as finite. If you spend all of it on forcing yourself to not go on Twitter then you won't have enough of it left to make yourself to go to the gym later. I often fall into this trap myself. I can quite easily make myself avoid going on social media first thing in the morning but then I am rested and my mind is fresh. After a long day of work it is a completely different story. It's so easy to reach for my phone while waiting for my dinner to get ready(those pizza rolls take forever!). I'm tired, hungry and the work day has taken all of my effort.

I've illustrated this in this graph that I made myself:

For me willpower alone only works when there is some kind of reward or tangible thing waiting at the end of the road. "Stop visiting Twitter in excess and you'll get more things done" is too abstract for me. Yesterday-me is not the boss of me; I'm going on Twitter! Since most of the bad habits don't have any immediate rewards for breaking them then I had to think of something else.

What I like to do instead is to make the bad habits harder.  Solving the phone problem after work for example is easy. Just turn the phone off and put it on the top of a bookcase or something. Now I have to go get a stool AND wait for the phone to boot. (Do not climb Billy bookcases kids!).  Now it's suddenly annoying to get to my phone to check social media or something so now it is much easier to avoid it.

This article is mostly about how to break the habit of visiting "bad" sites while on your computer but some of these also work for your phone. Let us start with a couple of generic tips shall we:

  • Do not keep your phone next to you while working. Research has shown that simply having your phone within reach is enough to drain your energy. Keep your phone in another room or use the Billy idea from earlier.
  • Do not keep your phone next to your bed if you can avoid it. Buy an alarm clock or a Google Nest and use that instead to wake you up. You can also have your spouse pour cold water on you if you prefer the human touch. I recommend the Google Nest because it has the added benefit of listening to you while you sleep.
  • Do not go on social media first thing in the morning. This can ruin the whole day. It can also make you reactive rather than proactive. You don't want to spend your morning angry about something on Twitter while you are trying to plan your day.
  • If you know in your heart that you will eventually cave and check your phone then make a game of it. Challenge yourself to stay off your phone for as long as possible during the day. If you can get to say 4 pm then you have done good and probably got a lot of productive hours out of it. Now break that record tomorrow! Once you check your phone it becomes a lot more likely that you will do it again later so try your best to stay away.

Now on to the tips I have about making bad habits annoying. The idea is that if you make the bad habits annoying enough then you will train your brain to avoid them. If you know that you have to jump through hoops just to go on Reddit then you might just skip it. I use a couple of tools and tricks to make this easier:

Motion

Motion is a Chrome extension that nag you whenever you visit a "bad" site. If you visit Twitter for example a modal will pop up telling you to cut it out already. You can then choose to have access to the site for a number of minutes and then the modal will pop up again. Motion also has special functionality to hide Twitter recommendations, Youtube recommended videos, and more.  You can also set work hours so that Motion is only active when you are trying to get things done.

I like Motion and it is my primary way to nag me to stop visiting bad sites but there are a couple of issues. My brain has gotten used to clicking away the nag screen so the annoyance factor has faded. Motion will also have the popup on your screen but you can still see the site behind it. This means that you can easily spot something interesting behind the nag screen that will make you want to use the site.

Update

Motion no longer has a free version. To access any of its features you need to pay a monthly subscription fee.


Use Blocksite to block sites on Chrome and on mobile

Blocksite is a Chrome extension that blocks any websites you want. It can also be synced with your phone so that the same sites are blocked there as well. You can put in password protection to keep your from disabling it whenever you want to go on Twitter. It works well to keep you off the worst offending sites.

Blocksite blocking a site. I like the picture. Has a real "come on, wtf are you doing?" vibe.

Improvement: Store the blocksite password in a place that is hard to get to

I found that it was much too easy for me to just punch in the Blocksite admin password and unblock Twitter if I wanted to go there. What I did to solve this was to create a new database in my password manager and put the password in there. I then put the password manager master password in a text file and put that on one of my servers. This way I had to be on my work computer to access the Blocksite settings since that is the only one with SSH access to the servers.


Use a Pi-hole to block the sites

Pi-hole is an ad-blocking DNS server that you can run on a tiny computer inside your own network such as a Raspberry Pi. Its main feature is network-wide ad blocking but it can also be used to block sites in general. The latest version of it also added functionality to block sites on only some devices. Now you can use it to block things on your own devices only while it will leave other devices alone. This is my go-to method for blocking distracting sites since it works on both my computers and my phone as long as they are connected to my home network.

Improvement: Store the admin password for the Pi-hole in a place that is hard to get to

This is the same deal as the blocksite one. Store the admin password on a server or something to keep you from getting to it easily.

Improvement: Use a throwaway Google account to store the password

This one is for emergency use only! I created a new Google account and put the password in there. I then changed the password for the account to some random garbage string and didn't write it down. I now have no access to the account at all. The only way to get access back is to use Google account recovery which I connected to my main email account.  The magic part is that Google has a 24-48 hour quarantine on account recovery. It will thus take that long to reset your account and get access. This was so annoying to me that I completely stopped using the bad sites.


Miscellaneous tips

Use a habit chain

Made famous by comedian Jerry Seinfeld. It is a technique he used to make sure that he was writing every single day. He tried to make an endless chain of days on which he worked on his material. He found that if there was a long streak of days behind him then it made it much easier to force himself to work on it today as well. This can be adapted for negative habits. You can use a simple calendar or an app to track it. There a multiple such apps, just search for "don't break the chain app" and you'll find plenty. Simply put in "Don't visit Twitter during productive hours" and then keep that chain going. Making yourself accountable to something is often a useful technique.

Challenge yourself

30 day challenge: Don't visit Reddit at all for 30 days. This can be kind of fun but to me it is especially effective if you combine it with journaling. Write down your thoughts about the site you want to avoid every day in a journal. Are you happy that you can't go on Reddit? Do you miss the cats? Once again I find that making this a challenge only in your mind is not very effective. You need something tangible like a journal.


The Twitter discussion link will appear below because it is automatic and I am too lazy to write an if-statement. You're just going to have to deal with it.

Discuss on Twitter

Get the latest content in your inbox for free

Some of the things I write about

  • Self-hosting
  • Productivity
  • Ruby on Rails performance
  • News in the software development world

I care about the protection of your data. Read my  Privacy Policy.