Intermediate Programming (2025)
Undergraduate course, Johns Hopkins University, Department of Computer Science, 2025
Lecturer. Covers C and C++ programming, developer tools, Linux environments, data structures, and software development practices.
Dr. Martin is a Lecturer in the Department of Computer Science at Johns Hopkins University. His approach to teaching emphasizes clear, precise explanations of deep technical material without sacrificing rigor. He treats students as peers engaged in the same intellectual work, and structures courses around hands-on environments where students interact with real systems rather than abstractions. The goal is to develop both theoretical understanding and practical instinct — students should leave a course able to reason about systems they have never seen before.
His security courses have a significant source-code-analysis component: students read through real codebases to identify exploitable vulnerabilities and write working exploits that achieve code execution.
He received the Computer Science Department Outstanding Teaching Assistant Award in 2014.
Undergraduate course, Johns Hopkins University, Department of Computer Science, 2025
Lecturer. Covers C and C++ programming, developer tools, Linux environments, data structures, and software development practices.
Graduate/Undergraduate course, Johns Hopkins University, Department of Computer Science, 2024
Lecturer. Covers hardware and software security design, vulnerability assessment and reverse engineering, hardware and software-based attacks on computer components including RAM and CPUs, applied cryptography, computer architecture, networking, and component-level analysis. The course uses hardware and software emulation and virtualization techniques to present students with real-world environments for hands-on projects.
Graduate/Undergraduate course, Johns Hopkins University, Department of Computer Science, 2023
Lecturer. Covers hardware and software security design, vulnerability assessment and reverse engineering, hardware- and software-based attacks on computer components including RAM and CPUs, applied cryptography, computer architecture, networking, and component-level analysis, with hands-on projects in emulated and virtualized environments.
Short course, Johns Hopkins University, Department of Computer Science, 2015
Co-instructor (with Dr. Michael Rushanan) for this short course, which received the highest student ratings in the Computer Science department during its session. Topics included modifying game consoles and device firmware, electronics repair, binary analysis and modification, network traffic analysis, and web-based vulnerability assessment and exploitation.
Teaching Assistant, Johns Hopkins University, Department of Computer Science, 2014
Teaching Assistant for the Security and Privacy course (2012-2014). Received the Computer Science Department Outstanding Teaching Assistant Award in 2014.
Course Assistant, Johns Hopkins University, Department of Computer Science, 2011
Course Assistant for Practical Cryptographic Systems.
In addition to courses taught as primary instructor, Dr. Martin has served as a substitute or guest lecturer for the following courses at Johns Hopkins University: