PlanOut was developed at Facebook as a language for describing complex experimental designs for behavioral science experiments. PlanOut is one of a few ways of setting up experiments at Facebook. This open source release, in addition to being a complete implementation of PlanOut, includes core aspects of the experimentation system we’ve developed to make experiments easier to run, and prevent common pitfalls in deploying and analyzing experiments.
Why are you open sourcing PlanOut?
We wanted to share our experiences with running and analyzing many large experiments at Facebook. This open source release accompanies a research paper on running online experiments: Designing and Deploying Online Field Experiments.
We hope that with this release, we will get others to get excited about running experiments, and do so in an effective and sound fashion. We are always learning new things about what works and what doesn’t, and hope that by engaging with the community, we will all come to develop experimentation software whose use cases extend beyond the initial release of the Python-based reference implementation.
Who is PlanOut for?
We hope that the software is useful for researchers and businesses who want to run experiments out of the box. We have also tried to build things in a way that is easy to port to other platforms and environments.
Can I contribute to PlanOut?
The main goal with this release is to provide an implementation of how we run experiments at Facebook, and set developers and researchers along in this direction. We intend on keeping PlanOut up to date, and hope that the community can continue to develop it, either through contributing directly to the original repository, or by forking it.
We also welcome bug fixes, ports to other platforms, extensions, and graphical interfaces for constructing and analyzing experiments.