My Teaching Philosophy

My teaching philosophy is driven by a deep commitment to fostering an active, collaborative, and research-informed learning environment in which students not only master computer science concepts, but also appreciate the interconnectedness of the discipline as a unified whole. First and foremost, I strive to make my classrooms engaging and inclusive. I believe that learning is most effective when students feel supported and encouraged to participate. Whether it is an introductory programming course or an advanced algorithms class, I structure lectures around questions and hands-on exercises that invite students to contribute their insights. Throughout my teaching career, I have adopted an interactive style that emphasizes frequent discussion and real-time problem-solving, so that students feel comfortable sharing their thoughts. I also hold generous office hours and encourage one-on-one consultations to support students individually. Building rapport and mentoring students is one of the most fulfilling parts of my job, and I view those interactions as integral to their success. Equally important to my teaching is my commitment to research-based learning. I believe students truly grow when they move beyond rote exercises to pursue research questions that interest them. Throughout my career, I have guided undergraduates on research projects spanning diverse areas — from computational complexity theory to machine learning applications for e-commerce and cybersecurity. These experiences cultivate students’ critical thinking, creativity, and capacity for independent learning, while also reinforcing classroom concepts. I make a point of helping students identify project ideas linked to their coursework and encouraging them to submit their work to local conferences and undergraduate symposia. These opportunities not only give students a sense of ownership over their learning, but also prepare them for future graduate study or professional careers.

Finally, I am passionate about helping students appreciate computer science as an integrated discipline. Too often, undergraduates perceive their classes as isolated, disconnected requirements. To counter this, I design my courses with a “forest rather than trees” mentality. For example, in my programming and data structures classes, I highlight how algorithmic concepts will reappear in computational models or in systems programming. In my theory and complexity courses, I connect formal language results back to practical tools they have seen in other classes, such as compilers and pattern matchers. In advanced seminars like data mining or large-scale data analytics, I draw explicit connections to their prior coursework in algorithms and databases. By demonstrating these links — and assigning projects that span multiple areas — I help students build a coherent, big-picture understanding of computer science. In sum, my teaching philosophy is to motivate students by engaging them actively in the classroom, empowering them through research experiences, and helping them see the deep connections that give computer science its structure and power. I aim to help each student leave my classes not just with new skills, but with a lasting intellectual curiosity and an appreciation of how their knowledge fits into a larger whole.

Lecture

Attendance of the lecture is mandatory. I encourage everyone to make an active attempt toward participating. There are times where many examples throughout the lecture are better suited to be done with pen and paper. Please refrain from using your computer for any other reason than note-taking for the class. I also do not expect to see any mobile phones in use during class. I will ask you to leave my class if I observe misuse of technology.

Laboratory

Attendance of any laboratory component is also mandatory. Assignments will be given and will most likely take more time to complete than the lab period. You are permitted to leave the lab period if and only if you have completed the assignment.

Grading

Labs will have a grading turnaround time of one (1) week from the due date. Lab grades can only be contested for up to one week from when the grade is posted on Desire2Learn. Three grace days will be provided throughout the semester without penalty. Otherwise, no late submissions will be permitted.

Exams will be graded by the next class (e.g. Tuesday-Thursday class with a test on Thursday will have the tests returned the immediately following Tuesday. Monday-Wednesday-Friday class with a test on Friday will have the tests returned the immediately following Monday). You do not get to keep your exams. Failure to return an exam will result in an updated grade of zero (0). I will hand them out in class and go over any answers, but I will collect them at the end of the class period.

Concise List of Student Expectations

Academic Honesty

Copying or extensive collaboration on assignments is not permitted and may result in failure of the course and expulsion from the University. You may discuss approaches to solving a problem, as long as the discussion remains above the level of detail expected for the course. You may also seek aid in resolving compiler messages. However, if you copy a code fragment verbatim, you are likely committing academic dishonesty. If you copy a code fragment and rename variables, you are likely committing academic dishonesty. Obtaining a solution on the Internet or elsewhere and submitting it as your own work is plagiarism and will result in severe disciplinary measures. Be sure you can explain every line of every program you submit. Writing code is no different than writing a paper --- if it was not your original idea, then you should not submit it as your own work.

Title IX Reporting – Millersville University

Millersville University and its faculty are committed to assuring a safe and productive educational environment for all students. In order to meet this commitment, comply with Title IX of the Education Amendments of 1972, 20 U.S.C. §1681, et seq., and act in accordance with guidance from the Office for Civil Rights, the University requires faculty members to report to the University’s Title IX Coordinator incidents of sexual violence shared by students. The only exceptions to the faculty member’s reporting obligation are when incidents of sexual violence are communicated by a student during a classroom discussion, in a writing assignment for a class, or as part of a University-approved research project. Faculty members are obligated to report to the person designated in the University Protection of Minors policy incidents of sexual violence or any other abuse of a student who was, or is, a child (a person under 18 years of age) when the abuse allegedly occurred.
Information regarding the reporting of sexual violence, and the resources that are available to victims of sexual violence, is available at http://www.millersville.edu/socialeq/title-ix-sexual-misconduct/index.php

Counseling Resources

Students sometimes face mental health or drug/alcohol challenges in their academic careers that interfere with their academic performance and goals. Millersville University is a caring community and resources are available to assist students who are dealing with problems. The Counseling Center (717-871-7821) is an important resource for both mental health and substance abuse issues. Additional resources include: Health Services (871-5250), Center for Health Education & Promotion (871- 4141), Campus Ministries, and Learning Services (717-871-5554).