Python : pour ou contre ?

J'ai pas fait d'ada, donc je peux pas comparer. =) J'ai eu droit à plein d'autres langages à la con à la place. =)

Wai style Caml pour bien comprendre ce qu'est la récursivité ? Ils adorent ça à la FAC comme l'esterelle à la place de l'estelle pour le développement formel. J'ai même eu le droit à un langage dont je ne me souviens plus du nom et qui était déjà abandonné depuis plus de 5 ans. :p :D :D
 
Au lycée j'avais fais du Pascal moi, la syntaxe est un peu verbeuse, mais ça peut aussi être un plus pour la lisibilité du code. Enfin je te cache pas que vu la façon dont c'était enseigné, en turbopascal sous dos, j'en ai pas que des bons souvenirs, sous Delphi j'aurais peut-être plus accroché, et puis on a aussi la logique de pointeurs qui me parait pas forcément facile à aborder pour des lycéens, quand on voit que certains développeurs l'ont toujours pas assimilée…*:-/
Si on veut éviter ça, il reste les langages de script, qui pour beaucoup n'ont pas une syntaxe évidente (à part les langages du web, genre php, …), ou le Java. J'aurais tendance à pencher pour ce dernier, d'autant que la syntaxe est un peu plus conventionnelle.
Y'a quoi dans la liste conseillée par l'enseignement nationale ? Et c'est quel genre d'algorithmique ? Quels objectifs ? Le but c'est de comprendre un peu comment marche la machine ? Ou au contraire de s'abstraire le plus possible du langage pour se concentrer sur l'algo et pas perdre de temps avec les aspects plus techniques ?

Alors, dans la liste du ministère on trouve des choses qui n'ont rien à voir entre elles !
1-Scratch
2-Xcas
3-Linotte
4-Maxima
5-Python
6-Scilab
7-Exelcalgo
J'aime bien Algobox également, mais il semble mal vu

je pense que l'objectif est l'algorithmique en elle-même mais rien n'est vraiment clair

Albert
 
Alors, dans la liste du ministère on trouve des choses qui n'ont rien à voir entre elles !
1-Scratch
2-Xcas
3-Linotte
4-Maxima
5-Python
6-Scilab
7-Exelcalgo
J'aime bien Algobox également, mais il semble mal vu

je pense que l'objectif est l'algorithmique en elle-même mais rien n'est vraiment clair

Albert
Houla, à part Python, pas un dont j'ai entendu parler. Après un rapide coup d'oeil sur wikipedia, Scratch ça a l'air assez bridé, comme le dit l'article de wikipedia, ça s'adresse vraiment aux gamins…
XCas, je m'en méfierais comme de la peste. :D La petite techno francofrançaise développée dans nos universités qu'on cherche à promouvoir… D'autant que je suis très méfiant vis à vis de l'UJF, j'y suis passé. =)
Linotte : pareil que Scratch, ça a l'air ultra limité, et ultra pas aboutit surtout, en plus la syntaxe en français, je suis pas fan.
Maxima : ça devient un peu plus sérieux, ça sert à faire des maths quoi, tourné façon maple. Si c'est très pratique pour tracer des courbes, d'un point de vue algo c'est pas toujours les langages les plus simples, là faut vraiment voir ce que vous êtes sensés faire avec.
Scilab : pareil ça a l'air bien branché maths, mais encore un truc sortit de nos universités qu'on cherche à promouvoir, je serais assez méfiants, le genre de langage qui réinvente en moins bien ce qui a été fait 10x sur des projets plus anciens, mais que quelqu'un a décidé de refaire à sa sauce.
Et le dernier, ça ressemble à une blague, tout juste si on en trouve une trace sur le net.

Bref, la liste, Python mis à part, ça ressemble à une bonne grosse blague, où au genre de choses que seuls nos brillants universitaires déconnectés de la réalité sont capables de nous pondre.

J'ai l'impression qu'on trouve deux séries de langages, certains très orientés maths, d'autres orienté programmation pour ultra débutants. À part Python qu'est un peu un truc à part au milieu de la liste…
J'aurais tendance à te dire que si c'est pour faire des maths, faut mieux négocier une licence maple, au moins c'est une référence dans le domaine.
Si c'est pour faire de la programmation facile, fais leur faire du basic, c'est simple, accessible, tu passeras pas 15 ans à leur enseigner le langage, parce qu'après réflexion, vu le mal qu'ont certains dans les facs scientifiques même sur des langages simples type pascal/java, il faut sans doute mieux pas sortir des choses trop complexes à des lycéens de secondes qu'ont pas forcément de vocation scientifique.

Ou à la limite, dans le genre langage à vocation mathématique, mais qui permet de faire du vrai code facile, tu peux leur faire sortir leurs calculatrices, toutes les calculatrices programmables qu'on refile aux lycéens en leur faisant croire qu'elles sont indispensables (et qu'on interdit aux exams dans les facs scientifiques…) font ça très très bien. Ça suppose de jongler un peu entre les différents modèles par contre.
Y'avait le "R" aussi que j'ai entrevu à la fac, qu'était un langage hyper simple, et pareil avec une bonne vocation mathématique, multiplateforme, mais j'espère juste qu'il y a un moyen de le faire tourner en dehors d'emacs… ;) Quoique c'était peut-être plus poussé sur les stats que sur les maths en général.

En espérant t'avoir été utile, au lieu de t'embrouiller un peu plus… ;)
 
Maple pour les maths oui, mais ce n'est qu'un logiciel de calcul formel... Scilab va avec Matlab, logiciel de calcul scientifique matriciel, de plus en plus utilisé dans les cellules de recherche, car bien mieux que Cran R (qui à l'avantage d'être libre)... Maple c'est bien pour faire du formel oui... autant dire pas beaucoup d'applications ;).
 
Non mais là je pense qu'il vaut mieux s'arrêter à de l'algorithmique théorique parce qu'en effet les langages proposés ce sont quasiment tous des langages pour faire des mathématiques et non du développement.

C'est quoi cette nouvelle manie du gouvernement à vouloir enseigner l'algorithmique en seconde ? Le mieux ne serait pas qu'ils sachent avant tout comment fonctionne un ordinateur et comment s'en servir ? Parce que si beaucoup savent cliquer dans tout les sens pour installer n'importe quoi, ils ne savent généralement pas se servir d'un ordinateur correctement. Et si beaucoup n'iront pas vers la programmation au moins ils seront ce qu'est un ordinateur et pourront peut-être ensuite dans les PME/PMI arrêter d'appeler les développeurs pour qu'ils résolvent leur conneries d'utilisateurs.

PS: En terminal L ça va être quoi les options ? Design Patterns ? :p :D :D
 
Python, pour avoir programmé avec depuis 5/6 ans je commence à bien le connaitre. C'est un exellent langage pour débuter le multi-paradigme ne pose pas de réel problèmes (loin de là) tu peux donc commencer par enseigner en impératif , puis passer à l'OO si le niveau se révèle plutôt bon. C'est de haut niveau , donc parfait pour l'apprentissage de l'algorithmique (on se concentre donc uniquement sur la création de l'algo et non sur les déclarations bas niveaux (malloc et cie ><) . De plus l'apprentissage se voit facilité par l'interpréteur interactif (nul besoin d'enregistrer pour commencer à coder). Après quant à la lisibilité je trouve python bien plus clair que certains autres langages (Perl ou C par exemple). Et surtout pour des 2nd, il sera possible si le temps le permet de les laisser tâter des ihm avec Tkinter ou pygame.

Après les outils sur mac sont simples : Smultron/TextMate + Terminal ou IDLE sur mac(pratique pour débuter).

Caml (OCaml ou Caml light): utile pour les futurs élèves de prépas scientifiques. Le langage est assez sympa à utiliser (proche des maths) mais le fonctionnel peut rebuter.(Haskell sinon pour du fonctionel pur)

Perl je le déconseillerais , principalement à cause de sa syntaxe que je trouve hideuse et de sa philosophie de There Is More Than One Way To Do It (TIMTOWTDI)...

Ruby peut être sympa , langage qui monte et pas trop difficile d'apprentissage.

Et sinon l'éternel C (qui reste une référence) mais peut être un chouïa difficile d'accès...
 
Houla, à part Python, pas un dont j'ai entendu parler. Après un rapide coup d'oeil sur wikipedia, Scratch ça a l'air assez bridé, comme le dit l'article de wikipedia, ça s'adresse vraiment aux gamins…
XCas, je m'en méfierais comme de la peste. :D La petite techno francofrançaise développée dans nos universités qu'on cherche à promouvoir… D'autant que je suis très méfiant vis à vis de l'UJF, j'y suis passé. =)
Linotte : pareil que Scratch, ça a l'air ultra limité, et ultra pas aboutit surtout, en plus la syntaxe en français, je suis pas fan.
Maxima : ça devient un peu plus sérieux, ça sert à faire des maths quoi, tourné façon maple. Si c'est très pratique pour tracer des courbes, d'un point de vue algo c'est pas toujours les langages les plus simples, là faut vraiment voir ce que vous êtes sensés faire avec.
Scilab : pareil ça a l'air bien branché maths, mais encore un truc sortit de nos universités qu'on cherche à promouvoir, je serais assez méfiants, le genre de langage qui réinvente en moins bien ce qui a été fait 10x sur des projets plus anciens, mais que quelqu'un a décidé de refaire à sa sauce.
Et le dernier, ça ressemble à une blague, tout juste si on en trouve une trace sur le net.

Bref, la liste, Python mis à part, ça ressemble à une bonne grosse blague, où au genre de choses que seuls nos brillants universitaires déconnectés de la réalité sont capables de nous pondre.

J'ai l'impression qu'on trouve deux séries de langages, certains très orientés maths, d'autres orienté programmation pour ultra débutants. À part Python qu'est un peu un truc à part au milieu de la liste…
J'aurais tendance à te dire que si c'est pour faire des maths, faut mieux négocier une licence maple, au moins c'est une référence dans le domaine.
Si c'est pour faire de la programmation facile, fais leur faire du basic, c'est simple, accessible, tu passeras pas 15 ans à leur enseigner le langage, parce qu'après réflexion, vu le mal qu'ont certains dans les facs scientifiques même sur des langages simples type pascal/java, il faut sans doute mieux pas sortir des choses trop complexes à des lycéens de secondes qu'ont pas forcément de vocation scientifique.

Ou à la limite, dans le genre langage à vocation mathématique, mais qui permet de faire du vrai code facile, tu peux leur faire sortir leurs calculatrices, toutes les calculatrices programmables qu'on refile aux lycéens en leur faisant croire qu'elles sont indispensables (et qu'on interdit aux exams dans les facs scientifiques…) font ça très très bien. Ça suppose de jongler un peu entre les différents modèles par contre.
Y'avait le "R" aussi que j'ai entrevu à la fac, qu'était un langage hyper simple, et pareil avec une bonne vocation mathématique, multiplateforme, mais j'espère juste qu'il y a un moyen de le faire tourner en dehors d'emacs… ;) Quoique c'était peut-être plus poussé sur les stats que sur les maths en général.

En espérant t'avoir été utile, au lieu de t'embrouiller un peu plus… ;)
Bonjour
Je réponds tardivement. Merci pour cette longue analyse que je vais garder dans mon dossier.
Merci beaucoup
Albert
 
Bonjour
Je réponds tardivement. Merci pour cette longue analyse que je vais garder dans mon dossier.
Merci beaucoup
Albert
Garde quand même à l'idée que c'est une analyse en quelques minutes basée sur quelques lignes lues sur wikipedia, et que je n'ai utilisé aucun de ces langages, donc à prendre en compte avec les précautions qui s'imposent.