We present a research-based course module to teach computer science students, software developers, and scientists the effects of non-determinism on high performance applications. The course module uses the ANACIN-X software package, a suite of software modules developed by the authors; ANACIN-X provides test cases, analytic tools to run different scenarios (e.g., using different numbers of processes and different communication patterns), and visualization tools for beginner, intermediate, and advanced level understandings in non-determinism. Through our course module, students in computer science, software developers, and scientists gain an understanding of non-determinism, how to measure its occurrence in an execution, and how to identify its root causes within an application's code.