Welcome to the home page for Bioinformatics Programming I, course
catalog numbers BINF 6111 and ITCS 8111. Prof. Ann Loraine (aloraine
uncc.edu) is your instructor. For more information about Dr. Loraine's background and
research interests, visit the Loraine Lab Web site.
Ehsan Tabari (sseyedit
uncc.edu) is the Teaching Assistant for the class.
For information on class policies, grading, etc., please consult the syllabus. For information on dates and final exam periods, visit the UNCC academic calendar.
Class Meeting times: Class meets Wednesday and Friday, 9:30-10:45 pm, in the Bioinformatics building first floor computer lab.
Office Hours and TA Help session
Dr. Loraine is available on campus to talk one-on-one with students before class in her office (BINF, room 267). You are also welcome to make a phone appointment if you can't make that time.
Ehsan Tabari is available for help sessions on an as-needed basis, hours and dates to be arranged.
Python links and resources
Please note that topics and assignments listed for individual dates may change. Please check back before each class period for updates.
Week 1 Aug 25-27
Class 1: Class Intro.
Assignment: Emacs Lab [1]
Assignment: First Day of Class Survey.
Reference: Emacs Command Summary
Week 2 Sept 1 - Sep 3
Reading: Chapters 1-3, Python Programming by John Zelle and Chapters 2 & 3, Dive into Python by Mark Pilgrim.
Class 1: Unix Review, Core data types, functions in python.
Due: Unix lab [2]
Assignment: Numbers, strings [3]
Class 2: Unix - shell and environment variables, Core data types, functions in python.
Sample Dot-Bash-Profile: sample-dot-bash-profile.txt
Week 3 Sep 8 - Sep 9
Class 1: Lists, dictionaries.
Week 4 Sep 15 - Sep 17
Class 1: Putting it all together: In-class Programming Assignment [5]
Due: Lists & dictionaries [4]
Class 2: Introduction to Version control. Using subversion
Assignment: Subversion lab [6]
Before-class reading: Chapters One through Three in: Version Control with Subversion
Week 5 Sep 22 - Sep 24
Reading: Object Oriented Programming in Learning to Program by Alan Gauld.
Class 1: Object-oriented programming - Encapsulation and Data Hiding
Assignment: OOP [7]
Due: Subversion Lab [6]
Due: In-class Programming Assignment (check in via subversion) [5]
Notes: Sequence coordinates
Class 2: OOP - Inheritance, UML
Week 6 Sep 29 - Oct 1
Class 1: Errors and exceptions Before-Class Reading: Errors and Exceptions TutorialClass 2: OOP - Patterns in Software
Assignment: Inheritance - Project One
Due: OOP [7] -- turn it in via subversion
Week 7 Oct 6 - Oct 8
Class 1: Project One Discussion, Documentation, Regular Expressions
Assignment: Regular Expressions [8]
Before-class reading: Regular Expression HOWTO
Background (for the homework):
AGI gene codes
Class 2: IGB lab, Regular expressions, con't
Tutorial: IGB lab
Week 8 Oct 13 - Oct 15
Class 1: Unit testing.
Before-Class Reading: Dive Into Python: Unit Testing
Due: Regular Expressions [8]
Class 2: Unit testing, con't
Week 9 Oct 20 - Oct 22
Class 1: Intro to Algorithms
Due: Project One.
Class 2: Intro to Algorithms; Project One code review
Assignment: Project One revision/code review - Part One [9]
Week 10 - Oct 27 - Oct 29
Class 1: Named arguments and OOP - Project One code review, con't
Due: Project One revision/code review - Part One [9]
Assignment: Project One revision - Part Two [10]
Class 2: Revising Project One, Partner evaluations
Week 11 Nov 3 - Nov 5
Class 1: In-class programming; Subversion refresher Due: Project One revision - Part Two [10] (Thursday, 8 pm)
Class 2: Code Review - Which is better? Finding NMD targets
Assignment: NMD targets [11]
Week 12 Nov 10 - Nov 12
Class 1: RNA-Seq, HW11 setup
FASTQ: FASTQ format
SAM/BAM: Screencasts
Tutorial: IGB lab
Class 2: Visualizing RNA-Seq data, Option parsing
Reading: Check out binf_prog/class/src/optdemo.py
Week 13 Nov 17 - Nov 19
Class 1: Statistical programming with R
Notes: EEJ distance diagram
Assignment: Intro to R [12]
Class 2: Statistical programming with R - class notes
Assignment: Project Two
Due: NMD targets [11]
Notes: Thomas Girke's R workshop
Reference: Dalgaard's Introductory Statistics with R, 2nd edition
Video: R on Windows (basic)
Video: Reading Excel spreadsheets
Video: Using R to do a related t-test
Video: Using R to perform simple linear regression
Rpy:Tool-building in Bioinformatics: Rpy
Reference: First Steps in R by Florian Markowetz, et al.
Week 14 Nov 24 - Nov 26 - No class (Thanksgiving holiday)
Week 15 Dec 1 - Dec 3
Class 1: samtools and SAM, Project Two
Reading: Binary
search Can a binary search make your program faster?
Reading: SAM
Format specification
Link: data files for
project two
Link: samtools-0.1.11.zip -
compiled on MacOSX
Class 2: Project Two help sessions
Due: Intro to R
Week 16 Dec 8 (Dec 8 is the last day of class)
Class 1: Review, Project Two help sessions
Project Two - due by 5 pm, Thursday Dec 16
finis