I’ve worked as a professional programmer for nine years now. I think in at some point a few years ago, it actually began to erode my sense of agency working with computers. At a certain point I became less interested in hobby programming. This was 100% a healthy thing, I started doing things like dancing a lot of contact improv and rock climbing. But when I largely stopped hobby programming, almost all my programming experience was coming from working on production systems. Writing production code is slow. I’ve routinely had the experience of one or two line changes taking hours or days to get merged. I’ve worked on modest features that take days or weeks to finish. More and more I began to associate any change to a computer system with inertia and working through complex, unpleasant trade offs.
This feeling has also been exacerbated by trialing internet blocking software. Selfcontrol is probably the best one I’ve tried, but it’s def not everything I’d like. I’ve occasionally thought about trying to extend it, it’s open source, but I’ve never done any Objective-C and have never been motivated enough to figure out how to get a dev environment for it running and then try and situate myself in a new code base. I’ve looked at freedom and rescuetime and a couple of others, but I’ve also been gun-shy about giving these apps deep access to my system. I do my banking on here.
Today I decided to do a quick investigation into the minimal amount required to make my machine shutdown at 10pm everynight, with 15 and 3 minute warnings. It was super easy! I think if you asked me, I probably would have predicted this was easy to do, but I was still somehow emotionally surprised to do a thing with a computer in about 30mins all in, including research.
How to set your system up to warn you, then shut down every evening:
set OS X to shutdown automatically every night @ 10pm
Done! Save your work when the machine politely reminds you, and get a nice night of sleep.
Caveat programmer: this may not be very bulletproof. I tested each part of this individually, but I’ll find out over the next few nights how well it works in practice. I’m excluding some steps that might be a bit confusing if you’re not comfortable creating bash scripts or in vim (you don’t need that much vim, I barely remember how to quit vim each time I open that damn program). Figuring this stuff out might take you a bit longer, but overall it’s still probably pretty fast.
I’ve worked as a professional programmer for nine years now. I think in at some point a few years ago, it actually began to erode my sense of agency working with computers. At a certain point I became less interested in hobby programming. This was 100% a healthy thing, I started doing things like dancing a lot of contact improv and rock climbing. But when I largely stopped hobby programming, almost all my programming experience was coming from working on production systems. Writing production code is slow. I’ve routinely had the experience of one or two line changes taking hours or days to get merged. I’ve worked on modest features that take days or weeks to finish. More and more I began to associate any change to a computer system with inertia and working through complex, unpleasant trade offs.
This feeling has also been exacerbated by trialing internet blocking software. Selfcontrol is probably the best one I’ve tried, but it’s def not everything I’d like. I’ve occasionally thought about trying to extend it, it’s open source, but I’ve never done any Objective-C and have never been motivated enough to figure out how to get a dev environment for it running and then try and situate myself in a new code base. I’ve looked at freedom and rescuetime and a couple of others, but I’ve also been gun-shy about giving these apps deep access to my system. I do my banking on here.
Today I decided to do a quick investigation into the minimal amount required to make my machine shutdown at 10pm everynight, with 15 and 3 minute warnings. It was super easy! I think if you asked me, I probably would have predicted this was easy to do, but I was still somehow emotionally surprised to do a thing with a computer in about 30mins all in, including research.
How to set your system up to warn you, then shut down every evening:
set OS X to shutdown automatically every night @ 10pm
https://www.wikihow.com/Automatically-Shut-Down-Your-Computer-at-a-Specified-Time
takes ~45s !
Write applescripts to trigger notifications: https://apple.stackexchange.com/questions/57412/how-can-i-trigger-a-notification-center-notification-from-an-applescript-or-shel
Invoke the applescript via a bash script using the
osascript
commandSetup crontab to execute the warnings:
https://crontab.guru/
crontab -e (this will drop you into vim)
Done! Save your work when the machine politely reminds you, and get a nice night of sleep.
Caveat programmer: this may not be very bulletproof. I tested each part of this individually, but I’ll find out over the next few nights how well it works in practice. I’m excluding some steps that might be a bit confusing if you’re not comfortable creating bash scripts or in vim (you don’t need that much vim, I barely remember how to quit vim each time I open that damn program). Figuring this stuff out might take you a bit longer, but overall it’s still probably pretty fast.
Two days later: this is working quite well so far.