Stress-free refactoring with Scientist

Shameer C. has a tutorial on refactoring with Scientist. Scientist is an experimental framework for PHP that allows you to refactor and improve upon existing code in a live environment, without incurring risk or breakages.

Scientist works by creating an experiment around the code that we want to try. We need to create callbacks around the original code (Control) and refactored code (Trial) that we want to experiment. Scientist will run both functions and return the result of Control while generating a detailed report of its findings. Scientist doesn’t know what to do with the report, so we need to create Journals to handle them.