Tom Daluzeau

Ce que j’apprends.

Tout est rangé par domaine. Dans chaque domaine, des parcours ; dans chaque parcours, des leçons courtes avec un entraînement et des cartes Anki.

Bachelor DevOps · ESGI

Tout ce que j’apprends à l’ESGI, matière par matière : mes cours réécrits avec mes mots, avec un entraînement et des cartes Anki.

10 parcours · 47 leçons

Intelligence artificielle

Comment fonctionnent les outils d’IA que j’utilise tous les jours, hors programme de l’école.

1 parcours · 1 leçon

Méthode de travail

Apprendre, décider, mener un projet, s’organiser : ce domaine se lit en e-books, avec un extrait gratuit pour chacun.

Tous les e-books →

Toutes les leçons

  1. Types et conversions : str, int, float, bool, None

    Reconnaître le type d'une valeur, savoir quand convertir avec int() et str(), et ne plus confondre « vide », « zéro » et « pas de valeur ».

    Python12 questions12 cartes
  2. Conditions : if, elif, else

    Écrire et surtout lire une condition : comparaisons, comparaisons enchaînées, and / or / not, et savoir quelle branche d'un if / elif / else s'exécute.

    Python12 questions7 cartes
  3. Collections : list, tuple, dict, set

    Choisir entre liste, tuple, dictionnaire et ensemble, lire une clé de dictionnaire de la bonne façon (crochets, get ou point) et parcourir une collection avec for, in et items().

    Python12 questions10 cartes
  4. Fonctions et chaînes : return, f-strings, méthodes de str

    Écrire une fonction qui renvoie un résultat, distinguer return de print, utiliser les f-strings et le déballage, et ne plus se faire piéger par les méthodes de str qui renvoient une nouvelle chaîne.

    Python12 questions9 cartes
  5. Exceptions : lire un traceback, try / except / else / finally

    Lire un traceback dans le bon sens, attraper une exception avec try / except, savoir quand passent else et finally, et ranger les except du plus précis au plus général.

    Python12 questions10 cartes
  6. Fichiers : with open, modes, pathlib

    Ouvrir un fichier avec with open, choisir le bon mode (r, w, a), le lire ligne par ligne en utf-8, construire un chemin avec pathlib et attraper un fichier absent.

    Python · fichiers12 questions8 cartes
  7. JSON : load, dump et fichier en erreur

    Passer d'un fichier JSON à des listes et dictionnaires Python et inversement, choisir entre load/dump et loads/dumps, et arrêter proprement le script avec sys.exit quand le fichier est inutilisable.

    Python · fichiers12 questions8 cartes
  8. CSV : reader, DictReader et lignes invalides

    Lire un CSV avec csv.reader ou csv.DictReader, régler newline, l'encodage et le séparateur, numéroter les lignes avec enumerate, sauter une ligne invalide avec continue et valider un champ avec re.search.

    Python · fichiers12 questions8 cartes
  9. Outil en ligne de commande : argparse, logging, codes de sortie

    Lire les arguments de la ligne de commande avec argparse, ranger le programme dans main(), écrire des messages de suivi avec logging et renvoyer le bon code de sortie (0, 1 ou 2) au shell.

    Python · fichiers12 questions8 cartes
  10. venv, pip et variables d'environnement

    Isoler les paquets d'un projet dans un venv, figer leurs versions dans requirements.txt, lire une variable d'environnement avec os.environ et savoir pourquoi un secret n'a rien à faire dans le code ni dans git.

    Python · système12 questions7 cartes
  11. Rapports datés, os.scandir et shutil

    Créer un dossier de rapports, nommer chaque rapport avec sa date pour qu'il se trie tout seul, lister un dossier avec os.scandir, calculer l'âge d'un fichier, puis copier, déplacer, archiver et supprimer avec shutil.

    Python · système12 questions8 cartes
  12. subprocess : lancer une commande depuis Python

    Lancer une commande avec subprocess.run et une liste d'arguments, lire son code de retour et sa sortie, transformer un échec en exception avec check=True, borner l'attente avec timeout, et adapter la commande au système avec platform.system et shutil.which.

    Python · système12 questions8 cartes
  13. Bilan du parc : log.log, max(key=) et code de sortie

    Journaliser chaque serveur au niveau qui correspond à son état avec log.log, trouver le pire état du parc avec max et key, et en déduire le code de sortie du programme : 0, 1 ou 2.

    Python · système12 questions7 cartes
  14. HTTP et requests.get : interroger /health

    Lire un code de statut HTTP, distinguer un serveur sain, en panne ou injoignable, et interroger une adresse avec requests.get : status_code, json(), text, elapsed et raise_for_status().

    Python · système12 questions7 cartes
  15. requests : timeout, exceptions et statut ok / degraded / down

    Mettre un timeout à chaque appel, reconnaître Timeout, ConnectionError, HTTPError et leur parent RequestException, ranger les except dans le bon ordre et classer un serveur en ok, degraded ou down.

    Python · système12 questions7 cartes
  16. Session et essais répétés : réessayer sans insister

    Réutiliser une connexion et des en-têtes avec requests.Session(), réessayer un appel raté avec une boucle for et time.sleep, doubler la pause à chaque essai, et savoir pourquoi on s'arrête après quelques essais.

    Python · système12 questions7 cartes
  17. API GitLab et webhook : token, pagination, alerte

    Appeler une API authentifiée avec un token placé dans un en-tête et lu dans os.environ, récupérer toutes les pages d'une liste, nettoyer un nom avec removeprefix, puis envoyer une alerte utile sur un webhook avec requests.post.

    Python · système12 questions7 cartes
  18. Les équipements du réseau : hub, switch, routeur

    Tu sais dire ce que fait chaque équipement, à quelle couche il travaille et quelle adresse il lit, et tu sais compter les domaines de collision et de diffusion.

    Réseau12 questions13 cartes
  19. Types de réseaux et modes de communication

    Tu sais classer un réseau par sa taille et son architecture, distinguer topologie physique et logique, et expliquer unicast, multicast, broadcast, mode connecté et non connecté.

    Réseau12 questions10 cartes
  20. Le modèle OSI : les 7 couches

    Tu sais réciter les 7 couches dans l'ordre, dire le rôle de chacune, et retrouver à quelle couche travaille un équipement ou un protocole.

    Réseau12 questions10 cartes
  21. Encapsulation, PDU et modèle TCP/IP

    Tu sais nommer les données à chaque couche, expliquer l'encapsulation avec les enveloppes, dire quelle adresse va dans quel en-tête et faire correspondre OSI et TCP/IP.

    Réseau12 questions12 cartes
  22. Sécurité : les piliers DIC et les grandes attaques

    Tu sais citer les trois piliers DIC, expliquer authentification et non-répudiation, reconnaître les grandes familles d'attaques et dire quel pilier chacune touche.

    Réseau · TP12 questions7 cartes
  23. Sous-réseaux : masque, CIDR et nombre magique

    Tu sais lire une adresse IPv4 et son masque, trouver l'adresse réseau, la diffusion et la plage d'hôtes, et découper un /24 en /27 ou en /26 avec la méthode du nombre magique.

    Réseau · TP12 questions7 cartes
  24. Hub, collisions et serveur DHCP

    Tu sais expliquer les collisions sur un hub, dire à quoi sert DHCP, réciter les 4 messages DORA, configurer un routeur Cisco en serveur DHCP et diagnostiquer une adresse en 169.254.

    Réseau · TP12 questions7 cartes
  25. VLAN, trunk, routage inter-VLAN et sécurité de port

    Tu sais créer un VLAN et y placer un port, monter un trunk 802.1Q, router entre VLAN avec un routeur et des sous-interfaces, situer VTP, et verrouiller un port avec port-security.

    Réseau · TP12 questions8 cartes
  26. HSRP : une passerelle de secours

    Tu sais expliquer pourquoi une seule passerelle est un point de panne unique, dire quel routeur devient actif, configurer HSRP sur deux routeurs Cisco et lire « show standby brief ».

    Réseau · TP12 questions7 cartes
  27. OSPF en zone unique et authentification MD5

    Tu sais dire quand utiliser le routage dynamique, calculer un masque générique, configurer OSPF en zone 0 sur un routeur Cisco, vérifier les voisins et les routes, puis protéger les échanges par un mot de passe haché en MD5.

    Réseau · TP12 questions7 cartes
  28. ACL : filtrer le trafic sur un routeur

    Tu sais lire une ACL ligne par ligne, dire si un paquet passe, choisir entre ACL standard et étendue, l'écrire, l'appliquer sur la bonne interface dans le bon sens et la placer au bon endroit du réseau.

    Réseau · TP12 questions8 cartes
  29. IPv6 : adresses, abréviations et configuration Cisco

    Tu sais expliquer pourquoi IPv6 existe, lire et abréger une adresse de 128 bits, reconnaître son type d'après ses premiers chiffres et configurer IPv6 sur un routeur Cisco.

    Réseau · TP12 questions7 cartes
  30. Noyau, espace utilisateur et processus

    Tu sais expliquer qui a le droit de toucher au matériel, d'où vient un kernel panic, et tu sais lister, surveiller et arrêter les processus d'un serveur.

    Linux11 questions9 cartes
  31. /proc, /sys, /dev : les dossiers où le noyau te parle

    Tu sais où lire l'état du noyau, des processus et du matériel, changer un réglage avec sysctl et le rendre permanent, et reconnaître un périphérique dans /dev.

    Linux12 questions12 cartes
  32. Le démarrage : de l'allumage à systemd

    Tu sais réciter les cinq étapes du démarrage, dire ce que fait chacune, modifier GRUB et l'initramfs sans rien casser, et trouver quel maillon a lâché quand un serveur ne démarre plus.

    Linux12 questions14 cartes
  33. systemd : unités et services

    Tu sais lire et écrire un fichier .service section par section, choisir le bon Type et le bon Restart, expliquer ce qu'est une cible, et distinguer une dépendance (Wants, Requires) d'un simple ordre de démarrage (After, Before).

    Linux12 questions8 cartes
  34. systemctl au quotidien

    Tu sais démarrer, arrêter, recharger et activer un service, faire la différence entre « maintenant » et « au démarrage », bloquer un service avec mask, et suivre une méthode pour dépanner un service qui refuse de démarrer.

    Linux12 questions8 cartes
  35. systemd : timers, sockets et drop-in

    Tu sais planifier une tâche avec un timer, expliquer l'activation par socket, dire où vivent les fichiers d'unité et lequel l'emporte, modifier une unité proprement avec un drop-in, et passer des variables d'environnement à un service.

    Linux12 questions8 cartes
  36. CPU : charge moyenne, utilisation et priorités

    Tu sais lire les trois nombres de uptime et les comparer au nombre de cœurs, lire la ligne CPU de top, dire si un processus est limité par le calcul ou par le disque, et régler sa priorité ou les cœurs qu'il a le droit d'utiliser.

    Linux · ressources12 questions8 cartes
  37. Mémoire : free, cache, swap et OOM killer

    Tu sais lire free -h sans te faire piéger par la colonne free, expliquer pourquoi le cache disque n'est pas de la mémoire perdue, régler vm.swappiness, et retrouver dans les journaux du noyau quel processus l'OOM killer a tué.

    Linux · ressources12 questions7 cartes
  38. Entrées/sorties, limites et cgroups

    Tu sais trouver le disque saturé et le processus qui le sature, choisir le bon outil pour chaque question, lire et régler les limites d'un utilisateur ou d'un processus, et plafonner la mémoire ou le CPU d'un service avec systemd.

    Linux · ressources12 questions8 cartes
  39. LVM : des volumes qu'on agrandit sans tout casser

    Tu sais expliquer les trois étages PV, VG et LV, créer un volume logique, l'agrandir avec son système de fichiers, ajouter un disque au groupe et dire à quoi sert un instantané.

    Linux · ressources12 questions8 cartes
  40. RAID logiciel avec mdadm

    Tu sais choisir un niveau de RAID, créer une grappe avec mdadm, lire son état dans /proc/mdstat et remplacer un disque tombé en panne sans arrêter le serveur.

    Linux · ressources12 questions8 cartes
  41. Systèmes de fichiers et pannes de disque

    Tu sais suivre la pile du disque au point de montage, formater et monter un volume, et diagnostiquer les quatre pannes classiques : disque plein, inodes épuisés, lecture seule, fichier supprimé mais encore ouvert.

    Linux · ressources12 questions8 cartes
  42. Ansible : inventaire et premier playbook

    Tu sais expliquer ce qu'est Ansible, écrire un inventaire avec des groupes, lire et compléter un playbook qui installe et démarre nginx, et le lancer en vrai ou à blanc.

    Ansible12 questions8 cartes
  43. Cycle en V et agilité : deux façons de mener un projet

    Tu sais décrire les phases du cycle en V, citer ses limites, réciter les 4 valeurs du Manifeste agile, expliquer « itératif et incrémental » et dire dans quel cas chaque approche se défend.

    Agilité12 questions7 cartes
  44. Scrum : responsabilités, événements, artefacts

    Tu sais citer les 3 responsabilités de l'équipe Scrum, les 5 événements avec leur durée et leur but, et les 3 artefacts avec l'engagement attaché à chacun.

    Agilité12 questions7 cartes
  45. Le Scrum Master n'est pas un chef de projet

    Tu sais expliquer pourquoi « le chef de projet devient le Scrum Master » est faux, dire qui reprend chaque responsabilité en Scrum, et argumenter une transition vers l'agilité devant une entreprise en cycle en V.

    Agilité12 questions7 cartes
  46. Le format du TOEIC Listening & Reading

    Tu connais les sept parties du TOEIC, leur nombre de questions, le temps disponible et un réflexe de méthode pour chacune.

    Anglais12 questions9 cartes
  47. The Workplace : métiers et statuts

    Tu sais nommer en anglais les postes d'une entreprise, tu évites les faux amis et tu reconnais qui parle à partir d'un indice entendu.

    Anglais12 questions20 cartes
  48. Tokens et fenêtre de contexte

    Ce qu'un modèle de langage lit vraiment, pourquoi il « oublie » le début d'une longue conversation et ce que ça change quand on écrit un prompt.

    IA12 questions6 cartes