I am always happy to talk: please see this rider for details

Software Design for Data Scientists

Many data scientists are self-taught programmers and have never been shown how to think about design in the large. This talk presents ten different approaches, each of which gives different insights.

Last updated: July 2021.

Software Engineering’s Greatest Hits

Software engineering is in the process of turning itself into an evidence-based research discipline. This talk describes how that is happening, why it matters, and a few of the more interesting, surprising, and controversial results to date.

Last updated: July 2021; video available.

What Everyone in Tech Should Know About Teaching and Learning

Having tried to cram a dozen books about teaching into a two-day course, I have now tried to cram key ideas from that course into this one-hour talk.

Last updated: July 2021; video available.

How to Run a Meeting

A few simple rules that can make everyone’s life run a little more smoothly.

Last updated: July 2020; video available.

Teaching Online on Short Notice

A webinar given in the early days of COVID-19.

Last updated: March 2020; video available.

Software Carpentry: Lessons Learned

Since its start in 1998, Software Carpentry has evolved from a week-long training course at the US national laboratories into a worldwide volunteer effort to improve researchers’ computing skills. This talk explores the lessons we’ve learned along the way about applying open source software development techniques to teaching at scale, and about getting people and institutions to change the way they work.

Last updated: October 2018; video available.

Late Night Thoughts on Listening to Ike Quebec

Keynote at CarpentryCon 2018 in Dublin; video available.

Last updated: May 2018.

Not in the Calendar

Hundreds of books about writing compilers are currently on the market, but there are only three about writing debuggers. Everyone thinks we should teach children how to program, but undergraduate courses on computing education are practically nonexistent. This talk explores what these gaps and others in undergraduate Computer Science courses tell us about the state of computing today, and about how we could fix it.

Last updated: October 2016; video available.

Older Talks