In 2018 I will teach the following courses:
Do you have questions about some of my courses? Please check this FAQ before emailing me.


At RMIT University:

  • COSC1107/1105 Computing Theory: core course on theory of computation covering formal languages, grammars, automata theory, computability, complexity.
    • Semester 1, 2012-2017. Course guide here.
    • Semester 1, 2010 & 2011 (together with with Assoc. Prof. James Harland).
  • COSC2627/2627 Discrete Structures (DS): standard course on mathematics for Computer Scientists.
    • Semester 2, 2016 & 2017.
  • COSC1125/1127 Artificial Intelligence (AI): Standard course in Artificial Intelligence, covering search, adversarial search, learning, knowledge representation, agents and automated planning, probabilistic reasoning, etc.
    • Semester 1, 2013, 2016, and 2017. 
  • COSC2048/1204 Agent-Oriented Programming and Design (AOPD)seminar-style advanced couse on AI techniques for design and development of agent systems and complex controllers.
    • Semester 1, 2015: web-page
    • Semester 2, 2012
    • Semester 2, 2011 (with help from John Thangarajah, Lin Padgham, Nitin Yadav, and Abhijeet Anand).
    • Semester 2, 2010-2008.
    • Semester 2, 2007 & 2006 (supported Prof. Lin Padgham with final programming project using Multi-Agent Contest).

Taught outside RMIT:

Taught at Primary and Secondary Level on Coding (volunteer):

  • Coding as a Second Language, Bentleigh West PS, November 2017. Part of the Victoria Big Day Junior 2017. Check media & video
    • A 2hrs introduction session to coding for Grade 5 and 6. First time in Victoria.
  • Coding in 1hr, Lalor North Secondary College, June 2017. A short course on computer programming within the Year 9 Workshop on “Finding Meaning within Education" organised by Centre for Multicultural Youth (CMY)
  • Coding as a Second Language, Banksia Gardens Community Services, January 2017.
    • A 2 days intensive course in coding for children 12-16yrs old.
  • Coding as a Second Language, Banksia Gardens Community Services, October 2016.
    • A 5 weeks course on computer coding that aims to increase access to training and employment pathways related to CS for young people from refugee and newly arrived backgrounds.

    This is a list of the courses for which I was a TA at UofT:

    This is a list of the courses I have taken for credit at UofT: