Keeping track of people is hard. There is a growing list of people who I’ve met in my life, whose company I value and I enjoy talking with. For whatever reason though, I haven’t written or called them in a very long time: old friends from school, colleagues from previous jobs, university friends. The list of contacts I have saved and I’d classify as having a friendly relationship with is well over 200 by now. During my teenage years, keeping in touch used to be easier, partly because the number of people in my circles was way smaller, partly because nowadays, life tends to get in the way more frequently. I’m working on more projects, I try to invest more time into family, and there are way more daily errands. That I’m falling behind on.
What I do have, is a system of checklists that I am pretty diligent at working through every day. (Foundations of a life. So in order to minimize the hurdle of figuring out, who I haven’t spoken to in a while, I’ve set up an automation that handles this process for me and conveniently places a contact name into my daily to-do’s every once in a while.
Based on an airtable similar to Jacob Greenfeld’s Stay in Touch article, I set up a
table with the columns name
, category
, last contact
, next contact
, and a reminder
field:
The Next Contact
field and the Reminder are a formula. The Contact Category
is an alphabetical range from A-E, A being a person I want to contact very often,
and E is an ’expired’ contact, which is a variation on Derek Silver’s classification scheme.
Based on this airtable, a Python script picks one of the contacts set to remind
at random once every other day and adds a todo into my todoist.
Once the script runs again, the previous todos are evaluated, to see if they have been completed. If that’s the case, the last contact
fields are updated to the date the todo
was checked off. The script will only remind me again once the contact category time limit triggers again.
This system is obviously unaware of the actual contact state I have with the person it recommends. If for example the other person has contacted me recently, or I decided to write the person without a reminder, I’ll just mark the todo as complete without any actual action. This isn’t supposed to mimic an actual all-encompassing Contact Management System after all. It’s a simple way to nudge me into calling more people that I want to talk to anyway but typically wouldn’t take the time.
The code for the Next Contact
field in Airtable:
|
|
The code for Reminder
:
|
|
If you’d like to check out the python script which handles Airtable - Todoist connections, I’ll work on documenting it further, to make it open-source ready.