/NCBIComputationalCookbook

Jupyter notebooks to more effectively leverage computational resources at NCBI.

Primary LanguageJupyter NotebookMIT LicenseMIT

Computational Cookbook

Designing Educational Experiences with Jupyter Notebooks:

Abstract:

Poor documentation leads to poor understanding of a software. It is difficult to interpret other researchers' code without unequivocal documentation. Jupyter Notebook combines code and rich-text elements which allows the user to effectively learn, modify, and run the notebook. Hence, we offer an example of notebooks for NCBI computational resources such as Basic Local Alignment Search Tool (BLAST). BLAST is a tool used to align biological sequences and find regions of similarity between them. This notebook teaches how to run a BLAST search from within BioPython and how to compare and identify unknown user provided sequences. This notebook serves as a template for people to learn and also modify the notebook as needed.

Dependencies:

  • Python 3 (packages such as BioPython, Macplotlib, Pandas)
  • Jupyter Notebook

Example user persona:

User persona is written to accompolish the design of notebook, and help people learn, modify the notebook, and scale to larger problems:

  • Sarah, an undergrad student (a biology major) is taking a web-based bioinformatics course, and has little programming experience. She has to solve the following assignment:

    • The goal is to determine if a recently obtained genomic sequence from Drosophila yakuba (a relative of the model fruit fly Drosophila melanogaster) contains region(s) with sequence similarity to any known genes. The unknown sequence is an 11,000 base pair (bp) fragment of genomic DNA, and the objective of gene annotation is to find and precisely map the coding regions of any genes in this part of the genome.

Method:

Workflow_Jupyter.png

Project Team:

Designing Educational Experiences with Jupyter Notebook was developed at NCBI-Hackathons, from August 14-August 16, 2017