Online oTree Course – Summer 2021

  1st to 18th June 2021

  Tuesdays & Fridays, 14:00-17:00 (UTC+1)

This course aims to introduce students and researchers in the social sciences to oTree, a leading framework based on Python to develop and administer experiments in the social sciences.

The course is best suited for absolute or semi-beginners, as it does not assume any prior knowledge of programming either in Python or in any front-end language such as JavaScript, HTML, CSS.

The course does assume a basic understanding of experimental methodology in the social sciences.

Participants will be provided with the necessary knowledge to program experiments of medium complexity in oTree and to administer them over the internet. Participants will also be given the opportunity to discuss specific programming issues encountered during the development of their own projects with the course’s instructor.

Two optional 3h primer sessions on Python and front-end languages (HTML, CSS and JavaScript) will precede the actual course targeting participants with absolutely no previous programming experience.

The course is open to a maximum of 100 participants.


Tommaso Batistoni
CESS Postdoctoral researcher and Lead Programmer


24th May 2021

The course has an intense format and is organised as follows: 12h of live teaching (18h including the primer sessions), split in 4 (6) bi-weekly sessions of 3h each; one office hour per week in groups of max 5 participants; small programming assignments in-between live classes.

The course will be taught using Zoom app.

The course will run between the 1st and the 18th of June 2021.

Class times: Tuesdays and Fridays, 14:00 – 17:00 (UTC+1).

The primer sessions will run on Tuesday, 1st and Friday, 4th of June.

The course will focus on oTree’s latest version and will cover all the fundamental components of developing an experimental study in oTree – including (but not limited to) the following topics:

  • Primer on Python and front-end languages (optional)
  • oTree conceptual structure and architecture of an oTree project
  • Basic oTree commands
  • Overview of and practice with the main oTree built-in methods
  • Template syntax
  • Static files usage (e.g. images, videos, data files)
  • Randomization of experimental components (e.g. treatments, inputs, questions, partners)
  • Multiplayer experiments
  • Matching protocols
  • Styling components
  • Old and new oTree syntax
  • Automatic testing with bots
  • Debugging
  • Live graphs and data visualisation
  • Web deployment of oTree applications
  • Advanced features (e.g. live pages, ExtraModel, custom wait pages, oTree REST API)

The content will be covered following a project-oriented approach, where each topic will be used to develop a predefined experimental design that will be shared at the beginning of the course.

Oxford affiliated: £160 (£220 with primer sessions)

Others: £200 (£260 with primer sessions)

Applying for the Course


For queries related to the event, please contact Melanie Sawers at