Python sans détour – de l'addition au deep learning se veut à la fois accessible et efficace tout en couvrant un grand nombre de domaines. Tiré de de leur expérience de l’enseignement du Python, ses auteurs Laurent Berger et Pascal Guézet nous le présente. [07-06-2022]

 

Laurent BergerLaurent Berger


Bonjour Laurent, vous êtes maître de conférence à l'université du Mans et vous enseignez le langage Python en premier cycle. Pourquoi avoir voulu écrire un livre sur Python, alors qu'il y a déjà beaucoup de documentations disponibles ?

En effet il existe de très nombreux livres sur Python. Personnellement je les trouve très scolaires dans leur présentation : les notions sont présentées et des exercices sont proposés.

Ces notions pour la lectrice ou le lecteur peuvent sembler très théoriques sans application réelle. Un enseignant utilise souvent l'expression "vous verrez l'utilité plus tard!"

Dans ce livre, il y a une partie décrivant les fondamentaux de Python mais on peut très bien ne pas la lire au début et choisir le chapitre qui nous intéresse le plus. Dans ce chapitre, on trouvera des renvois sur les notions utilisées vers cette partie présentant les bases. Les notions seront alors plus faciles à comprendre dans un contexte où la lectrice ou le lecteur sont motivé(e)s.


À qui s'adresse ce livre ?

À toute personne intéressée par la programmation. Le langage Python est peut être en plus l’un des langages les plus faciles à apprendre pour débuter.

Le langage Python est utilisé au lycée en initiation à la programmation pour sa facilité de mise en œuvre. Mais comme les exemples du livre le montre, il est aussi utilisé professionnellement dans de nombreux domaines.


Quelles sont les connaissances minimales nécessaires pour tirer parti de votre livre ?

Aucune connaissance particulière est nécessaire pour lire ce livre. Volontairement on a écarté le plus souvent possible les mathématiques de ce livre. La programmation est bien souvent enseignée par des enseignants de mathématiques mais la programmation ce n’est pas des maths !


Couverture du livreSur quels critères avez-vous choisi les exemples d'application?

Le langage Python est extensible grâce aux nombreuses bibliothèques disponibles. Les applications ont été choisies en fonction du nombre de téléchargement de ces bibliothèques. Le chapitre sur les fichiers est un peu à part car l’usage et la compréhension du système de fichiers est nécessaire en programmation.


Le deep learning est-il réellement accessible à des débutants ?

Le deep learning est une discipline nouvelle et est souvent présentée comme une chose compliquée. Il est vrai que développer un modèle de deep learning est un travail d’ingénierie. Mais utiliser un modèle de deep learning existant est simple une fois Python maîtrisé. Il suffit de regarder le nombre de lignes de code des exemples dans le chapitre de deep learning et aussi le nombre de blog utilisant ces modèles avec Python pour s’en convaincre .


En quoi votre expérience avec les étudiants vous a-t-elle aidé ?

L’enseignement d’une discipline quelconque permet de mettre en évidence les difficultés de la discipline. L’évaluation formative et l’autonomie laissée aux étudiant(e)s dans le rythme d’apprentissage permet de voir quelles sont les questions qui reviennent le plus souvent. Cela permet aussi de voir les points du cours qui doivent être reformulés. Parfois même, les étudiant(e)s apportent une solution particulière qui permet d’enrichir les exemples proposés au groupe.


Quelles sont les principales difficultés qu'ils rencontrent dans leur apprentissage ?

La première des difficultés est la compréhension du système de fichiers. Sur un téléphone portable, l’application retrouve les fichiers. Lorsqu’on programme ce sont les lignes de code que l’on écrit qui vont organiser l’accès aux données.

Une seconde difficulté est la notion d’itération et l’accès à des données indexées. Enfin une dernière difficulté est le nom des variables et comment cette variable peut changer de nom lors de l’appel à une fonction.

Toutes ces difficultés n’ont rien d’insurmontable. Parfois certaines personnes comprennent rapidement et d’autres ont besoin de temps. L’important c’est de comprendre.

Pour relativiser cette vitesse d’apprentissage, je donne souvent l’exemple de la lecture. À quel moment avez-vous appris à lire : avant le cours élémentaire, pendant ou après ? Est-ce important aujourd’hui ? L’important c’est de savoir lire !


Le livre s'appuie sur la version 3.9-3.10 de Python. Est-ce important ? Y a-t-il des différences de comportement selon les versions ?

La rédaction du livre a commencé avant la sortie de python 3.10. À la fin de la rédaction, la version 3.10 était disponible et les paquets étaient disponibles. Entre ces deux versions le mot clé match a été ajouté et on recommande la version 3.10.

Pour passer à une nouvelle version, il est recommandé de vérifier la disponibilité des bibliothèques avant de la choisir.


Merci pour vos réponses. Souhaitez-vous ajouter quelque chose ?

Bonne programmation !

 

 


Pascal GuézetPascal Guézet

 


Bonjour Pascal, vous avez travaillé dans le secteur de l'informatique et de l'électronique avant d'enseigner, notamment, en bac pro Systèmes Numériques. Comment se passe l'enseignement du Python en lycée ? Est-ce très différent de l'enseignement en IUT?

Le langage Python est plus facile à enseigner que les langages plus anciens comme le C. Le code est plus simple et facile à lire. On va droit au but. Ce langage permet de résoudre des problèmes complexes et diversifiés avec relativement peu de lignes. Il y a toujours un module disponible pour nous aider à répondre à une problématique.

Avec les étudiants de l'IUT, on va plus vite qu'avec ceux du lycée. En bac pro, on peut aussi avoir des élèves capables de s'investir dans un enseignement qui les passionne.


Quelles sont les principales difficultés rencontrées par les élèves ?

Le manque de persévérance. Ils abandonnent rapidement dès qu'il y a une difficulté. Au début, ils veulent apprendre à programmer pour créer des logiciels de jeux. Mais ils n'en mesurent pas le niveau nécessaire et le temps à passer. D'où l'intérêt d'utiliser un langage comme Python où on peut rapidement arriver à faire un programme qui fonctionne et qui est attractif.


Et par les enseignants ?

Ils manquent de formation sur ce langage qui est assez récent. Ils se limitent aux bases de la programmation.


En quoi le livre que vous avez coécrit avec Laurent peut-il accompagner cet apprentissage ?

La seconde partie du livre présente des scripts avec un réel intérêt et sur des thèmes variés. Tous sont bien documentés. Il y a aussi les bases qui sont présentes dans la première partie.


Quels conseils donneriez-vous aux lecteurs pour en tirer le meilleur parti ?

Exécuter les scripts Python de la seconde partie puis les décrypter.


Merci Pascal !

 

> Voir le livre Python sans détour – de l'addition au deep learning