Progresser sur le langage Python, en 10 minutes par jour
Avec la hype autour de la data, les langages R et Python deviennent des compétences de plus en plus recherchées en complément du SQL.
Au-delà des profils en reconversion, je connais beaucoup de monde dans mon entourage qui cherche à l’apprendre : que ce soit des développeurs, des community managers ou même des commerciaux.
En effet, quel que soit le métier que nous occupons aujourd’hui nous sommes entourés de données et maîtriser les fondamentaux d’un langage de programmation “data” peut représenter une belle plus value en termes de compétences et sur le CV.
En tant que formateur, j’ai eu à faire monter en compétences de nombreux profils sur le langage Python dans des temps extrêmement courts. Pour la plupart, ils n’avaient absolument jamais codé de leur vie ou même ouvert une invite de commande (le “terminal”, dans les films !).

Que vous soyez étudiant(e)s, en re-conversion ou que vous essayiez juste d’acquérir quelques bases : cet article vous est dédié.
Apprendre les bases de Python en 2h
Si vous avez déjà des bases en Python, passez au prochain chapitre.
Tout d’abord, créez un compte sur Kaggle.com, puis allez dans la section “Courses” et faites entièrement le module “Python”.

Vous y apprendrez ce qui est indispensable pour faire de l’analyse de données :
- Syntaxe et variables ;
- Fonctions et la documentation native ;
- Les booléens et les conditions ;
- Les listes ;
- Les boucles et les compréhensions de listes ;
- Les chaînes de caractères et les dictionnaires ;
- L’ajout et l’utilisation de librairies externes ;
Si vous validez chaque série d’exercices, vous recevrez un petit certificat qu’on peut mettre sur LinkedIn ou autre.
Comment progresser et rester à jour en Python ?
En tant que formateur et consultant multi-casquettes, j’ai l’obligation de rester à jour sur tout un tas de technologies/compétences/écosystèmes :
- PHP/Symfony/Node.js
- Qualité web, standards du web
- HTML/CSS/JS (Bootstrap, Vue)
- Administration système et serveur (Bash, Apache, notions de sécurité)
- Outils de tests, de performance, de monitoring, d’analyse statique de code
- Outils de collecte de données, de manipulation et de traitement de données “no code” (Excel, Google Sheets)
- Outils de visualisation et traitement de données professionnels (Tableau, Data Studio, Power BI)
- Librairies Python de manipulation de données (Matplotlib, Numpy, Pandas, Plotly)
En 2019 et 2020, j’ai formé des étudiant(e)s ou professionnel(le)s sur ces technologies.
Vous l’aurez compris, un être humain normalement constitué ne peut pas rester à la pointe sur l’ensemble de ces technologies !
Comment apprendre rapidement, comment ne pas oublier ?
Le cerveau humain est extraordinaire, il lui suffit de réactiver régulièrement de petits souvenirs pour conserver “en mémoire” énormément de connaissances.
Si au contraire les connaissances ne sont pas rafraîchies, le cerveau va éliminer ce qu’il considère inutile.
La méthode la plus efficace consiste en un programme régulier de petites sessions d’entraînement sous forme d’énigmes à résoudre (pour que ça reste motivant et que ça crée un souvenir) : vous allez devoir faire des Katas !
Ma liste personnelle de Katas en Python
Pour effectuer ces petits exercices, pas besoin d’avoir Python d’installé sur son poste : seule une connexion à internet est nécessaire et un compte sur la plateforme gratuite Codewars.com.
Une fois inscrit(e), et après avoir choisi le Python, la plateforme va vous proposer un premier Kata de niveau très simple. Ce sera souvent quelque chose comme “Ecrivez la fonction Python pair_ou_impair(nombre) qui répond True si le nombre est pair et False s’il est impair”.
Ensuite, vous pouvez essayer une petite série de tests en cliquant sur “TEST” :

Si tous les tests de vérification réussissent, alors on peut soumettre notre solution à la communauté en cliquant sur “ATTEMPT”, puis “SUBMIT” et gagner un peu d’honneur (et des niveaux).
La différence entre un “TEST” et un “ATTEMPT” tient dans le fait que le “Attempt” va faire passer à votre code une suite de tests de validité plus difficile.

Soumettre sa solution ou cliquer sur le bouton “VIEW SOLUTIONS” permet d’accéder à toutes les solutions valides qui ont été proposées par la communauté :

Une fois inscrit sur le site, voici la liste des katas à réaliser triés par catégories :
- Les fondamentaux de Python (débutant/rafraîchissement) ;
- Data et Statistiques avec Python ;
- Opérations mathématiques avec Python ;
- Muscler son cerveau avec Python ;
Soit plus de 50 katas à réaliser, en y consacrant seulement 10 minutes par jour.

Le planning “idéal” pour une montée en compétences
Voici un exemple de planning qui fonctionne et que je vérifie auprès de mes étudiant(e)s sur des formations en cycle court (3 à 5 mois de formation intensive) :
Mois 1 : 1 Kata “Fondamentaux” par jour du Lundi au Samedi
Mois 2 : 2 Katas “Fondamentaux” par jour du Lundi au Jeudi (en mode “Try & Repeat”) + 1 Kata “Muscler son cerveau” ou “Opérations mathématiques” à faire dans la semaine
Mois 3 : 2 Katas spécifiques aux Statistiques et à la Data (seulement si en parallèle, vous vous formez sur ces domaines)
Si vous êtes déjà compétent sur un autre langage et qu’au premier abord la réalisation en Python est difficile, sachez qu’un Kata sur Codewars est souvent disponible sur plusieurs langages de programmation.

Vous pouvez d’abord effectuer le Kata dans votre langage de prédilection, puis en Python et comparer les résultats : cette méthode vous aidera à bien comprendre les différences entre les langages sur des concepts de base (les tableaux, les fonctions, les variables, etc…).
C’est moins utile sur des exercices de pure logique.
Si vous avez des questions sur ce planning de formation ou d’autres astuces pour se former rapidement, n’hésitez pas à me les partager en commentaires ou contactez moi sur Twitter !
PS : Je sais que la capture d’écran montre du code PHP (et du WordPress), c’est pour te “troller/trigger” gentiment et t’inciter à me lâcher un commentaire 🙃.






