Greg Wilson

Greg Wilson

Years ago, I lost my temper while arguing with my brother, and said, "Jeff, I could teach you everything I know and you'd still be an idiot." Please keep that in mind as you read this site.


Co-founder of Software Carpentry
Editor and author of books on computing and teaching
(and for children)
Ph.D. in Computer Science
Parent, spouse, and proud Canadian


Leadership Training for Open Science

Jan 10, 2019

Many people in various open science communities have technical skills and good intentions, but no experience engineering structural change in organizations. Updating curriculum guidelines to make room for data science training, nurturing a regional R user group that can sustain itself, removing bias from hiring practices, and convincing politicians and business leaders to base policy on the best available evidence all require a set of skills that most data scientists have never been taught.


Not on the Shelves (2019 Edition)

Jan 6, 2019

I made progress on two book projects last year: Teaching Tech Together is now “done”, and JavaScript versus Data Science should be out some time in February. That means it’s time to update my list of books that don’t yet exist, which I have found helps me figure out what gaps exist in the literature that I could usefully fill.


How Feasible is a Harassment Canary?

Dec 31, 2018

After reading “10 Impressive Questions to Ask in a Job Interview” back in November, I tweeted:


Harper: Lesson Discovery and Aggregation

Dec 30, 2018

After feedback from several people, I have updated the proposal for a lesson discovery and aggregation system (now called “Harper”) and put it in its own page. The key differences between this version and earlier ones are:


Data Wrangling with JavaScript

Dec 29, 2018

I recently read and enjoyed Ashley Davis’s new book Data Wrangling with JavaScript. As its title suggests, it doesn’t spend very much time on statistical theory; instead, it covers the “other 90%” of squeezing answers out of data:


Use Case Maps Revisited

Dec 27, 2018

Back when I was struggling to teach a meaningful course on software architecture at the University of Toronto, I mentioned Reekie and McAdam’s book A Software Architecture Primer, which was one of the few I found useful. Ten years on, I still think about the use case maps they described. These two diagrams show what use case maps look like:


Poor Thinking

Dec 26, 2018

Linda Tirado’s essay about being poor has haunted me since I first read it four years ago. “Poor people don’t plan long-term: we’ll just get our hearts broken,” and study after study has shown that poverty exacts a terrible intellectual toll. If you’re constantly worrying about whether you’ll be able to make this month’s rent or how you’re going to replace the running shoes that someone stole from your daughter, you don’t have time or energy to build a better life.


Be Grateful for the Present You Got

Dec 24, 2018

Not long before the end, I asked my brother Jeff if he was angry about his life being cut so short. He said, “I try not to be. If you get a really good present for Christmas, but someone else gets a better one, you shouldn’t say hey, theirs is better—you should be grateful for the present you got.”


Off Twitter

Dec 24, 2018

After yet another unpleasant encounter on Twitter, I have deliberately locked myself out of my account for a couple of weeks: it just doesn’t seem the grief any more. If you’d like to chat, I’ve re-enabled comments on this blog, and can always be reached by email.


PETE, PRIMM, and Monsters

Dec 20, 2018

A year ago, I wrote a short catalog of exercises that you can use in programming classes. I’d now like to build up a catalog of lesson structures, and would like your help.