Schedule

Week 1

Reading:

Make sure you have installed Python and VScode for the first lecture.

Lectures:
  • In the first lecture, I will outline how the course is organized and how you will get the most out of your efforts in learning programming.
  • In the first lecture, I will also talk about how a Python program works and about values, math, and logic.
  • In the second lecture, I will talk about variables, operators, substitution, and reduction.
Exercises:

If you have yet to do so at home, you will install Python and the text editor. To do this, follow the instructions in 2  Before you begin. Then, start doing the exercises in chapter 4  Writing a program, chapter 5  Dealing with values, and chapter 6  The order of events. You will also have time to do these exercises in the TA session of week two, so go slow. It is important to properly absorb the basic concepts at the beginning of the course; otherwise, it will become too difficult later on. Have a look

And make sure to familiarize yourself with the Myiagi game and the print-steps tool described in chapter 7  Course tools. These are useful companions in the course.

Week 2

Reading:

I will cover chapters 8-9 in the lecture notes.

Lectures:
  • In the first lecture, I will talk about how to use logic to control which statements in your program that get executed.
  • In the first lecture, I will also talk about how you can efficiently organize your code using functions.
  • In the second lecture, I will talk more about functions.
Exercises:

The topics for this week’s exercises are statements, variables, operators, expressions, substitution, reduction, and logic. You will work on the rest of the exercises in chapter 4  Writing a program, chapter 5  Dealing with values, chapter 6  The order of events, and chapter 7  Course tools. Do what you can at home and do the rest at the TA session.

Week 3

Reading:
Lectures:
  • In the first lecture, I will talk about objects and methods.
  • In the first lecture, I will also talk about lists.
  • In the second lecture, I will talk about dictionaries and a bit about tuples.
Exercises:

The topics for this week’s exercises are if, else, logic, and functions. You are meant to complete all the exercises in chapter 8  Controlling behavior and chapter 9  Organizing code. Do what you can at home and do the rest at the TA session.

Week 4

Reading:
Lectures:
  • In the first lecture, I will talk about iteration and lists.
  • In the second lecture, I will talk about how your code can interact with files on your computer.
Exercises:
Note

Only MO and Bio classes attend the exercises this week. MM classes do not. The exercise is repeated next week for the MM classes to attend*

The topics for this week are objects, methods, strings, lists, tuples, and dictionaries. You are meant to complete all the exercises in chapters 10  Values are objects, 11  Lists of things, 12  Pairs of things, and 13  Grouping values. Do what you can at home and do the rest at the TA session.

Week 5

Reading:
Lectures:
  • In the first lecture, I will talk about databases, genotyping arrays, and genomewide association studies (GWAS).
  • In the first lecture, I will also talk about building simple data strutures in Python.
  • In the second lecture, I will talk about how to use recursion in Python.
Exercises:
Note

Only MM classes attend the exercises this week. MO and Bio classes do not. The exercise is repeated from last week*.

The topics for this week are iteration and data structures. You are meant to complete all the exercises in chapter 14  Iterating values and chapter 15  Working with files.

Week 6

Reading:
Lectures:
  • In the first lecture, I will talk about global pairwise alignment In the first lecture
  • In the first lecture, I will also talk about the weekly programming project.
  • In the second lecture, I will talk about local pairwise alignment and more realistic gap scoring.
Exercises:

From the project files page, you can download the files you need for programming projects. There will be lots of work, so do what you can at home and do the rest at the TA session.

Important

Chapter 19  Translating ORFs is a mandatory assignment. The deadline for handing it in (on Brightspace) is the night before your exercise class in week 41.

Week 7

Reading:
  • Lecture notes: chapter 20  Primer analysis
  • Understanding Bioinformatics: 117-127
  • Alignment methods: strategies, challenges, benchmarking, and comparative overview (don’t do the exercises).
Lectures:
  • In the first lecture, I will talk about protein substitution matrices and how to score protein alignments. - In the first lecture, I will also talk Python classes and the weekly programming project.
  • In the second lecture, I will talk about multiple alignment.
Exercises:

From the project files page, you can download the files you need for both programming projects and web exercises. There will be lots of work, so do what you can at home and do the rest at the TA session.

Week 8

Reading:
  • Lecture notes: chapter 21  Pairwise alignment
  • Bioinformatics Explained: BLAST
  • Biological Sequence Analysis pp. 192-197
Lectures:
  • In the first lecture, I will talk about how to search for matches in a sequence database and how to asses alignment significance.
  • In the first lecture, I will also talk about programming topics and the weekly programming project.
  • In the second lecture, I will talk about models of DNA evolution and how to measure evolutionary distance between sequences.
Exercises:

From the project files page, you can download the files you need for both programming projects and web exercises. There will be lots of work, so do what you can at home and do the rest at the TA session.

Week 9

Reading:
  • Lecture notes: chapter 22  Codon usage
  • Biological Sequence Analysis pp. 165-179
Lectures:
  • In the first lecture, I will talk about methods for sequence clustering.
  • In the first lecture, I will also talk about the programming project.
  • In the second lecture, I will talk about bioinformatics code libraries for Python, such as BioPython, and the Master in Bioinformatics that we offer at the Bioinformatics Centre.
Exercises:
  • The web exercise: MRSA
  • The programming project described in chapter 22  Codon usage (not a mandatory assignment).

From the project files page, you can download the files you need for both programming projects and web exercises. There will be lots of work, so do what you can at home and do the rest at the TA session.

Week 10

Reading:
Lectures:
  • In the first lecture, I will talk about phylogenetic trees.
  • In the first lecture, I will also talk about Python topics and the weekly programming project.
  • In the second lecture, I will talk about gene prediction in prokaryotes.
Exercises:

From the project files page, you can download the files you need for both programming projects and web exercises. There will be lots of work, so do what you can at home and do the rest at the TA session.

Important

Chapter 23  HIV sub-groups is a mandatory assignment. The deadline for handing it in is the night before your exercise class in week 46.

Week 11

Reading:
Lectures:
  • In the first lecture, I will talk about hidden Markov models (HMMs).
  • In the first lecture, I will also talk about python topics and the weekly programming project.
  • In the second lecture, I will talk about more about HMMs
Exercises:
  • The programming project described in chapter 24  Sequence trees (not a mandatory assignment).

From the project files page, you can download the files you need for both programming projects and web exercises. There will be lots of work, so do what you can at home and do the rest at the TA session.

Week 12

Reading:
Lectures
  • In the first lecture, I will talk about applications of hidden Markov models gene finding and protein annotation.
  • In the first lecture, I will also talk about Python topics and the weekly programming project.
  • In the second lecture, I will talk genome assembly.
Exercises:

From the project files page, you can download the files you need for both programming projects and web exercises. There will be lots of work, so do what you can at home and do the rest at the TA session.

Week 13

Reading:
  • Lecture notes: chapter 26  Genome assembly
  • Understanding Bioinformatics pp. 494-496
  • Exploring Bioinformatics pp. 242-248
Lectures:
  • In the first lecture, I will talk about neural networks
  • In the first lecture, I will also talk about the programming project.
  • In the second lecture, I will talk about applications of HMMs RNA secondary structure prediction.
Exercises:

From the project files page, you can download the files you need for both programming projects and web exercises. There will be lots of work, so do what you can at home and do the rest at the TA session.

Week 14

Reading:
  • None this week.
Lectures:
  • In the first lecture, I will talk about python and algorithms. You will also hear a guest talk by about bioinformatics outside the class room.
  • In the last lecture, we will evaluate the course and review the exam’s practicalities.
Exercises:

From the project files page, you can download the files you need for both programming projects and web exercises. There will be lots of work, so do what you can at home and do the rest at the TA session.