6.5Retours du terrain
L'essentiel en 30 secondes
- Isoler : le venv dès le deuxième projet évite la dette du global qui se paie en conflits.
- Prouver : bug → test rouge → fix → vert, et hints aux frontières : les régressions préviennent.
- Lire : traceback par le bas et baseline avant le GPU — l'ingénierie avant le prestige.
Fil Nabil — son plan des 12 mois
Après un an, Nabil se fixe son plan : isoler chaque projet en venv, écrire le test qui reproduit avant de corriger, et préférer une baseline simple avant tout modèle lourd. Pas de folklore : des principes consolidés, des logs vérifiés, et du code relu chaque trimestre.
Partez du besoin réel du moment : un principe à consolider, pas un catalogue prestigieux.
Ce que recommandent les praticiens
Synthèse anonyme de bonnes pratiques largement partagées dans la documentation officielle, les retours de la communauté et les guides d'exploitation. Cinq retours à appliquer tels quels.
Idées fausses à écarter
« Le global suffit pour un petit script », « corriger vite sans test » et « le deep learning d'abord » : ces trois idées reçues coûtent cher — l'isolement, la preuve par le test et la baseline simple paient toujours.
✓ Ce que répètent les praticiens (synthèse anonyme)
- Le venv dès le deuxième projet : isoler évite « ça marchait sur ma machine » ; le global est une dette.
- Le test qui reproduit d'abord : bug → test rouge → fix → vert, les bugs ainsi corrigés préviennent.
- La baseline avant le GPU : un modèle simple et un bon split règlent la plupart des besoins business.
- Lire la traceback par le bas : la dernière ligne nomme, le dessus localise, la recherche fait le reste.
- La doc qui vérifie : hints aux frontières et mypy en CI, les revues parlent métier au lieu de deviner.
Script prêt à dire — choisir sa prochaine habitude terrain (30 s)
« Mon venv : [activé / à créer]. Mon test : [rouge écrit / à écrire]. Ma baseline : [simple / à cadrer]. Ma traceback : [lue par le bas]. Mes hints : [aux frontières]. »
Modèle copier-coller — test de reproduction (pytest)
def total(montants: list[float]) -> float:
return sum(montants)
def test_total_avant_fix() -> None:
assert total([10.0, 20.5]) == 30.5
assert total([]) == 0.0
TPE / petit budget
Privilégier pratique et pairs : venv rejoué, test rouge, retours demandés au référent.
PME Alger
Chercher les ressources accessibles localement et vérifier les modalités pratiques avant de s'engager.
Remote / hybride
Prioriser les traces écrites à distance (fiches diffusées, code relu) et des revues après chaque mois.
Interculturel
Prioriser la transposition locale dès que les règles diffèrent : questionner les pairs, comparer les pratiques.
Défi 48h — appliquez demain
Appliquez 1 retour terrain (venv, test rouge ou traceback par le bas) à votre bug du moment et notez le temps gagné.
- Je sais quelles pratiques du terrain appliquer (venv, test rouge, baseline).
- Mon rituel bug → test → fix est amorcé.
- J'ai relu les 5 retours et je sais où revenir en cas de besoin.
Nabil corrige un bug de total qui revient chaque mois. Que dit le terrain ?
Règle d'or du terrain : ce qui n'est ni testé, ni typé aux frontières, ni versionné figé, cassera un vendredi soir.