• Sessions
    • 1. Quarto
    • 2. Plot
    • 3. Text
    • 4. Animate
    • 5. Map
    • 6. Scrap
    • 7. Apps
    • 8. Report
    • 9. Scaling
  • AI · LLMs
    • 1. Talking to machines
    • 2. Chat with your data
    • 3. Grounded in truth (ragnar)
    • 4. Agentic coding
    • Ask R4DEV 🤖 (live capstone)
  • Thinking
    • 1. Embrace the noise
    • 2. There is only one test
    • 3. All models are wrong
    • 4. Draw your assumptions
    • 5. Think Bayes
  • Tools
    • Practice
    • R-sources
    • Feedback
  • Wait, what did I get myself into?
Categories
agents
AI
API
bayes
blog
book
bootstrap
bootswatch
broom
causal inference
causality
Claude Code
DAG
dashboard
ellmer
embeddings
feedback
functional programming
gganimate
ggdag
ggimage
ggplot2
ggpp
ggsql
girafe
html
httr2
hypothesis
infer
inference
interactive
leaflet
LLM
map
MCP
mirai
modeling
natural experiments
netlify
network
ngrams
ollama
p-value
parallel computing
parametrised reports
pdf
plotly
presentation
probability
purrr
quarto
querychat
RAG
ragnar
rayshader
reactable
reactive
regex
regression
revealsj
rvest
scrap
sentiment
sf
shiny
shinychat
simulation
spatial
SQL
statistics
structured data
test
text
treemap
uncertainty
vector search
webr
website
while
word
wordcloud
zotero

R4DEV

A hands-on workshop on reproducible data analysis · running since 2022

More fiction is written in Excel than in Word. Learn how to do better.

From your first Quarto document to interactive maps, animations, web apps and programming Large Language Models –all in R, free, open-source, and tested on real humans1 at the OECD.

Start with session 1 → Explore the AI track 🤖 Wait, what is this?

All progress is piecemeal, so the workshop improves permanently. Keep the Posit cheat sheets and the tidyverse style guide close.

Sessions 📊

Blogging with Quarto 📓
5 min

Learn to work with Quarto, to write prose and analise data at the same time. Create and update a blog using Quarto and then publish it online using Netlify

Jul 30, 2022

Everything in its right place 🎼
31 min

Learn how to get information from APIs with httr2, and create interactive visualisations of historical GDP, Kyoto weather and archived Spotify songs using ggplot2, plotly…

Jul 31, 2022

Data from words 📚
37 min

Import, clean, tokenise and stem text, plus do sentiment analysis, topic modelling and learn how functions in R make your work so much easier.

Jul 31, 2022

Making data move 🚶
24 min

Transform static plots into animations using gganimate. Examples include millenia of chery tree blossoms, COVID-19 aftermath and why causation does not imply correlation.

Jul 31, 2022

Mapping despair in the USA 🗺️
29 min

Learn how to find, download and visualise spatial data. We’ll create static and interactive maps using ggplot2 and leaflet, using data on the opioid epidemic in the United…

Jul 31, 2022

Just take it 🌏
14 min

Sometimes you need to bring data straight from a website. Scrape IMDb movie rankings, U2 lyrics and untranslatable words.

Jul 31, 2022

Make it shine 🌟
38 min

These are the best sessions, bringing together all the tools from previous sessions to create interactive apps. You’ll learn how to build and publish Shiny dashboards and…

Jul 31, 2022

Smart reports 🧠
8 min

Create parametrised reports and learn to work with references using Zotero.

Jul 31, 2022

Do it well, do it fast 🏎️
9 min

map() replaces the for-loop; mirai replaces ‘one core at a time’. Learn purrr’s functional style, then parallelize it with a single wrapper function – no rewrite required.

Jul 5, 2026
No matching items

AI · LLMs 🤖

Talking to machines 🤖
10 min

LLMs are not just chatbots: they are functions you can call from R. Learn to chat, design prompts, extract structured data from text, and give models tools –all with ellmer.

Jul 4, 2026

Chat with your data 💬
8 min

Put a language model inside your Shiny apps: streaming chat UIs with shinychat, natural-language data filtering with querychat, and SQL that draws its own charts with ggsql.

Jul 4, 2026

Grounded in truth 🧭
12 min

Build a real RAG pipeline end to end with ragnar: crawl a site, chunk it, embed it for free with a local model, store it in DuckDB, retrieve two different ways, and hand…

Jul 4, 2026

Agentic coding 🦾
15 min

An agent is an LLM in a loop with tools. Learn what that actually means, meet the main agentic coding tools –Claude Code, Codex, OpenClaw, Antigravity– and the vocabulary…

Jul 5, 2026
No matching items

Statistical thinking 🎲

Embrace the noise 🎲
8 min

Every number you compute from data could have come out differently. Learn to see sampling variation by simulating it: random draws, the law of large numbers, and the central…

Jul 1, 2026

There is only one test 🃏
8 min

All of hypothesis testing is one idea: build a world where nothing is going on, simulate it, and ask if your data would be surprising there. Learn it by shuffling with the…

Jul 2, 2026

All models are wrong 📏
8 min

The regression line is the most used –and most over-trusted– model on Earth. Learn to fit it, tidy it with broom, dress it in honest uncertainty with the bootstrap, and…

Jul 3, 2026

Draw your assumptions before drawing your conclusions 🔀
47 min

Correlation is not causation –but why, exactly, and what would be? Learn the three atoms of causal structure (fork, chain, collider), simulate each one to see when…

Jul 4, 2026

Think Bayes 🤔
6 min

Toss a globe, count the water, and watch a probability distribution learn. A gentle first contact with Bayesian inference, animated with the tools from session 4.

Jul 5, 2026
No matching items

Tools 🛠️

Practice, test 💪
1 min

Test your code directly in the R4DEV blog, enabled thanks to the quarto-live extension: R running in your browser, no installation needed.

Jul 31, 2022

R-sources 📙
3 min

This is just the begining. Here you will find a repository of resources to learn more by topic: statistics, geocomputation, text analysis, building apps, etc.

Jul 31, 2022

Feedback 🔁
1 min

Take a minute to tell me what you liked, what you didn’t like, and how to improve the workshop. Anonymously, if you’d like.

Apr 3, 2023
No matching items
Back to top

Footnotes

  1. Thanks to Zélie, Rebecca, Rossana, Romane, Emma, Shivona, Maria, Valeria, Laura, Sofia, Maëlle and many others who tested, often with their patience, earlier versions of this workshop.↩︎

📉 R4DEV 📈

Licensed under
Creative Commons CC BY 4.0

Cookie Preferences

Created with and Quarto