Skip to content


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation

MCB 517A: Tools for Computational Biology

This document is the syllabus for this course.

Class schedule

Time: 3:20PM-4:40PM, Tue & Thu, Sep 26 - Dec 5 2019

Location: B1-072, Fred Hutch

Lecture Date Instructor Topic
1 Sep 26 Kate Hertweck Introduction to course
2 Oct 1 Trevor Bedford Introduction to Git and GitHub
3 Oct 3 Trevor Bedford Introduction to data
4 Oct 8 Rasi Subramaniam Visualize data using R/ggplot2
5 Oct 10 Rasi Subramaniam Principles of data visualization
6 Oct 15 Rasi Subramaniam Working with data using R/tidyverse
7 Oct 17 Gavin Ha Introduction to sequencing data
8 Oct 22 Gavin Ha Genomic data in R
9 Oct 24 Erick Matsen Introduction to the command line
10 Oct 29 Phil Bradley Introduction to Python
11 Oct 31 Phil Bradley Intro to Python (continued)
12 Nov 5 Erick Matsen Intro to the command line (continued)
13 Nov 7 Jesse Bloom Data structures and biological analyses using Python
14 Nov 12 Jesse Bloom Data structures/biological analyses in Python (continued)
15 Nov 14 Phil Bradley Modeling and machine learning in Python
16 Nov 19 Phil Bradley Modeling/machine learning in Python (continued)
17 Nov 21 Erick Matsen Introduction to remote computing
18 Nov 26 Kate Hertweck Remote computing on the command line
19 Dec 3 Rasi Subramaniam Course summary and synthesis
20 Dec 5 Kate Hertweck Capstone project

Materials for each lecture will be available in this repository prior to the class session; the link for each topic will take you to the folder containing materials for that class.

For further assistance, Kate Hertweck and/or TA Katie Kistler will be available for to offer assistance just prior to (or after) the regular class session. Email Kate (khertwec at to schedule a time to meet, or to set up a separate appointment.

Homework and grading

  • A total of 8 homework assignments will be assigned on the following dates and will be due at 12pm on the dates indicated. If you need to submit a homework late, please check with the instructor at least 24 hours before the due date.
  • You should obtain and submit homework assignments via GitHub Classroom. Grading criteria and assessment will also be available there.
  • You are encouraged to search online for solutions and discuss the homework with your classmates. However, the answers you submit should be written in your own words. You should also cite any online source or person that helped you arrive at your solution as inline comments in your code.
  • Each homework will count for 10% of your final grade. In-class participation will count for the remaining 20%, and will be assessed from the rubric presented here.
  • If you have a question about homework, please comment in the GitHub issue for the assignment, or email Kate (khertwec at for assistance.
Homework Assigned Date Due Date Topic
1 Oct 1 Oct 8 Reproducible science, Git and GitHub, Markdown
2 Oct 15 Oct 22 Data visualization and manipulation in R
3 Oct 22 Oct 29 Genomic data in R
4 Oct 24 Nov 7 Unix command line
5 Oct 29 Nov 7 Programming in Python
6 Nov 12 Nov 19 Data structures and biological analyses in Python
7 Nov 26 Dec 5 Modeling and machine learning in Python
8 Dec 3 Dec 10 Capstone

Course description

This course is designed to introduce computational research methods to graduate students in biomedical science and related disciplines. We expect students will have little to no previous experience in computational methods. This course provides a survey of the most common tools in the field and you should not expect that completion of the course will make you an expert in any single programming language. Rather, you should be equipped with foundational knowledge in reproducible computational science, and can continue learning relevant tools to suit your research interests.

Course objectives: By the end of the course, students should be able to:

  • Code in R, Python, and Unix/bash shell scripting using appropriate syntax and code convention
  • Select appropriate tools to perform specific programming and data analysis tasks
  • Apply good practices for computational research, including project organization and documentation
  • Analyze common forms of data generated by molecular biology experiments including high throughput sequencing, flow cytometry, and 96-well plate readers.

Resources and required materials

  • This course will require a laptop computer, on which you should install the required software.
  • Additional reading material is available for your reference.
  • If you are a UW student who does not possess a prior affiliation with Fred Hutch: We will request a HutchNetID for you, which will allow access to computational resources used for this class (please note that this process requires a background check). Parking on campus is limited, so we recommend taking public transit. More information for visitors to campus can be found here.
  • Information about expectations for student conduct, disability resources, academic integrity, and religious accommodations can be found on this page.


For general inquiries about this course, please contact khertwec at