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
Recent Posts
2021-04-20: Scorecards
2021-04-19: First Day with Metabase
2021-04-19: Evening and Morning Routine
2021-04-17: Building a Book (Part 3)
2021-04-17: Nine Weeks Off
2021-04-17: You Say Dumbing Down, I Say Inviting In
2021-04-17: Choose Your Own Adventure
2021-04-15: Indexing
2021-04-08: Lesson Maps
2021-04-07: Meals
2021-04-06: Another Glossary
2021-04-04: And Another Bibliography
...or follow me on Twitter
Recent Papers
Lin et al (2020): Ten quick tips for making things findable
Nederbragt et al (2020): Ten quick tips for teaching with participatory live coding
Denny et al (2019): Research this! Questions that computing educators most want computing education researchers to answer
Sholler et al (2019): Ten simple rules for helping newcomers become contributors to open projects
Wilson (2019): Ten quick tips for creating an effective lesson
Brown & Wilson (2019): Ten quick tips for teaching programming
Current and Recent Projects
Teaching Tech Together

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

An introduction to JavaScript for both client-side and server-side programming for data scientists who have never used it before.
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.
TidyBlocks
A blocks-based tool for teaching basic data science: think "Scratch meets the tidyverse". TidyBlocks is built in JavaScript using Google's Blockly toolkit.
Software Tools in JavaScript

Teaches software design by re-implementing common software engineering tools in Node.js; currently in beta.
Building Software Together

A student's guide to team software projects that covers everything from using Git to running meetings; currently in beta.
The Architecture of Open Source Applications
A collection of essays describing the architectures of 50 open source projects of various sizes, many written by those projects' creators.
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 Tidynomicon
A brief introduction to R for people who already know how to program in a language like Python; currently in beta.
Glosario
A multilingual glossary of data science terms.