← Parcours
⚙️

Setup Pro & Outils du Développeur

Débutant
🧠Comprendre en lisant n'est pas savoir écrire.🧠Un module est fini quand tu peux le reproduire fenêtre fermée.🧠Écris le problème en français avant d'écrire du code.🧠Une question impossible cache trois questions faciles.🧠Retape le code à la main. Puis referme et réécris-le.🧠Essaie d'abord, cherche ensuite.🧠Cherche « comment on écrit ça », jamais « qu'est-ce que je dois faire ».🧠Pour comprendre du code, casse-le.⌨️Une fonction qui plante sur un cas limite n'est pas finie.⌨️Si un bloc a un nom clair, il mérite d'être une fonction.⌨️Savoir lire une erreur vaut plus que connaître dix méthodes.⌨️Diagnostiquer, c'est éliminer dans l'ordre — pas essayer au hasard.⌨️Une optimisation sans mesure avant/après est une croyance.🔍Regarde le fichier avant de le charger.🔍Une performance anormalement bonne est une hypothèse à réfuter.🔍Cette valeur existe-t-elle à l'instant où je dois prédire ?🔍fit sur le train, transform partout.🔍Un chiffre qu'on ne sait pas raconter est un chiffre qu'on n'a pas compris.🔍Un graphique sans question n'a rien à dire.🤖Un score d'entraînement parfait n'est jamais une bonne nouvelle.🤖Le jeu de test ne se regarde qu'une fois.🤖Plus tu essaies de configurations, plus ton meilleur score est optimiste.🤖Un seuil de décision est un arbitrage économique, pas un réglage technique.🤖Commence toujours par une baseline. Note son score.🤖Le meilleur modèle n'est pas le plus précis, c'est celui qu'on peut maintenir.🚀Un modèle en production n'est pas un livrable, c'est un système vivant.🚀Un secret publié est un secret compromis.🚀Pour chaque permission : que se passe-t-il si cette machine est compromise ?🚀Un post-mortem qui cherche un coupable ne produit aucune amélioration.🚀« Nous n'utilisons pas cette variable » n'est pas une garantie d'équité.🚀Rends l'arbitrage explicite et chiffré. Ne le tranche pas en silence.🚀Un résultat qu'on ne sait pas reproduire est une anecdote.

🎯 Objectifs d'apprentissage

À l'issue de ce module, tu seras capable de :

  • 01Naviguer et manipuler des fichiers en ligne de commande sans souris
  • 02Versionner un projet avec Git et publier un historique de commits lisible
  • 03Isoler les dépendances d'un projet dans un environnement virtuel reproductible
  • 04Structurer un dépôt selon les conventions attendues en entreprise

Prérequis

Aucun — c'est le point de départ du parcours.

Terminal & ligne de commande

40 min

Le terminal est l'outil central de tout développeur et ingénieur ML. Savoir l'utiliser fluidement t'économise des heures chaque semaine.

🐧 Pourquoi bash ? Les serveurs cloud (AWS, GCP, Azure), Google Colab, Docker et toute la documentation ML utilisent bash/Linux. C'est la langue du ML en production — autant l'apprendre dès le départ. Sur Windows, installe Git Bash (inclus avec Git) pour avoir un vrai terminal bash.

---

## Navigation de base

pwd             # dossier courant
ls -la          # liste détaillée avec fichiers cachés
cd projet/      # aller dans un dossier
cd ..           # remonter d'un niveau
mkdir src       # créer un dossier
cp a.py b.py    # copier un fichier
mv a.py src/    # déplacer / renommer
rm fichier.py   # supprimer un fichier (irréversible !)
rm -rf dossier/ # supprimer un dossier entier
💡 Sur Windows (PowerShell) : pwd, ls, cd, mkdir, cp, mv fonctionnent pareil. Différences : rm -Recurse dossier au lieu de rm -rf, et dir si tu es en CMD.

---

## Manipuler les fichiers de données

cat data.csv             # afficher le contenu
head -20 data.csv        # 20 premières lignes
wc -l data.csv           # compter les lignes
grep "erreur" logs.txt   # chercher dans un fichier
💡 Sur Windows (PowerShell) : Get-Content data.csv -TotalCount 20, (Get-Content data.csv).Count, Select-String "erreur" logs.txt. Sur CMD : type data.csv, findstr "erreur" logs.txt.

---

## Variables d'environnement — essentielles pour les clés API

export ANTHROPIC_API_KEY="sk-ant-..."
echo $ANTHROPIC_API_KEY
💡 Sur Windows (PowerShell) : $env:ANTHROPIC_API_KEY = "sk-ant-..." — Sur CMD : set ANTHROPIC_API_KEY=sk-ant-...
⚠️ Ces commandes définissent la variable pour la session courante uniquement. En pratique, utilise un fichier .env dans ton projet avec python-dotenv — ne mets jamais tes clés dans le code source !

---

Ressource recommandée : MIT Missing Semester — https://missing.csail.mit.edu/ (gratuit, excellente qualité)

✍️ Exercices de la leçon

2 exercices

Fais-les dans l'ordre, dans un vrai fichier .py — pas dans ta tête. Ne déplie la correction qu'après avoir écrit quelque chose, même faux.

🔧

Exercice ACréer une arborescence de projet au terminal

Application directe · Tu appliques ce que tu viens de lire.

Sans quitter le terminal et sans ouvrir l'explorateur de fichiers, place-toi dans ton dossier Documents et crée cette arborescence :

projet/
├── src/
├── data/
└── notebooks/

Puis crée un README.md vide dans chacun des trois sous-dossiers, et vérifie le résultat avec ls -R projet.

🎯

Exercice BInspecter un fichier de 2 millions de lignes

Page blanche · Aucun squelette : à toi de choisir la méthode.

Page blanche.

On te livre ventes.csv, un fichier de 2 millions de lignes. L'ouvrir dans Excel plantera ta machine, et le charger dans Pandas prendrait plusieurs minutes pour rien.

Sans Python et sans ouvrir le fichier, réponds en ligne de commande :
1. combien pèse le fichier ?

2. quels sont les noms des colonnes ?

3. combien de lignes contient-il exactement ?

4. combien de lignes contiennent le mot erreur ?

5. à quoi ressemblent les 3 premières lignes de données ?

Pourquoi ça compte : c'est le premier geste sur toute nouvelle donnée. Regarder avant de charger t'évite de découvrir au bout de dix minutes que le fichier a un séparateur exotique ou un en-tête sur trois lignes.

🤖

Un point pas clair ? Clique sur 💬 Demander au tuteur en bas à droite.