Day 1

You will find the course syllabus, a link to the Piazza discussion site, information about the labs as well as the group project on the course website:

Things you need to do before the first lab on Monday, August 31st:

  1. Read the syllabus and the project overview
  2. Sign up on Piazza
  3. If you don’t already have one, create a GitHub account here.
  4. Install BCE on your laptop:
  5. Read the “Basics of UNIX” tutorial and watch the accompanying screencast here:
  6. Read The Interactive Shell and Basic File Management.

You may also want to start reading Preeyanon, Likit, Alexis Black Pyrkosz, and C. Titus Brown. “Reproducible bioinformatics research for biologists.” Implementing Reproducible Research (2014): 185.


A graph is an ordered pair \(G = (V, E)\) of a set \(V\) of nodes (or vertices) and either an ordered pair \((a,b)\) or an unordered pair \(\{a,b\}\) of edges between nodes of \(V\).

A directed graph has directed edges each represented by an ordered pair \((a,b)\) of nodes. An undirected graph has undirected edges each represented by an unordered pair \(\{a,b\}\) of nodes.

A path is a sequence of edges which connect a sequence of distinct (excluding the first and last) nodes. Paths are ordered (unordered) for directed (undirected) graphs. A path with the same first and last node is a cycle.

A tree is a graph with at most one path between any two nodes.

A directed acylic graph (DAG) is a directed graph with no cycles.

Is it worth the time?

Text editor

You will be using a text editor extensively in this class. Unlike many aspects of computing, your choice of text editor will have little direct impact on people you work with or who use your code. However, choosing a good text editor is extremely important if you wish to efficiently and effectively work on a computer.

Please read this carefully: