Prof Halim's Teaching Portfolio


In 20 years of his full-time teaching career in School of Computing, National University of Singapore (his career is a bit longer if the part-time TA time is counted), Prof Halim is blessed to have favorable teaching feedback ratings from his students (who took his usually heavy and tedious courses) and his colleagues (who evaluated his teaching portfolio for appraisal/promotion cases). Prof Halim's teaching innovations and awards are shown below.

Teaching(-related) Innovations/Interventions

  • On late Dec 2009 during his honeymoon, Prof Halim started writing the first edition of Competitive Programming book. More than one decade later, the book is now on the 4th edition (July 2020) and has been read by over ten-thousand readers worldwide who are enjoying programming competitions.
  • Starting from AY 2011/12, Prof Halim started and now maintains VisuAlgo, his 'digital presence' in the Internet for teaching data structures and algorithms via visualization/animation for NUS and other CS students students at a rate of ~7700 unique daily visitors per day (the actual rate slightly varies each time but this high visitation rate has been sustained over the past one decade).
  • Starting from AY 2017/18, Prof Halim experiments with the Flipped Classroom technique, especially for his now in region of over 300 students in CS2040/C/S/IT5003 and CS3230 course. Almost all of his courses are now in flipped state.
  • ["FAILED" due to Generative AI tools]: Starting from AY 2019/20, Prof Halim experiments with the Open Internet programming exam (which was accepted during the early 2020-late 2022/COVID-19 pandemic causing major disruptions w.r.t. face to face traditional assessments/examinations). However, Prof Halim himself now (since the rise of GPT version 4 in March 2023) declares that it is too dangerous to do an Open Internet assessment.

Teaching(-related) Awards

Note that Prof Halim is now a member of NUS SoC Faculty Teaching Excellence Committee (FTEC), hence he has excused himself from competing for FTEA/ATEA/equivalent.

(Teaching) Award (#)LevelAYRemarks
ATEA Honour RollUniversity2021 (-2 AYs ago)University level, Honour Roll AY 2020/21 to AY2025/26 (4 AYs later)
5x ICPC World Finals Coach Award
ICPC Foundation Competitive Learning Institute Fellows
International2021 (-1 AYs ago)For coaching 5 (or more) NUS ICPC World Finalist teams
For writing Competitive Programming book
ATEA (3)University2018/19 (-1 AYs ago)Third, University level (Apr 2021)
ATEA (2)University2017/18 (-1 AYs ago)Second, University level (Nov 2019)
National Day Awards (1)National2018 (0 AYs ago)Commendation Medal (Pingat Kepujian),
Ministry of Education, (Nov 2018)
ATEA (1)University2014/15 (3 AYs ago)First breakthrough, University level (May 2016)
FTEA (3) with Honour Roll (1)Faculty2014/15 (3 AYs ago)Third, Faculty level, Honour Roll AY 2015/16 to AY 2020/21
FTEA (2)Faculty2012/13 (5 AYs ago)Second, Faculty level
FTEA (1)Faculty2011/12 (6 AYs ago)First breakthrough, Faculty level
BTAA (1)Faculty2007/08 (10 AYs ago)No longer a Teaching Assistant now

The official announcements can be found in NUS-level Annual Teaching Excellence Award (ATEA) Honour Roll list, past ATEA Winners list, and SoC-level ATEA plus Faculty Teaching Excellence Award (FTEA) list (Best Teaching Assistant Award (BTAA) list before AY 2009/10 was lost).

Teaching History

Because he was a web programming lecturer, Steven built this interactive personal teaching feedback score history of himself.

Course highlighted: None. Put your mouse cursor over a bar (or click that bar). Each bar represents one course. Percentile rating before AY2013/14 and after this AY is different as NUS changed the teaching feedback system a bit.

Course details: None.
Combined details of all occurrences of the highlighted course will be shown here.

Highlight by:

Score Calculator

To estimate your next teaching feedback score (using the system used from from AY 2013/2014 onwards), please enter the number of students (an integer please) whom you think will give 1 (very bad), 2 (bad), 3 (neutral), 4 (good), 5 (very good) to you, in the respective boxes below for the three important questions (Q1, Q2, and Q3).

For each question, this simple script will compute question score as in the past: (|1| x 1 + |2| x 2 + |3| x 3 + |4| x 4 + |5| x 5) / (|1| + |2| + |3| + |4| + |5|).

Then your prospective teaching score this semester will be: 0.0866 + (0.4276 * Q1 score) + (0.3150 * Q2 Score) + (0.25 * Q3 Score).

Q1. The teacher has enhanced my thinking ability. |1| = | |2| = | |3| = | |4| = | |5| = → My Q1 score is
Q2. The teacher has increased my interest in the subject. |1| = | |2| = | |3| = | |4| = | |5| = → My Q2 score is
Q3. The teacher provides timely and useful feedback. |1| = | |2| = | |3| = | |4| = | |5| =
→ My Q3 score is

Your students this semester give you this prospective teaching score: .