Fall 2019: 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 scientists 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.


During the fall semester, we will offer the tutorial series at the Johns Hopkins University Homewood campus, Malone G33/35 on Tuesdays from 3:00 pm to 5:00 pm according to the following schedule:

  • Tuesday 17 September: Introduction to high-performance computing at MARCC and linux basics.
  • Tuesday 24 September: Linux basics, continued, including file transfers and text manipulation. Using the job scheduler (SLURM).
  • Tuesday 1 October: Introduction to Python. Software and environments (Lmod, virtual environments, Anaconda, CRAN).
  • Tuesday 8 October: How to design parallel or high-throughput calculations. BASH scripting.
  • Tuesday 22 October: Web portal tools including Jupyter and RStudio.
  • Tuesday 29 October: C Basics.
  • Tuesday 5 November: Databases.
  • Tuesday 19 November: Advanced parallelization.
  • Tuesday 3 December: Practical exercises.
  • Tuesday 10 December: Practical exercises.

These topics are subject to change depending on student interest.

Update: now that the course has wrapped, the materials are archived in two places. There is a short standalone guide for users who are just getting started on this site while a comprehensive set of course materials and frequently asked questions inspired by our students has been added to an additional site called “Elements of Scientific Computing” which also includes examples available for download. This site will be updated with new materials in future iterations of the tutorial series.


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 marcc-help@marcc.jhu.edu


The course has concluded for the Fall semester. We will update this page when we schedule the next series.