2023-2024 / INFO0953-1

Scripting interfaces for biological software and databases

Duration

20h Th, 50h Mon. WS

Number of credits

 Master in bio-informatics and modelling (120 ECTS)8 crédits 

Lecturer

Denis Baurain, Pierre Tocquin

Coordinator

Denis Baurain

Language(s) of instruction

English language

Organisation and examination

Teaching in the first semester, review in January

Schedule

Schedule online

Units courses prerequisite and corequisite

Prerequisite or corequisite units are presented within each program

Learning unit contents

[UPDATED IN 2023] This course teaches programming in the Perl language and the creation and use of relational databases, in the context of bioinformatics applications.

1. Modern Perl

  • Variables (Scalars, Arrays, Hashes)
  • Operators, Boolean expressions and Control flow
  • Input/output
  • Regular expressions
  • One-liners
  • Functions
  • References and Nested data structures
  • Modules and Unit tests
  • Best of CPAN
  • Idiomatic Perl - TIMTOWTDI
2. Databases & SQL

General concepts and benefits of structuring data

Database structure modelling

  • The Entity-Association Model
  • The relational model
  • Normalization
  • Generation of a relational diagram
Creation and manipulation of a database, the SQL language

  • From the model to the physical structure, the Data Definition Language (DDL)
  • Manipulate and query the database, the Data Modification Language (DML)
  • Simple queries
  • Complex queries

Learning outcomes of the learning unit

This course is the main programming course of the Master BIM. Along with other courses of this curriculum, it aims to ensure that students are able to use computers as scientific instruments. More specifically, they will have been trained for the following purposes:

1. Experimental design

  • how to choose appropriate controls
  • how to think in a statistical framework
2. Conducting experiments

  • how to run large series of analyzes
  • how to harness the power of grid computing
3. Interpretation of results

  • how to automate the analysis of output files
  • how to generate informative but nice looking graphs
  • how to draw statistically sound conclusions
4. Documentation and archiving

  • how to document experimental protocols
  • how to reorganize a series of past analyzes
  • how to manage multiple versions of the data sets, of the required programs and of the generated results

Prerequisite knowledge and skills

This course requires no prior knowledge in computer programming, but it is nevertheless based on the courses in Genomics [GENE0003-1], Bioinformatics [BIOL0008-1] and the introduction to the Linux environment and the command line [INFO0960] of the Master BBMC and Master BIM.

Planned learning activities and teaching methods

  • brief theoretical lectures
  • challenges to solve
  • computer practicals
  • self-learning (textbooks and online tutorials)

Mode of delivery (face to face, distance learning, hybrid learning)

This course is mostly face-to-face but as a problem-oriented course, it will require that students work also outside of the classroom.

Recommended or required readings

Hard copies of course materials will be distributed in class. Recommended reference books will be suggested in these course materials.

Exam(s) in session

Any session

- In-person

written exam ( open-ended questions )


Additional information:

The deux parts of the course, Perl and Databases, are evaluated separately, each by a written exam, face-to-face. The Perl and Databases grades represent 70% and 30% of the final grade, respectively.

1.Perl

The evaluation of this course will be based both on the work done during the academic year (homework: 25%), on an open book exam where an integrative problem will have to be solved using shell commands and a Perl program (75%).

2. Databases

The evaluation will consist of the realization of an integrative problem. The exam will be open book.

 

Work placement(s)

Organisational remarks and main changes to the course

WARNING: Each M-BIM student must have a laptop on which one can install the Linux operating system (e.g., Ubuntu LTS). Virtual machines running in VirtualBox are not adequate solutions, but WSL2 on a recent version of Windows is possible, as is dual-boot with Windows.

https://ubuntu.com/tutorials/install-ubuntu-on-wsl2-on-windows-11-with-gui-support

Contacts

Prof. Denis Baurain
Institut de Botanique B22 (P70)
denis.baurain@uliege.be

Dr. Pierre Tocquin
Institut de Botanique B22 (P70)
ptocquin@uliege.be

Mrs Rosa Gago
rgago@uliege.be

Association of one or more MOOCs