Teaching Philosophy Through Computer Science

Professor Daniel Lim
Professor Daniel Lim

This post was written by Jiaxin Wu (Educational Consultant, Center for Teaching and Learning, Duke Kunshan University) based on her collaborative work and interview with the professor and selected students.

This story introduces one possibility of the interdisciplinarity between the humanities and the sciences, by integrating knowledge from philosophy and computer science. With the careful and intentional design of PHIL 109, “Philosophy Through Computer Science,” Dr. Daniel Lim, Associate Professor of Philosophy at Duke Kunshan University (DKU), produces scholarly work on his research as well as his teaching. 

The Interdisciplinary Teaching Environment at DKU

Kara Godwin and Noah Pickus1 (2017) summarize the key features of liberal arts and sciences education, such as interdisciplinary integration and innovative pedagogy, to better prepare lifelong learners with broad, integrated knowledge and a sense of social responsibility. In the context of DKU, a liberal arts and sciences university, Dr. James Miller, Associate Dean for Interdisciplinary Strategy, emphasizes that interdisciplinarity synthesizes knowledge from two or more traditional disciplines, discovers the gaps in our knowledge that lie between traditional disciplines, and makes knowledge more relevant to society.

Rooted in the culture of emphasizing interdisciplinarity, Lim started his journey of teaching philosophy through computer science in 2019. He shared that the interdisciplinary environment at DKU opened his eyes to the possibility of incorporating his previous work in computer science with the teaching of philosophy. The idea of developing an interdisciplinary course was reinforced by his co-teaching experience with Dr. Ming Li, from whom he gained the confidence not only to effectively teach an introductory computer science course but also the confidence to build connections with philosophy.

The Intentional Design of Philosophy Through Computer Science

Lim studied computer science and then worked as a database programmer for several years before switching to the academy of philosophy. He recalled, “My main motivation for studying computer science was to get a degree that would get me a job. One reason I quit working as a programmer and entered the field of philosophy is that philosophy helped me think through questions that mattered to me.”

Having immersed himself in philosophy for over a decade, Lim was given the opportunity to teach introductory computer science courses again at DKU. He made an analogy to There and Back Again, the subtitle for the novel The Hobbit, to describe his academic and professional journey. Though ending in the same place, the field of computer science, the journey through philosophy changed the way he approaches and teaches computer science.

Teaching computer science after being away from the field for years, Lim found something interesting, “We use Introduction to Computation and Programming Using Python as the main textbook for COMPSCI 101 – it’s what was used at MIT when I was a TA. Reading through this book again, I was surprised to find how many interesting parallels there were with philosophy, such as the issues surrounding machine learning in computer science and the issues surrounding the problem of induction in philosophy. They are essentially the same and this connection can be used to push discussions forward in interesting ways. This led to two papers I published in Teaching Philosophy that gave me the confidence to design PHIL 109.”

Lim shared the context and rationale of this course across different universities all over the world; many in the humanities are concerned that the sciences are being emphasized at the expense of the humanities. It was the opposite decades ago when Charles Percy Snow was concerned that the humanities were being emphasized at the expense of the sciences within the British education system. However, both cases imply scholars in these domains have to build effective communication and collaboration across the divide. PHIL 109 was intended, at least partly, to expose more students to the humanities by leveraging growing interest in the computer and data sciences.

Professor Lim and his students
Professor Lim and his students

PHIL 109 was first offered at DKU in Spring 2020 and counted towards the quantitative reasoning requirement in DKU undergraduate curriculum. This course attracted 18 students, including some (potentially) majoring in sciences and some interested in philosophy with a limited coding background. In this course, Dr. Lim expects students to gain fluency with core philosophical concepts, write rudimentary programs in Python, and use programming code to present and explain philosophical concepts as the final project. Students spoke highly of the final group project. As the integration of these two fields is brand new, everyone showed high enthusiasm to learn from each other and fully contributed to the group discussion as well as the final product.

Most importantly, through this course, students got a chance to approach their own major differently, seeing the possibilities of breaking down the boundaries across disciplines and exploring links that are not currently recognized.

Producing Scholarly Work in Teaching and learning

Dr. Lim is very excited about using computer science as a way of teaching philosophy; he is also interested in how best to implement such a course design. Having trustworthy and comfortable experiences with the Center for Teaching and Learning (CTL), he approached me, an Educational Consultant, in the Fall 2019 semester to help capture and assess the implementation of this course.

Funded by the Teaching and Assessment Grant, we worked together to develop a research plan to capture student learning experiences to design pre-and post-tests to assess students’ comprehension of the conceptual connections between computer science and philosophy. We also gathered student learning experiences in the middle of the course through a focus group. A preliminary analysis of student engagement and coursework provided further objective evidence about student learning and progress. 

Right after the Spring 2020 semester, we quickly put together what we learned in this course and co-wrote a paper. As we recalled, it was the first time for both of us to work on a paper with a colleague outside our own field and it was definitely a great experience to position scholarly work on teaching and learning. The collaborated peer-reviewed article “Teaching Some Philosophical Problems through Computer Science”3 was eventually published in the American Philosophical Association Newsletter on Teaching Philosophy (Vol. 20, No. 2, Spring 2021). Our next step is to present the preliminary work at teaching conferences and improve on future iterations of PHIL 109. Meanwhile, Dr. Lim has developed the materials more thoroughly in a book manuscript to be published by Routledge and will continue to work with the CTL to investigate how to best integrate the materials from two disciplines in learning activities and assignments.


Godwin, K. A., & Pickus, N. (2017). Liberal Arts & Sciences Innovation in China: Six Recommendations to Shape the Future. CIHE Perspectives8, 5-20.

Trigwell, K. (2021). Scholarship of Teaching and Learning. In University Teaching in Focus (pp. 286-303). Routledge.

Lim, D., & Wu, J. (2021). Teaching Some Philosophical Problems through Computer Science. American Philosophical Association Newsletter on Teaching Philosophy, 20(2).


Many thanks to students Xuchen Gong, Zack Liu, and Haibei Zhang for their contribution to this story, by sharing student perspectives one year after the course.

Read More: https://cdn.ymaws.com/www.apaonline.org/resource/collection/808CBF9D-D8E6-44A7-AE13-41A70645A525/TeachingV20n2.pdf