Day 2. Introduction to Programming

Much of bioinformatics requires manipulation of data data sets, execution of multiple external programs, and summary and analysis of results. Many programming langagues, such as Perl and Python excel at these tasks. Here, we will provide an overview of the Python language, demonstrate basic concepts in programming, and show how to create figures and utilize iPython notebooks. Python is a powerfull language with many external packages that permit sophisticated analysis workflows.


Schedule:

Session Time Topics
I 9:00-10:15 AM Intro to Python and Programming Concepts
  10:15-10:30AM Coffee Break
II 10:30-12:00 AM Programming Concepts, Variables, and Data Structures
  12:00-1:00PM Lunch
III 1:00-2:15 PM Control Structures and Functions
  2:15-2:30 PM Coffee Break
IV 2:30-4:00 PM System Calls, Plotting, and iPython Notebooks



Instructors:

Jeff de Wet (JdW)
Jeff Kidd (JK)

Assistants:

Ryan Welch (RW)


I) Intro to Python and Programming Concepts [1:15 hr] JK & JdW

  • What is Python? What is programming?
  • Setup and execution of simple scripts
  • Data input and output

—- Coffee Break [15 mins] —

II) Programming Concepts, Variables, and Data Structures [1:30 hr] JdW (Handout)

  • Concepts in the Python language
  • Variables and data structures

—- Lunch Break [1 hr] —

III) Control Structures and Functions [1.15 hr] JdW (iPython Notebook)

  • Control structures and loops
  • Functions

—- Coffee Break [15 mins] —

IV) System Calls, Plotting, and iPython Notebooks [1.30 hr] BG & HJ

  • Calling external programs
  • Plotting using matplotlib and other utilities
  • Demonstration of iPython notebooks

—- End/Wrap-Up —


Reference material

Class Handout

Python Referene Commands and Glossary
Python Referene from Software Carpentry
Matplotlib Gallery iPython Notebooks