MSc Bioinformatics and Systems Biology / Course details

Year of entry: 2024

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, including the Unix environment, command line driven computing and 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 a particular problem in genomics/proteomics. Labs 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 aims to: • Develop relevant programming skills for, including the Unix environment. • Develop skills in writing programs to solve biological data handling problems, both as individuals and as a group.

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 software for individual tasks, and working in small groups to link together programs to form an analysis pipeline. • 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 Unix environment and command line driven computing, including basic commands for files, folders and management, pipes and redirection. • 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. • Development of individual standalone programs, that can also be run as a pipeline in a project group setting. Code, coupled with a short group report are assessed as one of the projects. • Labs 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 from demonstrators and lecturers.

Teaching and learning methods

• Lectures: 12 hours.• Practicals: 24 hours. • Online tutorials: 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

Group/team working
As part of one project, the students will work in groups to write a series of computer programmes, ensuring that the inputs/outputs of each programme talk to each other and that the final step produces results that address the overall brief.
Problem solving
The first project the students will solve a problem in genomics/proteomics by developing a ¿pipeline¿ of simple Python programmes.
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 short project reports, software and demonstration of software resulting from the second project. 20% project 1, 30% project 2 and 50% project 3 (10% group component).

Feedback methods

Detailed written feedback on projects and reports is provided for each student and group, as well as verbal feedback during labs on scripts and programs as they are written.

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 10
Practical classes & workshops 22
Tutorials 10
Independent study hours
Independent study 108

Teaching staff

Staff member Role
Darren Plant Unit coordinator
John Bowes Unit coordinator

Return to course details