Histoire du parc informatique

Zoo maritime du Bas-Saint-Laurent. Comment trois époques et sept prestataires ont bâti le bordel actuel, et pourquoi Docker en est la seule sortie viable.

Scénario du TP final - Dockers et scripts

Trois époques d'investissement

Comment on en est arrivé là

01

2010 - 2015

L'âge doré, l'ouverture

À l'ouverture du zoo, l'institution dispose d'un budget conséquent. On achète du matériel sérieux : tours bureau pleines pour l'administration, un PC complet pour la borne d'accueil, des laptops Linux Mint pour la salle éducative. Un studio créatif local livre le site vitrine en PHP. Les premiers stagiaires Cégep en informatique produisent des pages HTML simples pour les annonces. Les bénévoles artistes du dimanche fabriquent de petits jeux interactifs avec p5.js pour les enfants.

Tours PC + Ubuntu 18.04 PHP / FlatPress HTML statique Jeux p5.js
02

2016 - 2021

Le resserrement budgétaire

Les subventions diminuent. On ne remplace plus le matériel, on l'entretient avec les moyens du bord. Une nouvelle génération de biologistes arrive, autodidactes en programmation. Ils écrivent leurs propres scripts Python pour traiter les observations, calculer les corridors de migration, analyser les données de capteurs. Les plus chevronnés bâtissent même des outils d'analyse en C++ avec Qt pour le poste de laboratoire. Les stagiaires scientifiques de l'UQAR utilisent ces outils, en demandent toujours plus, parfois en bricolent eux-mêmes. Le vieux site web reste en place, on n'y touche plus de peur que ça casse.

Aucun nouveau matériel Scripts Python C++ / Qt Documentation manquante
03

2022 - aujourd'hui

Le virage muséologique par écosystèmes

Une nouvelle direction scientifique réoriente le zoo vers un concept hybride : musée par parcours croisé avec biodôme par écosystème. Quatre pavillons écosystèmes ouvrent successivement (marin, forestier, pollinisateurs et jardins, oiseaux migrateurs). Pour ouvrir vite et sans casser la banque, on adopte la stratégie petit matériel ARM bon marché : Raspberry Pi et mini-PC dans chaque pavillon, OS Linux léger. Une agence web moderne est mandatée pour développer les apps interactives en React, Vite et Next.js qui tourneront sur ces bornes.

Raspberry Pi + Alpine + ARM Next.js / React / Vite Mini-PC industriels durcis Stratégie économique

Aujourd'hui - l'équipe TI hérite du tout

Deux générations de matériel, cinq stacks de prestataires, sept distributions Linux différentes, aucune documentation centralisée. Aucun budget pour uniformiser. La seule sortie viable est une couche d'abstraction commune : Docker. C'est précisément ce qu'on apprend à mettre en place dans ce TP final.

Les personnages du bordel

Sept profils, sept stacks, zéro coordination

Le studio créatif local

Âge doré · 2010-2015

Artisan web vétéran, fier de son savoir-faire. Aime le PHP qui tourne sur n'importe quel hébergement. A livré le site vitrine principal et plusieurs sites évènementiels.

Livre du PHP / FlatPress
debut

Stagiaires débutants en informatique

Âge doré · 2010-2015

Tout premiers stagiaires, encore en initiation au web. Découvrent HTML et CSS pendant leur stage. Faisaient des pages simples pour les annonces et infos pratiques. Boutons mal alignés, fautes d'orthographe charmantes, code copié-collé de tutoriels Geocities.

Livre du HTML statique

Bénévoles artistes

Âge doré · 2010-2015

Créatifs du dimanche, peintres et illustrateurs. Ont fabriqué de petits jeux interactifs avec p5.js pour amuser les enfants dans la salle éducative. Code coloré, peu structuré, charmant.

Livre des jeux p5.js

Biologistes autodidactes

Resserrement · 2016-2021

Scientifiques de terrain, bottes boueuses, ont appris à coder tout seuls pour résoudre leurs propres problèmes. Scripts Python pour traiter les observations et les données de capteurs. Quelques-uns plus chevronnés ont bâti des outils d'analyse en C++ avec Qt pour le poste de laboratoire (microscopie, instrumentation).

Livre du Python et du C++ / Qt
UQAR

Stagiaires scientifiques UQAR

Resserrement · 2016-2021

Étudiants en biologie, blouse blanche le matin, bottes l'après-midi. Utilisent les outils Python des biologistes, en demandent toujours plus, en bricolent parfois eux-mêmes. Pas de coordination.

Bricolent du Python
REACT

L'agence web moderne

Virage écosystèmes · 2022+

Jeunes pros urbains, MacBook et café spécialité, slogans startup. Livrent des apps en Next.js, React, Vite. Build moderne, CI/CD, lighthouse 100. Mais ne savent pas tester sur Raspberry Pi ARM.

Livre du Next.js / React

L'équipe TI (vous)

Aujourd'hui

Casque audio en permanence, plusieurs cafés à la fois. Hérite de tout : sept stacks, sept distros Linux, aucune documentation. Mission : déployer le tout uniformément, sauvegarder les données, surveiller les services.

Doit faire tourner le bordel

Cohérences obtenues "gratuitement"

Chaque techno présente dans le parc est expliquée par sa génération d'origine. Rien d'aléatoire, tout est conséquence narrative.

Tours PC + Ubuntu 18.04 / Fedora

->

matériel acheté à l'âge d'or, qu'on ne remplace plus faute de budget

PHP / FlatPress

->

livraison du studio créatif des années 2010, techno mature et stable

Scripts Python (sans framework web)

->

outils écrits par les biologistes autodidactes pour traiter données et observations

C++ avec Qt

->

outils de laboratoire (microscopie, instrumentation) bâtis par les biologistes plus chevronnés

Raspberry Pi + Alpine + ARM

->

stratégie économique de la phase virage écosystèmes

Next.js / React / Vite

->

livraison récente de l'agence web moderne mandatée pour les bornes

HTML statique + p5.js

->

bénévoles et stagiaires d'autrefois, code encore en service

"

Principe directeur de la direction scientifique

On ne peut pas se permettre, dans une installation où se croisent la rigueur scientifique et la vulgarisation grand public, de tuer les élans créatifs en imposant des langages ou des frameworks uniformes. On souhaite accueillir la diversité.

La sortie de crise

Docker comme couche d'abstraction commune

L'équipe TI ne peut ni uniformiser le matériel (pas de budget) ni demander aux anciens prestataires de refaire leur travail dans une seule techno (cela tuerait la diversité que la direction veut préserver). La seule voie réaliste, qui respecte à la fois les contraintes budgétaires et le principe directeur d'accueil de la diversité : emballer chaque livraison dans un container Docker, et laisser les bornes hétérogènes exécuter ces containers sans savoir ce qu'il y a dedans. C'est exactement ce que ce TP final vous apprend à faire.