Skip to content

Bonnes pratiques de développement pour la data science

Programme

Dans ce chapitre nous allons voir:

  • Les bases de la gestion des paquets en python avec pyenv et conda
  • Comment documenter et packager son code pour qu'il soit facilement réutilisable
  • Les bases de la gestion collaborative de projets informatique avec Git
Apprendre a écrire du code maintenable

Certaines bonnes pratiques de développement pour python sont très utiles à connaître, comme les conventions PEP, les linters ou les design patterns. Si vous n'êtes pas suffisamment familiers avec ces concepts, vous pouvez consultez quelques chapitres de ce cours d'Open Classroom pour apprendre a écrire du code facilement maintenable

Leçon: Gestion de paquets python

Dans cette leçon, nous allons voir des outils pour gérer ses paquets python en utilisant des environnements virtuels


Leçon: Documenter et packager son code

Dans cette leçon, nous allons voir les bonnes pratiques de la communauté python pour packager son code afin de faciliter son développement, son installation et sa distribution.


Créer son template de projet automatiquement

Pour créer un template de projet de qualité professionnelle, je vous conseille d'utiliser le package python spécialisé : cookiecutter v2. Voici les commandes pratiques à taper dans un terminal :

  • pour l'installer : bash pip install cookiecutter-data-science
  • pour créer un template à la racine de votre dossier de projet : cccds

Leçon: Les bases de la gestion collaborative de projet avec Git

Dans cette leçon, nous allons voir les bases de la gestion de projets informatiques avec le gestionnaire de version git


Conseils pour l'utilisation d'assistants IA pour le code

Généralités

Les agents IA et divers services pour l'assitance au code sont répandus aujourd'hui, ils peuvent vous apporter une assistance très utile pour la complétion et génération de lignes code, du code pour un petit projet, ou même pour la revue de code ...

De nombreuses solutions existent, je recommande le service refact.ai que j'utilise, un outil open source, très complet et modulable, le mieux classé sur le fameux benchamrk de code SWE-bench.

Attention cependant au risque de dépence à l'outil et à continuer de s'améliorer sans déléguer toute la production à l'IA !

Conseils pratiques

Voici quelques conseils génériques pratiques basés sur des retours d'expérience :
- En amont, créer l'architecture entière de son projet (par exemple avec cookicutter) et remplir au maximum les fichiers du template en détaillant les traitements qui y sont attendus
- Créer un fichier de to-do des principales fonctionnalités attendues
- Faire créer par l'IA des test pour évaluer chacun de vos scripts
- Pratiquer et itérer !

Exercice

Maintenant que vous avez vu et compris ces bonnes pratiques, prenez le temps de mettre en place votre environnement de travail pour qu'il soit fonctionnel : dans le cas contraire, vous risquez de perdre du temps pendant la formation !

  • Installez python et les paquets essentiels dans un environnement virtuel dédié (vous pouvez consulter la section Installations du cours pour vous aider).
  • Entraînez vous à prendre en main pyenv et conda en vérifiant que vous avez bien installé tous les paquets essentiels
  • Configurer Github ou Gitlab pour vos projets et familiarisez vous avec le workflow présenté