Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Éducation : Python bientôt langage officiel de programmation en France ?
Un projet dans le cadre de la réforme du Bac et du lycée

Le , par Michael Guilloux

791PARTAGES

23  1 
À la mi-février, le ministre français de l'Éducation a dévoilé la tant débattue réforme du bac qui, comme on s'y attendait, a marqué la fin des séries au lycée, du moins pour la voie générale. Pour les partisans de cette réforme, il s'agit de repenser le lycée afin de mieux accompagner les élèves dans la conception de leur projet et dans l'acquisition des connaissances et des compétences nécessaires à leur poursuite d'études.

Mais cette réforme du baccalauréat et du lycée général et technologique nécessite l'élaboration de nouveaux contenus d'enseignement. Le Conseil supérieur des programmes (CSP) a donc été saisi par le ministre en février 2018 afin de concevoir les projets de programmes du futur lycée. Depuis la mi-octobre, le CSP rend publics ses projets pour les classes de seconde et de première générale et technologique. Pour certains enseignements, le projet de programme de terminale est également disponible.

Ces programmes seront présentés devant le Conseil supérieur de l'éducation à la fin décembre puis publiés au début de l'année 2019. Ils entreront en vigueur, pour les classes de seconde et de première, à la rentrée prochaine. Mais avant cela, le ministre a souhaité engager, du 5 novembre au 20 novembre 2018, une large consultation pour recueillir l'avis et les suggestions de la communauté éducative.

En parcourant les différents programmes, on découvre que le CSP a décidé de faire de Python le langage officiel de l'enseignement de la programmation en France. Dans les programmes de Sciences numériques et technologie (classe de seconde, enseignement commun) et Numérique et sciences informatiques (classe de première, enseignement de spécialité, voie générale), on peut en effet lire la note suivante :

« Un langage de programmation est nécessaire pour l’écriture des programmes : un langage simple d’usage, interprété, concis, libre et gratuit, multiplateforme, largement répandu, riche de bibliothèques adaptées aux thématiques étudiées et bénéficiant d’une vaste communauté d’auteurs dans le monde éducatif est nécessaire. Au moment de la conception de ce programme, le langage choisi est Python version 3 (ou supérieure). » Dans les programmes de Physique-chimie et de Mathématiques de première (enseignement de spécialité), il est également fait allusion au langage de Guido van Rossum comme « langage de programmation conseillé. »


C'est peut-être trop tôt pour dire que Python est le langage officiel de l'enseignement de la programmation au lycée vu que c'est un projet, mais ça sera difficile de montrer ou défendre que le langage ne mérite pas cette place. Cela dit, utiliser Python pour l'enseignement de la programmation en France va certainement donner un coup de supplémentaire au langage qui ne fait que gagner du terrain. TIOBE, PyPL, IEEE, RedMonk, etc. Presque tous les indicateurs de popularité des langages s'accordent sur ce point. Python est reconnu pour sa simplicité (donc propice pour les débutants) et sa polyvalence (donc un langage sûr). Est-ce donc une bonne idée de faire de Python le langage officiel d'enseignement de la programmation en France ?

Sources : Eduscol, Programmes (Sciences numériques et technologie, Numérique et sciences informatiques)

Et vous ?

Qu'en pensez-vous ?
Est-ce une bonne idée de faire de Python le langage officiel d'enseignement de la programmation en France ?
Sinon, qu’auriez-vous préféré ?

Voir aussi :

Rubrique Python (Actualités, Forums, FAQ, Tutoriels, Sources, Outils, Livres)
Calibre, le gestionnaire open source de livres numériques, ne va pas migrer à Python 3, car l'auteur s'estime capable de maintenir Python 2
Programmation : Python gagne de plus en plus en popularité, et Swift fait à nouveau son entrée dans le top 10 de l'index TIOBE d'octobre 2018
Réforme du bac : Blanquer supprime les séries au lycée pour la voie générale, quelles conséquences sur l'enseignement supérieur en informatique ?
Le Stanford CS choisit le JavaScript comme langage d'initiation à la programmation en 2017, cela aux dépens de Java

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de laerne
Membre éprouvé https://www.developpez.com
Le 19/11/2018 à 17:17
Citation Envoyé par grunk Voir le message
Je suis sans doute un peu vielle école sur le sujet , mais c'est sa syntaxe qui m'a fait arreter python assez rapidement , j'ai jamais réussi à me faire au concept.
Python est utilisé comme langage de script dans de nombreux soft. Si on fait après le lycée des études qui ont peu de lien avec la programmation, c'est plus utile d'avoir d'avoir fait du python. Je l'ai vu avec des artistes CG qui comprennent rien au C++, java, … mais qui sont capables d'automatiser certaines de leur tâches lourdingues en python ou faire des petites extensions dans photoshop ou autre.
12  0 
Avatar de benjani13
Membre extrêmement actif https://www.developpez.com
Le 20/11/2018 à 14:31
Citation Envoyé par alex_ps Voir le message

Pourquoi se cantonner à Python ? Cette spécialité devrait être le terrain idéal pour découvrir (et apprendre) d'autres langages, justement !
De plus, pédagogiquement parlant : pourquoi casser la tête aux élèves avec de l'algorithmique, si c'est pour ensuite dire "bah, de toute façon, en Python, on s'en fiche".
Je pense, notamment au typage des variables. Ensuite, il y a la programmation orientée objet, dont on peut deviner qu'elle sera dans le programme de Terminale. Exit les déclarations en bonne et due forme...
Sans parler des erreurs de programmation liées à la philosophie d'un langage tel que python. Nombreux sont ceux qui s'attendent à obtenir un nombre via un input . Pour avoir discuté avec des profs de maths, c'est pas évident et ceux qui sont vraiment "à fond" sont peu nombreux.
Je suis en complet désaccord. L'algorithmie et python vont vraiment très bien ensemble justement! L'algorithmie c'est résoudre un problème en ne se focalisant pas sur les détails techniques d'implémentation. C'est bien pour cela qu'on l'apprend souvent d'abord sur papier à base de mots en français, on ne cherche que l'idée générale qui mène à la résolution du problème. Python permet de mettre à l'épreuve l'algo que l'on a créer de façon assez naturel, sans se soucier de détails techniques. Je ne comprend pas pourquoi tu dit qu'en Python on se fiche de l'algorithmie, il y a méprise. Je ne vois pas ce qui change de construire un parcours d'arbre en C ou en Python. Pourquoi en Python ce ne serait plus de l'algorithmie? Je ne comprend pas ton aversion pour python qui ne serait pas selon toi un vrai langage de programmation.

En IUT j'ai eu beaucoup de cours d'algo avec implémentation avec Python. C'était tout à fait adapté. Python permet, je trouve, de par sa simplicité d'être même plus créatif quand on cherche à écrire un algorithme car la réflexion des élèves n'est pas coupée régulièrement par des problèmes de pures implémentations (je met quoi comme type de variable, je fais une copie ou un pointeur, mince ça marche comment déjà malloc?, etc, etc). On peut aussi faire des choses poussés et élégantes en une ligne, avec les listes en compréhension, qui se rapprochent du langages mathématiques. Cela permet encore une fois de se concentrer sur l'essentiel, à savoir l'algorithme que l'on est en train de concevoir.
10  1 
Avatar de GLDavid
Membre expert https://www.developpez.com
Le 20/11/2018 à 7:27
Bonjour

J'ai fait parti de la génération Informatique Pour Tous (plan IPT de 1984) avec l'initiation sur Thomson TO7 et des langages comme LOGO (si, si, la tortue itself) et/ou BASIC... où finalement, c'est plus votre serviteur qui enseignait à la maîtresse.
Alors, le fait de choisir Python plutôt qu'un autre langage plus usité ne me dérange pas. Oui, python a une syntaxe particulière mais incite à fortement bien présenter son code, une bonne habitude à prendre. Je dirais aussi que python est suffisamment généraliste et les élèves motivés s'orienteront vers sa librairie conséquente pour des projets personnels plus importants.
Non, ma question est plus concernant la formation des enseignants. J'espère que les enseignants seront correctement formés avec une priorité sur les profs de physique-chimie et mathématiques.
Questions à vous, chers cofilaires, cet enseignement est obligatoire ou optionnel?
Conclusion: je suis favorable, pourvu que les enseignants soient formés et que l'élève y voit un intérêt pour plus tard,

@++
6  0 
Avatar de GLDavid
Membre expert https://www.developpez.com
Le 20/11/2018 à 9:00
Merci lg_53.
Sur un ton humoristique (quoique...), je dirais aux profs comme aux élèves de venir consulter sur developpez.com nos tutoriaux sur python. Il ne reste plus qu'aux modos python d'écrire un tutorial pour le prof et un tutorial pour l'élève

@++
6  0 
Avatar de grunk
Modérateur https://www.developpez.com
Le 19/11/2018 à 16:31
Je trouve ça assez étrange de choisir un langage à la syntaxe "particulière". Python est quand même assez éloigné des langages plus traditionnels (c,c++,java ). Je suis sans doute un peu vielle école sur le sujet , mais c'est sa syntaxe qui m'a fait arreter python assez rapidement , j'ai jamais réussi à me faire au concept.

Dans tous les cas je suis pas certains qu'il y'est de bon ou mauvais candidat pour l'apprentissage , il faut surtout apprendre à raisonner et utiliser le bon outil au bon moment.
8  3 
Avatar de f-leb
Rédacteur/Modérateur https://www.developpez.com
Le 19/11/2018 à 18:17
« Un langage de programmation est nécessaire pour l’écriture des programmes : un langage simple d’usage, interprété, concis, libre et gratuit, multiplateforme, largement répandu, riche de bibliothèques adaptées aux thématiques étudiées et bénéficiant d’une vaste communauté d’auteurs dans le monde éducatif est nécessaire. »
... et dont le nom commence par "Py". Étant donné la liste des critères, quelles étaient les autres possibilités de langage ?
5  0 
Avatar de Supernul
Membre actif https://www.developpez.com
Le 20/11/2018 à 13:01
Le choix de Python n'est pas étrange dans l'état des choses : enseignement léger des sciences numériques par des enseignants non formés à ces sciences. Je n'ose imaginer le résultat avec certains profs plus ou moins forcés à enseigner ce cours sans formation préalable en informatique. Demandez à un prof de physique-chimie de vous présenter ce qu'est un compilateur (en théorie et en pratique avec du C), cela peut être drôle (exemple vécu).

Personnellement, j'aimerais bien avoir un aperçu détaillé du contenu de cette spécialité et une réponse du gouvernement sur la formation des formateurs (profs).
6  1 
Avatar de SimonDecoline
Membre expert https://www.developpez.com
Le 20/11/2018 à 20:51
Citation Envoyé par Michael Guilloux Voir le message

Qu'en pensez-vous ?
Est-ce une bonne idée de faire de Python le langage officiel d'enseignement de la programmation en France ?
Sinon, qu’auriez-vous préféré ?
J'en pense que ça restera des cours introductifs et que le choix du langage n'a pas beaucoup d'importance. Les ESN ne vont pas se mettre à recruter des lycéens parce qu'ils auront fait quelques heures du langage X ou du langage Y. Ce sera déjà bien si les cours d'informatique fait par des non-informaticiens ne dégoutent pas tous les élèves.
5  0 
Avatar de Bktero
Modérateur https://www.developpez.com
Le 21/11/2018 à 12:44
Je faisais mumuse à pyplot et ipython ce matin et il faut quand même avouer que c'est bien pour faire coder des lycéens simplement avec des applications concrètes et rapides :
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
In [1]: import matplotlib.pyplot as plt

In [2]: import numpy as np

In [12]: x = np.array(range(-10, 10))

In [13]: x
Out[13]:
array([-10,  -9,  -8,  -7,  -6,  -5,  -4,  -3,  -2,  -1,   0,   1,   2,
         3,   4,   5,   6,   7,   8,   9])

In [14]: plt.plot(x, x**2)
Out[14]: []

In [15]: plt.plot(x, x**3)
Out[15]: []

In [16]: plt.show()
Et hop ! Des courbes avec les fonctions dont on leur parle en mathématiques.

J'aime bien Python, je connais ces travers. Je maîtrise aussi plusieurs autres langages. Et clairement, faire ce genre de choses en C... Il faut être réaliste, on parle de faire coder des p'tits jeunes imberbes, pas des barbus aguerris comme le sont beaucoup d'entre nous. Il faut faire simple et Python répond à ce challenge. Ils auront bien le temps de se faire du mal avec C++ après
5  0 
Avatar de Pierre Louis Chevalier
Expert éminent sénior https://www.developpez.com
Le 19/11/2018 à 16:26
Faire de l'algo sur papier et utiliser un langage de programmation sur un ordi c'est pas la même chose.
Python était déjà leader de fait sur l'éducation , mais ça sert de normaliser officiellement ça évite les disputes entre profs et ça permet d’utiliser les mêmes support pour tous.

Après je pense qu'on parles du lycée la, pour les études supérieures évidement qu'il vont rapprendre autre chose que seulement Python, comme Java, C++ etc...
5  1