I have been tasked to write up a “Teaching Philosophy”, a statement that summarises what I care about and how I see myself as a teacher. In order to keep myself honest, and as an experiment, I’m publishing it here.

I Love My Work,

.. and (as Carl Sagan supposedly said) “when you’re in love, you want to tell the world”. My goal will always be to make people care as much as I do, rather than to hammer facts into their heads. Caring for something, to me, requires a deep understanding – and this is why I prefer to go slower than I planned, rather than just gloss over important basics.

I Have High Expectations,

.. but “high” is relative. For some, passing a math course is an achievement; for others, it is to communicate well in a project; and for others yet, it means to have the courage to speak up in front of a large class room. I have struggled with all these, and I was lucky to have teachers that motivated me. My goal is to be that teacher, too. Although you can expect to find constructive criticism in my class room, you will not find me holding grudges.

I Value Interaction,

.. and as much as I’m trying ty teach others how to learn, I’m also learning how to teach. Therefore, I want to create an atmosphere where people feel free to speak up at any time. Am I wrong? Interrupt and correct me! Am I going too fast? Tell me. Have you noticed I’m violating my teaching philosophy? Call me out on it. Am I misunderstanding what you just said? You get the drill.

Courses

Upcoming
  1. Fall 2017 - Secure Computer Systems
  2. Fall 2017 - Introduction to Parallel Programming
  3. Fall 2017 - Language Abstractions for Parallel Programming
Ongoing
  1. Fall 2016 - Imperative and Object Oriented Programming Methodology
  2. Fall 2016 - Algorithms and Data Structures 2
Past
  1. Fall 2015 - Imperative and Object Oriented Programming Methodology
  2. Fall 2015 - Project CS (group project using Scrum and Erlang)
  3. Fall 2014 - Imperative and Object Oriented Programming Methodology
  4. Fall 2014 - Project CS (group project using Scrum and Erlang)
  5. Fall 2013 - Imperative and Object Oriented Programming Methodology
  6. A long time ago - Artificial Intelligence