This week is Coda’s quarterly Hackathon!
We’re exploring different ways lookup columns and reverse lookups could work in Coda.
To describe the scenario, a canonical example of Lookups and Reverse Lookups currently work is shown here:
Notice how the Tasks table has a lookup to the Project table. And the Project table has a “reverse lookup” to the Tasks table.
A few observations of the current pattern:
- The reverse lookup is defined as a formula
- The reverse lookup column does not allow edits, so you have to go to the Task table to change which Project it is in—something you can’t do from the Projects table
We’re thinking of 2 different approaches, and would love your feedback.
- Paired Lookups - When a lookup column is created from Table A to Table B, we also create a column in Table B that reflects the reverse relationship. We can then make it editable on both sides.
- Multiple Reverse Lookup columns - When a lookup column is created from Table A to Table B, the user can add multiple columns in Table B that reflect the reverse relationship, perhaps with different filters applied (e.g. All Tasks for this Project and All Active Tasks for this Project) These could each be made editable.
A few open questions:
- Which of these 2 approaches do you find more intuitive? Are there other approaches that make more sense?
- What might you call the Column Type of a Reverse Lookup? Is this a type of Lookup to you or a new Column Type?
- Some of you may be familiar with this concept from other products. We’d love to hear comparisons if you’d like.