Teaching

I pursued a career in computer science since I was drawn to it with a sense of wonder and excitement. Now, when I teach about my research or other topics in computer science, my objective is to communicate the same sense of wonder and excitement to my students.

The main theme of my teaching philosophy is reasoned thought, as in my opinion the goal of education should be to encourage seeking answers. I particularly emphasize learning to think about trends and directions (e.g. increasing this will decrease that) that can be applied in other, unfamiliar situations, rather than rote memorization of facts. Another important element of my teaching philosophy is encouraging reasoned written and oral work, especially in developing logical arguments. A major factor of this is spending my time making suggestions, as students can only learn to present their ideas more effectively if someone shows them how and why modifications could be made to their natural style to make it clearer. Finally, I aim to encourage a sense of wonderment in the world around us. Although I am a scientist and teach mostly science students, this is not, in my mind, an exclusive club. We are all scientists. We all wonder about the world around us. We must continue to ask the ” how?” and ”why?” questions in order to advance. Only if answers to these questions continue to come (either from the teacher, or, better yet, through reasoned thought on the part of the one asking), will the questions continue to flow.

In the classroom, I make sure to create an innovative, supportive, inclusive, and collegial environment in which students are comfortable to share their ideas and to approach me for help. Quite often I incorporate creative but purposeful activities that aim to stimulate the student’s interest in the class I am teaching – such as a Jeopardy!-like concept quizzes. I also use novel innovative technologies, and active learning student oriented processes and methods (e.g. think pair sharing, peer review, game-based learning) to create small group discussion opportunities, provide to the students with continuous peer and self-assessment, provide the students with a platform for assessment-outcome alignment, and provide broad feedback to the students to help them identify their strength and weaknesses and target areas that need work.

In sum, my teaching philosophy and my pedagogical strategies are dedicated to help students to develop as computer scientists, readers, writers, and engaged citizens.

Currrent Teaching

  • Present2016

    Software Engineering Group Project - (UG)

    Xi'an Jiaotong-Liverpool University, PRC

  • Present2015

    Data Mining and Big Data Analytics - (PG)

    Xi'an Jiaotong-Liverpool University, PRC

Teaching History

  • 20162015

    Machine Learning and Data Mining - (PG)

    Xi’an Jiaotong-Liverpool University, PRC

  • 20152014

    System Design and Group Project - (UG)

    Cardiff University, UK

  • 20152014

    Human Centric Computing - (PG)

    Cardiff University, UK

  • endstart

    Computational Inteligence - (PG)

    Cardiff University, UK

  • 20152014

    Algorithms and Data Structures - (UG)

    Cardiff University, UK

  • 20142013

    Foundations of Computing Science - (UG)

    University of Aberdeen, UK

  • 20142013

    Computer programming and principles - (UG)

    University of Aberdeen, UK

  • 20142012

    Human Computer Interaction - (UG)

    University of Aberdeen, UK

  • 20142012

    The Digital Society

    University of Aberdeen, UK

  • 20142011

    Systems Analysis and Design - (PG)

    University of Aberdeen, UK