I love spending the holidays with my family, but there’s always a ton of moving parts.
Double-check dietary restrictions.
I wanted to make the holidays a little brighter (and a little less stressful) by creating a doc that puts the focus back where it should be: enjoying each other’s company. Even though we’re in the middle of a pandemic and the holidays will be a little different, I hope this doc can help you in the years to come.
A typical holiday problem: communication.
The three primary needs my family had for the holidays are:
Organizing the potluck meals.
Tracking who’s bought what for whom to reduce duplication.
Sharing the schedule for each day.
Before this doc, my family organized all of these details via email. We’d have long threads where people would sign up for a dish to bring, but then the assignment would get lost in the mix. And while three desserts isn’t necessarily a bad thing, I would certainly miss having mashed potatoes.
Gift-giving was also organized through email. Every person in the family (11!) except the gift recipient would be on an email thread detailing the gift. This ends up being A LOT of emails. And, to be honest, I would tune them out sometimes and other people would forget to send the email altogether.
Ideally, my doc removes email from the equation.
Thanksgiving as a gateway.
Because getting people to use your doc is half the battle, I decided to treat Thanksgiving as a soft launch.
The Thanksgiving part of the doc is deliberately simple: a potluck sign-up and a schedule. Since this would be my family’s first exposure to Coda, I wanted them to fall in love.
The schedule page is a basic table and text area:
Gather and have appetizers
Gather for Christmas Tree Cutting
🦃 Any other details? 🦃
If there's anything else you think the family should know, type it here. If it's for a specific person type @ and then their name to mention them.
Family members can quickly see the plan and anyone can add comments, like the address of my mother-in-law’s favorite Christmas tree farm.
The other page managed our potluck. All my family needs to do is click a button to claim a food item, but I also include instructions so folks aren’t afraid of making a mistake.
1️⃣ Click the “Claim” button in the row of the item you’ll plan to bring.
2️⃣ Coda will automatically add you as the Chef
3️⃣ Add any details on what you plan to make to the “What are you making?” column
There are no rows in this table
This potluck table has one of my favorite Coda patterns: a button that modifies a row. The claim button adds the button presser as the chef. To make this part of the doc feel more like an app, I added two things to my button.
First, I have the button label change to “Unclaim” when someone signs up so folks could change their minds.
And I have the button disable for anyone who isn’t the chef so we don’t have double sign-ups.
Organizing the Christmas gift exchange.
With Thanksgiving as my warm up, I’ve included both a potluck and a schedule page for Christmas as well. And I also added in the gift manager—here’s where the doc would really shine. (And, saying goodbye to those 11 email threads is something I’m super excited about.)
Since the Christmas section of my doc is a bit more complicated, I used the card view of my subpages to create a welcome page that’s easy to navigate.
The gift organizer engine has a few parts:
A master table with the gifts that everyone wants.
A “My Wishlist” view of that table that filters by user so people only see their wishlist.
A gift assignments table that shows who is giving to whom.
A “Gift Tracker” view of the master table that filters out the gifts that have been purchased for the viewer.
The master table was really key since it powers everything else:
It’s got my favorite pattern again: a button that changes the values in the row! In this case, the button populates who bought the gift. And, just like my potluck button, I change the label based on whether or not the user is listed as the Giver.
But what happens when people don’t mind getting multiples of the same gift, like gift cards? I needed to account for this in the table, so I added an “Okay getting multiples of this gift” checkbox. If the user checks this box, multiple people can be added to the Giver column. If not, then the button is disabled. I used the splice formula to add multiple givers:
I was ready to share this doc when I realized another issue. I had originally created a basic dropdown control to filter the gift tracker by who you want to buy for, but control values are shared. I didn’t want anyone in my family to get confused about why they could only see one person’s information. So, I built a user-specific control using a handy table. This was a trick that fellow Codan (and husband) Steve Marquis shared with me. Here’s how it works:
First, create a named formula that populates the user. I named mine the “MyExploreFilter”:
Next, create a table with a row for each user:
Hide the User column and filter the table by User:
Then, use this new table to filter the gift tracker table by adding the following three filters.
Filter 1 -
Recipient is NOT the current user
Filter 2 -
Use the named formula (MyExploreFilter) to pull from your row of the table and filter by who you’ve selected.
Filter 3 -
Decide whether or not you want to see bought gifts or not.
I get it—this seems like a lot. So if you want to use a simple control, do it! I made this choice thinking about my users (my family), but it’s not the only way to do things.
Adapt my doc for your own holiday.
I’ve created a doc that works for my family, but there are endless variations that you can create for your own holiday gatherings.
If you’re doing a socially distanced holiday or virtual holiday, change the potluck sign-ups to be for virtual activities. Then add a column for the Zoom room or Google hangout that you’ll use.
Try creating a photo book! Add a table to your doc with an image column and a text column with a prompt for captions. Then change the display to a detail view. Instead of having personal memories on social media, you have a private place to connect and remember.