Programming for Biologists Syllabus

BIOL 5321/6321, 2 Credits, Fall 2014


Dr. Ethan White

Office: BNR 139

Email (best way to contact me):

Phone: 797-2097

Meeting Dates, Times & Location

Dates: First 8 weeks of semester

Times: Mon-Wed-Fri 1:00 – 1:50 pm.

Location: BNR 7

Office Hours

Times: Mon-Wed-Fri 1:50 pm - 2:50 pm or by appointment.

Location: In the classroom

Note: my schedule gets very busy during the semester so please try to schedule appointments as far in advance as possible. In general it will be very difficult to set up appointments less than 24 hours in advance.

Text Books

There is no required text book for this class. If you would like a good book to supplement the online materials I recommend:

“Practical Programming: An Introduction to Computer Science Using Python” by Campbell, Gries, Montojo, and Wilson. Published in 2009 by Pragmatic Bookshelf.

Course Objectives

In this course you will learn all of the fundamental aspects of computer programming that are necessary for conducting biological research. By the end of the course you will be able to use these tools to import data into Python, perform analysis on that data, and export the results as graphs, text files, or whatever else you might need. By learning how to get the computer to do your work for you, you will be able to do more science faster.

  1. Write simple computer programs in Python
  2. Automate data analysis
  3. Apply these tools to address biological questions
  4. Learn and understand programming concepts that will help with using other languages


The syllabus and other relevant class information and resources will be posted at Changes to the schedule will be posted to this site so please try to check it periodically for updates.

Course Management Email List

In order to provide timely updates and helpful material to students, and to request feedback from students during the semester, I maintain a course email list. On the first day of class you will provide your preferred email for this list. Students are required to be aware of emails sent to this list.


Grading for this course will revolve around a combination of assignments (70%), a final exam (30%).

There will be 7 equally weighted programming assignments. Assignments are due Sunday night by 11:59 pm Mountain Time. Assignments should be submitted via email to with the subject line: Programming Assignment X, where X is the number of the assignment. One problem from each assignment (selected at my discretion after the assignments have been submitted) will receive a thorough code review and a detailed grade. Other problems will be graded as follows:

Late assignments will be docked 20% and will not be accepted after Tuesday night at 11:59 pm Mountain Time except in cases of genuine emergencies that can be documented by the student or in cases where this has been discussed and approved in advance. This policy is based on the idea that in order to learn how to program well students should be programming at least every other day. Time has been allotted in class for working on assignments and you are expected to work on them outside of class. It is intended that you should have finished as much of the assignment as you can based on what we have covered in class by the following class period. Therefore, even if something unexpected happens at the last minute you should already be close to done with the assignment. It also allows me to provide rapid feedback by returning assignments quickly, which is crucial to learning.

Final grades will be assigned based on the following scale:

Student’s Responsibilities

Students are expected to read/view assigned material prior to the class for which they are scheduled, attend class, participate in class, complete assignments, take the exam, and ask for help early if they are having trouble.

Instructor’s Responsibilities

I expect myself to review the assigned material prior to the class for which they are scheduled, prepare and deliver high quality introductions to the material, prepare exercises and assignments that are relevant to research in biology, prepare exams that are fair and representative of the material covered in class, and provide comments on assignments intended to help students develop their abilities to work with computers and data.

Academic Honesty

Utah State University expects students and faculty to maintain the highest standards of academic honesty. Students can find information on Utah State’s regulations on Article V, Section 3 of the Student Code, which is accessible at

The three main things not to do in this class: 1) Don’t cheat on the exams; 2) Don’t copy other people’s assignments; and 3) Don’t plagiarize code – i.e., cite any and all sources from which you acquire code.

Students with Disabilities

Students with physical, sensory, emotional or medical impairments may be eligible for reasonable accommodations in accordance with the Americans with Disabilities Act and Section 504 of the Rehabilitation Act of 1973. All accommodations are coordinated through the Disability Resource Center (DRC) in Room 101 of the University Inn, 797-2444 voice, 797-0740 TTY, or toll free at 1-800-259-2966. Please contact the DRC as early in the semester as possible. Alternate format materials (Braille, large print or digital) are available with advance notice.

Class and Classroom Manners

I do not take attendance and therefore I expect that if you are in class you are here to learn. So, please, turn off your cell phones, resist the urge to send email and text messages, etc. Basically I’m just asking that you be respectful of your fellow students and myself. This class is a collaborative learning experience. If you have already finished with what we are working on then find another student to help.


I will do my absolute best to make this a fair class. The exam will be based entirely on material that has either been worked on in class or included in assignments. If you are having problems in the class, or just not doing as well as you would like, I strongly encourage you to approach me as soon as possible to get help during the semester. Please do not approach me at the end of the semester and ask me to change your grade, allow you to do extra credit, etc. Your grade will be the one you have earned and I am ethically required to report that grade. Of course if I’ve made a mistake grading an exam or assignment, or you think that a question was unfair, I encourage you to let me know.