Files
live-campus-mcs-p-2027.2/Semaine_11/Jour_03/USAGE-IA.md
T
gauvainboiche 0d071d2843 Semaine 11
2026-07-11 21:38:00 +02:00

4.2 KiB

Exo 3.4 "Consommer l'API" - BOICHÉ Gauvain

Usage de l'IA

Raison 1

Pour convertir la structure de SQLAlchemy en SQLite. Parce que, comme un imbécile, j'ai tout fait en SQLAlchemy, sans percuter.

Ce que j'en ai retenu

La somme de la conversion était colossale.

Déjà, de nombreuses méthodes (pas au sens Python du terme) m'étant inconnues ont été intégrées. J'ai lu religieusement pour comprendre, et ça va, le sens ne m'échappe pas.

Celle qui m'a fait le plus tiquer c'est flash(). Les strings disent Flashes a message to the next request. In order to remove the flashed message from the session and to display it to the user, the template has to call get_flashed_messages. C'est spécial. Je me rends compte aussi que mes propres fonctions n'ont pas de """docstring""", mais pour autant, je pense ne pas en avoir besoin.

Un de mes mentors m'avait dit : "un bon code se passe de commentaire". Et ma convention de nommage semble assez exemplaire pour s'en passer.

Raison 2

Pour générer les fichiers .env et .gitignore, parce que ça me saoule aussi de fouiller dans mes dossiers jusqu'à satsifaction. Et faire une méthode pour ne rien lancer sans ces valeurs.

Ce que j'en ai retenu

Y a rien à retenir de particulier. Sauf peut-être un genre de dossier général à la racine de mes projets avec des patrons tout fait.

Quand à la fonction _required_env, à la base j'avais fait un simple try: except: mais ça semble mieux comme ça.

Et par ricochet, j'ai vu qu'on pouvait définir des variables dans l'application "Flask" avec .config.

Raison 3

Générer du code CSS.

Ce que j'en ai retenu

La raison pour laquelle j'ai lâché mes cours CodeCademy sur le Frontend. Ca me gonfle.

Raison 4

Choisir de faire ou non une réinitialisation de la DB en relançant app.py

Ce que j'en ai retenu

J'ai plusieurs fois voulu faire un choix multiples en Python sans jamais me renseigner dessus, et j'étais trop avancé pour refactoriser ça moi-même. Visiblement ça n'existe pas trop dans l'état, ça marche avec un "O/N" classique. Peut-être existe-t-il une solution (choisir avec les flèches du clavier) mais ça demande certainement un genre de moteur visuel. Je ne sais pas du moins. Je n'ai pas insisté, mais de fait je me trouve stupide de demander à l'IA ce que je savais déjà faire. Après, j'ignorais que je connaissais déjà la seule solution, donc au moins je retiens que Python ne gère pas forcément tout.

Raison 5

Ecrire les commandes de test, notamment sur la robustesse.

Ce que j'en ai retenu

La sortie JSON formatée par python m'intéresse. Je ne pensais pas que Python pouvait servir aussi à ça. Dans le quotidien ça peut être utile à savoir.

Et surtout, je voulais juste une liste de commandes curl, mais l'IA m'a proposé directement après, sans lui demander, un script .sh (joint). Pourquoi m'embêter avec un .md et des copier/coller ? Je dois y repenser à chaque fois. Faire des sorties automatiques. Je le fais au travail mais jamais en exercice.

Partisan du moindre effort ? Oui, et ça fait de moi un bon informaticien.

Raison 6

Téléversement de mon projet finalisé (le .md de l'exercice, les .py et les .html ainsi qu'une capture d'écran de l'arborescence) sur trois IA spécialisées différentes (QwenCoder 3.7 Plus, MiniMax M3, Kimi K2.6 [on le sent que je contrebalance la domination américaine par de la domination chinoise, ou pas du tout ?]) avec une demande de revue.

Les résultats

Les trois IA fournissent des rapports cohérents (ce qui est rassurant) même si chacune courbe son jugement par son paradigme interne :

  • Qwen se concentre sur la base
  • Kimi relève les soucis d'imports circulaires et les potentiels points de blocage concrets actuels
  • MiniMax a relevé les potentiels problèmes futurs en anticipant une application qui prend de l'ampleur

Les bogues relevés :

  • Sérialisation JSON menant à une potentielle TypeError (que je n'ai pas constatée)
  • Fonctions critiques potentiellement bloquantes
  • Fonctions critiques dans des boucles non sécurisées
  • Coquilles et oublis de lignes à rajouter/retirer

Ce que j'ai modifié en conséquence

Corrections des bogues critiques, re-test et validation.