I’m building a Project Management Software (Upgrow) for Growth Teams to keep track of Marketing Experiments. An experiment/proejct is a Thing: It has a name, description, but after that almost everything is linked to other Things:
Assigned to Multiple Users (1-3)
Has a Status (Thing) (1)
Multiple Variants (Things) (1-3)
Multiple Scores (Things) (3-15)
Multiple Subtasks (Things) (3-10)
Multiple Tags (Things) (5-10)
And soon I’ll be adding comments (Things with Things) (50+)
What’s faster, doing a Search for those things everytime someone ‘opens the Floating Group with that Experiment’ or should I add those Things as List of Things inside the Experiment? I don’t know exactly how bubble works but I know a lot of people say that Searches are the fastest route in general, but it starts to feel counterintuitive to do all those searches upon a click.
Generally, there are 3 types of connecting Things in Bubble:
Thing A has a list of Things B [using lists]
Each Thing B has a field of type Thing A [not using lists]
Separate data type to store Things C. Thing C has fields “Thing A” and “Thing B” [not using lists]
Lists are limited to 10,000 items. Also official Bubble position on lists → keep them as small as possible (<100 items in a list). So if your experiment/project Thing can have more than 100 subtasks - lists can appear to be not an optimal option to set relations due to performance reasons (btw, you will not notice the difference between referencing a lists [option 1] and doing a search [option 2] on a relatively small amount of data) and scalability.
Take a look at some examples of how you can structure your data in Bubble manual Project Management Apps - Bubble Docs (there are also examples of other apps data structures there).
Thanks. To clarify I’ve added the average numbers for each thing.
Currently, I’m using option 2. But I’m curious if your logic still works once you have 10 searches at once, versus referencing 10 fields on the one main thing. What’s faster?