• # Pourquoi je n'aime pas Python...

    Posté par . En réponse à la dépêche Python pour la rentrée 2019 — partie 1 ― Popularité. Évalué à 8.

    Les raisons de la popularité de Python ont été évoquées par les autres commentateurs.

    C'est en effet le Basic du 21ème siècle : sa syntaxe est simple et il n'a pas besoin d'être compilé, donc il est de plus en plus utilisé dans l'éducation. Ceux qui apprennent ainsi la programmation à l'école continuent ensuite d'utiliser le même langage. Du fait de cette base éducation - recherche, de nombreuses librairies sont crées. Et Python en vient à être choisi non pas pour le langage lui-même, mais pour la présence de telle ou telle librairie. Il est par exemple très facile, et avec peu de lignes de code, d'interroger en python une base de donnée et d'afficher le résultat en environnement graphique.

    Alors pourquoi je n'aime pas Python ? Pas pour des raisons techniques objectives, mais probablement un ressenti lié à une mauvaise première impression : le premier tuto que j'ai essayé pour apprendre le langage ne marchait pas, et j'ai perdu du temps dessus, tout simplement parce que le tuto était en Python 2 et mon système en Python 3. Et j'ai trouvé extrêmement léger de la part des concepteurs de changer des choses aussi basiques que la fonction Print ou l'opérateur de division. Si on essaye les tutos du livre "The C Programming Language" (écrit en 1978) avec un compilateur C actuel. Et bien ça marche.

    Ensuite, la définition des blocs par indentation est une fausse bonne idée. Un copié-collé d'un exemple dans votre propre programme ne marchera pas si l'exemple indente avec des espaces et que vous indentez avec des tabulations (ou inversement). Python m'a permis de comprendre à quoi servait la fonction "remplacer les tabulations par des espaces" de Geany, dont je ne voyais pas l'utilité.

    Enfin, la popularité croissante de Python fait que de plus en plus de gros programmes sont réalisé dans ce langage non compilé. Et là non plus, ce n'est pas une bonne idée de compter sur la puissance des machines.