skip to primary navigationskip to content
 

An introduction to solving biological problems with Perl

 

Description

This course provides an introduction to programming using Perl and it is aimed at those new to programming. By the end of this course, attendees should be able to write simple Perl programs to handle biological data and to understand more complex Perl programs written by others.

 

Trainers

John Davey, University of Cambridge

Martin Hunt, Sanger Institute

Mareike Herzog, Sanger Institute

Adam Reid

James Morris

 

Audience and Prerequisites

  • No prior programming experience is required, but those attending should be able to use a plain text editor
  • The course is delivered in a Unix environment. A very basic knowledge of UNIX would be an advantage, but nothing will be assumed and extremely little will be required
  • Graduate students, Postdocs and Staff members from the University of Cambridge, Affiliated Institutions and other external Institutions or individuals

 

Syllabus, Tools and Resources

During this course you will learn about:

  • The basics of the Perl programming language, including how to store data in Perl’s standard data structures such as arrays and hashes, and how to process data using loops, functions, and many of Perl’s built in operators.
  • To write and run your own Perl scripts and how to pass options and files to them.
  • Sorting, regular expressions, references and multi-dimensional data structures.

 

Learning Objectives

After this course you should be able to:

  • Write simple Perl programs to process biological data
  • Understand Perl programs written by others
  • Use core Perl modules in your own programs 
  • Know how to develop your skills in Perl after the course

 

Links

Book Here

Course materials

Course Exercises

Perl Documentation

Perl Website

Strawberry Perl for Windows

 

Timetable

TaskSubject
Day 1
Task Set 1 Perl script skeleton
Task Set 2 Values and Variables
Task Set 3 Arrays
Task Set 4 Hashes
Task Set 5 Loops
Task Set 6 'If' Statements and Loop Controls
Task Set 7 Introduction to Functions
Task Set 8 String Functions and Operators
Task Set 9 Array and Hash Operators
Day 2
Task Set 10 Core functions, modules and subroutines
Task Set 11 User/Command-line input
Task Set 12 Sanity checks and testing
Task Set 13 Files and file handles
Task Set 14 Sorting with arrays and hashes
Task Set 15 Regular expressions
Task Set 16

References and multidimensional data structures

Filed under: