MSc Bioinformatics and Systems Biology

Year of entry: 2025

Course unit details:
Programming Skills

Course unit fact file
Unit code BIOL60201
Credit rating 15
Unit level FHEQ level 7 – master's degree or fourth year of an integrated master's degree
Teaching period(s) Semester 1
Available as a free choice unit? No

Overview

This unit aims to introduce basic programming skills to the non-expert, using the Python programming language. Using an online environment, accessible directly from any browser, we will introduce the basics of Python, which is a powerful scripting language that is now ubiquitous throughout bioinformatics and scientific computing. You will test your developing skills on series of assessed project including one that aims to develop a "pipeline" of simple Python programs to address particular problems in biology. Practical sessions are coupled to all the lectures where you will be able to test out your new skills, tackle exercises, and work on your project code where demonstrators and lecturers are able to help you design and debug your code. 

Aims

This unit aim is to:  

Develop relevant programming skills using the Python programming language to solve biological data handling problems.  

Learning outcomes

Students will become familiar with use of a range of programming skills useful for writing bioinformatics software and developing biological data analysis solutions in Python.  

They will gain experience of writing usable bioinformatic tools to solve tasks relevant to biological problems.  

Students will be aware of issues of usability and will know how to deliver a bioinformatics project with a specific brief.     

Syllabus

Introduction to CoCalc as an online learning environment.

Introduction to the Python programming language. This will cover language syntax essentials, variables, conditional and loops, file input and output, functions, regular expressions and modules. All will be illustrated with examples, mostly centred on biological data types.  

 

Introduction to the Unix environment and command line driven computing, including basic commands for files, folders and management, pipes and redirection.  

Development of individual standalone programs, that can also be run as a pipeline in a project group setting.  

Teaching and learning methods

Lectures: 12 hours.

Practicals: 24 hours.  

Online question and answer sessions: 12 hours.

Project work: three programming projects will be completed during Semester 1, in the practical classes and in the students' own time.  

Employability skills

Problem solving
The projects will solve problems in genomics by developing code in notebooks, executable scripts and pipelines.
Written communication
Students will complete written projects. For one of the projects, students will be asked to provide a written report describing a computer programme.

Assessment methods

Three projects will be assessed with the following weighting based on complexity:

20% project 1, 30% project 2 and 50% project 3. 

Feedback methods

Practical sessions are coupled to lectures where you will be able to test out your new skills, tackle exercises and work on your project code with guidance and verbal feedback from demonstrators and lecturers. 

Recommended reading

Learning Python, Second Edition, Lutz and Ascher. O'Reilly Media ISBN: 978- 1-4493-5573-9 | ISBN 10: 1-4493-5573-0.  

Python for Biologists: A complete programming course for beginners. Martin Jones. ISBN-10: 1492346136 - ISBN-13: 978-1492346135 - better for complete beginners.   

Study hours

Scheduled activity hours
Lectures 12
Practical classes & workshops 24
Tutorials 12
Independent study hours
Independent study 102

Teaching staff

Staff member Role
Darren Plant Unit coordinator
John Bowes Unit coordinator

Return to course details