22 - 23 May 2024
Application deadline:
03 May 2024
Cancellation deadline:
08 May 2024
Thomas Junier, Robin Engler
Programming and Computing Techniques
Academic: 200 CHF
For-profit: 1000 CHF
0.5 ECTS credits

No future instance of this course is planned yet


Scripting allows shell users to automate repetitive tasks, thus improving reproducibility, reducing the risk of errors, freeing time, and avoiding boredom.

Bioinformatics analysis pipelines may involve dozens or hundreds of steps that are each carried out by different command-line programs: assembling these into scripts allows users to treat whole pipelines as if they were ordinary shell commands.


This course targets users who have basic knowledge of interactive shell use (such as taught in the SIB's First Steps with UNIX in Life Sciences) and are interested in moving from interactive to automated tasks.

Learning objectives

At the end of the course, the participants should be able to:

  • Explain how Bash processes input, distinguishing in particular between the different types of expansion and their purposes
  • Differentiate between the various syntactic constructs of Bash, identifying their purposes and how they are used
  • Integrate knowledge of tests, conditionals, loops, functions, as well as the various forms of expansion and other features of Bash to create a script that solves a given problem.


Knowledge / competencies

This course is designed for intermediate level users. They are expected to know how to use a Unix shell interactively, i.e., moving around the filesystem, understanding pathnames, lauching programs that work on data, redirecting output to files or other programs, etc. They are also expected to have some familiarity with basic shell utilities like grep, cut, tr, etc (although no expert skills are required). Notions of programming (in any language) will be useful, but not essential. Finally, some proficiency with a text editor is a must.

More details here


A laptop with a command line terminal and a recent version of Bash (4.0 or newer should be ok) installed. The alternative for Windows users is to activate WSL/WSL2.


Registration fees for academics are 200 CHF and 1000 CHF for for-profit companies.

While participants are registered on a first come, first serve basis, exceptions may be made to ensure diversity and equity, which may increase the time before your registration is confirmed.

Applications will close as soon as the places will be filled up, until 03/05/2024. Deadline for free-of-charge cancellation is set to 08/05/2024. Cancellation after this date will not be reimbursed.

You will be informed by email of your registration confirmation. Upon reception of the confirmation email, participants will be asked to confirm attendance by paying the fees within 5 days.

Venue and Time

The course will take place at the University of Lausanne.

It will start at 9:00 CET and end around 17:00 CET.

Precise information will be provided to the participants before the course.

Additional information

Coordination: Diana Marek, SIB Training group

We will recommend 0.5 ECTS credits for this course (given a passed exam at the end of the course).

You are welcome to register to the SIB courses mailing list to be informed of all future courses and workshops, as well as all important deadlines using the form here.

Please note that participation in SIB courses is subject to our general conditions.

SIB abides by the ELIXIR Code of Conduct. Participants of SIB courses are also required to abide by the same code.

For more information, please contact training@sib.swiss.