Resource Image

Teaching introductory bioinformatics with Jupyter notebook-based active learning

Author(s): Colin Dewey

University of Wisconsin - Madison

680 total view(s), 177 download(s)

0 comment(s) (Post a comment)

Presentation on teaching introductory bioinformatics with Jupyter notebook-based active learning at the 2019 Great Lakes Bioinformatics Conference

Licensed under CC Attribution-NonCommercial-ShareAlike 4.0 International according to these terms

Version 1.0 - published on 17 Aug 2019 doi:10.25334/YZJ7-D347 - cite this


With growing evidence that active learning is more effective than traditional lecturing with respect to student performance in STEM, there has been increasing interest within the bioinformatics community to adopt active learning approaches within our courses. Active learning can take many forms, from brief in-class problems or quizzes interspersed between segments of a traditional lecture, to “flipped” classrooms, in which students watch video lectures outside of class and participate in activities during the class period. Along these lines, within the bioinformatics community there has been work in developing materials supporting active learning, including the creation and sharing of video lectures and programming problem-based activities.

To experiment with such active learning approaches in teaching undergraduate-level bioinformatics, I recently revamped the course “Introduction to Bioinformatics” at the University of Wisconsin-Madison, turning what had previously been a traditional lecture-based class into a largely flipped classroom. With a focus on computer science and statistics foundations, this course covers the topics of sequence assembly, sequence alignment, phylogenetic trees, genome annotation, clustering, and biological network analysis. Prior to each class period, the students were asked to watch one or more short video lectures, complete an assigned reading, take a short online quiz, and submit questions to an online discussion board. After a short discussion of the most common questions from the pre-class material, the bulk of the in-class time was spent with the students completing programming or written problems within cloud-based Jupyter notebooks. The other components of the course, homework and exams, were kept comparable to those used in previous versions of the course.

The most novel aspect of the revamped course was the set of over 30 Jupyter notebooks (Python kernel) that the students completed as part of their in-class activities. For the typical class period, the students were presented with a new notebook template that contained an average of three problems that they were to complete for a small yet non-negligible part of their overall grade. The most common format of a problem was to fill in the definition of Python function that performed some subtask of an algorithm that had been covered in the pre-class materials. Other common problems involved visualizing the results of an analysis, taking advantage of the interactive plotting features of Jupyter notebooks. Students were encouraged to work with each other to complete the in-class notebooks and were arranged in groups of four within the classroom, which was equipped with laptops for every student. The notebooks were autograded and students were allowed to submit their work multiple times until they passed the autograder tests.

Course evaluations revealed that the students generally enjoyed the notebook activities and the flipped format of the course. The most common criticism of the course by students was that the in-class activities required too much time, with many students spending hours after the class period to complete the notebooks. Although a direct comparison of grades across semesters is difficult due to numerous varying factors, the median undergraduate score did increase by roughly three percentage points in the revamped course as compared to my last offering of the course, although this difference was not statistically significant. As an instructor, I enjoyed the fact that the flipped format enabled me to spend more time working one-on-one with students who were struggling in the class. One lesson learned was that three-day-per-week, 50-minute class periods were suboptimal for notebook-based activities and thus the next offering of the course will use a two-day-per-week 75-minute class period format.

Cite this work


There are no comments on this resource.