Teaching Philosophy



I focus my teaching on four pillars: 1) covering the fundamentals before the advanced, 2) practical application of the material focusing on the students, 3) learning with my students and improving as a teacher, and 4) applying technology to enhance my teaching.

The fundamentals. I am a strong advocate for promoting a solid foundational knowledge of a discipline as I consider it crucial for learning more advanced topics in an area. During my teaching at any level of instruction I assess my students' understanding of the fundamentals. When I encounter a misunderstood or unknown concept, I always find it worthwhile to spend a little extra time addressing those concepts and their implications to the material being covered at the time. For example, I sometimes provide tutorials outside of the normal curriculum to Senior Design student teams on technologies or concepts that are new to them but that they will need for their course project to help them get up to speed. In my experience, this bottom-up approach to teaching boosts student learning in terms of effort and speed. It gives students learning power at reduced cost. My goal is for students to learn the concepts, not just memorize them.

Student-centered application. Back in my days as a student, and later on as an instructor, I've found learning to be most effective when the concepts being taught are immediately related to their application in real-world scenarios. I aim to find a balance between theory and practice. I apply this principle in my teaching by following the introduction of a concept with a specific example of how this concept has been applied in the past. I find this works best when the example is familiar to my students. It is therefore important to make an effort to know the students, their backgrounds, and their interests to be able to find the right topics and tweak the instruction on demand accordingly. I usually do this by asking my students questions as I interact with them, which allows me to also assess their understanding of the material. I find concepts that are well known to them and try to make a connection with the new topics. When possible, I also incorporate an immediate practical exercise or reflection by presenting a question or a challenge with the goal of helping students internalize the concepts being taught.

Personal growth. Sometimes I find it challenging to apply some principles of my teaching philosophy in my teaching. I have actively seeked to be involved in multiple teaching opportunities and building my confidence in front of the classroom through experience. As with most other things in life, practice is needed to master a craft. In this same direction, I have seeked professional development activities related to teaching, such as the Certificate of Accomplishment in Teaching and the Preparing the Professoriate program. I also work hard on staying current with the fast evolution of technology and adapt my teaching accordingly by working on my own small personal projects. I am always also very curious to get my student's perspectives on what went well and what can be improved in my teaching and in their course experiences in general. Talking to my students outside of class or in more informal settings such as labs usually gives me a very rich insight about what they feel works best for them, or they prefer, in a teaching setting.

Technology in the classroom. As a Computer Scientist, I am biased in favor of technology. In my view, integrating technology into the classroom is of particular importance in Computer Science as it increases credibility through a "practice what you preach" approach. Bringing technology into the classroom provides a wide range of opportunities to improve both the teaching and the learning experiences by allowing interactivity, affordances for active learning, distance education and flipped classrooms, and adaption to multiple learning styles. In my case, however, teaching with technology goes beyond using computers during the instruction. It also relates to using technology to simplify class-related administrative tasks such as scheduling, delivering study material, managing assignment submissions, logging and keeping track of student progress, forums, and classroom support in general, as well as providing opportuinities for students to collaborate among themselves and others. Technology can greatly reduce the load on instructors, allowing courses to scale while maintaining instruction quality.

While keeping an eye on the fundamentals, I relate the material I'm teaching to topics familiar to my students. My students and I learn together as they help me stay current with the latest trends in technology, which I in turn apply to my augment my teaching.

During my experience as a student, and later on as an instructor, I've found learning to be most effective when the concepts being taught are immediately related to their application in real-world scenarios. I believe there should be a balance between theory and practice, and that finding this balance is one of the toughest tasks while teaching. I try to apply this principle in my teaching by following the introduction of a concept with an example of how this concept has been applied in the past. This is not always easy to do, but I have found this works best when the example is familiar to my students. It is therefore important to make an effort to know the students, their backgrounds, and their interests to be able to find the right topics and tweak the instruction on demand accordingly. I try to find concepts that are well known to them and try to make a connection with the new topics. When possible, I also try to incorporate an immediate practical exercise or reflection by presenting a question hoping that this will help them internalize the concepts.

I am a strong believer that having a solid foundational knowledge of a discipline is crucial for learning more advanced topics in that area. For this reason, I consider introductory courses of utmost importance in every academic program. During my teaching, and at any level of instruction, I try to assess my students’ understanding of the fundamentals. In cases where I find a misunderstood or unknown concept, I always feel it worthwhile spending a few extra minutes explaining those concepts. I have found that this bottom-up approach to teaching gives students a confidence boost when they see they can now grasp more advanced concepts more easily.

I try to set high expectations for my students. As such, I expect them to work hard at coming up with solutions to proposed problems since I believe the journey of discovery is an important part of learning. My goal is for students to learn the concepts, not just memorize them. However, I know to adjust my expectations based on my students’ current knowledge to avoid them feeling inadequate for the task.

Sometimes I find it challenging to apply some principles of my teaching philosophy in my teaching. As with most other things in life, practice is needed to master a craft. In my case, I feel I still have a long way to go when it comes to feeling confident in front of a classroom, and I believe more experience is the key. For this reason, I have been actively involved in professional development activities related to teaching, such as the Certificate of Accomplishment in Teaching, and more recently I have become interested in the Preparing the Professoriate program.

Having a Computer Science background, I am probably biased in favor of technology. I believe integrating technology into the classroom is of particular importance in Computer Science as it increases the instructional staff's credibility by using a "practice what you preach" approach. Bringing technology into the classroom provides a wide set of opportunities to improve both the teaching and the learning experience by allowing interactivity, affordances for active learning, distance education and flipped classrooms, and adaption to multiple learning styles. In my view, however, teaching with technology goes beyond using computers during the instruction. It also relates to using technology to simplify class- related administrative tasks such as scheduling, study material, student submissions, logging and keeping track of student progress, forums, and classroom support in general. Technology can greatly reduce the load on instructors, allowing courses to scale while maintaining instruction quality.