Associate Teaching Professor, CSE
Multithreading, transactional memory, thread-level parallelism, branch-prediction, cache-design, chip-multiprocessors, simultaneous multithreading, process scheduling, architecture-aware scheduling, and cache coherence, CS1, media computation, clickers, active learning, flipped classroom, program evaluation, concept inventories, and peer instruction.
Dr. Porter is an expert in computer science education research focused on active learning pedagogies and assessing student learning. He is interested in identifying core course concepts which are essential to student success, developing pedagogies which facilitate student engagement with those concepts, and creating assessment instruments to evaluate the effectiveness of those pedagogical practices. He is also interested in improving the diversity of the discipline by using pedagogies which foster a community among the students. His research on Peer Instruction, a student-centric pedagogy which uses targeted conceptual questions (often with clickers) to identify student understanding, has shown it to be widely valued by computer science students in a variety of contexts, that students learn from the Peer Instruction process, and that, relative to lecture, it reduces student failure rates while improving the retention of majors. In addition, his work has shown that student responses collected automatically through the Peer Instruction process can be used to both predict student outcomes and to identify critical course concepts.
Porter also works on multi-core, multi-threaded computer architectures with UC San Diego computer science Professor Dean Tullsen, who was his Ph.D. advisor. Porter also collaborated with the late Allan Snavely at the San Diego Supercomputer Center on scheduling in high-performance computing, and continues to work with Snavely’s San Diego startup, EP Analytics.
Porter joined the UC San Diego faculty in 2014. Prior to UC San Diego, he was an assistant professor at Skidmore College in upstate New York. He received his undergraduate degree in computer science at the University of San Diego in 2000. From 2000 to 2004, he served as a surface warfare officer in the U.S. Navy’s Pacific fleet and is a veteran of Operation Iraqi Freedom. After leaving the Navy, he earned his M.S. in 2007 and Ph.D. in 2007 in computer science from UC San Diego. As co-principal investigator on an NSF award, he has studied the impact of Peer Instruction in computer science classes. He received the Best Student Paper Award at the Symposium on High Performance Computer Architecture in 2011, Best Paper Award at the Special Interest Group on Computer Science Education Technical Symposium in 2013, and Chair's Award for his paper at the International Computing Education Research Conference in 2014.