Teaching
I taught Computer Science at Rose-Hulman Institute of Technology for 7 years, earning tenure and being promoted to Associate Professor.
While my specialization is in acoustic and graphics simulation, I taught systems, intro software engineering, and debugging. My basic teaching philosophy is that I guide students to teaching themselves.
I loved helping students pursue challenging projects and I advised several independent research projects and theses, one of which won a best thesis award. I also published pedagogical research.
Journal of Computing Sciences in Colleges 2018
Journal of Computing Sciences in Colleges 2018
While at Rose-Hulman, I became a proficient teacher and valuable colleague. I created many pedagogical tools that are still in use by my department, years after my departure. But my greatest legacy is my students. I taught over 1000 students in 54 courses. My students are now employed by FAANG companies, game studios, and cybersecurity firms. I created a better Computer Science education and honed my skills as a teacher.
Improving courses
When I arrived at Rose-Hulman, there were many issues with CSSE 132, Introduction to Computer System. This is a required course for freshman CS and SE majors. The course introduces the study of the hardware/software interface in computer systems. The material is quite challenging, including topics like hardware design, discrete math and numbering systems, assembly programming, and computer networking. Students were quite negative when evaluating their learning experience in the course. Students initially felt the course was overloaded with material:
"This course was far too fast-paced for my comprehension rate."
"...this course throws a bunch of information at you consistently..."
"...there was too much material to quickly.[sic]"
The department recognized this as an issue and the course was revised in 2016. Before the redesign, I incrementally improved the course, based on student feedback, my own observations, and advice from my department. I was able to markedly improve student performance in the course.
Students evaluation of their learning (higher is better) |
Students evaluation of the overall course (higher is better) |
Student comments also improved:
"Good mix of fun and learning in the class"
"CSSE 132 covers a wide range of materials, and I feel confident in all the materials that were taught."
"Gives a good overview of a large amount of information to be visited more thoroughly in later courses."
Passion for teaching
I have been able to create a very rewarding learning experience for students. I designed a new graphics course, updated yearly to keep pace with API and industry changes. Students began with no knowledge of graphics techniques and finished the course creating their own interactive graphics application. Some successful projects were FPS games, 3D modeling programs, and music visualizations. On average, students rate my graphics courses extremely highly.
Students evaluation of the overall course (higher is better) |
Sustained excellence
Students have consistently commented on my enthusiasm and energy in the classroom. I am genuinely interested in helping students learn effectively, since their future success effectively defines the future of Computer Science and my institute. Over the years, students have recognized that their learning success is my goal:
"I understand he is new in the department (I’m not even a CS though) but he did great. Tons of enthusiasm, showed lots of interest, and just a real stand up guy.
"Micah is one of the best teachers I’ve had at Rose... The lectures are engaging and he is super enthusiastic about the material.”
"He is more enthusiastic than any other prof i know and was always willing to help students with their issues."
"Micah is a very approachable and intelligent teacher, he genuinely wants his students to perform and makes the class’s learning environment both interesting and fun through his personality.
Students evaluation of my teaching methods (higher is better) |
Students evaluation of me as a professor (higher is better) |
Courses taught at Rose-Hulman
- CSSE232 Computer Architecture
- CSSE132 Introduction to Computer Systems
- CSSE351 Computer Graphics
- CSSE451 Advanced Computer Graphics
- CSSE220 Object-Oriented Software Development
- CSSE230 Data Structures and Algorithm Analysis
- CSSE490 The Art and Science of Debugging
Undergrad thesis & project supervision
- Thesis: Splashes and Water Wave Packets, Xingfang Yuan, 2018
Winner of best thesis award - Proprietary High Performance Shortest Euclidean Path, Charles Horton, Xingfang Yuan, 2017
- Thesis: Automatic Parallelism in Javascript, Rose Reatherford, 2016
- Thesis: VR Cultural Heritage Sites, Si Faye Li, 2016
- Bluetooth Driver for XBOX 360 Controllers, Josh Maurer, 2016
- VGA Driver for Spartan 6 FPGA, Jake Whiteley, 2016
- Web Based Acoustic Simulator, Xianbo 'Francis' Meng, 2015