Choix de l'outil informatique

J'ouvre un (probablement énième) sujet concernant l'outil informatique au concours. Je vise l'interne, mais je pense que la question intéresse tout le monde.

Le choix parmi les différents outils proposés me paraît délicat. Aussi, pour éviter (oui, on y croit :-D !) les guéguerres stériles et stupides sur kékécé qu'est le mieux, je précise que j'aimerais avoir le retour de ceux qui ont passé les épreuves et peuvent donner la formule qu'ils ont choisi (pas le repas du midi à la cantine, mais le ou les outils utilisés) et surtout s'ils ont le sentiment par rapport à leurs camarades d'avoir fait "le bon" choix et pourquoi...

Je précise que pour ma part, je m'intéresse en ce moment à Python avec numpy/scipy comme indiqué dans la documentation. Mon choix est simple : on peut a priori "tout" faire avec, et surtout j'ai - entre autres - une formation d'ingénieur informaticien, donc la programmation ne m'effraie pas du tout, bien au contraire... Cela dit, un ami étant passé par l'INRIA me vante bien sûr Sage en m'assurant qu'il y a une communauté très active, et d'un autre côté j'ai vu que B. Parisse fournissait plein de choses très intéressantes pour xcas. Bref, le choix est dur !...

Merci d'avance pour votre contribution :-).

Réponses

  • Je pense que Xcas est le mieux car il contient, le côté "programmation" mais aussi le côté "calcul formel".
    Python ne fait que de recevoir des programmes, non ?
    Quant à Sage...quid ?
  • Merci pour cette réponse mais ce n'est pas ce que je cherche (personnellement en tout cas) parce que ça va vite dégénérer ;-).

    Par contre, peux-tu dire ce que tu as utilisé et ce qui en est ressorti concrètement ?
  • D'ailleurs, je viens de constater que NumPy est un sous-ensemble de SciPy.
    Quelqu'un peut confirmer que c'est bien SciPy tout entier qui est disponible sur les postes, et pas seulement NumPy ?
  • Bonjour,

    Avec Python, on a aussi le calcul formel dans sympy qui est fourni avec Pyzo qui est ce qui est disponible pour les concours.
    Je ne peux pas en dire plus, vu que j'ai passé ces concours dans un autre millénaire.
    D'autre part, tu ne précises pas si tu parles du Capes ou de l'agrégation.

    Cordialement,

    Rescassol
  • SymPy avec Pyzo (qui est effectivement ce que j'ai installé en début de semaine) ?? chouette (tu) ! Merci pour cette information qui m'avait échappé.

    Et pour NumPy/SciPy, quelqu'un sait-il ce qu'il en est ?

    PS : C'est vrai que je n'ai pas précisé : je parle de l'agrégation.
  • Bonjour,

    Attention, je vais parler pour le CAPES (externe pour ma part), mais 2h30 de préparation par épreuve orale, ça passe très vite pour :
    - Lire et comprendre ton sujet
    - Ouvrir une session sur une machine mise à ta disposition
    - Prendre possession de la machine (n'oublie pas que les outils et autres infos ne seront pas au même endroit que chez toi. D'où un temps d'adaptation).
    - Préparer et écrire un plan de leçon et de développements ou préparer le sujet de l'oral 2. Peut nécessité de fouiller des bouquins.
    - Trouver des exercices. Garde les bouquins pas trop loin.
    - Mettre au point un (petit) programme de démo
    - Bien se relire et mettre au point son discours devant le jury
    - Tout sauvegarder avant la fin de préparation.

    Je ne sais pas la durée de préparation d'un oral de l'agreg et ce que l'on est censé y faire. Mais je pense que comme pour le CAPES, le temps doit passer très vite. Donc pas la peine de rêver faire un super programme en partant de pas grand chose car si mes souvenirs sont bons, MunPy et SciPy c'est plutôt de bibliothèque bas niveau.

    Quelque soit l'outil que tu choisiras, il te faudra le maîtriser convenablement pour pouvoir aller à l'essentiel dans un temps restreint. Et que le temps que tu vas prendre pour faire ton programme va te manquer ailleurs. Et le jury ne pardonnera pas une leçon ou des développements bâclés sous prétexte que tu lui montres un "joli" programme ...

    C'est ma vision perso.
  • A l'agreg interne, j'ai pris la leçon sur les nombres premiers, je n'ai pas utilisé de logiciels et ça ne m'a pas été préjudiciable.
  • Si vous hesitez entre Python et Xcas, il y a moyen de concilier les deux avec le module giacpy qui se charge par
    from giacpy import *
    ensuite vous pouvez essentiellement utiliser toutes les commandes de Xcas depuis Python. Par exemple
    x=giac('x')
    factor(x**4-1)
    int(1/(x**4+1),x)
    int(1/(x**4+1),x,0,inf)
    m=ranm(5,5)
    n=inv(m)
    m*n
  • Moi c'était l'agrégation externe (je ne sais pas si c'est pareil pour l'interne).
    J'ai pris Xcas parce que c'était le logiciel utilisé dans la prépa où j'étais pour l'option C, donc ça me permettait d'avoir l'avis des profs pendant les séances de TD, alors qu'une collègue qui avait pris SAGE avait plus de difficultés, puisque les profs avaient plus de mal à l'aider à débuguer ses programmes.
    Je sais que pour l'option calcul scientifique, ma prépa préconisait Python (et pour l'option probas, je ne me souviens pas).
    Clairement, je m'en suis bien sortie à l'oral, et je pense que ça aurait été le cas quelque soit le langage dans lequel je me serais entraînée ; il faut juste en choisir un, adapté à ses besoins (calcul formel ou calcul numérique), et s'entraîner, si possible avec une aide extérieure.
  • Euuu Curiosity, vu que tu précises que tu parles de passer l'agreg, ça va sans dire, mais peut-être mieux en le disant et sauf erreur de ma part, tu n'as pas le choix, les diverses options de l'agreg imposent un choix entre 3 ou 4 logiciels standardisés qu'elle fournit clé en main.

    Précise peut-être ton option pour éviter de demander des témoignages sur des outils non dispo?
    Aide les autres comme toi-même car ils sont toi, ils sont vraiment toi
  • Merci pour vos témoignages...
    @Parisse : c'est intéressant, je n'avais pas encore vu ce lien, mais est-ce que ce module est disponible via Pyzo ou sur la clef agreg ? (Je ne peux pas tester pour le moment car je n'ai pas trop le temps de me pencher sur cette histoire. J'avais essayé rapidement de passer par une machine virtuelle il y a quelque temps mais sans succès, je retenterai un jour...)

    @Christophe : rhooo, tu as lu en diagonale, tout est dit - bien qu'un peu éparpillé, c'est vrai. Je m'intéresse à l'agrégation interne, et tous les logiciels que je cite sont bien censés être disponibles ;-).

    ********************

    J'en profite pour réitérer une question qui a dû être noyée dans les réponses : est-ce que c'est bien tout SciPy qui est disponible sur la clé, ou seulement NumPy ? Je penche fortement pour le premier, mais une confirmation n'est pas de trop. Merci :-).
  • curiosity: giacpy est bien dans les modules de la clef agreg (liste), il devrait donc etre installe pour l'agreg (interne et externe).
  • Je prendrais xcas car c'est ce que tu auras ensuite en salle de classe, et pas python. C'est le choix que j'ai fait pour le CAPES. Le cas échéant, j'ai programmé en python pendant ma 1ère carrière, je pouvais rebondir.
  • Parisse : merci, j'ai consulté le lien qui donne effectivement les modules installés. Je vais donc regarder aussi xcas en parallèle.

    nina44 : c'est un argument qui se défend, mais je n'ai pas cette contrainte car je n'irai pas (ou plutôt : je ne retournerai pas :-D) dans le secondaire...

    ********************

    Concernant la question toujours en suspens, voici ce que j'ai compris (du site http://www.pyzo.org/start.html) : Pyzo est fourni avec les packages NumPy et SciPy (*), mais ces modules ne sont pas disponibles quand on installe Pyzo. C'est l'étape 3 : il faut que ce soit demandé après l'installation pour que les modules soient accessibles.
    La question est : est-ce fait sur les machines à l'agrégation (l'un, l'autre, les deux ?), ou bien au moins est-ce faisable par le candidat s'il en a besoin ?
    Je n'ai pas encore trouvé l'information adéquate. Merci de m'aiguiller :-)...

    (*) Lequel ne "contiendrait" pas l'autre contrairement à ce que j'ai lu quelque part, ce serait plutôt que SciPy "s'appuie" sur NumPy.
  • curiosity a écrit:
    Concernant la question toujours en suspens, voici ce que j'ai compris (du site http://www.pyzo.org/start.html) : Pyzo est fourni avec les packages NumPy et SciPy (*), mais ces modules ne sont pas disponibles quand on installe Pyzo. C'est l'étape 3 : il faut que ce soit demandé après l'installation pour que les modules soient accessibles.
    La question est : est-ce fait sur les machines à l'agrégation (l'un, l'autre, les deux ?), ou bien au moins est-ce faisable par le candidat s'il en a besoin ?
    Je n'ai pas encore trouvé l'information adéquate.

    Jusqu'en 2015, Pyzo intégrait un éditeur de code (IEP) et une distribution complète (Anaconda), ce qui a fini par poser des problèmes, l'intégration des deux s'avérant problématique en cas de mise à jour d'Anaconda. Le développeur de Pyzo a fini sagement par renoncer à gérer ces problèmes d'intégration, et ne développe désormais plus que l'éditeur de code (IEP, rebaptisé Pyzo), sans intégrer Anaconda. Pyzo permet donc d'éditer du code, et d'utiliser dans le shell n'importe quelle distribution Python installée sur l'ordinateur. Pyzo recommande naturellement d'installer Anaconda ou Miniconda (version allégée d'Anaconda sans les modules de calcul scientifique). Si Anaconda est déjà installé, Pyzo le détecte au premier lancement et propose spontanément de l'utiliser, mais il est toujours possible de modifier la version de Python associée au shell de Pyzo.

    Pour une installation à domicile, je te conseille vivement d'installer Anaconda, qui intègre Numpy, Scipy, Matplotlib ainsi que d'autres modules de calcul scientifique. A défaut, tu peux installer MiniConda, puis ajouter les modules de calcul scientifique dont tu as besoin... Cela peut permettre une installation plus légère, au prix d'une certaine complication.

    Sur les machines à l'agrégation, deux possibilités : soit elles utilisent Pyzo 2015 (ou précédent), qui intègre déjà Anaconda, soit elles utilisent une version postérieure, sans intégration d'Anaconda : dans ce cas, il me semble raisonnable de penser qu'Anaconda est également installé. Sinon... on disposerait d'un éditeur de code incapable de faire fonctionner ce code, ce qui serait tout à fait inutile.

    Quand à permettre au candidat d'installer Anaconda sur une machine, franchement, ce serait une faille de sécurité majeure : imagine tu vraiment que n'importe qui peut installer n'importe quoi sur les ordinateurs à disposition des candidats ?
  • Merci pour cet historique, c'est toujours intéressant à savoir. J'ai installé anaconda avec Pyzo, effectivement...
    Je vais attendre que quelqu'un ayant passé l'épreuve sur Python passe par là et donne les renseignements sur ce qu'il a vu.

    Et sinon, bien sûr que je n'imagine pas qu'on laisse les candidats faire ce qu'ils veulent avec le système. C'est bien pour cela que je m'inquiète d'ores et déjà de ce qui est disponible ou non... ;-)
  • Y'a pas scratch???? C'est pourtant le meilleur de tous en programmation , d'ailleurs c'est ce qu'il sera demandé de maitriser au brevet, c'est une preuve irréfutable ça....
  • Bonne nuit,

    J'aime bien ton humour, Did63.

    Cordialement,

    Rescassol
Connectez-vous ou Inscrivez-vous pour répondre.