Slides from three delivered seminars by James Kermode, University of Warwick. All three versions share a single Typst source.
| Talk | Audience | Date | Handout |
|---|---|---|---|
| Research version | Predictive Modelling Discussion Group + HetSys CDT, University of Warwick | 30 April 2026 | |
| Brookes version | Oxford Brookes · AI & Data Analysis Network | 6 May 2026 | |
| MPIP version | Max Planck Institute for Polymer Research | 15 June 2026 |
The three decks share most of their content. The Brookes version leads with the assessment-design thesis and mograder as the worked case study; the research version leads with research-codebase examples (ACEpotentials, LAMMPS, GPU port, Atomistica) and frames mograder as a supporting case study. The MPIP version is a trimmed (~45 min) cut of the research version for a computational-science audience: it drops the mograder case study and a few detail slides.
Discussion: LinkedIn post.
Agentic coding tools such as Claude Code, Cursor, and Codex have crossed from novelty into the daily workflows of research groups willing to engage them seriously. Used well, they can migrate legacy Fortran build systems, write numerically validated simulation code, and maintain CI across multi-language stacks; used badly, they hallucinate plausible nonsense at scale.
These talks distil 6 months of hands-on experience, 1,000+ Claude co-authored commits across 26 repositories, and mograder as a case study into practical patterns and anti-patterns. The patterns are tool-agnostic; the case studies use Claude Code.
The views and experiences in these slides are those of the author personally, in the role of an academic researcher and HetSys CDT director at the University of Warwick. They do not represent the institutional position of the University of Warwick, of the HetSys CDT, or of any funder. Warwick's AI strategy is being developed separately through the appropriate institutional channels.
The talks are reportorial: they describe what worked and what didn't on a specific set of scientific computing projects using a specific set of tools (primarily Claude Code, with reference to Cursor, Codex, and Gemini CLI). The patterns and anti-patterns are tool-agnostic; the cost figures and case studies are illustrative of one researcher's experience, not benchmarks or recommendations.
Claude Code (Anthropic) helped produce these slides: drafting Typst layout, analysing GitHub commit history into the bar charts, and catching overflow / formatting issues across the audience variants. I take full responsibility for the content, claims, and recommendations — every figure was verified, every cited statistic chased to source, every fact-claim about my own work double-checked against the underlying repositories. The patterns I recommend in the deck (spec first; red/green TDD; manage context; hoard known-working examples) are the patterns I used to make the deck itself. Commits with substantive AI contribution carry a Co-Authored-By: Claude trailer in git log — the partial audit trail recommended on the Responsible Use slide.
The decks are written in Typst. Tested on typst 0.14.2.
# Research version
typst compile agentic-coding-seminar-research.typ # full live deck (phase reveals)
typst compile agentic-coding-seminar-research-handout.typ # one page per logical slide
# Brookes version
typst compile agentic-coding-seminar-brookes.typ # full live deck (phase reveals)
typst compile agentic-coding-seminar-brookes-handout.typ # one page per logical slide
# MPIP version (trimmed ~45 min cut of the research deck)
typst compile agentic-coding-seminar-mpip.typ # full live deck (phase reveals)
typst compile agentic-coding-seminar-mpip-handout.typ # one page per logical slideAll six shims #import deck from agentic-coding-seminar-shared.typ and invoke it with the appropriate version and handout arguments.
.
├── agentic-coding-seminar-shared.typ # single source of truth (all three decks)
├── agentic-coding-seminar-research.typ # shim → #deck("research")
├── agentic-coding-seminar-research-handout.typ # shim → #deck("research", handout: true)
├── agentic-coding-seminar-research-handout.pdf # prebuilt research handout
├── agentic-coding-seminar-brookes.typ # shim → #deck("brookes")
├── agentic-coding-seminar-brookes-handout.typ # shim → #deck("brookes", handout: true)
├── agentic-coding-seminar-brookes-handout.pdf # prebuilt Brookes handout
├── agentic-coding-seminar-mpip.typ # shim → #deck("mpip")
├── agentic-coding-seminar-mpip-handout.typ # shim → #deck("mpip", handout: true)
├── agentic-coding-seminar-mpip-handout.pdf # prebuilt MPIP handout
├── figures/
│ ├── heatmap.png # GitHub contribution heatmap
│ ├── transition.png # weekly commit transition chart
│ ├── mograder_commits.png # by-repo commit / kLOC bar chart
│ └── repo_qr.png # QR code for the closing slide
├── github_claude_stats.py # regenerates the chart figures
├── LICENSE # CC-BY-4.0
└── README.md
The chart figures in figures/ are produced by github_claude_stats.py; if you want to regenerate or adapt them, the script needs gh auth login -s repo,read:org and is driven by uv run. The QR code points back to this repo and was generated with qr (the Python qrcode library's CLI).
Slides, source, and figures are released under CC BY 4.0. You are welcome to reuse, remix, and adapt with attribution.
- Simon Willison — Agentic Engineering Patterns (living guide, Feb 2026+)
- Patrick Mineault — Claude Code for Scientists (Jan 2026)
- MIT Missing Semester — Agentic Coding (2026)
obra/superpowers— skills framework & software methodologymarimo-team/marimo-pair— drop agents inside a running marimo notebook sessionmograder— the case study referenced throughout