Finding something worth knowing…

Technology

How a single Harvard professor turned computer science into a theatrical performance

Computer science is often viewed as a solitary, screen-bound pursuit. However, Professor David J. Malan uses physical props—from tearing phone books to pouring water—to transform abstract logic into a visceral, memorable experience for millions of learners worldwide.

At the heart of the CS50 experience is a unique pedagogical approach known as 'computer science with theatricality.' Rather than relying solely on dry code, Professor David J. Malan, the Gordon McKay Professor of the Practice of Computer Science, utilizes physical sets and props to illustrate complex computational concepts. To explain the mechanics of sorting, he uses plastic numbers; to demonstrate how variables are swapped, he employs glasses of water; and to illustrate the concept of pointers, he utilizes mailboxes.

This method extends to fundamental algorithms as well. To teach the difference between linear and binary search, Malan uses the physical act of opening doors. The concept of race conditions is brought to life through the use of a refrigerator and milk, while linked lists are represented by wooden blocks. This tactile approach aims to make the intellectual enterprises of programming more accessible and memorable for students navigating the complexities of binary, algorithms, and memory management.

The scale of this educational experiment is massive. CS50 has become one of the largest courses at Harvard University, Yale University, and the edX platform, boasting more than 3.5 million registrants. As the digital classroom has evolved through the challenges of COVID-19, the course has continued to integrate new technologies, such as an improved 'rubber duck debugger' powered by artificial intelligence, ensuring that the art of programming remains at the cutting edge of both pedagogy and technology.

Source: David J. Malan - Visitas Thinks Big 2022 - Harvard University

Related

More in Technology · All topics