Welcome to the A/B testing especialization 🎉
In here you will find all the information you need to know about organization in this course. From where to find the assignments to a suggested learning calendar. Also, we have included two small sections on guidelines for both mentors and students.
In a nutshell, A/B testing is a statistical method used to compare the performance of two or more models or strategies. By exposing each to the same conditions, researchers can determine which approach produces better results based on specific metrics. What this means is that in order to perform meaningful A/B testing, we will need the power of STATISTICS 📊
A/B testing is a necessary step in data-driven decision making. Intuition has huge limitations, although, with experience, it is a decent starting point. On the second category, poor quality A/B testing procedures lead to poor business decisions that might be infected with biases, inaccuracies and other issues, while giving a false sense of confidence.
That is why we need to focus on understanding the core statistical aspects of A/B testing. But don't be discouraged! At all steps we will provide Python alternatives to perform all these analyses without breaking a sweat!
Assignments are located in the assignments folder together with the instructions on how to start.
Note: This is just a suggestion. Groups are encouraged to set their own deadlines with their mentors.
Week 01 (~3.5 hours)
- Statistical foundations
Week 02 (~3 hours)
- Assignment #1
Week 03 (~2.5 hours)
- A/B test design
Week 04 (~3 hours)
- Advanced methods
Students are to be divided into groups of 3. These groups should try to progress through the learning process together so that their questions and discussion are on the same wavelength. Each group will be assigned a mentor and will perform code reviews together.
Mentors: A mentor is a more experienced collaborator and/or someone who has already gone through the course. They are in charge of helping their group, answering questions and preventing them from being stuck, as well as keeping track of their progress.
Although we understand that time may be constrained, each student has responsibilities with its groups, namely.
- Try to keep the pace with the group's progress, neither falling too behind or advancing too much by themselves.
- Be courteous and respectful to your peers and mentor.
- Set your progress expectations with your mentor.
- Conduct yourself with integrity and honesty.
A mentor are tasked in ensuring their peers become better professionals, as such, we expect them to:
- Reserve at least 30 minutes per week for each group you mentor, for answering questions and giving feedback.
- Encourage group members and communicate openly.
- Be courteous and respectful to your mentees.
- Ensure code reviews go smoothly: oversee and help, but don't overtake the reviewer's responsibilities.
- Keep track of questions and progress of the group members (see Progress tracking)
- Conduct yourself with integrity and honesty.
In order to help mentors in tracking the progress of their groups, we suggest using the following template:
Tracking questions is important so that we can improve the quality of the selected material, as well as create new ones.
In order to make the best use out of this learning path, you should know:
-
Basic / Intermediary Python: control flow, functions, handling errors, data structures, files, virtual environments, data manipulation libraries.
-
Basic Machine Learning knowledge: what is a Machine Learning model, classification and regression models, common metrics for each problem, sci-kit learn.

