Retour sur les premiers cours du Master 2 de BioInformatique

Déjà 2 semaines depuis la rentrée. Avant de commencer ma mission professionnelle lundi, voici un bilan des différentes unités d'enseignement auxquelles j'ai assisté.

Système

Ce cours présentait brièvement les différents éléments qui constituent un ordinateur, le matériel, avant de passer au logiciel, en passant par l'écriture d'un nombre en mode binaire, comme dans un octet. Nous avons vu les commandes de base de Linux / UNIX pour manipuler les dossiers et les fichiers, ainsi que les permissions qui définissent l'accès aux dossiers et fichiers par les différents utilisateurs. Je connaissais déjà ces notions mais ces rappels n'ont pas fait de mal.

Ce cours m'a permis de découvrir AWK et le langage LaTeX (à prononcer latèque).

AWK est un utilitaire présent dans Linux qui utilise des requêtes similaires à celles du SQL, mais pour interroger des fichiers de texte et non une base de données. À partir d'un fichier texte où chaque ligne contient des colonnes, AWK peut effectuer des opérations en sélectionnant les lignes dont une colonne répond à un critère choisi. Par exemple, à partir d'un fichier texte contenant les notes des élèves :

Alain;15
Georges;16
Robert;12
Georges;11

AWK peut calculer la moyenne des notes des étudiants prénommés "Georges". C'est un exemple très simple, mais AWK est capable de bien plus grâce à une syntaxe surprenante de prime abord mais très puissante.

J'avais utilisé le langage LaTeX au cours de mon stage de Master 1 mais je m'étais contenté de modifier des fichiers fournis par un logiciel, sans vraiment comprendre leur architecture ni les possibilités de ce langage. Grâce à ce cours, j'ai découvert comment créer un document LaTeX et l'enrichir : insérer des images, générer une table de matières et un graphique, afficher une formule mathématique, etc.

Algorithmique et Langage C

Bien que je programme depuis plusieurs années, je n'ai pas de méthode précise pour passer d'un problème donné à sa solution informatique. Je commence le plus souvent par coder, quitte à devoir corriger des défauts de conception plus tard. L'objectif de ce cours était d'apprendre à penser un programme pour qu'il réponde le plus efficacement à un problème. Nous avons vu comment structurer nos idées pour définir le plan du code. En théorie, le temps passé à construire le schéma de l'application réduit d'autant le travail de programmation.

Pour passer à la pratique, nous avons utilisé le langage C que je n'avais encore jamais abordé. L'intérêt de ce langage dans le cursus de BioInformatique est qu'il est strict, il permet d'apprendre à écrire du code de façon rigoureuse : indenter son code, le commenter, déclarer ses variables, séparer les fonctions dans des fichiers dédiés, etc.

Soutenances de M2.2

Cette semaine s'est terminée par les présentations des stages des étudiants de l'année précédente, qui viennent de commencer leur deuxième année de Master 2. Les interventions furent intéressantes. Les sujets des différents étudiants sont très variés, tout autant que les technologies utilisées dans les différentes structures.