Summer 2018: Introduction to Scientific Computing

Computers, one of the most important tools in science and engineering, find applications in all aspects of academia and industry alike. Though expected to employ this tool effectively, few scientist and engineers have been trained to harness the power at their fingertips, and most could benefit significantly from a high-level exposure to scientific computing methodology. This tutorial series will introduce many computational tools, tricks, and tips that would otherwise take years of trial and error to learn.


This summer, we will offer the tutorial series in two separate sessions:

  • Johns Hopkins University Homewood Campus, Bloomberg Center for Physics and Astronomy 475: 11 – 15 June 2018
  • Johns Hopkins University School of Medicine, Preclinical Teaching Building 115: 25 – 29 June 2018

Each session will be comprised of ten tutorials, with one tutorial in the morning from 09:30 to 11:30 and another in the afternoon from 13:30 to 15:30, according to the following schedule:

  1. Monday morning: Computer hardware basics (single-user, cluster)
  2. Monday afternoon: Linux basics (connecting, navigation, Bash, Vim, file transfer)
  3. Tuesday morning: MARCC environment (Lmod & Slurm)
  4. Tuesday afternoon: Submitting MARCC Scripts
  5. Wednesday morning: C basics (compiling, linking, debugging, profiling)
  6. Wednesday afternoon: Installing packages/libraries
  7. Thursday morning (link takes a few minutes, generates iPython notebook): Python basics
  8. Thursday afternoon: Python modules
  9. Friday morning: Source control (Git repositories)
  10. Friday afternoon: Parallelization introduction (OpenMP, MPI, Cuda)


No prior experience is required. Please bring a laptop to participate in the tutorials.

Attendance policy

The tutorial series is designed to build on itself as it progresses and we encourage you to attend all tutorials. For a smaller time commitment, consider attending one of our training workshops.


Contact us at


Registration is currently closed.