Session Plans: Weeks 1–4
Phase 1 — Biomass Mini-Project
Weeks 1–4: Session-by-Session Plans
These plans follow the generic templates in Session templates.md. Each session is 110 minutes. Timings are guidelines, not scripts.
Conventions: - 🎓 = instructor-led segment - ✏️ = student activity - 💻 = live coding or WebR exercise - 💬 = discussion or think-pair-share - 📋 = logistics or admin
Week 1 Content Session: “What makes a good question?”
Aims: Establish the scientific method as the course’s intellectual framework. Distinguish testable hypotheses from untestable claims. Introduce R via a brief live demo (not instruction — that’s pre-work). Preview the biomass mini-project.
Pre-requisites: Students should have completed the pre-term R preparation (Posit Primers, R4DS ch 1–3, “R for Python users” cheat sheet) and created a GitHub account.
Session plan
| Time | Type | Activity |
|---|---|---|
| 0–5 | 📋 | Welcome and course overview. What this module is about: learning to do research honestly. Two strands: statistics and communication. Introduce the two-phase structure (formative mini-project → summative group project). Mention assessment (30% written report). |
| 5–25 | 🎓 | Concept block 1: The scientific method. What is science? Not a body of facts — a process for reducing uncertainty. The cycle: observation → question → hypothesis → prediction → test → revise. Key distinction: deductive reasoning (general → specific; if hypothesis is true, we predict X) vs inductive reasoning (specific → general; we see pattern X, so we infer a rule). Examples from geoscience: plate tectonics (decades of evidence before acceptance), Wegener’s continental drift (right conclusion, wrong mechanism). |
| 25–35 | 💬 | Exercise 1: Testable or not? Show 6–8 statements. Students classify each as testable hypothesis or untestable claim. Mix obvious cases (“the Earth is 6,000 years old” — testable and tested) with subtle ones (“burning biomass is carbon-neutral” — depends on timescale and system boundary). Think-pair-share, then brief whole-class discussion. The biomass statement should produce disagreement — that’s the hook. |
| 35–55 | 🎓 | Concept block 2: Falsifiability and the problem of confirmation. Popper’s insight: we can’t prove a theory, only fail to disprove it. Confirmation bias: we naturally seek evidence for what we believe. Card selection task (Wason, 1966): demonstrate how bad humans are at seeking disconfirming evidence. Connection to data analysis: if you only look for patterns that support your hypothesis, you’ll always find them. Brief mention of More or Less philosophy: “Is that a big number?” — the habit of asking for context. |
| 55–70 | 💬✏️ | Exercise 2: The Wason selection task. Run the classic four-card task (or a variant with geoscience flavour — e.g., “If a rock contains olivine, it formed at depth”). Poll for answers. Reveal correct answer. Discuss: why is disconfirmation so unintuitive? Link to later weeks: hypothesis testing is a formal framework for disconfirmation. |
| ☕ Possible 5-minute break here | ||
| 70–85 | 🎓💻 | Concept block 3: Meet R (briefly). This is not an R lesson — that was pre-work. This is a quick live demo to show that R is working and connect it to what students already know. Open WebR. Load a small dataset (could be a few rows of energy data). Show: head(df), summary(df), plot(df$x, df$y). Narrate: “You already know how to do this in Python. R’s syntax is different but the ideas are identical. We’ll use R because it’s built for statistics — you’ll see why in Week 2.” ≤10 minutes. |
| 85–105 | 💬✏️ | Integrative exercise: Framing the biomass question. Brief context-setting (2–3 minutes): the UK burns millions of tonnes of imported wood pellets for electricity. Under international carbon accounting rules, the CO₂ released is counted as zero. Is that reasonable? Students work in pairs to: (a) write one testable hypothesis about biomass energy, (b) identify what data they would need to test it, (c) suggest what evidence would disprove their hypothesis. Collect a few examples on the board. Highlight: these are the questions that will drive the next four weeks. |
| 105–110 | 📋 | Wrap-up. Preview application session: “You’ll get your hands on real data and set up your GitHub repo.” Remind students who haven’t done the R pre-work to complete it before the application session. |
Notes
- The R demo in concept block 3 should be short and low-stakes. Students who haven’t done the pre-work should not feel panicked; the application session is the safety net. Students who have done it should feel reassured that they’re on track.
- The biomass question should end the session feeling genuinely open — not settled. Resist the temptation to give away the punchline (the accounting loophole). Students should arrive at the application session curious.
Week 1 Application Session: “Meet the data (and Git)”
Aims: Get every student from zero to: loaded a CSV, made a plot, committed a file to GitHub. By the end, students should have a working personal repo and a first .R file containing exploratory code for the biomass data.
Pre-requisites: GitHub account created; GitHub Desktop installed (both from pre-term preparation).
Session plan
| Time | Type | Activity |
|---|---|---|
| 0–10 | 📋🎓 | Setup and orientation. Recap the biomass question from the content session. Today’s goals: (1) explore the data in WebR, (2) save your work to a proper .R file, (3) commit it to your personal GitHub repo. Show the WebR course page and check everyone can access it. |
| 10–30 | 🎓💻 | Guided walkthrough: First steps in WebR. Instructor works through the first exercises live, students follow along. Load the biomass dataset (read.csv()). Inspect it: head(), str(), nrow(). What are the columns? What years does it cover? What units are used? Ask students: “What’s the first thing you notice?” Produce a basic plot: plot(year, biomass_twh). Narrate the R syntax but don’t belabour it — treat it as a translation exercise from Python. |
| 30–50 | ✏️💻 | Independent exercises: Exploring the data. Scaffolded exercises in WebR with progressive hints. Suggested sequence: (1) Plot UK biomass electricity generation over time. What’s the trend? (2) Plot coal electricity generation over time on the same axes. What do you see? (3) Calculate the mean and standard deviation of biomass generation for the last 5 years. (4) What fraction of UK electricity came from biomass in the most recent year? Students who finish early: extension questions (e.g., compare biomass to other renewables; explore import data). |
| 50–65 | 📋🎓💻 | Git walkthrough. Switch gears. Instructor demonstrates the full workflow live with GitHub Desktop on screen: (1) Open GitHub Desktop; clone the course starter repo (pre-created via GitHub Classroom). (2) Open the repo folder; show the starter files. (3) Create a new file: week1.R. Copy/paste code from WebR into it. Save. (4) In GitHub Desktop: see the change, write a commit message (“Add week 1 exploration”), commit, push. Emphasise: this is how you save your work every session. It’s not complicated. It’s two clicks and a sentence. |
| 65–80 | ✏️📋 | Students do it themselves. Every student: clones their personal repo, creates week1.R, pastes their WebR code into it, commits, and pushes. Instructor and demonstrators circulate. This will take longer than expected — Git setup always does. Common issues: authentication, repo not found, forgot to push. Budget for troubleshooting. Students who finish early return to the WebR exercises. |
| 80–95 | 💬 | Discussion and synthesis. Pull the room back together. Ask: “What did you find in the data?” Collect observations: biomass has grown rapidly; coal has collapsed; biomass is now a significant fraction of UK electricity. Ask: “If biomass is counted as zero-carbon, what happens to the UK’s official emissions figures?” Let students reason through this. Don’t give the answer yet — they’ll dig into it in Week 2. |
| 95–105 | 📋 | Final commit and wrap-up. Ensure everyone has committed and pushed. Preview Week 2: “Next time we’ll learn how to summarise and visualise data properly — and we’ll start asking whether the biomass numbers really add up.” |
| 105–110 | 📋 | Buffer. Individual questions, Git troubleshooting for stragglers. |
Notes
- Git is the biggest risk this session. If it takes longer than planned, cut independent exercise time, not Git time. Every student must leave with a working repo and one successful commit.
- The starter repo (created via GitHub Classroom) should contain: a README, the biomass dataset as a CSV, and perhaps a skeleton
week1.Rwith comments prompting the first exercises. - WebR data access: The CSV needs to be available both in the WebR page (embedded or fetched from a URL) and in the cloned repo. Ensure these are the same file.
- Demonstrators should be briefed on common GitHub Desktop issues (authentication via browser, repo visibility, “nothing to push” when students forget to save the file).
Week 2 Content Session: “What do the numbers say?”
Aims: Equip students with descriptive statistics (mean, median, spread, shape) and principles of honest data visualisation. Introduce ggplot2 as the plotting tool. Develop the “Is that a big number?” habit of contextualising quantities.
Session plan
| Time | Type | Activity |
|---|---|---|
| 0–5 | 📋 | Recap. Last week: what makes a testable question; you met the biomass data and set up Git. This week: how to summarise and visualise data — and how to tell whether a number is big or small. |
| 5–25 | 🎓 | Concept block 1: Summarising data. What are we trying to do? Compress thousands of numbers into a few useful ones. Centre: mean vs median — when do they differ, and why does it matter? (Show a skewed distribution — e.g., income, earthquake magnitudes.) Spread: standard deviation, IQR, range. Why spread matters as much as centre. Shape: symmetric, skewed, bimodal. Show histograms of geoscience data (grain sizes, eruption intervals). Key message: always look at the distribution, not just the mean. |
| 25–40 | 💬✏️ | Exercise 1: “Is that a big number?” Present 4–5 numbers without context. Students estimate whether each is big, small, or impossible to judge. Examples: “UK biomass electricity: 38 TWh/year.” Big or small? Compared to what? (Total UK electricity is ~320 TWh.) “Drax emits 12 Mt CO₂/year.” Compared to what? (UK total is ~340 Mt.) “A wind turbine produces 6 GWh/year.” Enough to power how many homes? (About 1,700.) The point: a number without a comparator is meaningless. This is the More or Less principle. |
| 40–60 | 🎓💻 | Concept block 2: Principles of data visualisation. What makes a good figure? (1) Show the data. (2) Make comparisons easy. (3) Don’t distort. (4) Label clearly. Bad examples: truncated y-axes, dual y-axes, pie charts for non-compositional data, 3D bar charts. Good examples: simple scatter plots, well-labelled bar charts, small multiples. Live ggplot2 demo: build a plot step by step. Start with ggplot(df, aes(x = year, y = twh)) + geom_point(). Add geom_line(). Change labels. Map colour to fuel type. Show the grammar: data + aesthetics + geometries. Keep it to 3–4 builds. |
| 60–70 | ✏️💻 | Exercise 2: Spot the lie. Show 3–4 deliberately misleading charts (truncated axes, cherry-picked date ranges, misleading area encodings). Students identify what’s wrong and suggest a fix. Could use a Mentimeter poll for speed. This previews the Week 4 “how to lie with statistics” session. |
| ☕ Possible 5-minute break here | ||
| 70–90 | 🎓 | Concept block 3: Distributions and what they tell us. Deeper dive: histograms and density plots. Normal distribution — why it appears so often (CLT, briefly and informally). Skewness. Log-normal distributions in geoscience (grain size, permeability, ore grades). When to log-transform. Connection to “Is that a big number?”: if data are log-normally distributed, the mean can be very different from the typical value. |
| 90–105 | ✏️💻 | Integrative exercise: Your first ggplot. Students open WebR. Given a small dataset (could be a subset of the biomass data or a separate geoscience dataset), produce: (1) a histogram of one variable, (2) a scatter plot of two variables with a colour mapping. This is a hands-on check that students can use the ggplot2 syntax before the application session. |
| 105–110 | 📋 | Wrap-up. Preview application session: “You’ll apply these tools to the biomass data — making the figures that will go into your briefing.” |
Notes
- The ggplot2 demo should be live-coded, not slides. Students see the code being typed and the plot appearing. Mistakes are fine — they normalise error.
- “Is that a big number?” should become a running theme. Return to it in later weeks. The phrase should become a reflex.
- The “spot the lie” exercise is a light preview of Week 4. Keep it fun and quick — don’t try to be exhaustive.
Week 2 Application Session: “Making the biomass case”
Aims: Students produce publication-quality (or at least briefing-quality) figures of the biomass data using ggplot2 in WebR. By the end, each student should have 2–3 committed figures and the code that produced them.
Session plan
| Time | Type | Activity |
|---|---|---|
| 0–10 | 📋 | Setup. Open WebR course page. Open GitHub Desktop and pull latest changes (in case starter files were updated). Today’s goal: produce figures that tell the biomass story. “By the end of this session, you’ll have the graphs for your briefing.” |
| 10–30 | 🎓💻 | Guided walkthrough: Building a biomass figure. Instructor works through one complete ggplot in WebR. Suggested plot: UK electricity generation by fuel type over time (biomass, coal, gas, wind, solar — line chart with colour mapping). Walk through: loading the data, filtering/reshaping if needed, building the ggplot call, adding labels and a caption. Show how to save/export the plot. Emphasise: “This is the kind of figure that could go in your briefing.” |
| 30–80 | ✏️💻 | Independent exercises: Your figures. Students work through scaffolded exercises with progressive hints. Suggested sequence: (1) Trend plot: UK biomass electricity generation over time. Add a horizontal line for context (e.g., total wind generation). (2) Comparison plot: CO₂ emissions per MWh for biomass vs coal vs gas (bar chart). Where do these numbers come from? What assumptions are built in? (3) Import plot: Volume of wood pellet imports by origin country (bar chart or stacked area). What’s the trend? (4) “Is it a big number?” plot: Biomass generation as a % of total UK electricity. Plot as a time series. Is biomass significant? Extension: attempt a plot that tells a misleading story (preview of Week 4). Can you make biomass look more important — or less — than it is? |
| 80–95 | 💬 | Discussion and synthesis. “What story do your figures tell?” Ask 2–3 students to share a figure (screen share or walk to front). Class discusses: what does this figure show clearly? What’s missing? What would you add? Instructor highlights choices students have made (axis ranges, colour choices, what’s included/excluded) and how they affect interpretation. |
| 95–105 | 📋 | Commit and wrap-up. Students save their code to week2.R (or update it), commit, and push. “Your repo now has two weeks of work. Next week we’ll ask: how confident should we be in these numbers?” |
| 105–110 | 📋 | Buffer. |
Notes
- Students will be at very different speeds. The progressive hints are essential. Fast students should attempt the extension (misleading figure); slow students should aim for at least one complete figure.
- The instructor should circulate actively during the independent block. Common issues: wrong column names, forgetting
library(ggplot2), confusion about wide vs long data format. Have a quick-reference cheat sheet available in the WebR page. - The discussion at minute 80 is important: it’s the first time students see each other’s choices and recognise that the same data can produce different impressions. This primes Week 4.
Week 3 Content Session: “How confident should we be?”
Aims: Introduce uncertainty as a concept that pervades all measurement and analysis. Distinguish types of error. Introduce the logic of hypothesis testing conceptually (without running a formal test yet). Discuss sampling and representativeness.
Session plan
| Time | Type | Activity |
|---|---|---|
| 0–5 | 📋 | Recap. Last week: summarising data, honest visualisation, ggplot2. You produced figures showing biomass trends and emissions comparisons. This week: how much should we trust those numbers? |
| 5–25 | 🎓 | Concept block 1: Error and uncertainty. All measurements have uncertainty; the question is how much and what kind. Systematic error (bias): your instrument is consistently wrong (e.g., emission factors that exclude supply chain). Random error (noise): measurements vary each time (e.g., annual generation fluctuates with weather). Precision vs accuracy: a measurement can be precise but inaccurate (consistently wrong) or accurate but imprecise (right on average but noisy). Geoscience examples: radiometric dating (precise but assumptions about initial conditions), temperature records (accurate but coverage gaps). |
| 25–40 | 💬✏️ | Exercise 1: What could go wrong? Show the biomass CO₂ per MWh figure students made last week. Ask: “What are the sources of uncertainty in this number?” Students brainstorm in pairs, then share. Expected answers: what’s included in lifecycle emissions? Transport? Land use change? Drying? What about the trees regrowing? Different studies give different numbers — why? Classify each source as systematic or random. |
| 40–60 | 🎓 | Concept block 2: The logic of hypothesis testing. Don’t introduce formulae yet — this is conceptual. Start with an analogy: a court trial. The null hypothesis is “innocent” (no effect / no difference). We look at the evidence and ask: is this evidence surprising enough to reject the null? Type I error (false positive): convicting an innocent person. Type II error (false negative): acquitting a guilty one. The significance level is how much surprise we require before rejecting the null. Worked example with biomass: null hypothesis = “biomass emits the same CO₂ per MWh as coal.” If we had measurements from many plants, how would we decide? Show — informally, perhaps with a sketch or simulated data — what “overlap” between two distributions looks like when the difference is real vs when it isn’t. No R code yet; just visual intuition. |
| 60–70 | 💬 | Exercise 2: How much evidence is enough? Scenario-based discussion. “You measure emissions from 5 biomass plants and 5 coal plants. The biomass mean is lower. But there’s overlap. Are you convinced?” What if you measured 50 of each? What if the difference were larger? What if one measurement were an extreme outlier? Students discuss in small groups. Collect opinions. Point: sample size, effect size, and variability all matter. We’ll formalise this next week. |
| ☕ Possible 5-minute break here | ||
| 70–90 | 🎓 | Concept block 3: Sampling and representativeness. Where did your data come from? And does it represent what you think it represents? Population vs sample. You have data from Drax — but Drax is one power station. Can you generalise to “biomass electricity”? Selection bias: if you only measure the biggest/best-known facility, your results may not generalise. Survivorship bias: if failing biomass plants shut down and disappear from the data, the remaining ones look better than average. Confounding: biomass plants might be newer than coal plants, so any efficiency difference might reflect age, not fuel. Geoscience parallel: sampling only exposed rock faces (weathered, accessible, atypical). |
| 90–105 | ✏️💬 | Integrative exercise: Assumption audit. Give students a one-page summary of the standard carbon accounting approach for biomass (the “zero at combustion” rule). Students work in pairs to: (1) list the assumptions this framework makes, (2) for each assumption, ask: is this testable? What evidence would challenge it? (3) identify which assumptions, if wrong, would most change the conclusion. Collect answers. This directly feeds the Week 3 application session. |
| 105–110 | 📋 | Wrap-up. “In the application session, you’ll take the data you’ve been exploring and ask: does the answer change when we change the assumptions?” |
Notes
- No formal statistical tests this week. The goal is to build intuition for why we need hypothesis testing before introducing the mechanics of how. Students should leave thinking “I can see why eyeballing isn’t good enough” — which motivates Week 6’s formal t-tests.
- The assumption audit exercise is critical preparation for Week 4. Students need to understand the carbon accounting assumptions before they can write (or evaluate) a briefing.
- The “how much evidence is enough?” discussion will naturally surface disagreements about how many data points are needed. This is valuable — don’t resolve it too neatly. The tension motivates formal hypothesis testing.
Week 3 Application Session: “Changing the assumptions”
Aims: Students explore how different assumptions about carbon accounting change the conclusion about biomass. This is a scenario analysis exercise — students modify inputs and observe the effect on outputs. By the end, they should understand that the biomass “zero-carbon” claim depends critically on what you include.
Session plan
| Time | Type | Activity |
|---|---|---|
| 0–10 | 📋 | Setup. Open WebR. Recap: in the content session, you audited the assumptions behind biomass carbon accounting. Now you’ll test what happens when you change them. |
| 10–30 | 🎓💻 | Guided walkthrough: Scenario analysis in R. Instructor works through a simple scenario. Start with the “official” emission factor for biomass (zero or near-zero at point of combustion). Then add one element: transport emissions for shipping pellets from the US to the UK. Show how to calculate this in R: distance × tonnage × transport emission factor. How much does the answer change? Now add another element: the carbon payback period (years until the harvested forest regrows and reabsorbs the CO₂). If the payback is 40 years, is biomass still “carbon-neutral” for a target of net zero by 2050? Walk through the R code: simple arithmetic, then a plot showing cumulative emissions under different payback assumptions. |
| 30–80 | ✏️💻 | Independent exercises: Your scenario analysis. Scaffolded exercises with progressive hints. (1) Transport scenario: Using HMRC import data and standard transport emission factors, estimate the CO₂ cost of transporting the UK’s annual wood pellet imports. How does this compare to the emissions “saved” by burning biomass instead of coal? (2) Supply chain scenario: What if we include emissions from harvesting, processing, and drying the pellets? Use provided emission factor ranges. How sensitive is the answer? (3) Payback scenario: Plot cumulative net emissions for biomass vs coal over 10, 20, 40, and 80 years, under different forest regrowth assumptions. When (if ever) does biomass break even? (4) Extension: The best case and the worst case. Combine the most favourable assumptions (fast regrowth, short transport, efficient processing) and the least favourable. How wide is the range? What does this tell you about certainty? |
| 80–95 | 💬 | Discussion and synthesis. “What did you find?” Key messages to draw out: (a) the answer depends enormously on which costs you include; (b) the timescale matters — biomass can be carbon-neutral over centuries but not over decades; (c) the “official” answer (zero) is a policy choice, not a scientific measurement. Ask: “If you were writing a policy briefing, which scenario would you present? Why?” This directly previews Week 4. |
| 95–105 | 📋 | Commit and wrap-up. Students save code to week3.R, commit, push. “Next week is the big one: you’ll write your policy briefing and review each other’s work.” |
| 105–110 | 📋 | Buffer. |
Notes
- This session is more arithmetic than statistical. That’s intentional. The point is that assumptions — not fancy tests — are often what determine the conclusion. Students need to feel this viscerally before Week 4.
- Provide the emission factors and transport distances as data (in the CSV or as constants at the top of the WebR exercises). Students should not have to research these values themselves — the exercise is about sensitivity, not data collection.
- The “which scenario would you present?” question at the end is the ethical crux. Some students will recognise this as the traitors’ dilemma. Don’t point this out yet.
Week 4 Content Session: “Making the case”
Aims: Teach communication of evidence to non-specialist audiences. Effective figure design. Scientific writing for policy. The centrepiece is the “how to lie with statistics” segment, using the carbon accounting loophole as a live case study and the exemplar reports as worked examples.
Session plan
| Time | Type | Activity |
|---|---|---|
| 0–5 | 📋 | Recap. You’ve spent three weeks with the biomass data. You can describe it, plot it, and you know that the answer depends on assumptions. This week: how to write up what you’ve found — and how to spot when someone is writing up what they want you to think. |
| 5–25 | 🎓 | Concept block 1: Writing for a policy audience. Who is your reader? A policy-maker: busy, not a specialist, needs to make a decision. What they need: a clear bottom line, evidence they can trust, honest acknowledgement of uncertainty. Structure of a policy briefing: summary (the answer first), evidence (with figures), caveats, recommendations. Compare to an academic paper (background first, answer last). Key principle: your reader should be able to stop reading after the summary and still know the main message. Show 2–3 real policy briefing examples (1-page format). |
| 25–40 | 💬✏️ | Exercise 1: Write a summary. Students have 10 minutes to write a 3–4 sentence summary of their biomass findings, aimed at a government minister. Share a few. Class discusses: is the message clear? Is the uncertainty honest? Would a minister know what to do after reading this? |
| 40–65 | 🎓 | Concept block 2: How to lie with statistics. The heart of the session. Frame: “I’m going to show you the same data presented two ways. Both are technically accurate. One is honest; the other is not.” Show the two exemplar reports side by side (AI environmental impact): the faithful version and the traitor version. Walk through 3–4 specific deceptive techniques from the traitor report (use the teaching notes): (1) Cherry-picking: the per-query energy figure (0.3 Wh vs 18.9 Wh). (2) Invalid chart type: the pie chart. What’s wrong with it? (3) Cross-scale conflation: global AI vs UK electricity. (4) Omission: no benefit side, no marginal/fixed cost distinction. Don’t reveal all 18 techniques — save some for the application session reveal. The message: the most dangerous misinformation is technically sourced. You can’t just fact-check the numbers; you have to audit the choices. |
| 65–75 | 💬 | Exercise 2: “What’s missing?” Show a deliberately incomplete data summary (could be from the biomass case). Ask students to identify what’s been left out and how the omission changes the impression. Brief small-group discussion. |
| ☕ Possible 5-minute break here | ||
| 75–95 | 🎓 | Concept block 3: Effective figures for a briefing. Practical guidance for the figures students will include in their own briefings. Principles from content session 2, but now applied to communication: (1) every figure should have a clear “so what” — what should the reader take from it? (2) Don’t show everything; show the thing that matters. (3) Captions should tell the story, not just describe the axes. (4) Label directly rather than relying on legends where possible. Show before/after examples: a cluttered figure → the same figure simplified for a briefing. |
| 95–105 | 📋🎓 | Briefing assignment and traitors instructions. Hand out the assignment: write a ~2-page policy briefing answering “Is UK biomass electricity carbon-neutral?” Due at the end of the application session (committed to GitHub). Explain the peer review process: each student will be assigned another student’s repo and will file GitHub Issues with structured feedback. Introduce the traitors exercise. Students who want to be traitors self-select (or are assigned — logistics TBD). Traitors receive a separate briefing sheet (privately, not in class — perhaps via email or DM during the break). Their task: write a briefing that is superficially credible but actively misleading. Faithful students will try to identify which briefings they trust during peer review. |
| 105–110 | 📋 | Wrap-up. “In the application session, you’ll write your briefing, commit it, and then review someone else’s. Come ready to write.” |
Notes
- The exemplar reveal is the highlight of this session. Spend time on it. Let students react. The moment when they realise the traitor report “feels” more convincing than the faithful one is pedagogically powerful.
- Only reveal 3–4 techniques from the teaching notes here. The application session’s reveal will cover the rest. This gives students the chance to spot more techniques themselves during peer review.
- Traitor logistics: Self-selection is simpler than assignment and avoids the risk of students feeling punished. Aim for roughly 15–20% traitors. If too few volunteer, the instructor can privately recruit. If too many, some can be “double agents” who write faithful briefings but are told they’re traitors (this adds another layer for the discussion).
- The traitor briefing sheet should list specific techniques to use (e.g., “cherry-pick the highest emission estimate for coal to make biomass look better by comparison,” “use a truncated y-axis to exaggerate a trend,” “omit the payback period entirely”). It should also warn traitors not to be too obvious — the goal is to be credible, not cartoonish.
Week 4 Application Session: “Write, review, reveal”
Aims: Students write their formative policy briefing, commit it, conduct peer review via GitHub Issues, and participate in the traitors reveal. This session is mostly writing and reviewing, not coding.
Session plan
| Time | Type | Activity |
|---|---|---|
| 0–5 | 📋 | Orientation. Today has three phases: write (45 min), review (30 min), reveal (25 min). Remind students of the briefing structure: summary, evidence with figures (reuse and refine figures from Weeks 2–3), caveats, conclusions. Traitors: you know who you are. Everyone else: read carefully. |
| 5–50 | ✏️ | Writing block. Students write their ~2-page policy briefing. They can work in a .qmd or .Rmd file in their repo (with R code chunks for figures) or write in a plain text/Word file with exported figures — either is acceptable. Instructor and demonstrators circulate for questions about content, structure, and R code. Traitors write their misleading versions. At the end of this block, students commit and push their briefings. Hard deadline at minute 50: whatever they have is what gets reviewed. |
| 50–55 | 📋 | Peer review setup. Announce review assignments (pre-prepared: each student is assigned to review one other student’s repo). Briefly remind students of the review criteria (provided as a checklist — see below). Students navigate to their assigned repo on GitHub. |
| 55–85 | ✏️ | Peer review via GitHub Issues. Each student reads their assigned briefing and files 2–3 GitHub Issues with structured comments. Review checklist (provided as a template): (1) Clarity: Is the main message clear from the summary? Could a non-specialist understand it? (2) Evidence: Are the figures well-chosen and honestly presented? Do the numbers have comparators? (3) Uncertainty: Does the briefing acknowledge what’s uncertain or assumption-dependent? (4) Trust: Do you believe this briefing is faithful, or do you suspect it’s a traitor’s? Why? Students must give a reason for their trust judgement — not just a yes/no. |
| 85–105 | 💬🎓 | The reveal. Phase 1 (5 min): Ask for a show of hands or poll: “Who did you flag as a traitor?” How many traitors did the class identify? How many faithful briefings were wrongly flagged? Phase 2 (5 min): Traitors reveal themselves. Brief reaction. Phase 3 (10 min): Structured debrief using the teaching notes. Walk through the techniques that students didn’t spot in the content session. Discuss: what made the traitor briefings convincing? What gave them away? Were any faithful briefings accidentally misleading? (This is often the most interesting finding.) Key message: honest mistakes and deliberate deception can look identical. The skills that help you spot a traitor also help you avoid being one by accident. |
| 105–110 | 📋 | Wrap-up and transition. Celebrate: you’ve completed the formative mini-project. You can articulate a question, explore data, test assumptions, produce figures, write a briefing, and review someone else’s work — in four weeks. Preview Phase 2: “Starting next week, you’ll choose your own question. Same skills, your choice of topic.” |
Peer review checklist (to be provided as a GitHub Issue template)
## Peer Review: [Author's name]
### Clarity
- [ ] The summary states a clear conclusion
- [ ] A non-specialist could follow the argument
- [ ] Figures are referenced in the text
### Evidence
- [ ] Numbers have context/comparators ("Is that a big number?")
- [ ] Figures are clearly labelled (axes, captions, units)
- [ ] Sources are cited
### Uncertainty
- [ ] The briefing acknowledges limitations or assumptions
- [ ] Sensitivity to assumptions is discussed (not just one scenario)
### Trust judgement
I believe this briefing is: **Faithful / Suspect**
Reason:Notes
- Timing is tight. The 45-minute writing block is short for a 2-page briefing, but students have been building towards this for three weeks. Most of the analytical work (figures, calculations) is already done; this session is about synthesis and writing.
- If students genuinely can’t finish in 45 minutes, they can continue refining after the session and commit an update — but the version reviewed in class is the one committed at minute 50.
- The reveal should be fun but respectful. Traitors should feel celebrated for doing a hard job well, not shamed. The message is “these techniques are everywhere — in policy, media, and advocacy — and now you know how to spot them.”
- Faithful briefings that get flagged as traitors are the richest discussion material. They show that unintentional misleading is as common as deliberate deception, and they motivate the careful communication practices taught in this session.
- After the session: instructor reviews all briefings and GitHub Issues. Brief written feedback (could be a closing comment on each Issue thread). This completes the formative assessment cycle.
Cross-cutting threads: Weeks 1–4
Several themes recur across sessions and should be reinforced consistently:
“Is that a big number?”
Introduced in Week 2, but should surface in every session thereafter. Any time a number appears without a comparator, ask the question. By Week 4, students should be asking it unprompted.
Git rhythm
Every application session ends with a commit. The sequence is: - Week 1: week1.R (exploratory code) - Week 2: week2.R (figures) - Week 3: week3.R (scenario analysis) - Week 4: briefing.qmd or equivalent (the policy briefing)
By Week 4, committing should feel routine, not effortful.
The biomass narrative arc
The mini-project has a deliberate dramatic structure: - Week 1: Curiosity. “Is biomass carbon-neutral? Let’s find out.” - Week 2: Discovery. “The numbers are interesting — biomass has grown fast, coal has declined, and the emissions comparisons are surprising.” - Week 3: Doubt. “Wait — these numbers depend on what you include. Change the assumptions and the answer changes.” - Week 4: Judgement. “Now write it up. Choose what to include. Review someone else’s choices. Can you tell honest from dishonest?”
This arc mirrors the research process itself: curiosity → evidence → uncertainty → communication.
Progressive skill building
| Skill | Week 1 | Week 2 | Week 3 | Week 4 |
|---|---|---|---|---|
| R | read.csv(), head(), plot() |
ggplot(), aes(), geom_*() |
Arithmetic, scenarios, conditional logic | Reuse and refine |
| Git | Clone, first commit | Regular commits | Regular commits | Commit briefing; navigate others’ repos; file Issues |
| Statistics | — | Descriptive stats, distributions | Uncertainty, error types, hypothesis logic | — (communication focus) |
| Communication | Formulate a question | “Is that a big number?” | Acknowledge uncertainty | Write a briefing; peer review |
| Critical thinking | Testable vs untestable | Spot misleading charts | Audit assumptions | Identify deception |