I hold teaching sacred. Perhaps only parents influence people more profoundly than teachers. Little comments may linger with students for lifetimes. While ever enthusiastic, I must also remain thoughtful, respectful, and encouraging.
Some of my most life-transforming teaching accomplishments have occurred outside of the classroom. In just the past three academic years at Saginaw Valley State University (SVSU), I taught a student how to drive. I wrote many recommendation letters, and enabled some spectacular career moves. I wrote several students’ resumes, drawing on my prior experience as a recruiting manager, teaching students about career transitions. I even drove students to job interviews. One time I road-tripped a batch of undergraduates to General Motors Corporation. The manager, an old friend and colleague, hired one of the students for a near six-figure compensation package. For half a semester, I held daily 6:30 am coding workouts to teach undergraduates to pass introductory programming courses. I published scholarly papers in well-respected IEEE venues with undergraduate co-authors, and I have coached nervous and overwhelmed PhD candidates through proposals and dissertations, teaching and mentoring emerging researchers.
I strive for excellence in the classroom. I measure teaching success, not only by my student evaluations, but also by visible student transformations directly attributable to classroom instruction. Consider my experience at Oakland University (OU). I taught cyber security and cyber crime. My philosophy at the time was “less teaching, more learning.” Why? Because my particular group of students recoiled against slide deck lectures. “Death by PowerPoint,” they called it. Students seemed eager to learn, but not eager to be taught, or at least not eager to be lectured. Professors typically delivered course content in the style of a research presentation, but these particular students longed to explore their own topics their own way, to collaborate, to actively move around, try things, make mistakes, even argue.
At OU, I assigned general, open-ended coursework. I encouraged students to investigate and identify solutions to self-chosen problems. Students could work at their own level of challenge. Students even graded some of their own work.
The results? I received a perfect 5.0 student rating on RateMyProfessors.com. More importantly, several students received cybersecurity job offers at top national firms. A few started a cybersecurity club that skyrocketed from 4 members to over 250 in one year. I was officially named Club Mentor. Awesome.
At SVSU, I gradually changed my teaching style to be more structured. My OU students exhibited uniformly high learning levels and high individual motivation, where my current SVSU students exhibit a wide range of skills levels, from unprepared for college, to well-established with 10+ years of professional programming experience. Many students have family responsibilities that prevent them from dedicating themselves 100% to academic work. At SVSU, PowerPoint slides seem to help all levels of students clarify what is expected of them. Open-ended assignments confuse and frustrate all but the most self-motivated students.
The results? My SVSU RateMyProfessors.com rating has fluctuated, possibly because it has taken me some time to adjust my teaching style. As of 9/18/2018 it stands at 4.0, not perfect but above average. My classroom instruction has yielded some notable results, though. I teach web development at SVSU. Several of my students have gone on to become career web developers. Some helped me develop web-based research visualization software. I teach mobile app development, too. One of my students now writes mobile apps, freelance, and is being interviewed for direct employment by prestigious local employers.
I expect undergraduates to think. Thinking is hard work. People avoid it. Most people much prefer doing to thinking. I teach programming. Sometimes it feels like my students want to be computer programs, not to write computer programs. "Give me clear instructions," they repeat. Ironically, they are the ones who must give clear instructions! Programming a computer is basically telling it how to think. Analyzing algorithms is basically evaluating which thinking processes work best under which circumstances.
My job as programming teacher is to present principles to enable students to write instructions so clearly that even a computer can execute them. My job is definitely not to tell students exactly what to do. Uncertainty lies beyond the university's exit gates. My job is to prepare students to adapt to whatever may come. After graduation they must evaluate unforeseen problems and create novel solutions. They must think. So my overall goal remains: Get students to think for themselves. Independent thinking is the perhaps the most fundamental learning outcome of an undergraduate education.
I teach from the heart. One of my favorite quotes: "No one cares how much you know until they know how much you care." This guiding principle is an idea worth spreading. Most teachers really do care, of course, but sometimes students don't realize it. Most students really do care, but sometimes teachers don't realize it. I strive to show that I care, and to show that I understand students care, too. This emotional side of teaching has practical benefits, but the real reason I teach with emotion is because it makes my life and the lives of those around me more joyful.I carry a heavy teaching load, and I love it. I love teaching. I admire great teachers. I am amazed by great learners. The whole process of education puts me in a state of awe. I can't get enough! In each of my first two years at SVSU, I taught 32 credits, eight 4-credit courses, a 3/3 fall/winter teaching load, +2 in the spring/summer. In my third year, I taught 38 credits, 4/4 +2, the maximum allowable under the faculty contract. No problem! Every day, I still get charged up. I feel like the music from the movie, Rocky. I feel energized!
|CIS-255: Client Side Web||1||1||1||1||2||2||1||9|
|CIS-355: Server Side Web||1||1||1||1||1||2||1||1||1||10|
|CS-116: Programming I||1||2||2||2||1||8|
|CS-390: Indep Study||***||***||***||***||***||***|
|CS-403: Mobile App Dev||1||1||1||3|
|CS-461: Theory of Comp||1||1||2|
For current/future courses, see: Current Courses.