2025/2026 · Semester I
CP4285 Modern Recommendation Systems
undergraduate
Pilot Start-Up Undergraduate Course
Teaching Strategy
As the Vice-Dean for SoC's Undergraduate Studies, I oversee a number of different initiatives and associated programmes. This includes our X + Computing initiative to bring the foundational knowledge of computing to other disciplines, as well as the Computing + X initiative which allows our own School of Computing scholars to take on a wide variety of disciplinary programmes, to better harness their skills in other domains.
Awards
I was awarded the Faculty Teaching Excellence Award in 2026 for my teaching performance in 2025.
Current Courses
I'll be facitating a section of CS6101 Explorations of Computer Science Research (this time on Retrieval Augmented Generation, together with Prof. Hai-Tao Yu) for Semester I, and the L1 section of our CS4248 Natural Language Processing for Semester II (L2 is coordinated with us, and taught by Prof. Chris von der Weth) for the 2025/2026 academic year.
Courses
Teaching Archive
2025/2026 · Semester I
undergraduate
Pilot Start-Up Undergraduate Course
2025/2026 · Semester I
postgraduate
Retrieval Augmented Generation with Prof. Hai-Tao Yu
2025/2026 · Semester II
undergraduate
L2 coordinated with us, taught by Prof. Chris von der Weth
2015/2016 · Special Term III/IV
undergraduate
Student feedback available on me and on the course
2014/2015 · Special Term III/IV
undergraduate
Student feedback available on me and on the course
2013/2014 · Special Term III/IV
undergraduate
Student feedback available on me and on the course
2012/2013 · Special Term III/IV
undergraduate
No feedback was captured for this cohort
2007/2008 · Semester I
undergraduate
Student feedback available on me and on the course
2008/2009 · Semester II
undergraduate
Student feedback available on me and on the course
2002/2003 · Semester II
undergraduate
Student feedback available on me and on the course
2011/2012 · Semester I
undergraduate
1 credit associated R course
2010/2011 · Semester I
undergraduate
2007/2008 · Semester I
undergraduate
2005/2006 · Semester II
undergraduate
2004/2005 · Semester II
undergraduate
2003/2004 · Semester II
undergraduate
2022/2023 · Semester I
undergraduate
2021/2022 · Semester I
undergraduate
2020/2021 · Semester I
undergraduate
2019/2020 · Semester I
undergraduate
2018/2019 · Semester I
undergraduate
2017/2018 · Semester I
undergraduate
2016/2017 · Semester I
undergraduate
2016/2017 · Semester II
undergraduate
2015/2016 · Semester II
undergraduate
2014/2015 · Semester II
undergraduate
2013/2014 · Semester II
undergraduate
2012/2013 · Semester II
undergraduate
2011/2012 · Semester II
undergraduate
2010/2011 · Semester II
undergraduate
2024/2025 · Semester II
undergraduate
2023/2024 · Semester II
undergraduate
2022/2023 · Semester II
undergraduate
2021/2022 · Semester II
undergraduate
2020/2021 · Semester II
undergraduate
2012/2013 · Semester I
undergraduate
masquerading as Design of Advanced User Interfaces due to late changes in timetabling
2008/2009 · Semester I
undergraduate
2006/2007 · Semester II
undergraduate
2023/2024 · Semester I
postgraduate
Large Language Models
2020/2021 · Semester II
postgraduate
Conversational and Recommender Systems
2019/2020 · Semester I
postgraduate
Deep Unsupervised Learning
2018/2019 · Semester II
postgraduate
Deep Reinforcement Learning
2018/2019 · Semester I
postgraduate
Deep Learning for NLP
2017/2018 · Semester II
postgraduate
Deep Learning via Fast.AI
2017/2018 · Semester I
postgraduate
Deep Learning for Vision
2016/2017 · Semester I
postgraduate
Deep Learning in NLP
2015/2016 · Semester II
postgraduate
MOOCs
2003/2004 · Semester I
postgraduate
student feedback on me and on the course
2011/2012 · Semester I
postgraduate
too few students for feedback
2006/2007 · Semester I
postgraduate
2005/2006 · Semester I
postgraduate
2004/2005 · Semester I
postgraduate
2008/2009
industry
Three-day course; slides and materials are open for reuse
1999/2000 · Semester II
undergraduate
Taught at Columbia University while a graduate student
Past Tense
Here are my notes on specifics about courses that I've taught over the years.
I piloted this course for SoC's inaugural runs, and currently co-organize and co-administrate this course; various faculty, students, alumni and interested parties as well as myself co-teach it; so interpret the student feedback on me with care. This enrichment programme now is assigned to Drs Zhao Jin and Anand Ramchand as the main coordinators.
Check out photos from the robotics project of the course. I and Dr. Terence Sim introduced the use of the Mindstorms kits to SoC students during the 2003/2004 semester.
This is still the hardest course to teach. In the first iteration, I had very little warning to prepare for the course. I hope I will be able to improve on my teaching for this material!
In 2016/2017, I opened the course to the general public and we had over 50 industrial attendees. We had a lot of fun coordinating student instructors for the topics and communicated with Slack. We have since allowed this course to be open registration to the public. Since then, the students in this form of pilot course have done very interesting projects, and some alumni have gone on to do their PhDs abroad in related areas.
Check out the student projects in 2005 and in 2004 from the courses.