The Third Bit

Start where you are, use what you have, help who you can.

In Brief

Ph.D. in Computer Science
Co-founder of Software Carpentry and The Architecture of Open Source Applications
ACM SIGSOFT Distinguished Educator of the Year
Co-winner, Jolt Award, Best General Book
Member, Python Software Foundation
Author or editor of over a dozen books on programming and two for children


Recent Writing

Current and Recent Projects

RStudio Instructor Training

Teaching researchers and data scientists the basics of modern evidence-based teaching practices. This workshop is derived from the training I originally created for the Carpentries.


A blocks-based tool for teaching basic data science: think "Scratch meets the tidyverse". TidyBlocks is built in JavaScript using Google's Blockly toolkit.

Research Software Engineering in Python

A textbook for a semester-long course on building research software and running research software projects. This book is due to be published in the first quarter of 2021.

Software Tools in JavaScript

An attempt to teach software design by re-implementing common software engineering tools in Node.js, it should be ready for use some time in 2021.

Teaching Tech Together

Teaching Tech Together cover

A book about teaching programming for people with technical backgrounds but no formal training as educators.

JavaScript for Data Science

JavaScript for Data Science cover

An introduction to JavaScript for both client-side and server-side programming for data scientists who have never used it before.


A multilingual glossary of terms used in data science and adjacent disciplines that is available both as structured text and as an R package.

The Carpentries

A non-profit organization dedicated to teaching basic software and data skills to researchers world-wide. I co-founded its predecessor, Software Carpentry and was its first Executive Director.

The Architecture of Open Source Applications

A collection of essays describing the architectures of 50 open source projects of various sizes, many of them written by those projects' creators.

Sensible Adventures

A sporadically-updated collection of stories and children's books I have published.