Computing for Scientists (CS 510)

Computing for Scientists (CS 510) is a graduate-level introduction to scientific computing. Students will gain skills in computer science relevant to creating, running, and publishing a scientific computing project, including software design, code reproducibility, documentation, and replicability. This course is project-based and uses the R language, and students will be evaluated on their ability to create and improve a project. The basic principles of reproducibility, replicability, and open science are also discussed.

Course Materials: Advanced R by Hadley Wickham. Second Ed, CRC Press.

Course Learning Outcomes:

  1. Become proficient in the use of the R language.
  2. Become familiar with the use of Bash, shell programming, and console editors.
  3. Learn the basic principles of software design.
  4. Produce code that is reproducible and produces results that are replicable.
  5. Learn to interact with HPC resources.
  6. Learn how to document your work and prepare scientific publications.

Fall 2021:
Course Github Repository:
Course Organization page: