Programmation sous Linux pour les biologistes

Programmation sous Linux pour les biologistes

Établissement de formation

Faculté des sciences
Département d'éthologie

Enseignant(s) :

Dávid Jónás

Date de début

7 septembre 2026

Date de fin

11 décembre 2026

Domaine d'étude

Champ prioritaire CHARM

Niveau d'études

Charge de travail, ECTS

3

Brève description

Dans ce cours, les étudiants découvriront les principes fondamentaux des systèmes d'exploitation Linux, l'accès à distance aux serveurs, les bases de la programmation en Bash et la programmation en général. Ce cours est axé sur la pratique et met l'accent sur le développement de compétences de base en logique de programmation, l'analyse de données en ligne de commande, l'efficacité et une éthique de travail appropriée sur les serveurs partagés (gestion des ressources serveur).
Un projet permettra aux étudiants d'apprendre à se répartir la charge de travail et à optimiser les résultats dans le cadre d'un projet de bio-informatique ou de programmation.

Description complète

Dans ce cours, les étudiants apprendront le fonctionnement des systèmes d'exploitation Linux/UNIX, comprendront les avantages et les inconvénients de ces systèmes, acquerront des compétences de base en programmation et développeront des compétences fondamentales en logique de programmation.
À l’issue du cours, les étudiants seront capables de contrôler des systèmes Linux/UNIX à l’aide d’outils en ligne de commande, d’exécuter des logiciels depuis la ligne de commande et de résoudre des problèmes de bioinformatique depuis la ligne de commande. Les étudiants sauront également comment accéder à des serveurs distants sur un réseau, transférer des fichiers entre ordinateurs/serveurs et exécuter des commandes sur un serveur distant fonctionnant sous un système d’exploitation Linux/UNIX. Les étudiants seront capables de gérer et d’analyser des données directement à l’aide du système Linux, d’estimer les besoins en ressources pour des tâches de calcul et de surveiller l’utilisation des ressources par ces tâches.
Les étudiants apprendront à travailler efficacement et à utiliser de manière responsable les ressources de grands serveurs. L’accent sera mis sur une éthique de travail appropriée : les étudiants apprendront à surveiller leur utilisation des ressources du serveur et à utiliser des serveurs partagés par plusieurs utilisateurs, sans perturber le travail ou les recherches des autres utilisateurs.

Thèmes :
I. Notions de base du langage de programmation Bash, commandes de base
II. Écriture de scripts Bash
III. Types de variables Bash et leur utilisation ; variables intégrées
IV. Conditions Bash, opérateurs logiques
V. Logique de programmation I.
VI. Exercices pratiques I.
VII. Boucles Bash et contrôle des boucles
VIII. Arguments de ligne de commande et leur utilisation dans les scripts
IX. Logique de programmation II.
X. Exercices pratiques II.
XI. Surveillance de l'utilisation des ressources, gestion des ressources
XII. Pratique responsable des bioinformaticiens sur les serveurs
+ Travaux de projet à réaliser en autonomie au sein de groupes.

Évaluation
Les étudiants passeront un colloque pendant la période d'examens. Le colloque comprendra deux parties : une épreuve théorique et un exercice pratique. L'épreuve théorique pourra comporter à la fois des questions à choix multiples et des questions à développement. L'exercice pratique consistera en des exercices de programmation que les étudiants devront résoudre de manière autonome.

Acquis d'apprentissage

À l'issue de cette formation, le participant sera capable de concevoir et de mettre en œuvre des pipelines d'analyse bioinformatique de base dans un environnement Linux, ainsi que de surveiller l'utilisation des ressources de son propre serveur.

Exigences du cours

Ce cours nécessite que les étudiants disposent d'un ordinateur sur lequel certains logiciels doivent être installés, ce qui leur permettra de se connecter au serveur qui sera utilisé pendant le cours. Le formateur apportera son aide pour l'installation de ces logiciels.
Aucune connaissance en programmation n'est requise.

Places disponibles

15

Ouvrages du cours (obligatoires ou recommandés) :

Ouvrages du cours (obligatoires ou recommandés) : Supports de cours (diapositives de présentation, notes de cours)
Recommandé : Machtelt Garrels : Guide Bash pour débutants (disponible en ligne à l'adresse : https://tldp.org/LDP/Bash-Beginners-Guide/html/)

Activités pédagogiques prévues et méthodes d'enseignement :

Cours magistral : 45 minutes
Travaux pratiques : 45 minutes
Projet : les étudiants devront réaliser un projet en groupe au cours de la seconde moitié du cours. Ce projet consistera notamment à analyser différents types de données génétiques (exemple de projet : écrire un code Bash permettant d’identifier tous les cadres de lecture ouverts sur une séquence d’ADN fournie).
Permanences : des heures de permanence supplémentaires seront proposées à la demande des étudiants.

Langue

Méthode d'évaluation

Certification finale

Relevé de notes

Date d'évaluation

14 décembre 2026

Modalité

Système de gestion de l'apprentissage actuellement utilisé

Microsoft Teams, Moodle

Nombre d'heures de cours par semaine pour l'étudiant :

2

Jour et heure précis de cours hebdomadaires

Cours magistraux : les lundis, de 13 h à 14 h (CET) ; travaux pratiques : les lundis, de 14 h à 15 h (CET)

Fuseau horaire