Companion curriculum

The teaching material of the course

Most of the teaching in the course happens in these sixteen modules. At the centre of them is the workshop, a single hands-on case worked through in four ninety-minute parts. The workshop fits into one day, so it teaches reproduction, estimands and the multiverse and leaves the skills around those three topics to the modules, which run from a first line of R to a reanalysis that you can version and archive. Each module stands on its own, so you can take just the one you need and leave the rest.

How much of the curriculum you work through depends on which track you are following. The one-day course is very nearly the workshop and nothing else, pointing at the R and IDE modules as optional preparation beforehand and at one or two others alongside the day itself, and its tools-focused variant draws on the modules of the first two strands and its methods-focused variant on those of the third. Nothing here is required for a single day, which runs in full without any of it and with no account to create. The three-day and semester tracks build sessions out of these modules on either side of the workshop, and the self-study track is made almost entirely of them. Wherever a module below says ‘the day’, it means the workshop at the centre of whichever track you are on.

Sixteen modules

The sixteen modules group into three strands: the computational tools that an analysis is written with, the data management and sharing that let it be built and let others use it, and the statistical methods with which the case itself is analysed. The strands are only a way of reading the curriculum. Every module keeps its own page, and you can read across the strands in whatever order suits you.

Strand I – Computational tools

Three modules on the machinery of an analysis: the language it is written in, the environment it is written in, and the document format that holds the code and the prose about it in the same file. The R module assumes no programming at all, starting from the first line you type. The IDE module sets Positron, the default IDE for the course, beside RStudio and VS Code, pane by pane, so that whichever of the three you work in you know where things are and what changes when you move. The Quarto module picks up where the R module leaves off, and is written for someone who has worked through the R module or who already writes a little R. Neither the R module nor the Quarto module runs its code when it renders, and the snippets are there for you to type yourself. The R snippets can go into the zero-install browser lab or into your own copy of R, while the Quarto exercises need R and the Quarto command-line tool on your own machine, because the lab runs R but does not render documents.

Module Level What it covers When to read it
Getting started with R Foundation What R and an IDE are; the console, scripts and Quarto; objects, vectors and data frames; reading a CSV; the pipe and a first dplyr chain; a grammar-of-graphics tutorial that builds up to reading the class chart; naming the quantity before estimating it. For arriving with no R at all. Before the day
Positron, RStudio and VS Code Foundation What an IDE does and what the course needs from one; Positron pane by pane – the console and the session, the Variables pane, the Data Explorer, plots and help, Quarto, folders in place of projects, the Command Palette, extensions and Posit Assistant; RStudio and VS Code in brief, with what changes when you move between the three; what the current releases of all three add. Before the day, once R is installed
Quarto and reproducible documents Foundation What a .qmd file holds and what rendering does; the YAML header and the main execute options; code chunks and the options that are set by the course pages; figures, tables and cross-references; citations drawn from a .bib file, with the course bibliography as the worked example; publishing a finished document. Written around files that you can open in this project. Before the day

Strand II – Data management and sharing

Where data come from, how a downloaded survey file becomes the file on which a model is fitted, where finished work is deposited, how all of it is licensed, and how a piece of work is versioned and shared. The panel that the course runs on was built from licensed Eurobarometer microdata and open World Bank indicators, and it is published in an OSF fork. On the day you complete the preregistration block of your report in Task 5, and the slides introduce version control and what git offers, but there is no hands-on git work, with nothing to clone and no GitHub account to create. These four modules take each of those topics further, and they are the ones to read once you have a question of your own to find data for, a survey file of your own to wrangle, or a report of your own to archive.

Module Level What it covers When to read it
Social science data sources Foundation to intermediate The three routes by which data reach a researcher; a map of the survey programmes, archives and catalogues, household panels, official and administrative statistics, international indicators and political datasets, Europe and the UK first, with the access rule for each; then the sources used by the course, step by step, with the GESIS download walked through screen by screen, the World Bank indicators through WDI, the panel on OSF through osfr; citing data. Either side of the day, and whenever a project of your own needs data
Building the analysis file Foundation to intermediate The two workspace scripts that turn your own sixteen GESIS downloads into the respondent file used by the course and then into the panel: checking files against the versions that the course used, finding the same question in sixteen files, harmonising the respondent characteristics, the three scoring rules, the respondent who named nothing, averaging into country-years with and without design weights, merging the macro series, reproducing the committed panel to machine precision, and the panel by education band for the individual-level extension. After the setup, for anyone taking the individual-level route; either side of the day for the rest
Reproducibility repositories Foundation to advanced What a repository has to do; Zenodo, Dataverse, Figshare, Dryad, ReShare and the rest compared; the code forges and why a release needs a DOI; the Open Science Framework in detail, with the projects transition of 2026–27 and how to work on it afterwards; the three OSF nodes of the course; registrations and forks; preregistration templates, including the one on which the preregistration block of Task 5 is modelled; a six-step route for depositing a reanalysis of your own. After the day (the preregistration part also works before)
Git and GitHub for reproducible research Advanced Version control from first principles; git on your own machine; putting a repository online; what belongs in git and what never does; taking your own reanalysis further. After the day

Strand III – Statistical methods

Nine modules on the statistical side of the case, in the order in which the pipeline runs: from the survey question and its items, through the scales and the country-year cells, to the claim at each level and the multiverse behind it. Each module names the dataset it works on, its rung on what the course calls the data ladder. The rungs are the respondent file that participants build from their own GESIS downloads, the country-year panel, the panel by education band, the synthetic twin and the pre-computed grids. The items module and the binary-outcomes module run on the respondents and assume little beyond the R module. The statistics module works up from a first linear model on the panel, and The individual level expects you to be comfortable with models that have more than one level and takes up the second claim of the paper. The participant reading for Part 4, reading a specification curve, belongs with this strand without being a module of its own, and it is short enough to take in one sitting.

Module Level What it covers When to read it
The items behind the scales Intermediate The instrument behind every outcome on the menu, taken apart: what the EU-meaning battery asks and how the four framing scales and the two composites are built from its thirteen items; how often each item is named and how the items hang together; how many dimensions the answers hold, with the two-factor and four-factor solutions set against the published assignment; a confirmatory comparison of the published, the data-driven and the valence structures; what a two-item scale can and cannot support; and what follows for the frame set and the scoring rule. Before you choose an outcome on the menu; either side of the day.
Binary outcomes Foundation to intermediate One item of the battery as the outcome, on the real respondents: its prevalence by education and by year; a logit and a probit of the same item on the respondent characteristics, side by side; coefficients, odds ratios and average marginal effects; errors clustered by country-year and a random intercept; the national unemployment rate on a single item with and without fixed effects; and the education × unemployment interaction on one item, which anticipates the second claim of the paper. The generalised linear model as the building block under the scales. After the items module; before the day for anyone who wants the models one step below the panel
Weights Intermediate Design weights inside a country-year cell, precision weights across cells and population weights across countries, taken apart on the course panel; why only the third changes the estimand; C6HJR’s published coefficient under every combination of the weighting choices. After Task 4, when the weighting axes on the menu have raised the question; before Task 5 if you mean to weight.
Missing answers Intermediate What a respondent who mentions no frame at all does to a share built from mentions; the rules that the menu offers for them and what each assumes; missing completely at random, at random and not at random; multiple imputation with mice and Amelia on the respondent file, pooled by Rubin’s rules, against the fiat rules; a sensitivity band for the assumption that imputation makes. After the day, alongside the measurement decisions of the specification menu.
The statistical methods behind the course Foundation to advanced Every model fitted on the data of the case itself, output by output: a first linear model read line by line; pooled OLS and cluster-robust errors; two-way fixed effects; random effects and within–between; person-level multilevel models; Bayesian estimation with brms; ordered beta regression; meta-analysis and effect sizes on one axis. Either side of the day
Causal graphs Intermediate What a causal graph is and what drawing one commits you to; confounders, mediators and colliders, each fitted rather than only described; building graphs from R formulas with dagify(); the EU-frames graph, whose adjustment set turns out to be exactly what two-way fixed effects absorb; what fixed effects cannot fix; stating an estimand for your own research and drawing its graph. Either side of the day
The individual level Advanced The same claim fitted where its author fitted it, on a synthetic person-level dataset validated coefficient by coefficient against the real respondents: individual circumstance against national context, why a large individual effect can explain almost none of an aggregate association, what the levels included in a multilevel model do to its degrees of freedom, what a synthetic dataset should not be asked to do; and the second claim of the paper, the education gap, fitted under three designs, two on the real respondents and one on the education-band panel, as the starting point for a second replication exercise. After the day
Simulation as a method Intermediate Data with a known recipe: a simulated person-level twin built so that the original analysis can be fitted on it, every framing dimension with its own response; parameter recovery and the sampling distribution of a level-2 estimate; composition against context; recovering individual effects; weights that actually matter; the degrees-of-freedom argument run live; a null multiverse; a lineup; design precision by simulation. After the day
The multiverse and its critics Intermediate Where multiverse thinking came from; the three purposes a multiverse can serve and why they pull apart; the 2025–26 critical debate (Auspurg; Rohrer, Hullman and Gelman; Lakens and colleagues) read against the course grid; how to read a curve without over-reading it. After the day

A first route through

If you are new to all of this and want a route through, take the modules in the order of the data ladder, which is also roughly the order of what each one assumes:

  1. Before the day: Getting started with R, then Positron, RStudio and VS Code. Arrive able to read a data frame, a pipe and a model formula, and knowing where the console, the variables and the data viewer are in the IDE you chose, so the hands-on tasks are about the ideas rather than the syntax.
  2. Before the day: Quarto and reproducible documents. The report you fill in on the day is a Quarto document, and rendering it is how your preregistration block gets a timestamp.
  3. Either side of the day: Social science data sources and Building the analysis file. Where the data come from, and, if you downloaded the sixteen Eurobarometer files, the two scripts that turn them into the respondent file and the panel. Everything below that runs on the respondents runs on that file.
  4. Either side of the day: The items behind the scales, then Binary outcomes. What the instrument asks and how its answers hang together; then one item as an outcome, which is the generalised linear model at its simplest and the step below every scale.
  5. Either side of the day: Weights and Missing answers. The two decisions made at the boundary between respondents and cells.
  6. Either side of the day: The statistical methods behind the course, then Causal graphs. The panel estimators output by output, the multilevel form of the same claim, and the graph from which you decide what a model should contain.
  7. After the day: The individual level, then Simulation as a method. The claim fitted where its author fitted it, the second claim of the paper, and a person-level dataset generated from a recipe written for the course, so that the coefficients that a model should recover are known before it is fitted.
  8. After the day: The multiverse and its critics, then Reproducibility repositories and Git and GitHub. The ideas behind multiverse analysis, which the specification menu and the class chart put into practice on the day, and the arguments against them; then the two modules that turn a report of your own into something archived, versioned and shared.

Read as much or as little as suits you. On the one-day track the course stands on its own and the curriculum is there for when you want more, while on the longer tracks the modules make up most of the course.