IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Débats sur le développement - Le Best Of Discussion :

A-t-on vraiment besoin d'avoir été à l'école pour bien programmer ?


Sujet :

Débats sur le développement - Le Best Of

  1. #161
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    309
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 309
    Points : 928
    Points
    928
    Par défaut
    Citation Envoyé par notia Voir le message
    C, C++ sont des langages qui existent depuis plus de 20 ans.
    On est même à un bon 40 ans pour le C...

    Citation Envoyé par notia Voir le message
    Le mec qui il y a 20 ans comprennait le fonctionnement d'un ordinateur, avec une petite mise à jour comprendra le fonctionnement d'un ordinateur de nos jours.
    C'est pas super sympa pour les mecs qui font de l'archi ça. "En fait, vous avez pas fait évolué grand chose en 20 ans".
    Citation Envoyé par notia Voir le message
    1°) se concentrer sur un langage, un unique langage utilisé en masse par le monde de l'entreprise, et son framework
    2°) chaque année se concentrer sur un aspect de l'univers du langage.
    3°) faire des projets sérieux et bien encadré avec le langage appris.
    Franchement, on aurait peut-être une chance d'avoir des étudiant mieux formés
    Et bah punaise, je suis bien content que tu n'aies pas été le responsable de ma formation en informatique, parce que là je serais en train d'élever des chèvres dans le Larzac ! Si on m'avait expliqué "pour toi petit, l'informatique se résumera à programmer en Java. La première année, tu verras les tableaux. La deuxième les objets. Et la troisième l'héritage. Have fun", laisse moi te dire que j'aurais pris mes jambes à mon cou !

    S'il y a des centaines de langages, c'est sans doute avant tout qu'on n'est jamais capable de se mettre d'accord, mais c'est aussi parce qu'il y a plein d'approches différentes, plein de besoins différents, et plein de solutions différentes. Croire que tu vas produire un "bon programmeur" en le faisant coder uniquement en objet sans jamais lui montrer le paradigme fonctionnel, ou en le faisant utiliser uniquement un langage de très haut niveau sans jamais lui expliquer ce que fait un compilo et ce qu'est vaguement une mémoire/de l'assembleur, c'est un rêve un peu étrange...

    Ce qui va faire une formation réussie, c'est justement que le programmeur saura quels outils existent, quelles sont les options qui lui sont proposées, et quels genres de problèmes peuvent être résolus avec. Et s'il n'a vu qu'un seul langage, il se retrouvera régulièrement à tenter de faire rentrer une pièce ronde dans un trou carré avec une petite cuillère, parce que de toutes façons il n'aura jamais rien vu d'autre

    Citation Envoyé par notia Voir le message
    [...] entre en théorie et pratique, il y a tout un monde. Certains diront que le BAC+5 est amené à diriger et pas à pratiquer, je dirais à ceux là, que c'est peut-être encore une abération du système. Diriger c'est quoi ?[...] C'est surtout être confronté à un ensemble d'égos, à des gens qui se croiront meilleur que vous, des gens qui seront complètement désintérressés, des gens motivés, des gens avec des problèmes, etc... Et vous devez faire avec
    Là j'avoue, je ne saisie pas bien la diatribe sur "un mec qui ne pratique pas ne peut pas diriger parce qu'il doit gérer des problèmes d'égo".

  2. #162
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 473
    Points
    473
    Par défaut
    Citation Envoyé par Sehnsucht Voir le message

    Mais là j'aurais une remarque sur un point très précis (ce qui ne veut pas dire que l'entièreté du propos est erronée à mon goût)

    Quid de ce qu'il se passe si l'unique langage étudié est un langage issu d'un phénomène de mode et enclin à péricliter assez rapidement ?
    En fait dans mon propos, j'ai précisé "un langage utilisé en masse par le monde de l'entreprise". C'est ce qui fait la différence entre un effet de mode et un langage qui va durer au moins 10 ans.
    En effet, développer une application peut avoir un coût très élevé. Une entreprise qui doit investir quelque millions dans une application va d'une part utilisée une technologie éprouvée et d'autre part pereniser son investissement sur plusieurs années (souvent > 10 ans).
    Il y a aussi l'effet succes story. Des projets informatiques réussies (délai respecté, budget respecté, niveau de satisfaction atteint, application qui marche, etc...) sont plutot rares. Une entreprise ayant fait l'expérience d'un projet réussie dans une technologie donnée aura tendance à utiliser massivement cette technologie, jusqu'a ce qu'on lui démontre qu'il existe mieux ou encore qu'elle n'a pas d'autre choix que de faire un saut technologique. Soit pour proposer de nouveau service, soit pour minimiser des coûts.
    Quoi qu'il en soi, le cycle d'adoption d'une technologie en entreprise est long.

    Par exemple, la plateforme dotnet est sortie en 2001, elle a commencé à être utilisé en masse en 2007. Aujourd'hui, de grands projets sont initiés avec cette technologie, ce qui donne une espérance de vie de ce langage d'au moins 8 ans. Alors peut-être que d'ici là, il y aura autre chose mais en attendant, il faut bien maintenir l'existant.

    De 2001 à 2010, combien d'écoles ou facultés auront enseigné ce langage?

    Je pense que si les écoles et facultés suivaient ou essayaient de se coller au plus près au cycle d'adoption des technologies en entreprise, les étudiants seraient plus en phase avec le monde de l'entreprise.

    Citation Envoyé par Sehnsucht Voir le message
    [Utopiste]
    Dans l'idéal, il faudrait pour avoir acquérir les concepts inhérents à un paradigme (objet, fonctionnel ...) sans utiliser un langage précis ou plutôt sans un langage du marché.
    Il faudrait pouvoir se faire la main sur les concepts avec un pseudo-langage à but théorique qui regrouperait tous les axiomes du dit-paradigme.
    Et une fois ceci acquis voir l'apprentissage d'un/des langages (fonction du temps et des moyens du cursus/prof) en relevant les différences de parti-pris de ce langage avec le paradigme englobant ; par exemple: C# ou java et l'absence d'héritage multiple.
    [/Utopiste]
    En fait, je dirais qu'un langage de programmation s'apprend rapidement. Ce qui est difficile c'est le fait d'utiliser les ressources d'un ordinateur dans le but de faire une application. C'est le langage de programmation qui nous permet de manipuler ces ressources. Mais passer son temps à apprendre un langage, ne nous permet d'appréhender la difficulté de la manipulation des ressources.
    Il y a 25 ans, les développeurs manipulaient ces ressources à l'état brute (=> bit). Aujourd'hui les développeur manipulent des formes d'abstraction de plus haut niveau. Ce sont les framework, API, bibliotheque, DLL, etc.... Demain se sera certainement autre chose.
    Mais le concept à la base, qui est la manipulation de bit, n'aura pas évoluer.

    Que l'on passe d'un paradigme à un autre, qu'on face de l'objet ou pas, du fonctionnel ou pas. La difficulté reste la même, manipuler les ressources de l'ordinateur soit directement via les bits ou soit au travers de formes d'abstractions plus élevées (framework, api, dll, etc...)

    D'ailleur, programmer, pour moi, c'est l'art de manipuler les ressources d'un ordinateur afin d'obtenir le résultat souhaité.

  3. #163
    Membre éprouvé

    Homme Profil pro
    non
    Inscrit en
    Mai 2008
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : non

    Informations forums :
    Inscription : Mai 2008
    Messages : 394
    Points : 1 116
    Points
    1 116
    Par défaut
    Citation Envoyé par notia Voir le message
    [...]
    Il y a 25 ans, les développeurs manipulaient ces ressources à l'état brute (=> bit). Aujourd'hui les développeur manipulent des formes d'abstraction de plus haut niveau..
    [...]
    En passant rapidement, je répondrais au reste plus tard car je suis déjà en retard sur l'heure du dodo, mais ça fait déjà 40 ans que des langages de haut niveau existent et permettent de se passer des manipulations bas niveau...

    Pour un triste exemple, voir mon avatar.

    Forcer la main aux gens en les dirigeant vers des technologies bien ciblées et formatter les cadres des entreprises avec des "c'est cette technologie là qui rapporte, il faut capitaliser au maximum dessus" provoque un effet plutôt néfaste : l'abandon des autres technologies moins "célèbres" ou simplement "moins à la mode".

    Donc c'est ne pas ouvrir l'esprit à des choses potentiellement intéressantes et s'enfermer dans une cage, car une fois qu'on a fait pression sur les écoles pour qu'elles ne forment que des développeurs dot net (pour l'exemple), le jour où on se rend compte qu'on a besoin d'une autre technologie, on est simplement... baisé. Pas d'autre mot.

    C'est également tirer le niveau par le bas et forcer une homogénéité des compétences, donc pas d'innovation et abandon de technologies parfois plus efficaces/puissantes/profitables au profit de technologies "de mode".
    [|]

  4. #164
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 473
    Points
    473
    Par défaut
    Citation Envoyé par TropMDR Voir le message
    C'est pas super sympa pour les mecs qui font de l'archi ça. "En fait, vous avez pas fait évolué grand chose en 20 ans".
    Qu'est-ce qu'un PC d'aujourd'ui a de plus par rapport à un PC d'il y a 20 ans à part un CPU plus rapide, plus de mémoire, des carte graphique plus performante

    Citation Envoyé par TropMDR Voir le message
    Et bah punaise, je suis bien content que tu n'aies pas été le responsable de ma formation en informatique, parce que là je serais en train d'élever des chèvres dans le Larzac ! Si on m'avait expliqué "pour toi petit, l'informatique se résumera à programmer en Java. La première année, tu verras les tableaux. La deuxième les objets. Et la troisième l'héritage. Have fun", laisse moi te dire que j'aurais pris mes jambes à mon cou !

    S'il y a des centaines de langages, c'est sans doute avant tout qu'on n'est jamais capable de se mettre d'accord, mais c'est aussi parce qu'il y a plein d'approches différentes, plein de besoins différents, et plein de solution différentes. Croire que tu vas produire un "bon programmeur" en le faisant coder uniquement en objet sans jamais lui montrer le paradigme fonctionnel, ou en le faisant utiliser uniquement un langage de très haut niveau sans jamais lui expliquer ce que fait un compilo et ce qu'est vaguement une mémoire/de l'assembleur, c'est un rêve un peu étrange...
    Former un étudiant, en le faisant découvrir un langage+framework dans son intégralité est nettement plus pédagogique que de découvrir 30 000 milles langages.
    Deplus, je n'ai pas dit qu'il fallait supprimer des cours la théorie des langages et complexités. Qui sont des cours où les étudiants sont censés entrevoir ce que la théorie permet.

    Citation Envoyé par TropMDR Voir le message
    Ce qui va faire une formation réussie, c'est justement que le programmeur saura quels outils existes, quelles sont les options qui lui sont proposées, et quels genre de problèmes peuvent être résolus avec. Et s'il n'a vu qu'un seul langage, il se retrouvera régulièrement à tenter de faire rentrer une pièce ronde dans un trou carré avec une petite cuillère, parce que de toutes façons il n'aura jamais rien vu d'autre
    Ce qui fera ton succes en entreprise, ce n'est pas le fait que tu connaisses un peu de tout. Mais le fait que tu connaisses une chose, demandée, et surtout que tu maitrises cette chose.

    Citation Envoyé par TropMDR Voir le message
    Là j'avoue, je ne saisie pas bien la diatribe sur "un mec qui ne pratique pas ne peut pas diriger parce qu'il doit gérer des problèmes d'égo".
    Si le fait d'avoir un bac+5 a pour objectif d'amener un étudiant à "manager", peut-être qu'il faudrait réellement mettre en place des formations de managements, de gestions de crise, etc...

    La pluspart des étudiants en quittant l'école sont entre deux chaises et apprennent tout sur le tas. Ils apprennent à développer sur le tas, ils apprennent à faire un "functionnal design" sur le tas, ils apprennent à diriger une équipe sur le tas, ils apprennent à gérer une crise sur le tas.

  5. #165
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 473
    Points
    473
    Par défaut
    Citation Envoyé par maske Voir le message
    En passant rapidement, je répondrais au reste plus tard car je suis déjà en retard sur l'heure du dodo, mais ça fait déjà 40 ans que des langages de haut niveau existent et permettent de se passer des manipulations bas niveau...
    Peut-être, mais je rappelle surtout d'une époque, il fallait surtout déplacer des bits, pour faire du graphisme. Contrairement à maintenant où nous avons directx, opengl.

    Citation Envoyé par maske Voir le message

    Forcer la main aux gens en les dirigeant vers des technologies bien ciblées et formatter les cadres des entreprises avec des "c'est cette technologie là qui rapporte, il faut capitaliser au maximum dessus" provoque un effet plutôt néfaste : l'abandon des autres technologies moins "célèbres" ou simplement "moins à la mode".
    Parce que forcer des étudiants à apprendre le C++, ADA, prolog, cobol et autres durant tout leur cursus, c'est leur permettre de s'ouvrir l'esprit et de se créer de réelles oportunités dans l'avenir.

    Apprendre le langage JAVA sans savoir utiliser les API, a-t-il un sens? A l'heure du développe web, enseigner java sans J2EE est-ce normal.


    Citation Envoyé par maske Voir le message
    Donc c'est ne pas ouvrir l'esprit à des choses potentiellement intéressantes et s'enfermer dans une cage, car une fois qu'on a fait pression sur les écoles pour qu'elles ne forment que des développeurs dot net (pour l'exemple), le jour où on se rend compte qu'on a besoin d'une autre technologie, on est simplement... baisé. Pas d'autre mot.
    Dans les cursus, il me semble que l'on a ce qu'on appelle les options. Ce qui permettrait aux étudiants ayant des affinités avec tel ou tel technologie d'en suivre les cours.


    Citation Envoyé par maske Voir le message
    C'est également tirer le niveau par le bas et forcer une homogénéité des compétences, donc pas d'innovation et abandon de technologies parfois plus efficaces/puissantes/profitables au profit de technologies "de mode".
    En quoi le fait de s'appuyer sur un framework, une technologie afin de fixer les idées sur des concepts tire le niveau vers le bas.

  6. #166
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    188
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 188
    Points : 140
    Points
    140
    Par défaut
    Citation Envoyé par TropMDR Voir le message
    C'est sûr, hier encore, je me disais que si j'y avais mis un peu plus de motivation, j'aurais pu être chirurgien du cerveau ! Je n'avais qu'à acheter les bon bouquins, et wikipedia aurait fait le reste.
    Il faut pas tout mélanger, les cours a la fac ou a l'école ne rajoutent aux livres que le prof, évidement c'est important mais tout le monde n'a pas besoin d'un prof. puis faut être à coté pour comparer l'informatique et la chirurgie du cerveau, donnant un une personne plein de bouquins sur la chirurgie et 1 corps par jour pour s'entrainer (en informatique le contexte est disponible et permet de s'initier et s'entrainer ) et on verra ce que ca donne au bout de 5 ans

    L'informatique est aussi trop large est dépend des métiers. Les métiers il y'en a en masse et pour moi il faut distingué le domaine de la recherche des autres si tu veux résoudre des NP je pense pas que ca sera un poste à part entière chez une banque qui cherche a renouvelé son système d'information,

    Un ingénieur débutant à besoin de quoi ? connaitre les méthodologie, l'analyse, le bon sens, les langages de programmation... est ce que ces domaines paraissent tellement complexes ? personnellement je pense qu'il sont a la porté d'une personne qui veux vraiment s'y investir.

  7. #167
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    309
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 309
    Points : 928
    Points
    928
    Par défaut
    Citation Envoyé par spax Voir le message
    Il faut pas tout mélanger, les cours a la fac ou a l'école ne rajoutent aux livres que le prof,
    Une voiture de formule1 ne rajoute à la boite à savon que le moteur hein.
    Déjà, une formation n'est pas juste un aggloméra de cours. C'est aussi et surtout un cursus, avec une diversité et une logique. Très souvent vu le nombre d'heure à faire, l'élève est obligé de prendre des cours qui ne "l'intéresse pas", et qui lui semblent inutile. C'est après seulement (parfois plusieurs années après) qu'il se rend compte qu'il y a réellement après quelque chose. Combien d'élèves n'auraient jamais pris un cours de compilation et se rendent compte après qu'il comprennent beaucoup mieux ce qu'il font (et pourquoi ce qu'ils faisaient avant était débile) après ça ? Combien d'élèves n'auraient jamais approché un langage fonctionnel et se retrouve à utiliser ensuite des structures persistante dans leur langage impératif préféré, ou a utiliser quelques lambda expression bien placées ? Combien d'élèves ont râlé parce qu'il ont bouffé des heures de calculs de complexité, mais sont bien content le jour où face au programme de quelqu'un d'autre, ils disent en moins de 30 secondes "mais c'est quadratique ton truc là, alors que tu peux le faire en pseudo linéaire sans problème !" ? Combien d'élève ont vomis les cours d'algo sur les listes, les arbres, les tas, les tries (et les tris, mais c'est pas pareil) pour se retrouver à les utiliser après ?

    Citation Envoyé par spax Voir le message
    évidement c'est important mais tout le monde n'a pas besoin d'un prof.
    Je pense que le vrai problème est que tout le monde n'a pas conscience d'avoir besoin d'un prof.
    Après bien sûr, il y a sans doute des gens assez brillant et motivé pour se lever un matin et se dire "tiens, aujourd'hui, je vais m'acheter le Cormen et me le lire de A à Z, et quand j'aurais fini, je prendrai Développement d'application en Objective Caml, à l'issue, je passerai à Modern Compiler Implementation et si ça me suffit pas je me dévorerai le dragon book, puis j'irais faire un peu de théorie avec Types and Programming Languages, et touché par la grâce des langages fonctionnel je lirai Purely Functional Data Structures avant de retourner à un truc un peu plus roots avec The Art of Computer Programming et de finir admiratif devant Beautiful Code". C'est possible que ça existe, je n'en doute pas. Après bon, c'est sans doute pas la majorité... En revanche, des mecs qui se lèvent et se disent "c'est trop lol, j'ai lu un tutoriel PHP et deux discussion dans la rubrique Best Of de dvp.net, je suis trop un leet maintenant, je sais programmer parce que je crois avoir compris ce qu'est un pointeur et que je sais faire clignoter ma page web écrite en PHP copié-collé de l'exemple", ça, on en voit un triste paquet.

    Citation Envoyé par spax Voir le message
    puis faut être à coté pour comparer l'informatique et la chirurgie du cerveau, donnant un une personne plein de bouquins sur la chirurgie et 1 corps par jour pour s'entrainer (en informatique le contexte est disponible et permet de s'initier et s'entrainer ) et on verra ce que ca donne au bout de 5 ans
    Je ne sais pas à coté de quoi je suis, mais clairement, j'y suis. Premièrement, combien d'auto-didacte attendent 5 ans pour se considérer comme "formés" ?

    Citation Envoyé par spax Voir le message
    L'informatique est aussi trop large est dépend des métiers. Les métiers il y'en a en masse et pour moi il faut distingué le domaine de la recherche des autres si tu veux résoudre des NP je pense pas que ca sera un poste à part entière chez une banque qui cherche a renouvelé son système d'information,
    Peut être que si plus de "programmeur qui ne font que s'occuper des système d'information" avaient quelques notions théorique, certaines horreurs que l'ont croise n'existeraient pas.

    Citation Envoyé par spax Voir le message
    Un ingénieur débutant à besoin de quoi ? connaitre les méthodologie, l'analyse, le bon sens, les langages de programmation... est ce que ces domaines paraissent tellement complexes ? personnellement je pense qu'il sont a la porté d'une personne qui veux vraiment s'y investir.
    Bah écoute, si tu penses que "la méthodologie, l'analyse, le bon sens, les langages de programmation" ce n'est pas "tellement complexes", de deux choses l'une. Soit tu es un génie, et il faudrait que tu admettes que ce n'est pas le cas de tout le monde. Soit tu n'as aucune idée de ce qui se cache réellement derrière ces notions...

  8. #168
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 473
    Points
    473
    Par défaut
    Citation Envoyé par TropMDR Voir le message
    Je pense que le vrai problème est que tout le monde n'a pas conscience d'avoir besoin d'un prof.
    Je pense que le vrai, problème c'est le décalage entre les écoles et le monde de l'entreprise et surtout un décalage entre ce que recherche les étudiants et ce que propose les écoles. Un mec qui se tape 5 ans d'étude apres le BAC n'attends qu'une chose, trouvé du taff à la sorti. Mais pour trouver du taff, il faut avoir une formation en cohérence avec le marché de l'emploi. Rare sont les jeunes diplomés qui n'ont pas besoin d'être formé en sorti d'école.

    Les cours théoriques m'ont énormément apporté. Et je n'ai pas eu à attendre des années avant de me rendre compte de leur utilité. Je parle des cours tels que la thérorie de langage, la complexité, l'analyse de donnée, les cours d'algorithme, cours d'optimisation, théorie de graphes, système et réseau, mathématique, etc... Tous ces cours m'ont apporté le baggage nécessaire afin d'approndir ma recherche personnelle.

    A contrario tous les cours pratiques, c++, prolog, ada, cobol, etc... C'était une pure perte de temps pour moi, car en décalage par rapport au marché du travail. Le pire c'est qu'au bout du bout, il y a un examen sur feuilles pour ces cours. 4 heures de cours par semaines, qui franchement aurait pu servir à autre chose.

    Et si j'ai ce sentiment de ne pas avoir besoin d'un prof, c'est peut-être parce que je me suis initié tout seul aux nouvelles technologies. Ce qui n'est pas normal.

  9. #169
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 7
    Points : 9
    Points
    9
    Par défaut A-t-on vraiment besoin d'avoir été à l'école pour bien programmer ?
    Tout dépend du degré du langage choisi, et de l'objectif intentionnel ; ...

    Car si l'on prend un langage de bas niveau, il est fort probable, que sans une infrastructure ad hoc et un minimum de connaissance, ne serait ce qu'en logique, ça paraît plus compliqué ? …

    Cependant, pour une programmation « relative », et sans prétention ; …

    Ça reste dans le domaine du possible.


    Cordialement.

  10. #170
    Membre éprouvé

    Homme Profil pro
    non
    Inscrit en
    Mai 2008
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : non

    Informations forums :
    Inscription : Mai 2008
    Messages : 394
    Points : 1 116
    Points
    1 116
    Par défaut
    Citation Envoyé par notia Voir le message
    Je pense que le vrai, problème c'est le décalage entre les écoles et le monde de l'entreprise et surtout un décalage entre ce que recherche les étudiants et ce que propose les écoles. Un mec qui se tape 5 ans d'étude apres le BAC n'attends qu'une chose, trouvé du taff à la sorti. Mais pour trouver du taff, il faut avoir une formation en cohérence avec le marché de l'emploi. Rare sont les jeunes diplomés qui n'ont pas besoin d'être formé en sorti d'école.
    Le vrai problème, c'est la connerie de dire "il faut se caler sur ce que font les industriels".

    Implicitement, ça veut dire "enseigner ce qui est dans l'air du temps... et imposé par le marché !". C'est comme ça qu'on tue non seulement des technologies qui méritent leur place, mais également l'innovation et l'ouverture d'esprit des développeurs.

    Le Cobol, CamL, Smalltalk, ADA, VxWorks, etc... ne sont pas enseignés pour faire souffrir les étudiants. Ils sont enseignés parce que, en plus d'être utilisés dans certaines branches de l'industrie, ils initient l'étudiant aux principes fondateurs de l'informatique, via des bases solides et concrètes.

    Moi je suis content d'avoir commencé par CamL les premières années : non, on ne trouve pas facilement de travail en CamL, mais les connaissances, les principes et la discipline acquis se retrouvent dans beaucoup d'autres langages/technologies.

    En un mot, ce qui compte, c'est la culture et la capacité d'adaptation.

    En ouvrant le champ des connaissances de l'étudiant, ces langages lui donnent des bases qu'il va retrouver à d'autres endroits, une culture qu'il pourra exploiter s'il a besoin d'idées, et surtout la capacité à s'adapter/rechercher seul dans de la documentation/communiquer avec d'autres pour partager les connaissances.


    Si on faisait tous du Java, on aurait bien du mal à tenir tous les défis technologiques qui se posent devant nous aujourd'hui, et aucun de nous ne pourrait se démarquer pour proposer des solutions différentes.

    Aucun moyen de collaboration entre technologies non plus, puisque tout le monde ne fait que du Java - rupture avec le monde de la recherche, plus d'innovation et enfin, fermeture d'esprit et compétences homogènes pour tous les développeurs (salaires égaux au passage, du coup, je vois pas pourquoi les employeurs feraient la différence).


    Pour conclure, il y a normalement un stage ou une alternance lors d'un cycle ingénieur ou universitaire : c'est le premier pas en entreprise et c'est celui qui apporte la première expérience significative pour trouver un premier travail.

    L'école ou la fac, c'est pour acquérir un background et se préparer à rentrer dans l'action. C'est pas pour démouler un schtroumpf qui va pouvoir coder comme un dieu dès le premier jour.
    [|]

  11. #171
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 473
    Points
    473
    Par défaut
    Citation Envoyé par maske Voir le message
    Le vrai problème, c'est la connerie de dire "il faut se caler sur ce que font les industriels".
    Sommes-nous bien d'accord sur le fait que l'école a pour objectif de faciliter l'intégration dans le monde du travail ?

    Citation Envoyé par maske Voir le message
    Implicitement, ça veut dire "enseigner ce qui est dans l'air du temps... et imposé par le marché !". C'est comme ça qu'on tue non seulement des technologies qui méritent leur place, mais également l'innovation et l'ouverture d'esprit des développeurs.
    Ou se trouve l'aberration? L'école et surtout l'université devrait être le premier réservoir de nouvelles technologie. Ce que tu décris, c'est le modèle français, un modèle à la traine. Ce qui n'est pas vrai, ailleurs. Si on prend l'école d'informatique de Leeds (Angletterre) par exemple, déja en 2005, les étudiants travaillaient sur des technologies multitouch. Les étudiants sont encouragés à travailler sur de nouvelles technologies (ce qui est dans l'air du temps comme vous le dites) et même à aller plus loin. Certains diront qu'il y a un problème de moyen. Mais a t on besoin de grands moyens en informatique.
    En informatique, il faut juste un ordinateur et une idée.



    Citation Envoyé par maske Voir le message
    Le Cobol, CamL, Smalltalk, ADA, VxWorks, etc... ne sont pas enseignés pour faire souffrir les étudiants. Ils sont enseignés parce que, en plus d'être utilisés dans certaines branches de l'industrie, ils initient l'étudiant aux principes fondateurs de l'informatique, via des bases solides et concrètes.
    Si ces principes sont valables pour des langages d'actualités, pourquoi ne pas enseigner des langages d'actualité.
    Ce qui initie l'étudiant aux principes fondateurs de l'informatique, via des bases solides et concrètes, c'est la théorie et non le fait d'apprendre des langages ou technologies qui ne sont plus d'actualité.
    C'est la théorie (=> science) qui va décrire le champs des possibilités dans un domaine définie.
    La technique, quand à elle, essaie d'appliquer la théorie dans la mesure du possible et évolue dans le champ de possibilité que lui offre la théorie.
    Question, si on sait que la technique en 2010 a évolué par rapport à ce qui se faisait dans les années 90, pourquoi continuer à enseigner des techniques et technologies des années 90.
    J'ai souvent entendu la maxime suivante: On vous apprend à apprendre. Justement, pourquoi ne pas laisser ceux qui sont vraiment intéressés (une minorité) par les techniques du passé se débrouiller par eux même et enseigner aux autres (la majorité) les techniques d'aujourd'hui.

    Citation Envoyé par maske Voir le message
    Moi je suis content d'avoir commencé par CamL les premières années : non, on ne trouve pas facilement de travail en CamL, mais les connaissances, les principes et la discipline acquis se retrouvent dans beaucoup d'autres langages/technologies.
    Heureux pour vous. Mais soi dit en passant, ces principes et disciplines vous auriez pu les apprendre directement dans une technologie d'actualité.


    Citation Envoyé par maske Voir le message
    En un mot, ce qui compte, c'est la culture et la capacité d'adaptation.
    Et oui tout le monde à tendance à croire que nous sommes tous des génies.
    Malheureusement, certains ont besoin d'être encadré. Que faisons nous d'eux ? On les jette?

    Citation Envoyé par maske Voir le message
    En ouvrant le champ des connaissances de l'étudiant, ces langages lui donnent des bases qu'il va retrouver à d'autres endroits, une culture qu'il pourra exploiter s'il a besoin d'idées, et surtout la capacité à s'adapter/rechercher seul dans de la documentation/communiquer avec d'autres pour partager les connaissances.
    Je me répète, ce qui ouvre le champs des connaissances de l'étudiant c'est la théorie.
    Et vous aurez beau faire ce que vous voulez, dans la pratique, vous ne pourrez pas aller plus loin que ce que dit la théorie (sauf cas exceptionnel où théorie incomplète ou fausse)

    Citation Envoyé par maske Voir le message
    Si on faisait tous du Java, on aurait bien du mal à tenir tous les défis technologiques qui se posent devant nous aujourd'hui, et aucun de nous ne pourrait se démarquer pour proposer des solutions différentes.
    Expliquez moi pourquoi?
    Pourquoi quelqu'un ayant appris le JAVA et ayant tout le baggage théorique nécessaire ne saurait pas tenir tous les défies technologiques d'aujourd'hui?
    Explique moi pourquoi quelqu'un qui aurait appris le JAVA ou autre technologie d'actualité ne saurait pas se mettre à une autre technologie?

    Alors on croit aux capacités des étudiants de pouvoir passer de cobol, caml ou c, etc... aux JAVA,J2EE, Dotnet,etc... tout seul. Mais pas l'inverse.
    Sachant que les mécanismes mise en place dans JAVA,J2EE et Dotnet (pour ne citer qu'eux) sont infiniment plus complexe que les premiers.

    Citation Envoyé par maske Voir le message
    Aucun moyen de collaboration entre technologies non plus, puisque tout le monde ne fait que du Java - rupture avec le monde de la recherche, plus d'innovation et enfin, fermeture d'esprit et compétences homogènes pour tous les développeurs (salaires égaux au passage, du coup, je vois pas pourquoi les employeurs feraient la différence).
    L'innovation, c'est quoi pour vous? c'est savoir utilisé des dixaine de langages et technologies ou c'est partant de la théorie et d'une technologie, peu importe laquelle, développer de nouveaux concepts? Dans le deuxième cas, on a pas besoin de connaitre des dizaines de langages et technologies. Il en faut un, juste un qu'on maitrise de bout en bout.

    Citation Envoyé par maske Voir le message
    Pour conclure, il y a normalement un stage ou une alternance lors d'un cycle ingénieur ou universitaire : c'est le premier pas en entreprise et c'est celui qui apporte la première expérience significative pour trouver un premier travail.
    Le stage c'est fait pour comprendre comment fonctionne le monde de l'entreprise, pas pour apprendre tel ou tel technologie

    Citation Envoyé par maske Voir le message
    L'école ou la fac, c'est pour acquérir un background et se préparer à rentrer dans l'action. C'est pas pour démouler un schtroumpf qui va pouvoir coder comme un dieu dès le premier jour.
    Prend on des cours d'anglais parce qu'on sais déja parler l'anglais, et on veux juste se préparer à une mise en action?
    Prend on des cours d'arts martiaux parce qu'on sait déja se battre et qu'on veux juste se préparer à rentrer en action?
    Prend on des cours de droit juste parce qu'on maitrise le droit et on veux juste se préparer à une mise en action?
    Mais j'ai mieux, prend on des cours de médecine par ce qu'on est déja medecin, et qu'on veut juste faire un rafraichissement ?

    Ce que tu dis montre l'absurdité du système dans l'enseignement informatque. Aujourd'hui, tu es développeur à la sorti d'une école parce qu'avant d'y entrer tu l'étais (ou pratiquement).
    Pour rappel la préparation de la mise en action s'appelle faire un stage et non école.

  12. #172
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 473
    Points
    473
    Par défaut
    Je rajoute, actuellement il y a un boom technologique qui s'amorce avec le smartphone, le cloud, de nouvelles façon d'interragir avec l'ordinateur (=> Kinect, vision 3D, etc...), de nouvelles techniques pour concevoir des applications, etc...
    Un étudiant qui commence sa formation, aujourd'hui, qui va se taper des cours comme c, ada, caml, etc... Des cours d'architectures, réseau, os basés sur les années 90. A sa sorti (5 ans plus tard), cet étudiant sera complètement à la ramasse et ne sera pas embauchable. Tant l'investissement, pour le mettre à niveau sera conséquent.

    En continuant à alimenter un tel système on va droit dans le mur.

    Pour moi, c'est un problème qui est grave. Et j'espère qu'université et école en ont conscience et réflechissent à une solution.

  13. #173
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    309
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 309
    Points : 928
    Points
    928
    Par défaut
    Citation Envoyé par notia Voir le message
    Je pense que le vrai, problème c'est le décalage entre les écoles et le monde de l'entreprise et surtout un décalage entre ce que recherche les étudiants et ce que propose les écoles.
    "ce que recherchent les étudiants" ??? Mais les étudiants n'ont aucune vision d'ensemble ! Effectivement, si on écoutait les étudiants, ils n'auraient que des cours de java...

    Citation Envoyé par notia Voir le message
    Un mec qui se tape 5 ans d'étude apres le BAC n'attends qu'une chose, trouvé du taff à la sorti.
    Non, c'est faux. Il s'attend aussi a avoir eu une formation suffisamment solide pour lui permettre de faire face aux évolutions du marché du travail. Tu sembles ne voir les études supérieures (5 ans après le bac pourtant...) que comme une formation au premier emploi, sans aucun objectif à long terme ! Une carrière maintenant, c'est peut être quelque chose comme 40 ans. Donc former un jeune uniquement pour qu'il soit apte le plus vite possible en sortie d'école à cracher des lignes de J2E, c'est une vision à bien court terme.

    Citation Envoyé par notia Voir le message
    Mais pour trouver du taff, il faut avoir une formation en cohérence avec le marché de l'emploi. Rare sont les jeunes diplomés qui n'ont pas besoin d'être formé en sorti d'école.
    Evidement qu'ils ont besoin d'être formé ! Même si son métier ce sera "cracher du java" et qu'il a fait 5 ans de java uniquement, il faudra le former aux coding rules spécifiques de la boîtes, aux librairies particulières utiliser, à la façon locale de faire les tests unitaires, les processus de release, etc. Ce qu'attend une entreprise, ce n'est pas un codeur qui est lancé au rythme de croisière de 200 lignes à l'heure out of the box. C'est quelqu'un qui arrivera à comprendre les spécificités de la boîte au plus vite, et s'adaptera le plus rapidement possible.


    Citation Envoyé par notia Voir le message
    Ou se trouve l'aberration? L'école et surtout l'université devrait être le premier réservoir de nouvelles technologie.
    [...]
    Question, si on sait que la technique en 2010 a évolué par rapport à ce qui se faisait dans les années 90, pourquoi continuer à enseigner des techniques et technologies des années 90.
    [...]
    J'ai souvent entendu la maxime suivante: On vous apprend à apprendre. Justement, pourquoi ne pas laisser ceux qui sont vraiment intéressés (une minorité) par les techniques du passé se débrouiller par eux même et enseigner aux autres (la majorité) les techniques d'aujourd'hui.
    Alors là, je ne comprends plus ! Tu nous disais qu'il fallait être "en accord avec le monde de l'entreprise". Le monde de l'entreprise, ce sont des dizaines de banques qui codent en cobol, des boîtes qui font du C parce que "ça va vite" et des milliers de SSII qui pissent du java. Elle est où la nouvelle technologie là dedans ??


    Citation Envoyé par notia Voir le message
    Alors on croit aux capacités des étudiants de pouvoir passer de cobol, caml ou c, etc... aux JAVA,J2EE, Dotnet,etc... tout seul. Mais pas l'inverse.
    Sachant que les mécanismes mise en place dans JAVA,J2EE et Dotnet (pour ne citer qu'eux) sont infiniment plus complexe que les premiers.
    Ah bah voilà, maintenant je comprends tout ! Tu n'as aucune idée de ce qui se fait à coté des langages main-stream, de ce nivellement par le bas du monde de l'entreprise ! Penser que java est "infiniment plus complexe" que caml, c'est une énorme blague. Mais je pense que c'est un excellent exemple de "pourquoi les écoles ne devraient pas former juste aux "technologie qu'utilisent les entreprises": en 2004, sun a sorti java 5. Et là, révolution technologique, ils ont introduit les generics. Il était maintenant possible de définir une "liste chainée" contenant un certain type A, et pas juste object. C'était beau, c'était nouveau.

    Les programmeurs java se sont émerveillé devant la prouesse technologique et ce sont dit qu'un de ces jours ils allaient se pencher sur la question pour comprendre ce que ça veut dire.

    Les gens qui avaient fait par exemple du caml ont dit "ah bah p*tain! pas trop tôt enfin du vrai polymorphisme !". Pour déchanter rapidement en constatant les horribles limitations des generics. (Et là je parle d'utilisateurs "légers" de caml. Quelqu'un qui a déjà utilisé les objets en ocaml a réellement envie d'étriper les designer du modèle objet de java).

    Quand un langage intègre la possibilité de passer des fonctions en arguments, et même de laisser une fonction capturer son environnement via une fermeture, les programmeurs s'émerveillent devant cette révolution qui va tant faciliter l'écriture d'interface graphique avec des fonctions de call-backs. Ceux qui avaient un peu vu autre chose dans leur vie se disent qu'il était plus que temps.

    Tu dis et redis qu'il faut que l'université soit à la pointe de la technologie et n'enseigne que ce que veulent les entreprises. C'est tristement totalement contradictoire, puisque les entreprises ont entre 20 et 30 ans de retard.

    Citation Envoyé par notia Voir le message
    Ce que tu dis montre l'absurdité du système dans l'enseignement informatque. Aujourd'hui, tu es développeur à la sorti d'une école parce qu'avant d'y entrer tu l'étais (ou pratiquement).
    Ceux là sont mes pires élèves. Ceux qui me regardent de haut parce que dans une boucle en C j'ai mis i++ à la place de ++i et que "tout le monde sait bien que ça va plus lentement", ceux qui optimisent leur code avant d'avoir quelque chose de même vaguement correcte, ceux qui, quand ils ont un programme qui ne marche pas et m'appelle pour tenter de comprendre ce qui ne va pas, me répondent "non mais c'est bon, y a aucun doute" à chaque fois que je leur demande s'ils sont sûr de ce morceau de code...(mais euh, si tout est bon sans aucun doute, comment expliquer que l'ensemble ne marche pas ???). Tout ceux qui pensent "savoir programmer" parce qu'il ont fait un sudoku en lisant un tutoriel sur le net, et qui soupirent quand on fait un cours sur les tris parce que "plus personne ne programme un algo de tri, on utilise juste une librairie".

    Au final ceux qui s'en sortent le moins mal sont ceux qui ne "savaient pas" programmer ou qui arrivent à se convaincre d'oublier ce qu'ils ont appris, et peuvent alors réellement profiter de l'enseignement qu'ils reçoivent.

  14. #174
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Points : 4 637
    Points
    4 637
    Par défaut
    Citation Envoyé par notia Voir le message
    Je rajoute, actuellement il y a un boom technologique qui s'amorce avec le smartphone, le cloud, de nouvelles façon d'interragir avec l'ordinateur (=> Kinect, vision 3D, etc...), de nouvelles techniques pour concevoir des applications, etc...
    Oui, enfin il faut relativiser le "boom technologique qui s'amorce" :
    • Le smartphone : il y a une douzaine d'année alors que j'étais en école d'ingé, il y avait déjà des travaux dessus (et pas uniquement théorique) même si on parlait plus de rapprochement entre téléphone mobile et PDA que de smartphone.
    • Le cloud : les applications centralisées avec clients légers, c'est pas nouveau non plus. On a juste un changement d'échelle (passage de réseaux locaux à un réseau mondial).
    • Kinect, vision 3D : là aussi ce n'est pas si nouveau que ça (ça existe depuis quand le futuroscope ?).


    Ce ne sont pas des technologies qui viennent d'apparaître, certaines sont même assez anciennes. Par contre elles deviennent de plus en plus maitrisées et performantes, de moins en moins chères et surtout deviennent grand public.

    Certes il y a eu de nombreux progrès c'est indéniable. Mais pas un saut technologique violent ces dernières années.

    Citation Envoyé par notia Voir le message
    Un étudiant qui commence sa formation, aujourd'hui, qui va se taper des cours comme c, ada, caml, etc... Des cours d'architectures, réseau, os basés sur les années 90. A sa sorti (5 ans plus tard), cet étudiant sera complètement à la ramasse et ne sera pas embauchable.
    Le C est encore énormément utilisé. De ce que j'en sait Ada aussi dans certains domaines.
    Caml semble être plus confidentiel en entreprise mais présent dans les labos. En outre vu le nombre de techniques issus des langages fonctionnels qui commence à arriver dans les langages mainstream voire du nombre de langages fonctionnels qui sont développés actuellement pour tourner dans les environnement managé Java ou .Net, je doute fortement que ce soit une perte de temps d'étudier Caml, Lisp ou Haskell en école.

    L'évolution des langages utilisés par l'industrie se fait essentiellement par intégration de techniques existantes (issus fréquemment de langages dits universitaires).

    Quant à l'architecture, réseau et OS, effectivement il y a eu d'énorme progrès ces dernières années mais une très grande partie de ce qui était vrai en 90 l'est encore.
    En outre, bien que les choses aient fortement changées dans des domaines comme les consoles et téléphones portables, il existe une multitude d'appareils qui n'ont pour ainsi pas évolués ou qui ont actuellement une architecture équivalente à ce qui se faisait il y 10 ou 20 ans sur des PC.

  15. #175
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 473
    Points
    473
    Par défaut
    Citation Envoyé par TropMDR Voir le message
    "ce que recherchent les étudiants" ??? Mais les étudiants n'ont aucune vision d'ensemble ! Effectivement, si on écoutait les étudiants, ils n'auraient que des cours de java...
    Les étudiants ne savent peut-etre pas comment atteindre leur but, mais ils en ont certainement un. C'est à l'école de les aider à atteindre ce but. Et la majorité des étudiants ne cherchent qu'à gagner de l'argent apres leurs étudent. Et ca commence déja par un premier job.

    Ils veulent du JAVA par ce que c'est ce qui marche, ils ne sont pas dup. Maintenant, c'est à l'école de dire ok, vous aurez du java, vous aurez du dotnet, mais à coté vous aurez l'enseignement théorique qui va vous permettre de rebondir (algorithme, graphe, optimisation ,math, etc...)
    De la à dire que cette enseignement théorique passe par l'apprentissage de cobol et compagnie je dis non.



    Citation Envoyé par TropMDR Voir le message
    Non, c'est faux. Il s'attend aussi a avoir eu une formation suffisamment solide pour lui permettre de faire face aux évolutions du marché du travail. Tu sembles ne voir les études supérieures (5 ans après le bac pourtant...) que comme une formation au premier emploi, sans aucun objectif à long terme ! Une carrière maintenant, c'est peut être quelque chose comme 40 ans. Donc former un jeune uniquement pour qu'il soit apte le plus vite possible en sortie d'école à cracher des lignes de J2E, c'est une vision à bien court terme.
    Déja, trouver un premier emploi serait pas mal. Apres, l'évolution de carrière dépend des souhaits et volonté de chacun. Mais, j'ai connu peu de personnes qui ont su me dire que ce qu'ils ont vu à l'école à servi à ca ou ca. Par contre, j'ai souvent entendu "Ce qui compte c'est le diplome".
    Quand à l'évolution, certains font des formations, d'autres comptent sur l'expérience.

    Citation Envoyé par TropMDR Voir le message
    Evidement qu'ils ont besoin d'être formé ! Même si son métier ce sera "cracher du java" et qu'il a fait 5 ans de java uniquement, il faudra le former aux coding rules spécifiques de la boîtes, aux librairies particulières utiliser, à la façon locale de faire les tests unitaires, les processus de release, etc. Ce qu'attend une entreprise, ce n'est pas un codeur qui est lancé au rythme de croisière de 200 lignes à l'heure out of the box. C'est quelqu'un qui arrivera à comprendre les spécificités de la boîte au plus vite, et s'adaptera le plus rapidement possible.
    Ben, malheureusement non. Le nerf de l'entreprise c'est l'argent et donc naturellement, un budget, donné, est alloué pour faire application donnée. Ce budget va contraindre le développement de l'application en temps. Et par conséquent, à tous les niveaux en partant du chef de projet au développeur en passant par l'analyse fonctionnel, on exigera surtout des gens qui maitrisent leur sujet. Ceci est encore plus vrai en SSII ou le temps c'est vraiment de l'argent.

    Citation Envoyé par TropMDR Voir le message
    Alors là, je ne comprends plus ! Tu nous disais qu'il fallait être "en accord avec le monde de l'entreprise". Le monde de l'entreprise, ce sont des dizaines de banques qui codent en cobol, des boîtes qui font du C parce que "ça va vite" et des milliers de SSII qui pissent du java. Elle est où la nouvelle technologie là dedans ??
    "En accord avec le monde de l'entreprise", je ne pense pas avoir dit ça. Par contre suive ou coller au plus au cycle de développement des entreprises, serait le minimum.
    Le monde de l'entreprise ce sont aussi des banques, des SSII, des grands comptent, des sociétés spécialisés dans les NTIC qui ont du mal a trouvé des personnes confirmés dans des techno tels que JAVA, Dotnet, et autres.

    Citation Envoyé par TropMDR Voir le message
    Ah bah voilà, maintenant je comprends tout ! Tu n'as aucune idée de ce qui se fait à coté des langages main-stream, de ce nivellement par le bas du monde de l'entreprise ! Penser que java est "infiniment plus complexe" que caml, c'est une énorme blague. Mais je pense que c'est un excellent exemple de "pourquoi les écoles ne devraient pas former juste aux "technologie qu'utilisent les entreprises": en 2004, sun a sorti java 5. Et là, révolution technologique, ils ont introduit les generics. Il était maintenant possible de définir une "liste chainée" contenant un certain type A, et pas juste object. C'était beau, c'était nouveau.
    Pour moi, JAVA = langage + sdk + machine virtuelle. Java est un exemple comme un autre.
    Et oui, j'estime que la complexité derriere JAVA, dotnet ou autre. N'a rien à avoir avec ce que l'on trouve dans cobol et compagnie.
    Et je vous pose la question suivante :
    Fin année 90, 2000, le nombre d'école enseignant JAVA était faible. Pourtant, l'adoption de la techno s'est faite en masse. Pourquoi ?
    Bien qu'étant enseigné nul part (ou presque), l'adoption de plateforme dotnet s'est faite en masse. Pourquoi ?
    De l'autre coté, nous avons des langages comme prolog, caml, cobol, lisp, ADA etc... dont les parts de marché ont diminué bien qu'étant enseigné. Pourquoi ?

    Concernant, ce qui se fait coté main-stream, je vous avoue que j'en ai aucune idée et je ne chercherai pas à savoir. Il y a des gens proches de la retraite qui ont été formé sur ces systèmes et qui les maitriserons toujours mieux que moi. A l'heure où l'on parle de prolongation de l'age de la retraite, cela ne fait que me conforté dans l'idée de leur réserver ce domaine de compétence. (désolé, pour le coté sec du propos)

    Citation Envoyé par TropMDR Voir le message
    Les programmeurs java se sont émerveillé devant la prouesse technologique et ce sont dit qu'un de ces jours ils allaient se pencher sur la question pour comprendre ce que ça veut dire.
    Les développeurs JAVA sont émerveillés par certains aspect de la plateforme dotnet. Les développeurs sont émerveillé par certains aspect de JAVA. En général, on essaie de récupérer ce qui est bon autour de soi pour sortir quelque chose de nouveau.
    Dotnet a récupéré le meilleur de JAVA ainsi que le meilleur du C++, ainsi le meilleur d'autre chose.
    Mais parfois certaines choses passe à la trappe.

    Citation Envoyé par TropMDR Voir le message
    Les gens qui avaient fait par exemple du caml ont dit "ah bah p*tain! pas trop tôt enfin du vrai polymorphisme !". Pour déchanter rapidement en constatant les horribles limitations des generics. (Et là je parle d'utilisateurs "légers" de caml. Quelqu'un qui a déjà utilisé les objets en ocaml a réellement envie d'étriper les designer du modèle objet de java).

    Quand un langage intègre la possibilité de passer des fonctions en arguments, et même de laisser une fonction capturer son environnement via une fermeture, les programmeurs s'émerveillent devant cette révolution qui va tant faciliter l'écriture d'interface graphique avec des fonctions de call-backs. Ceux qui avaient un peu vu autre chose dans leur vie se disent qu'il était plus que temps.
    Tu dis et redis qu'il faut que l'université soit à la pointe de la technologie et n'enseigne que ce que veulent les entreprises. C'est tristement totalement contradictoire, puisque les entreprises ont entre 20 et 30 ans de retard.
    Je trouve que c'est une forme d'hypocrisie. Caml, lisp, prolog, c++, ada, etc... à un moment donné étaient tous de nouvelles techno. Ce qui n'a pas empeché leur intégration à part entière dans les cursus.
    Ou se trouve la difficulté de se dire, bon à un moment donné on a fait ca, aujourd'hui il y a ca. Il nous faut, nous aussi, proposer quelque chose plus en accord avec l'évolution des choses.

    Citation Envoyé par TropMDR Voir le message
    Tout ceux qui pensent "savoir programmer" parce qu'il ont fait un sudoku en lisant un tutoriel sur le net, et qui soupirent quand on fait un cours sur les tris parce que "plus personne ne programme un algo de tri, on utilise juste une librairie"
    les cours d'algorithmie, pour moi, font partie de la théorie. La théorie c'est ce qui donne un baggage à l'étudiant.


    Citation Envoyé par TropMDR Voir le message
    Au final ceux qui s'en sortent le moins mal sont ceux qui ne "savaient pas" programmer ou qui arrivent à se convaincre d'oublier ce qu'ils ont appris, et peuvent alors réellement profiter de l'enseignement qu'ils reçoivent.
    Ceux qui s'en sortent, sont, malheureusement, ceux qui ont compris qu'ils allaient dans le mur et ce sont pris en charge.

  16. #176
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 473
    Points
    473
    Par défaut
    Citation Envoyé par gl Voir le message
    Oui, enfin il faut relativiser le "boom technologique qui s'amorce" :
    Ouais, c'est un point de vue

  17. #177
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    309
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 309
    Points : 928
    Points
    928
    Par défaut
    Citation Envoyé par notia Voir le message
    De la à dire que cette enseignement théorique passe par l'apprentissage de cobol et compagnie je dis non.
    Il faut arrêter avec COBOL hein. Déjà, plus personne n'enseigne le COBOL. C'est un langage préhistorique, qui n'a aucun intérêt théorique. Le seul "intérêt" de COBOL c'est que les banques ont des bases de code monstrueuse dans ce langage. Moi quand je parle de langage qui apporte quelque chose sur le plan pédagogique, je parle de trucs comme Caml, Scala, etc. Pas COBOL. Donc stop avec ça.


    Citation Envoyé par notia Voir le message
    Et oui, j'estime que la complexité derriere JAVA, dotnet ou autre. N'a rien à avoir avec ce que l'on trouve dans cobol et compagnie.
    Ah mais tu veux dire que c'est une horrible usine à gaz ? Pour ça je suis d'accord hein. Après moi quand je parle de la complexité d'un langage, je parle plus de ses features, de son système de type, de ces trucs là. Pas du temps qu'il faut à mettre en place un framework monstrueux pour faire un hello world.

    Citation Envoyé par notia Voir le message
    Et je vous pose la question suivante :
    Fin année 90, 2000, le nombre d'école enseignant JAVA était faible. Pourtant, l'adoption de la techno s'est faite en masse. Pourquoi ?
    Bien qu'étant enseigné nul part (ou presque), l'adoption de plateforme dotnet s'est faite en masse. Pourquoi ?
    De l'autre coté, nous avons des langages comme prolog, caml, cobol, lisp, ADA etc... dont les parts de marché ont diminué bien qu'étant enseigné. Pourquoi ?
    COBOL a été adopté massivement parce qu'il était livré avec les mainframe IBM et adapté à la compta (numération décimale plutôt que binaire). Java a été adopté parce qu'il a été porté par sun. .Net a été adopté parce que derrière il y a Microsoft. Ocaml par exemple n'est globalement supporté que par l'INRIA. Forcément, ça n'a pas exactement le même poids.

    Citation Envoyé par notia Voir le message
    Concernant, ce qui se fait coté main-stream, je vous avoue que j'en ai aucune idée et je ne chercherai pas à savoir.
    Bah écoute, c'est bien. Si t'ouvrir un peu à de nouvelles choses ne t'intéresse pas, j'avoue que tes propos sur "y a que JAVA de bien, de toutes façon le reste, je n'ai pas cherché à savoir ce que c'est" ne m'intéressent pas non plus.

    End of the troll.

  18. #178
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Points : 4 637
    Points
    4 637
    Par défaut
    Citation Envoyé par notia Voir le message
    Le monde de l'entreprise ce sont aussi des banques, des SSII, des grands comptent, des sociétés spécialisés dans les NTIC qui ont du mal a trouvé des personnes confirmés dans des techno tels que JAVA, Dotnet, et autres.
    Je lis régulièrement cette remarque et ça ne cesse de me surprendre. Où je travaille, ce n'est pas en Java que l'on a du mal à trouver des personnes, mais plutôt en C, C++ ou BDD.

    Citation Envoyé par notia Voir le message
    Concernant, ce qui se fait coté main-stream, je vous avoue que j'en ai aucune idée et je ne chercherai pas à savoir. Il y a des gens proches de la retraite qui ont été formé sur ces systèmes et qui les maitriserons toujours mieux que moi.
    Attention à ne pas confondre mainstream et mainframe. Ça évitera des contresens comme ici.

    Citation Envoyé par notia Voir le message
    Je trouve que c'est une forme d'hypocrisie. Caml, lisp, prolog, c++, ada, etc... à un moment donné étaient tous de nouvelles techno. Ce qui n'a pas empeché leur intégration à part entière dans les cursus.
    Il y a une différence entre avoir un cursus qui enseigne le langage X (quelqu'il soit) et un cursus qui n'enseigne que le langage X. Et en te lisant j'ai l'impression que justement tu aimerais que l'on n'enseigne que le Java (ou que le .Net).

    Et au passage, je n'ai pas l'impression que l'enseignement de Java soit si peu répandu que ça (même aux environs de 2000).

  19. #179
    Membre éprouvé

    Homme Profil pro
    non
    Inscrit en
    Mai 2008
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : non

    Informations forums :
    Inscription : Mai 2008
    Messages : 394
    Points : 1 116
    Points
    1 116
    Par défaut
    Citation Envoyé par notia Voir le message
    Les étudiants ne savent peut-etre pas comment atteindre leur but, mais ils en ont certainement un. C'est à l'école de les aider à atteindre ce but. Et la majorité des étudiants ne cherchent qu'à gagner de l'argent apres leurs étudent. Et ca commence déja par un premier job.
    Non les étudiants ne savent pas où ils vont. D'ailleurs, en général un étudiant ne sait pas ce que c'est réellement que l'informatique avant de commencer ses études.

    Au mieux (mais surtout au pire), ils ont déjà des à-priori sur un langage en particulier et ne sont jamais d'accord à tord ou non (mais souvent à tord) avec les enseignants.


    Citation Envoyé par notia Voir le message
    De la à dire que cette enseignement théorique passe par l'apprentissage de cobol et compagnie je dis non.

    Ceci est encore plus vrai en SSII ou le temps c'est vraiment de l'argent
    Moi je crois bien que c'est plus formateur de bosser sur le lambda-calcul, le typage, etc... en commençant par le CamL que par le Java. Idem pour le Smalltalk avec l'objet.

    En fait ça n'est pas si intéressant que ça de sortir des études avec une grosse compétence. Les employeurs s'en foutent un peu. Ce qu'ils regardent, surtout les SSII, c'est quelles sont les compétences acquises en stage ou en alternance et où est-ce qu'on peut faire gagner de l'argent - et être payé le moins possible pour les SSII.

    Citation Envoyé par notia Voir le message
    Les développeurs JAVA sont émerveillés par certains aspect de la plateforme dotnet. Les développeurs sont émerveillé par certains aspect de JAVA. En général, on essaie de récupérer ce qui est bon autour de soi pour sortir quelque chose de nouveau.
    Dotnet a récupéré le meilleur de JAVA ainsi que le meilleur du C++, ainsi le meilleur d'autre chose.
    Mais parfois certaines choses passe à la trappe.
    En fait beaucoup d'innovations de Java, enfant batard de Smalltalk et C++, sont des choses qui paraissent révolutionnaires quand elles sortent. Pourtant, le développeur Smalltalk se dit : "Tiens, ça fait déjà 40 ans qu'on a ça nous ! Pourquoi est-ce qu'ils appellent ça une innovation ?!?".

    Java n'a jamais cessé de tenter de récupérer ce qui a été perdu de Smalltalk, d'une manière ou d'une autre, sous une forme ou une autre, avec des contraintes et d'autres.

    Pourtant, on utilise beaucoup moins Smalltalk que Java alors qu'il y aurait, dans beaucoup de cas, un gain important à beaucoup de niveaux. Mais pourquoi ?

    Et ben à un moment, une stratégie commerciale (avec beaucoup de sous!), un effet de mode et des gens qui pensaient "maintenant faut faire du Java et laisser tomber le reste!" on permit la restriction de Smalltalk à des marchés de niches et à des boites qui en avaient un usage historique (banques, certaines ssii, certains gros comptes...).

    Donc le risque (et la stupidité) c'est bel et bien de laisser derrière soi des compétences et des technologies qui n'ont rien à envier à d'autres.

    Citation Envoyé par notia Voir le message
    Ou se trouve la difficulté de se dire, bon à un moment donné on a fait ca, aujourd'hui il y a ca. Il nous faut, nous aussi, proposer quelque chose plus en accord avec l'évolution des choses.
    Bonne idée, laissons tomber ce qui n'est pas à la mode, comme ça, on sera obligé de jeter tous les autres systèmes (vieux ou pas). Il n'y a pas que le Java/JEE et le dotnet - autrement dit le développement web ? - sur le marché.

    Citation Envoyé par notia Voir le message
    Ceux qui s'en sortent, sont, malheureusement, ceux qui ont compris qu'ils allaient dans le mur et ce sont pris en charge.
    Est-ce que ça serait possible d'avoir quelques preuves, comme les sources de cette affirmation ? Ou bien à défaut, une illustration qui appuierait le fait... ?
    [|]

  20. #180
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 473
    Points
    473
    Par défaut
    Citation Envoyé par gl Voir le message
    Je lis régulièrement cette remarque et ça ne cesse de me surprendre. Où je travaille, ce n'est pas en Java que l'on a du mal à trouver des personnes, mais plutôt en C, C++ ou BDD.
    De ce que je vois, on recherche du c, c++, java, dotnet, BDD

    Citation Envoyé par gl Voir le message
    Attention à ne pas confondre mainstream et mainframe. Ça évitera des contresens comme ici.
    Autant pour moi.

    Citation Envoyé par gl Voir le message
    Il y a une différence entre avoir un cursus qui enseigne le langage X (quelqu'il soit) et un cursus qui n'enseigne que le langage X. Et en te lisant j'ai l'impression que justement tu aimerais que l'on n'enseigne que le Java (ou que le .Net).
    Je ne souhaite pas que les écoles enseignent qu'un langage et de maniere général qu'une technologie. Par contre je souhaite que si on s'attarde à enseigner une techno, que cette enseignement couvre tous les aspect de cette techno.
    Connaitre java, dotnet, ce n'est pas savoir créer une classe, puis faire de l'héritage etc...
    Connaitre dotnet pour ce que je maitrise, c'est connaitre wpf, savoir interroger une base, connaitre linq, connaitre un des langage dotnet => c# par exemple, connaitre asp.net, connaitre wcf, savoir faire de la réflection, connaitre les bests practices, comprendre le fonctionnement de la plateforme, silverlight, maintenant wp7, etc...
    Dans la pratique, on dit que l'on maitrise tel ou tel partie de la plateforme.
    Mais, derriere chacun des composants de la plateforme se cachent des concepts riches, relativement difficile à aborder, et il faut du temps pour les maitriser. Si bien que je pense qu'il est bien difficile d'intégrer plus deux enseignement de ce type dans un cursus sans sacrifier la partie théorique.

Discussions similaires

  1. Réponses: 3
    Dernier message: 30/01/2012, 13h01
  2. vraiment besoin d'aide (STEP7)
    Par chap29 dans le forum Automation
    Réponses: 6
    Dernier message: 14/06/2010, 10h15
  3. [MCT] Ai-je vraiment besoin d'un MCT?
    Par lez-j dans le forum Merise
    Réponses: 5
    Dernier message: 29/12/2009, 23h53
  4. j'ai vraiment besoin de votre aide !
    Par dimmu dans le forum Général Dotnet
    Réponses: 11
    Dernier message: 29/11/2006, 01h42
  5. [Apache] J'ai vraiment besoin d'aide
    Par Tilous dans le forum Apache
    Réponses: 2
    Dernier message: 21/05/2006, 10h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo