CMSC423-0101: Bioinformatic Algorithms, Databases, and Tools-Spring 2015 mpop

Computers have revolutionized modern biological research, by providing biologists with the means to manage and analyze the large amounts of data generated through high-throughput experiments. This course provides a practical introduction to the main algorithms, databases, and tools used in bioinformatics, at the same time providing insight into the biological problems being addressed.

Many of the techniques you learn in this course are applicable beyond the bioinformatics domain and are relevant to other data-driven fields of computer science.

No knowledge of biology is required for this course.


Instructor: Mihai Pop (
Instructor office: Biomolecular Sciences Building, Room 3120F; or AVW 3223 (by appointment only)
Instructor office hours: Mondays 10-11am, Tuesdays 11-12am in AVW 3223

TA: Rotem Katzir
TA office hours: Wednesdays 2-4pm in AVW 3223

Location: CSIC 1121

Days/time: Tue/Thu 12:30-1:45 pm

Textbook:  (available at University Bookstore -

Learning outcomes

  • Translate a biological problem into an algorithm and a software implementation
  • Learn algorithmic strategies for processing strings of letters (also relevant beyond computational biology)
  • Learn about biomedical questions of current relevance
  • Learn to work in teams



Grading (see below for details)

  • Quizzes/in class participation - 10%
  • In-class teamwork - 5%
  • Programming projects - 25%
  • Two in-class midterms - 30% (15% each)
  • In-class final - 30%

Late policy

  • 1 day late - 10% off
  • 2 days late - 20% off
  • 3 days late - 0 points

Attendance policy

Please notify me in advance if you will miss any exam due to a University sanctioned excuse (medical absence, religious observance, etc.).  In case of sudden illness that causes you to miss an exam you must provide me with a medical note documenting the illness, and clearly specifying the days/times that you were incapacitated due to illness. 

Part of the class grade is participation/quizzes.  Reasonable absences will be accommodated when grading - please inform me in advance if you will miss a class. For quizzes  you can miss 4 without any penalty.  See below for more details.

Religious observances

You must notify me within 2 weeks from the beginning of class if you will miss a class or exam due to a religious observance.  Requests received after two weeks will not be accommodated.

NOTE: 2 weeks have passed.  No further requests will be accommodated.

Accommodations for disabilities

You must notify me within 2 weeks from the beginning of class if you require special accommodations due to disabilities.  All such requests must be accompanied by documentation from DSS. Requests received after this deadline will not be accommodated.

NOTE: 2 weeks have passed.  No further requests will be accommodated.

Communication is key

Please participate in Piazza discussions, interact with  your colleagues, and contact me and the TA if you have questions or concerns.  Please include "CMSC423" in the subject of emails so that they do not get lost.  For general questions about class material you are better off using Piazza as you are more likely to receive a prompt response.

Academic honesty

Simply put: cheating will not be tolerated under any circumstance.  While you are allowed to prepare for assignments together, you must complete all individual assignments by yourselves.  Also, all exams are strictly individual.


Prior to each class you will have to complete a quiz that tests that you have prepared for the class (read material, watched videos, etc.)   These quizzes will not test that you fully understand the material, just that you have done your due diligence in preparing.  I anticipate there will be about 20 such quizzes.  Grading of these quizzes will be all or nothing based on having a majority of answers correct.  You may miss up to 4 quizzes and still receive full credit.  For further missed quizzes grading will be proportionally reduced.

Class participation - Learners and Tutors

As part of each quiz you will have to come up with a question about the material - something that you did not understand while preparing the class. If you fill in this question  you will be called a 'learner'.   If you believe you have understood all the material and have no questions, you can leave this question empty, and will be called a 'tutor'.   During class I will randomly select one or more learners and ask them to present their question to the rest of the class. I will also select one or more tutors and ask them to help answer the question.  If either 'learner' or 'tutor' is not properly prepared, they will lose credit for the day's quiz.

Class participation - team assignments

 I will assign you to teams of 4-5 students based on your responses to an initial class survey.  The members of each team will be responsible for helping each other learn, and also for working together during in-class exercises.  Each team will be randomly called upon during class - the credit received will depend on satisfactory performance in these assignments.  Note that points will not be distributed evenly to all team members, rather they will be decided by 3 team peer-assessments, submitted at the time of the two midterms and at the end of the class.

Illness/emergency preparedness

See for more information.

If you are sick, don't come to class - no need to get others sick. 
Please report sickness on and by email to me and the TA. 

Course Summary:

Date Details Due
CC Attribution This course content is offered under a CC Attribution license. Content in this course can be considered under this license unless otherwise noted.