Self Control

Since my computer is factory equipment, I consider its ability to show me news and social media a defect. One easy fix is to edit /etc/hosts to block these sites, but that’s reversible by just re-editing it. A year ago I found an app, SelfControl, that takes these edits out of my hands.

To set it up, you give it a list of blocked sites. Then, when you start it, it will put entries into /etc/hosts that sets their IP addresses to 0.0.0.0. If you remove these entries, it will keep reapplying them. And since it asks for privileges, it can do this in a complex way. You could thwart it if you wanted, but it’s enough of a pain that you probably won’t bother.

After using it for a while I added a few practices that make it more useful.

  1. I use the Due app on my iPhone (and Watch) for simple recurring reminders. I set up a morning reminder to restart SelfControl.
  2. I went into my /etc/hosts and made a copy of the SelfControl section (it’s clearly marked with comments) and made it a permanent part of my hosts file. I italicized permanent because I can edit this part, but it’s there to be a little bit of a deterrent if I try to go to any of these sites in a non-blackout period.
  3. At the end of the week, RescueTime sends me an email with a summary of my productivity. I can easily see if any new distracting sites are taking significant time and add them to SelfControl.
  4. I found an app for iPhone called Zero Willpower that does the best it can to replicate SelfControl on the iPhone. It’s essentially a content-blocker that you can edit and a timer you can set to disallow deleting. On the iPhone there is nothing they can do to stop you from removing the app or disabling its content blocking privileges, so thwarting it is easy if you want. Again, it’s enough of a pain, that it’s enough to keep me off distracting sites.