Open dannycoates opened 10 years ago
It sounds like #4 describes namespaces. What do you mean by "versioning?" As we discuss in the PlanOut paper - changing an experiment definition mid-way through requires that you do some fancy stuff with your data analysis, and so as a best practice it's recommended that developers never change experiments, only launch new ones.
At Facebook, we require that all experiments get created within a namespace, and that when you want to make a change to experiment, you have to "clone" an experiment. When you clone an experiment, the system copies the experiment definition, allocates some random percentage of unallocated segments. Developers can then change their script. Because salts are tied to experiment names, the assignments for the clone will be orthogonal to the old version.
I think we need to consider experiment versioning and possibly namespacing