CS580 - programming for the life sciences
1/24/10: There will be a weekly lab meeting on mondays at 1pm at room 425. Bring your laptops.
1/11/10: The course was moved to room 425 in the computer science building
Biology is becoming more and more a quantitative science, requiring the analysis of large amounts of data. While off-the-shelf programs are available for a large variety of computational tasks faced by practitioners in the life sciences, one sometimes needs to extract data, or manipulate the data in some way that is not provided by available software. The ability to write programs is empowering, removing a researcherís dependence on having software that precisely matches his or her needs. Programming will be presented using python which is a simple and easy to learn programming language, with programming problems that are inspired by the types of problems encountered in analyzing biological data, e.g. sequence or gene expression data.
In addition to learning how to program, students will learn to think algorithmically. Many biologists use programs such as BLAST or GenScan without understanding how the underlying algorithm works. The course will present algorithms such as sorting algorithms, and algorithms for tasks such as motif finding, and will develop studentsí algorithmic thinking so they can better understand the programs they use.