Introductory Programming for Life Sciences module (BS21010)

​​Gain practical Python skills for the life sciences. Learn topics like the fundamentals of program design and using the Biopython library for data analysis​

Credits
20
Module code
BS21010
Level
2
Semester
Semester 1
School
School of Life Sciences
Discipline
DArcy Thompson Unit

​​Data in the life sciences is growing at an extraordinary rate. The ability to write programs to analyse it is an increasingly valuable skill.

​This module gives you a practical grounding in Python 3. This is one of the most widely used programming languages in scientific computing and bioinformatics.

​You will work through the core elements of programming, from

  • ​program design
  • ​variables and control statements
  • ​functions
  • ​data structures
  • ​input/output operations

​You will also learn to work with the Biopython library. This provides tools for representing and analysing biological entities. 

​What you will learn

​In this module, you will:

  • ​develop a practical understanding of programming using Python 3, with a focus on life sciences applications
  • ​build the skills to write Python scripts for problem solving and data analysis beyond this module

​By the end of this module, you will be able to:

  • ​use a Python development environment (we currently use VSCode). You will also be able to explain the structure of well-designed programs
  • ​use key elements of the Biopython library for representing and working with biological entities
  • ​write and execute Python scripts. You will be able to use techniques like variables, if-then logic, loops, functions, lists, dictionaries, strings and file input/output
  • ​develop well-structured Python scripts to solve practical problems in the life sciences​

Assignments / assessment

  • ​​Programming portfolio (40%)
    • ​You will prepare a portfolio of scripts to show your understanding of key concepts in Python programming. This will be due mid semester.
  • ​In-class test (10%)
    • ​This will be a quick check of your understanding of syntax and detail in programming. This will also be due mid semester
  • ​Project report (50%)
    • ​You will prepare a programme useful for a scientist as part of a small group. This report describing the design and function of the programme is due at the end of semester. 

​This module does not have a final exam.​

Teaching methods / timetable

​​Weeks 1 to 8 contain short lectures. These are coupled with hands-on workshops in dedicated IT suites 

​Weeks 9 to 11 are workshops for working on your group project with staff support​

​​This module is not available if you have already taken EG21007

Courses

This module is available on the following courses: