In June 2015 it's approaching now 1.5 years of work, but I at last have a robust, if complex, system.
Summary of My System
My system can be summarized as follows: I've limited myself to internet access between 1030am and 9:45pm at night. These times have emerged from natural testing over many months. (Times later or earlier than this, I tend to break my system). Note that these times reflect the fact that I have a full time job from roughly 9am or 10am to 6pm or 7pm. If I was working on my own, I might make these times shorter - maybe to between 7:45pm.
I use the following tools:
1. Mac OS X Server - Enables you to launch a server to set up Profile Manager Mobile Config settings
2. Profile Manager
3. System Preferences - Block
a. Users & Groups
c. Date and Time
4. Power Manager - Automatically turns on Mac computer at night or even when computer is closed so that Self-Control can launch. Without this tool, just using Calendar, you will constantly have openings because the script will only run when the computer is on
5. Self-Control. Scripts are saved in Dropbox
6. Chrome internet blocker. I block a list of all common web url endings, and then a white list of key websites like email, my personal blogs, google, google maps, etc. Also there are a few key google pages to block, like google translate.
7. Second Chrome internet blocker to block Chrome settings page during that time. Not sure if maybe you could actually just use the same Chrome tool for both. Might be worth testing out.
7. Safari - delete. There are not satisfactory tools and you only want to be blocking one browser.
Summary of My System
My system can be summarized as follows: I've limited myself to only 8 hours a day of unlimlted internet time. In the evening after 6pm, I block my browsers completely. In the morning, I block my email and many other websites that typically distract me, so that I can focus on coding. During the work day, I use the Pomodoro technique to manage my energy and take short breaks before I burn out. My goal is to step away from the internet for most of the day.
Here are the details:
#0 The Pomodoro Technique - http://pomodorotechnique.com/
Using the Pomodoro Technique with an app called WorkBurst. Every 25 minutes, it rings a bell and dims my laptop. As my high school algebra teacher and bicycle-trip leader (and all around bicycling champion) always said, "if you want to ride your bike 100 miles, there are two rules to follow: drink BEFORE your thirsty, rest BEFORE your tired." The mind works the same way. If you want your mind to flourish and you want to get the most out of your mind in a day, you need to rest it BEFORE you burn it out - at successive, regular moments throughout your day. This is the key to getting the most out of your mind in a healthy, sustainable way.
#1 Parental Controlled iPod Touch - Gave Passcode to my housemate - http://support.apple.com/kb/ht4213
I don't have an iPhone. I have an iPod Touch. This itself is an important decision. It means that without WIFI, I have no connection to the internet.
In addition, this week I launched parental controls and used it to block Safari and the ability to download new apps. I gave the passcode to my housemate. So now, I can still use Skype, Google Hangouts, maps, and lots of important internet-apps on my iPod Touch, but I can't surf the internet as a whole on this device.
#2 Self-Control App, AppleScript, Automator, iCalendar - http://selfcontrolapp.com/
Self-Control is a hard-core app that blasts away access to your Blacklisted websites for a set number of hours. The challenge is that it has no calendar feature. This is important, so that every morning your blacklist is blacked out - without you having to make a choice about it each morning. Online I found and customized an AppleScript that turns on Self-Control, sets a specific # of blocked hours and enters your password (it's needed for your OSX Self-Control to activate). Here is the script, the original version comes from this website - http://kylehalladay.com/all/blog/2014/01/06/Hacking-My-Attention-Span.html
on run argv
set defaultTime to 420
set myTime to item 1 of argv as number
set myTime to defaultTime
tell application "SelfControl" to activate
tell application "System Events"
tell process "SelfControl"
tell slider of window "SelfControl" to set value to myTime
click button "Start" of window "SelfControl"
tell window 1 of process "SecurityAgent"
with timeout of 15 seconds
set tryAgain to false
set value of text field 2 of scroll area 1 of group 1 to "YOUR OS X PASSWORD"
set tryAgain to true
if not tryAgain then exit repeat
click button 2 of group 2
This script can be launched automatically a number of ways. I tried setting it up as a script and app to be run from iCal on its own, but apparently with Mavericks the only way for it to work is using Mac Automator. In Mac Automator, select "run AppleScript" and paste in the AppleScript above. Then in iCalendar, create an event (make sure to use your home calendar, your native iCalendar calendar, and not, say, a Google calendar), and select Alert, custom - and then select open an application, and select your saved Automator application.
PS. If you ever make changes to the time-span of the automator, or any other changes to the AppleScript, you need to de-authorize and then re-authorize it in your settings - security list of apps that can access your Mac. This is for security reasons so that no one can tamper with your script.
#3 Freedom App - http://macfreedom.com/
The Freedom App is what I use to block my browsers completely in the evening. It can work for up to 8 hours. I am going to write an Applescript for this to automatically open as well when the evening starts.| Back