# Long-term reminders

Published on

By long-term reminders I mean things that are not actionable right now, but at some point in the future become important to take care of: cancel a subscription or a credit card, renew a passport/visa/driver’s license etc.

At one point I used nudgemail for this. However, I ran into a pretty serious date parsing/scheduling bug: I had two reminders, one for October 6 and one for October 20, and both arrived on October 1. I never received a response to the email I sent to support@nudgemail.com, so I don’t consider them reliable anymore.

That got me thinking: what is a reliable way to send a message to the future me?

• Email reminders seem perfect for this, if only there existed a service that has proved to be dependable (I’m not aware of one).
• Telegram allows to schedule messages in the future and send them to oneself. But since telegram is tied to my phone number, there is a high chance that in a year or two I’ll have a different phone number and will lose my reminder.
• There are probably many mobile apps for this, but then I need to remember to transfer them to any new phone I may have.
• I considered writing or installing an existing self-hosted email scheduling solution, but it would become a maintenance burden.
• I also considered doing it UNIX-way, using atd and mail, but:
• What if I forget to transfer my atd files to the next system/device?
• How to ensure reliable delivery of mail from localhost? (I don’t set up smtpd/smarthosts these days.)

Here’s what I decided in the end, inspired by the birthday program:

1. I write my reminders in a simple text file structured like this:

YYYY-MM-DD<tab>description

For instance:

2021-01-03   Renew ro-che.info
2. I wrote a small Haskell program that parses the file and prints any reminders that are due.

3. I added remind ~/my/reminders.txt to ~/.zshrc.

I figured that in several years I’ll still be using terminals and zsh, and I tend to back up and transfer these files to new systems, so this is one of the most reliable way to send a message to the future for me.