Wellesley College - BISC189 Essential Skills for Computational Biology


Course Info

Course Code: BISC 195
Course Title: Essential Skills for Computational Biology


Name:Kevin Bonham, PhDClara Kim ('23)

Course Run Info - Wellesley Summer 2021

June 7th - July 19th

Course Meeting Times

  • Tu/F 1:30pm - 4:45pm: Lecture / Lab

  • Th 12pm - 2pm: Kevin office hours

    • Zoom link: https://wellesley.zoom.us/j/572452111

    • Meeting ID: 572 452 1116

  • W 8pm - 10pm: Clara office hours

    • Zoom link: https://wellesley.zoom.us/j/5592518955

    • Meeting ID: 559 251 8955


Modern biology depends on computing. At the same time, many biologists are intimidated by the prospect of programming. In an era of high-throughput assays and datasets with thousands of samples containing millions of molecular sequences, a basic knowledge of computational methods is critical. Many tools for analyzing vast quantities of molecular data have only command-line interfaces, and performing statistical tests or plotting these large datasets is impossible with excel or other software with a graphical user interface. This course will provide an introduction to essential computational techniques for biological data analysis using a modern programming language, focusing on strategies for solving problems rather than specific syntax.

Learning Objectives

After completing this course, students will be able to:

  • Navigate their computer and manipulate files using a command line interface.

  • Write a script to perform statistical analyses on and plot a large numerical dataset.

  • Find, download, and process large biological sequence datasets from an online source.

  • Search for a solution to a novel error or software bug and implement it in code.

  • Use a version control system to keep track of changes to their code.


This course is an introduction to programming, but examples will be rooted in molecular and evolutionary biology problems. Students without prior coursework in biology should be able to succeed with additional effort.

Recommended: Molecular and/or Cell Biology.

Course Materials

Online textbook (free): Think Julia: How to think like a computer scientist


Direct link

Course policies

Code of Conduct (CoC)

All students, instructors, teaching assistants, and tutors are expected to adhere to the following precepts:

  • Recognizing that we are all learning together, I will treat students, instructors, teaching assistants, and tutors with respect.

  • Realizing that collaboration between my mind and body are critical for learning, I will treat myself with respect.

  • Knowing that my learning depends on the past work of countless others, I will treat this course and my own academic work with respect.

This course is also a part of Wellesley College and the julia programming community. As such, you are also expected to follow the Wellesley College Honor Code and the julia community standards.

Academic honesty / plagiarism

Seeking help from online sources, code re-use, and collaboration are critical parts of programming. Because of this, the line between acceptable behavior and something that might be considered plagiarism or cheating can be difficult to draw. For this course:

  • You may not share the code for your assignments or for your final project with other students (present or future). Keep this code confidential.

  • You may not look at code written specifically for assignments or final projects associated with this course.

  • You may discuss code for assignments and final projects in words, in "pseudocode," or using minimum working examples (MWE).

  • You may freely discuss or share code with fellow students about anything in the course not directly related to assignments or final projects.

  • You may freely use code from the book, or from any other source other than other students in the course (past or present). When in doubt, provide attribution.

Diversity statement

We in the Wellesley College Department of Biological Sciences, including all faculty, staff and students participating in the department, are devoted to improving equity and enhancing student experiences of community, engagement and belonging. We believe that the diversity of our community is central to intellectual growth and development. We are committed to being a learning community that embraces and supports the identities, abilities, life experiences, and aspirations of every member of our community.

Julia Language community commitment to diversity.


  • Assignments: 70%

    • 10 assignments each worth 7 points

    • Assignments are complete when automated tests all pass

  • Labs: 10%

    • In-class activities, graded only on participation.

    • All activities can be completed outside of class as well (though often will have opportunities to work in groups to complete).

  • Final Project: 20%

    • You will design and build a julia package building on the work you do in the later assignments

    • 20 points; a rubric will be provided, but points will be based on:

      • correct use of concepts from class (eg types, functions)

      • sensible and well-implemented application programming interface (API)

      • documentation

      • test coverage