I am 18 and am simply unable to function in society without mandatory screen time restrictions. All screen time schemes which you can override when you feel down are utterly useless for me. OTOH it’s embarrassing to ask people to keep your screen time password, not to mention I can manipulate people into giving me the password. And I found the restrictions need to be adjusted to my constantly changing routine/needs so it’s simply inconvenient to ask people for the password every fortnight or so. Thus as a hacker I hacked up my own solution. My screen time password is time-locked, it's only accessible after 8 hours after you start the process of opening it. This basically prevents every impulsive behavior ever. There is no point in start opening the password to doomscroll reddit if you can do so only after 8 hours. I honestly wish this was built into iOS. Here's how I achieve it (beware, iOS only):

- I wrote this program[1] to time-lock things. It time-lock encrypts data to a desired time interval. In order to access the data, you need to decrypt it on the same machine you encrypted for the set amount of time. This works because the encryption algorithm is mathematically unparallelizable one.

- I use a Bluetooth keyboard emulator[2] on my computer to enter digits for passwords without seeing them. Long passwords I can enter by hands since I won't be able to remember them but for short passwords (the SIM and Screen time password) this is necessary.

1. Create another Apple ID with a separate phone number than your normally used number. Set the Apple ID password to some random thing. Enable Recovery Key. Lock the SIM card with a random password. You aren't supposed to remember any of these passwords.

2. Put all these passwords to a file and encrypt it with a random number key. Time-lock this key.

3. When setting up screen time restrictions, set up this Apple ID as the recovery account for your Apple ID.

4. Generate a random 4-digit password and put it into a file. Use the Bluetooth keyboard emulator to enter it on your iPhone without seeing it. Time-lock this password.

Done! Now the only way to change screen time settings is to crunch numbers with your computer/VPS for 8 hours.

My restriction settings are:

- All social media apps and HN[3] are collectively limited to 25 mins/day but I will probably set it to 30mins/week as I see I miss nothing.

- Downtime set for sleeping hours.

- Necessary apps which also enable me to waste time (e.g. Safari) are time-restricted.

- New app installation disabled.

I also use a simple shell script with a systemd unit that shuts down the computer if it's being used outside allowed hours. Obviously I need to not be in sudo/wheel group for this to work, so the script gives me sudo access for certain early hours every day.

1: https://github.com/aerbil313/timelock

2: There are afaik no solutions that currently work on Linux except writing your own, and the ancient one I run in an Ubuntu 16.04 VM. There are many apps for mobile, recommend Bluetouch for iOS. Supposedly RPi Zero W can do it too.

3: All my friends are on social media, I’m not and I find I lose nothing. Admit it, it’s collective reciprocal FOMO about each other’s lives. Twitter and reddit are not to be used regularly, they are skinner boxes. I log in to both only when I have a question to ask to a community/someone. Regarding HN, I find high amounts of daily input even if it's high-quality discussion lead to worse memory and concentration.