Introduction to scientific computing

Guysen (GIGA meeting rooms)


GIGA meeting rooms


Course presentation


The modern world is ever more dependent on computer science and information technology advances. Especially in life science in recent years, exponentially growing amounts of biological information have been obtained and deposited in various databases. The predominant source – but not only – of this data is “high-throughput” experimentation, involving simultaneous execution of hundreds or thousands of experiments. A comprehensive understanding of biological phenomena can be achieved only through the integration of all available biological information and different data analysis tools and applications. It becomes crucial for modern scientists to acquire skills that will enable them to efficiently deal with this “data explosion”. It is not surprising that scientists with strong computer skills fare better in their position and research. This course aims to provide learners with the basic notions underlying computer science as necessary for biomedical science. The focus of this course in on computer architecture, scientific computing and basic programming.

Aim of the course

To provide participants with basic knowledge on computer architecture, available storage and computing resources, good IT practices, and some programming skills in MATLAB.

By the end of the course, the participants should:

  • understand personal computer & cluster architecture along with mass-storage, and their usage;
  • be acquainted with the available IT resources and people incharge at the GIGA/ULiège IT infrastructure;
  • be aware some principles of good programming practice;
  • know about the main operational systems & programming languages;
  • write basic scripts and functions in MATLAB.

Matlab/Octave programming

Teaching  resources

This will be the main MOOC about MATLAB programming:


  • On the 1st, 2nd and 3rd afternoon, we will broadly introduce the topics to be studied on the MOOC and in the book chapters (PDF files to be provided on site) for the following week. A list of exercises to be completed in pairs will also be provided.
  • On the 2nd, 3rd and 4th afternoon, we will debrief the online course, answer the questions regarding the theory, and solve the exercises that created most difficulties.

The list of chapters to read, videos to watch and exercises are provided in the main time table.


Target group

PhD candidate, postdoctoral researchers and PI’s. 
Course is limited to 15 participants.

Duration of the course and workload

4 days: October Thursday 6, then Monday 10, 17, and 24.
In total, 32 hours + online classes.


For the practical and programming sessions:

The bioinformatics team wiki provides practical information about the mass-storage and cluster, including good practice recommendation and how to connect. Do not hesitate to contact them if you don't have access or are not sure you have access to the GIGA mass storage.

IT requirements: at the very least make sure you have your 'u' or 's' account (preferably the former) officially registered as part of the GIGA. You can check this with Gaëlle Massart from the GIGA admin.

Organization of the course

The course uses “blended teaching”, i.e. relies on a mixture of in-person lectures & meetings and web-based classes:

  • 4 days, over the course of 4 weeks, for in-person teaching with
    • in the morning, background and more theoretical lectures;
    • in the afternoon, explanations and demo-ing for the practical parts.
  • the remaining 3 weeks, with on line programming courses and exercises to solve, plus extra-lectures on topics covered in-person (when available).

Some of the lectures were recorded in October 2020 and are available here.

Speakers & Contributors

in alphabetical order:

  • Mohamed Bahri
  • Martin Grignard
  • Gregory Hammad
  • Arnaud Lavergne
  • Alice Mayer
  • Christophe Phillips
  • Pierre-François Pirlet
  • David Stern
  • Yves Wesche

Support resources

Additional resources & extra lectures

Scientific computing, IT & Linux:

Reproducibility & reliability, QA & QC in software, and Open Source Software

Git, GitHub, Gitlab