Teaching philosophy

My teaching philosophy revolves around the belief that students don't know it until they program it, and the conviction that they need to know why they make design decisions, what the end product should be, and how to accomplish this end. In practice, this means lectures provide an interactive, high-level view of concepts and content, with assignments providing practical experience. I enjoy regularly teaching courses with a practical, performance-oriented flavor like Operating Systems, Advanced WWW Technologies, Computer Architecture, and Parallel Software Systems.

I have won the KSU Engineering Student Council Outstanding Leadership Award three times ('04, '05, '08), and was nominated twice for the College of Engineering James L. Hollis Memorial Award for Excellence in Undergraduate Teaching ('99, '06).

I have served on 309 graduate student committees, including one active Ph.D. student (defending August, '15), and 19 Ph.D. committees, 146 as MS major professor, and 143 MS committee memberships. Many my graduate and undergraduate students have had their research results published at international venues. I advise our local ACM chapter, oversee our semester local programming contests (with over 100 students typically participating), and coached our entry in the student programming contest at Supercomputing 10, where we placed 3rd in the world.