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 !

Guido Van Rossum, le créateur de Python, rend en partie responsables les médias sociaux
De sa démission de la direction du projet

Le , par Bill Fassinou

701PARTAGES

10  0 
En juillet 2018, après presque 30 ans à superviser le développement de Python, Guido Van Rossum, son créateur, avait annoncé son désir de se retirer du processus décisionnel à la Fondation Python. « Je voudrais me retirer entièrement du processus de décision », dit-il. Mais « Je serai encore là pendant un certain temps en tant que développeur de base ordinaire, et je serai toujours disponible pour encadrer les gens, peut-être plus disponible ».

Dans un entretien avec Swapnil Bhartiya, le fondateur de TFIR, un blog, Guido Van Rossum parle de l'origine du langage et de la raison pour laquelle il s'est retiré de la direction du projet qu'il a créé. En 2018 quand il annonçait sa démission, il laissait voir de possibles soucis de santé. « Je ne suis plus jeune ... (Je vais vous épargner la liste des problèmes médicaux) ». Alors, « je me retire de manière permanente de mon rôle de BDFL (Benevolent Dictator For Life), et vous serez tous seuls ». Pour rappel, le Benevolent Dictator for Life, littéralement « Dictateur bienveillant à vie », est le surnom donné à une personne respectée de la communauté de développement open source qui définit des orientations générales d'un projet donné.


Alors qu'il venait de valider la 572e proposition d'amélioration de Python, il a décidé d'arrêter de prendre part au processus de validations de ces PEP. Dans un mail adressé à la communauté, le BDFL a déclaré : « maintenant que la PEP 572 est acceptée, je ne veux plus avoir à me battre autant pour une proposition de modification, surtout si autant de gens méprisent ma décision. Je voudrais me retirer complètement du processus de décision. Je serai toujours là pendant un moment en tant que développeur ordinaire, et je serai toujours disponible pour encadrer des personnes - peut-être davantage. Mais je me donne essentiellement des vacances permanentes en tant que BDFL, et vous serez tous seuls. Après tout, cela devait finir par arriver - il y a toujours ce bus qui se cache au coin de la rue, et je ne rajeunis pas ... (je vous épargne la liste des problèmes médicaux) ».

Il avait même refusé de désigner un successeur : « je ne vais pas nommer un successeur », avait-il dit. Dans l'interview, Van Rossum souligne qu'il reste l'un des développeurs principaux et déclare qu'une nouvelle gouvernance sera mise en place. « Nous allons mettre en place une nouvelle forme de gouvernance. Nous n'avons pas encore décidé de ce que ce sera. Nous avons actuellement environ cinq propositions différentes pour de nouveaux systèmes de gouvernance et il y aura un vote à ce sujet parmi les principaux développeurs, puis un autre qui déterminera précisément qui va former le leadership », a-t-il dit.

Rappelons qu'à sa démission en 2018, au cours des cinq mois qui ont suivi, la communauté Python avait adopté un nouveau modèle de gouvernance, le PEP 8016, qui proposait « un modèle de gouvernance Python basé sur un modèle de conseil de direction. Le conseil a un large pouvoir qu’il cherche à exercer le plus rarement possible; au lieu de cela, il utilise ce pouvoir pour établir des processus standard, comme ceux proposés dans les autres PEP de la série 801x. Cela correspond à la philosophie générale selon laquelle il est préférable de scinder de gros changements en une série de petits changements pouvant être examinés indépendamment: au lieu d'essayer de tout faire dans un PPE, nous nous concentrons sur la fourniture d'une base minimale, mais solide pour de futures décisions de gouvernance ».

Pour revenir aux raisons de sa démission, Van Rossum dit lors de l'entretien que ce qui a conduit à sa démission est une forme de remise en question de ses décisions sur les médias sociaux. « Pour moi personnellement, les médias sociaux ont certainement provoqué un stress supplémentaire et je n'aimais pas le fait que les développeurs principaux postaient des tweets dans lesquels ils remettaient en question mon autorité ou la sagesse de mes décisions, plutôt que de me le dire en face et d'avoir un débat honnête à propos de certaines choses ... », dit-il.

« Je suis tout à fait convaincu que les développeurs principaux les plus expérimentés que nous avons actuellement, ainsi que les nouveaux développeurs principaux que nous avons, seront ensemble en mesure de résister à tout type de tempête susceptible de survenir à la manière de Python. Oui, j'ai démissionné du titre tout à coup, mais il y avait déjà beaucoup de responsabilités que j'avais déjà complètement déléguées. Je veux dire, je touche à peine la base de code, j'ai à peine passé en revue les soumissions », ajoute-t-il.

Source : Billet de blog

Et vous ?

Que pensez-vous des raisons de sa démission ?

Voir aussi

Le créateur de Python se retire du processus décisionnel relatif au langage, qu'est-ce que cela signifie pour l'avenir de Python ?

La communauté Python adopte un nouveau modèle de gouvernance 5 mois après le départ volontaire du créateur du langage qui en était le décisionnaire

Guido van Rossum envisage de mettre fin au support de Python 2.7 le 1er janvier 2020 plus de mises à jour ou correctifs de sécurité après cette date

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

Avatar de jmbain
Membre régulier https://www.developpez.com
Le 07/05/2019 à 10:06
[QUOTE=k304315;10361838]Python est un langage très intéressant, mais ses divergences par rapport au langage "ordinaire" issue du C (java, php, c++, ...) notamment en matière syntaxique rendent son utilisation pas très efficace sur de gros projets.

Il faut argumenter et donner des détails factuels.
Un gros projet, c'est quoi ? Quel gros projet ?
Qu'est-ce que ça veut dire "divergences syntaxiques" ? Tout langage qui n'est pas un avatar du C est-il non efficace ? Pourquoi ?

Le plus beau troll de l'année, je crois...
Si vous êtes aussi imprécis que cela sur vos projets, j'aimerais voir la tête du code...
2  0 
Avatar de floyer
Membre habitué https://www.developpez.com
Le 28/12/2019 à 22:18
Citation Envoyé par hotcryx Voir le message
Un langage sans variable, ça doit être vachement rapide
Il y a Haskell où il n’y a que des constantes - qui ne « varient » pas. Elle peuvent être créée par « let c=42 in ... » ou des paramètres d’une fonction qui peuvent prendre plusieurs valeurs selon l’appel de la fonction, mais cette dernière ne pourra pas changer son paramètre à moins de s’appeler elle même avec une autre valeur.

Ceci-dit, il est possible de construire un opérateur (que l’on appelle typiquement « >>= ») qui émule des fonctions qui modifie une variable.
0  0 
Avatar de defZero
Membre extrêmement actif https://www.developpez.com
Le 29/12/2019 à 0:56
Il y a Haskell où il n’y a que des constantes - qui ne « varient » pas. Elle peuvent être créée par « let c=42 in ... » ou des paramètres d’une fonction qui peuvent prendre plusieurs valeurs selon l’appel de la fonction, mais cette dernière ne pourra pas changer son paramètre à moins de s’appeler elle même avec une autre valeur.

Ceci-dit, il est possible de construire un opérateur (que l’on appelle typiquement « >>= ») qui émule des fonctions qui modifie une variable.
@floyer
"let c = 42 in ..." c'est plutôt de l'OCaml il me semble.
Dans un langage fonctionnel pure (et donc ni OCaml ni les LISP), ont ne parle même pas de variable, mais de "binding".
Et c'est vrai pour Haskell il s’agira de matching, appel de fonction et de l'opérateur dédier ">>=" (bind, un des trois opérateur de monade).
En même temps, puisque tout est expression, ça limite l'utilité de la chose.
0  0 
Avatar de Pyramidev
Expert confirmé https://www.developpez.com
Le 29/12/2019 à 2:02
Citation Envoyé par defZero Voir le message
"let c = 42 in ..." c'est plutôt de l'OCaml il me semble.
Je n'ai pas étudié OCaml, mais let c = 42 in est valide en Haskell.
Exemple de programme Haskell :
Code : Sélectionner tout
1
2
main = let c = 42 in
       putStrLn $ "The answer is " ++ show c ++ "."
Pour l'exécuter en ligne : https://rextester.com/l/haskell_online_compiler
0  0 
Avatar de SimonDecoline
Expert confirmé https://www.developpez.com
Le 29/12/2019 à 10:25
Citation Envoyé par defZero Voir le message
En même temps, puisque tout est expression, ça limite l'utilité de la chose.
On peut même dire que ce n'est pas du tout une limite. Ca rend les variables inutiles et ça évite plein de problèmes (side-effects, variables globales...).
0  0 
Avatar de floyer
Membre habitué https://www.developpez.com
Le 29/12/2019 à 12:03
La construction let a=42 in ... est de même nature en Haskell et en OCaml. Il est question de créer une constante (ou binding, qu’importe le terme). La différence de OCaml est que l’on peut aussi écrire let a=ref 42 in ... si on veut faire varier quelque chose. (Mais techniquement a sera toujours la même référence, seul !a, la valeur référencée variera).

Pour revenir à Python, je trouve surprenant l’expression selon laquelle il n’y a pas de variable en Python. Si j’écris a=42, a pourra être utilisé à la place de 42 et être changé. Cela caractérise une variable et qu’importe si en interne on ait un objet commun mutualisé ou un entier dédié à la variable. Si j’écris a=table[42]; b=table[42] avec une table d’objets, j’aurais deux variables qui pointent sur le même objet quelque soit le langage, cela n’enlèverait rien au caractère variable de a et b.
0  0 
Avatar de Biribibi
Membre habitué https://www.developpez.com
Le 29/12/2019 à 14:21
Citation Envoyé par defZero Voir le message
"let c = 42 in ..." c'est plutôt de l'OCaml il me semble.
Dans un langage fonctionnel pure (et donc ni OCaml ni les LISP), ont ne parle même pas de variable, mais de "binding".
Et c'est vrai pour Haskell il s’agira de matching, appel de fonction et de l'opérateur dédier ">>=" (bind, un des trois opérateur de monade).
En même temps, puisque tout est expression, ça limite l'utilité de la chose.
Euh non, en Haskell, on parle aussi de variables, comme en lambda-calcul de manière générale.
On ne peut pas parler non plus de constantes car elles "varient" en fonction des arguments données à la fonction même si elles restent immutables.
Un binding, c'est l'action d'associer une expression à une variable. Typiquement, la syntaxe let x = ... in

Il existe un style de programmation qui permet de s'abstraire des variables (enfin, des arguments de fonctions plutôt), ça s'appelle le point-free style
https://wiki.haskell.org/Pointfree
mais poussé à l'extrème, ça donne des trucs illisibles
0  0