CSC 448 - Bioinformatics Algorithms

Table of contents

  1. Syllabus
  2. Schedule
  3. Technology
  4. Project
  5. Deadlines
  6. Corrections


Course Description

This course studies the application of computing techniques to solving problems in the field of bioinformatics and computational molecular biology. 3 lectures, 1 laboratory.

Professor Information

Paul Anderson, PhD


Office: 222 Building 14

Office hours:



Course Prerequisites

CSC 349

Course Learning Objectives

  1. Know the main problems in the field of bioinformatics and computational molecular biology.
  2. Understand the key algorithms used to solve computational biology and bioinformatics problems
  3. Model computational biology problems
  4. Apply algorithmic techniques to solve problems in computational biology and bioinformatics
  5. Gain experience working on software projects on multidisciplinary teams.

Textbook and Other Material

The author has a wonderful website (in comparison to others). They provide the chapters free of charge. While we go further or in a different than the textbook for our projects, tutorials, and other hands on activities, the textbook grounds this course and provides structure.

Phillip Compeau, Pavel Pevzner, Bioinformatics Algorithms: An Active Learning Approach, Active Learning Publishers, 3rd Edition


All grades are subject to being prorated due to illness. For example, if you are sick for a week, you will not have to make up that week. Your grade will just be computed out of fewer total points. You are responsible for making sure that this is correctly reflected in Canvas. Canvas is our official record of grades. Missing weeks will be indicated not with a 0, but with a -1. Your final grade calculations are not correct in Canvas. I always calculate the final grades in Excel which allows me to handle absences because of illness, etc. Canvas is our source record.

Grading philosophy: Mastery learning

  • I approach grading as student focused. I don’t believe students should be penalized if it takes them two weeks to do an assignment when other students can finish it in a week.
  • I enjoy a challenge, and I want you to enjoy a challenge as well. I want students to say. “Wow. This is challenging and that is what makes it fun”.
  • There is this notion that great scientists/mathematicians/human beings are born as great in those respects. Not true.
  • A lot of my own thinking is driven by my own experiences. The education system almost completely missed for me. I did not focus or engage with school until fortune intervened on my behalf. I moved from Maryland to Ohio in my junior year of HS. It was only because of a conversation while onboarding at that new school. They asked me to select my own classes for the first time in my life. I had the power because I was a transfer student. I thought what the hell, I’ll jump into all these honors and AP classes. And they were hard. But C’s in hard classes became B’s in hard classes became A’s in college. It wasn’t that my brain wasn’t as good as other students. I just hadn’t exercised it as much as some of my peers. We can all grow and improve. I still try to grow in the same way as before. To push myself and not just choose things that are easy for me. Choose the path that is hard. Spend time on what interests you.

Labs and assignments: 60% (A new lab is posted each week)

  • The primary form of labs and assignments will be programming exercises that are supported by the textbook which is supplemented by videos.
  • Labs and assignments will be submitted to GitHub classroom. A link to each lab and assignment will be on the schedule.
  • Because a new lab is posted every week, I put a suggested deadline of one week, but as stated above, submitting late will not affect your grade. I do hope to automatically generate reports for each student each week to help you monitor your progress. Technical difficulties will of course arrive and be ironed out with such a system.
  • Mastery interpretation: You are attempting to master topic modules. Some may be harder than others based on your background. I am not taking lab points away from you. You are pushing your grade up from 0% on the labs to a max of 60%. This part of the class is like going to the gym. It is at times not as exciting as a project, but it is here where we build your core.

Project: 25%

  • All projects are student centered and student driven. We are not assigning or pushing structure upon you. Mastery is only achieved on the project by taking ownership of your learning through knowledge creation.
  • We have arranged a menu based project for you. Meaning you may choose one but not more than one of the following options.
  • Project Option A: Large group based COVID19 bioinformatics research project. Students opting for this option will function as a team trying to understand COVID19 from a bioinformatics perspective. Students from the spring have started on this project, and it will be your task to refine, extend, pivot, move their work forward. This project has probably the least structure. It is of course also one of the most exciting as you will be pushing into research territory. The goal is to publish this work.
  • Project Option B: Make accessible tutorial(s) related to topics discussed in class. There is no better way to show mastery of a topic by teaching it to someone else. In this case, you’ll be asked to create self-driven tutorials and materials. They must be originals.
  • Project Option C: Choose your own adventure. You may have an ongoing project that can fit this category. You may seek project suggestions from your instructors. The one rule for this option is it must be approved by the end of Week 3.
  • For this project, we will have one “bean counting” exercise. You must post on Flipgrid once a week. This regular posting is worth 15% out of the total 25% of the project. Remainder of the points are awarded from your group’s deliverables which will differ from group to group.
  • Apart from that accountability bean counting exercise, we won’t be bean counting. Instead, we will provide you with two preliminary grades (not binding) based on your project.

Participation: 15%

  • We will be conducting this class using a variety of technologies (Zoom, Flipgrid, etc). For communication, we will using the platform known as Slack.
  • You are expected to communicating with your instructors and class using this platform.
  • Mastery will be measured by examining Slack history. Slack allows us to download and organize all of your individual contributions.
  • Mastery will also be measured through the “Oxford style” tutorials. See schedule for more details. These small groups sessions are required, and your attendance in them will amount to 5% of your overall 15% participation score.
  • We won’t be bean counting (i.e., you have to post X times per week). Instead, we will provide you with two preliminary grades (not binding) based on your demonstrated communication.
  • Your final participation score will only be determined at the end of the quarter.

Overall, we are trying to encourage a growth mindset. Take time to master things. Work on improving what you aren’t good at. Maybe that is communication. Maybe that is programming. Maybe it is working with creating new knowledge (i.e., project).

Grading Scale

Grading Scale: A: 90-100; B: 80-89; C: 70-79; D: 60-69; F: <60. Plusses and minuses will be used at the discretion of the instructor.

Honor Code

Lying, cheating, attempted cheating, and plagiarism are violations of our Honor Code that, when identified, are investigated. Each instance is examined to determine the degree of deception involved.

Incidents where the professor believes the student’s actions are clearly related more to ignorance, miscommunication, or uncertainty, can be addressed by consultation with the student. We will craft a written resolution designed to help prevent the student from repeating the error in the future. The resolution, submitted by form and signed by both the professor and the student, is forwarded to the Dean of Students and remains on file.

Cases of suspected academic dishonesty will be reported directly to the Dean of Students. A student found responsible for academic dishonesty will receive a XF in the course, indicating failure of the course due to academic dishonesty. This grade will appear on the student’s transcript for two years after which the student may petition for the X to be expunged. The student may also be placed on disciplinary probation, suspended (temporary removal) or expelled (permanent removal) from the College by the Honor Board.

It is important for students to remember that unauthorized collaboration–working together without permission– is a form of cheating. Unless a professor specifies that students can work together on an assignment and/or test, no collaboration is permitted. Other forms of cheating include possessing or using an unauthorized study aid (such as a PDA), copying from another’s exam, fabricating data, and giving unauthorized assistance.

Remember, research conducted and/or papers written for other classes cannot be used in whole or in part for any assignment in this class without obtaining prior permission from the professor.

Diversity Statement (Cal Poly official statement)

At Cal Poly we believe that academic freedom, a cornerstone value, is exercised best when there is understanding and respect for our diversity of experiences, identities, and world views. Consequently, we create learning environments that allow for meaningful development of self-awareness, knowledge, and skills alongside attention to others who may have experiences, worldviews, and values that are different from our own. In so doing, we encourage our students, faculty, and staff to seek out opportunities to engage with others who are both similar and different from them, thereby increasing their capacity for knowledge, empathy, and conscious participation in local and global communities.

In the spirit of educational equity, and in acknowledgement of the significant ways in which a university education can transform the lives of individuals and communities, we strive to increase the diversity at Cal Poly. As an institution that serves the state of California within a global context, we support the recruitment, retention, and success of talented students, faculty, and staff from across all societies, including people who are from historically and societally marginalized and underrepresented groups.

Cal Poly is an inclusive community that embraces differences in people and thoughts. By being open to new ideas and showing respect for diverse points of view, we support a climate that allows all students, faculty, and staff to feel valued, which in turn facilitates the recruitment and retention of a diverse campus population. We are a culturally invested university whose members take personal responsibility for fostering excellence in our own and others’ endeavors. To this end, we support an increased awareness and understanding of how one’s own identity facets (such as race, ethnicity, gender, sexual orientation, religion, age, disability, social class, and nation of origin) and the combinations of these identities and experiences that may accompany them can affect our different worldviews.

Disability Accommodations

Any student who feels he or she may need an accommodation based on the impact of a disability should contact me individually to discuss your specific needs. Also, please contact the Disability Resource Center: