Recently, the Association for Computing Machinery’s (ACM’s) Special Interest Group on Software Engineering (SIGSOFT) recognized Greg Wilson as the 2020 recipient of its prestigious Influential Educator Award which is awarded annually to individuals or groups who have made significant contributions to software engineering through education, mentoring or policy.
JBR: Greg Congratulations, and thank you for agreeing to this interview.
Greg, you have been an educator for quite some time, first as a professor of computer science, then with Software Carpentry and now RStudio. During your career technology has affected the educational experience for both students and teachers alike. What do you think have been the most dramatic changes?
Greg: Technically, Stack Overflow is the biggest change in computing education in the last 20 years. It has a lot of problems—women frequently have to post under pseudonyms in order to avoid harassment, for example—but every professional programmer I know consults it many times a day, and I think educators have an obligation to include it rather than ignore it.
But the more important change has been cultural. Guys like me didn’t pay much attention to equity or inclusion 20 years ago, and when we did, it was to make snarky jokes. Today, most communities have a code of conduct, all-white or all-male panels at conferences are called out, and pay disparities are discussed openly. (This article by Julia Silge is a great example.) We still have a long way to go, but at least we’re now talking about things that really matter.
JBR: Economic pressures over recent years have led many colleges and universities to explore online learning as a cost effective alternative to the classroom experience, how do you see these efforts going? Have there been any notable successes? Do you think that online experience is changing the relationship between teachers and students?
Greg: There’s a joke that online learning is what everyone wants for someone else’s kids. Distance learning can be just as effective as in-person learning—the Open University in the UK, for example, has been proving that annually since the 1970s—but MOOCs were driven by “what technology do we have?” and “can we scale quickly enough to keep the VCs interested?” rather than “how do we teach effectively?” I think the next decade will see us backing away from recorded video and robo-graded exercises and emphasizing real-time peer-to-peer interaction instead. It’s pedagogically more effective, and learners who have grown up playing Minecraft with each other will wonder why we ever did anything else.
JBR: The COVID-19 pandemic is forcing educators at all levels from pre-school teachers to college professors to adapt, “cold turkey” to the reality of completely immersive online education. What advice do you have for teachers and students?
GREG: The first is “only change what you absolutely have to”. The second is to ask learners rather than making assumptions: their devices may be a lot less powerful than yours, or shared with other family members, or they may not have bandwidth or a quiet place for meetings, and so on. The third, which is probably most important, is to be kind: if there was ever a time to give learners partial marks or extensions on homework, it’s now.
JBR: Do you distinguish between education and training, and if so do, you think the online experience can be effective for both tasks?
Greg: I don’t think there’s a meaningful distinction. I don’t believe people can learn to think about computing in any meaningful way without learning how to program, or vice versa. I think (at least I hope) the biggest change we’ll see from moving programming education online is a much wider adoption of live coding, and with it, much more emphasis on how programs are written, not just what they look like when they’re done.
JBR: Is there anything special about teaching R? Does the deep association of R with statistical inference and methods pose any particular challenges for educators?
Greg: I think the biggest challenge in teaching R is getting people with computer science backgrounds like mine to take it seriously. Nobody would design a language that way today, but then, nobody would design C or JavaScript as they are either, and they’re all extraordinarily useful tools.
I think the other challenge is that we don’t really know how to test data analyses. The unit testing paradigm of software engineering isn’t really appropriate: it doesn’t tell us how close is close enough when we’re checking answers, and its focus is building reusable products, not answering questions. A data scientist constructing an R Markdown notebook step by step is doing something very different from what a developer building an e-commerce site does; I hope to learn a lot more about those differences in the next few years so that we can teach data scientists more effectively.
JBR: Is there anything we did not touch on that you would like to communicate to our R Views readers before we wrap up here?
Greg: Yes: please wash your hands, and please vote.
You may leave a comment below or discuss the post in the forum community.rstudio.com.