J’ai ensuite poursuivi mes études avec une formation en imagerie, et si j’ai parfois très fortement regretté de ne pas m’être intéressé suffisamment aux outils mathématiques qui m’avaient été présentés de manière très (trop) théorique auparavant, car je perdais du temps à me les approprier en pratique, j’ai tout de même obtenu encore une fois mon diplôme sans le moindre souci, ainsi que tous les suivants.
Et depuis, le fait que je ne sois pas un génie des mathématiques n’a jamais été un handicap dans le cadre de mon travail.
Je suis donc un parfait exemple du fait qu’il est parfaitement possible d’être une buse en mathématique et pour autant être parfaitement capable de réussir une carrière professionnelle dans l’informatique.
J’ai donc énormément de mal à comprendre l’importance accordée aux mathématiques dans le cadre de l’apprentissage de l’informatique.
L’un de mes deux amis m’a alors fait remarquer que les opérations mathématiques étaient bien souvent mises à profit pour l’apprentissage de la programmation.
Ainsi, la factorielle est très souvent utilisée pour illustrer le principe de la récursivité, tout comme les suites arithmétiques et autres joyeusetés.
Cependant, j’ai alors fait remarquer que ces notions mathématiques sont avant tout un support à l’apprentissage et ne sont absolument pas un prérequis à ce dernier même s’il est évidemment plus pratique de les maîtriser à minima lorsque l’on doit les programmer.
Et j’ai ajouté que je n’ai absolument pas l’impression de faire des mathématiques lorsque j’aligne des lignes de code sur mon écran.
Mon ami n’a pas paru très convaincu par mon argumentation, car il pense que la manipulation de variables et leur évolution au cours du temps lors de l’exécution d’un programme sont typiques des mathématiques.
Mais même si cela peut effectivement se rapprocher d’une fonction au sens mathématique du terme, je suis resté convaincu que fondamentalement, un informaticien n’est pas un mathématicien.
Alors certes, parfois, il se sert des mathématiques afin d’effectuer un calcul, mais les mathématiques font alors partie intégrante du « métier », au même titre que des référentiels de traçabilité agricole, des méthodes de facturation ou tout autre chose susceptible d’être gérée par l’outil informatique.
Au final, peut-être que cet attachement aux mathématiques dans le cursus informatique provient du fait que la toute première tâche confiée à l’ordinateur était justement de faire des calculs mathématiques.
Après tout, l’ENIAC, ancêtre de tous les ordinateurs actuels, a été conçu et utilisé pour calculer des tables de tir balistiques.
Cependant, de l’eau a coulé sous les ponts depuis cette époque et si l’ordinateur est toujours utilisé aujourd’hui massivement pour effectuer des calculs scientifiques complexes, une bonne maîtrise des mathématiques sont loin d’être un prérequis pour pouvoir le programmer.
Je trouve donc dommage qu’elles aient eu à mon époque une telle importance, car je suis prêt à parier que cela a fermé inutilement la porte des études supérieures en informatique à bon nombre d’étudiants.
Et si c’est toujours le cas, c’est très regrettable.
PS : Histoire de pimenter le débat, Clément Delafargue m'a communiqué ce lien.
38 réactions
1 De Méthylbro - 01/03/2013, 13:59
Pendant mes études j'avais continuellement 1 de moyenne en cours de mathématiques et 19 en cours d'algorithmique.
Je suis comme toi, je n'ai jamais vraiment compris cette importance que l'on alloue aux mathématiques dans les cursus de développement.
2 De Stéphane - 01/03/2013, 14:04
Salut,
Tout dépend de ce que tu vas faire de ta vie. Les maths au lycée ne servent à rien pour 90% des gens, il est facile d'en convenir. En bac+n informatique, les maths ne servent à rien pour 90% des étudiants.
Ces derniers mois, j'ai travaillé dans une boite de robotique. Les 3 employés tech n'ont jamais étudé les maths et lorsqu'une documentation parlait de matrice pour l'utilisation d'un capteur, ils étaient lourdés. Ils ont toujours pensé que les maths ne serviraient à rien.
Pour une personne qui fait du web dans une agence toute sa vie, c'est sûr que les maths n'ont, à priori, aucun intérêt. Mais on ne sait pas où la vie peut mener. Un jour, peut-être que cette même personne se retrouvera dans une entreprise qui fait de la R&D et qu'on lui demandera d'écrire un programme en lien avec des maths.
Les écoles et les universités n'ont pas vocation à te former à un métier. Elles te forment à tout un domaine, en visant au plus large pour que tu te débrouilles. Mes cours de réseau ne me serviront peut-être à rien toute ma vie, pourtant j'ai apprécié les suivre, ça fait partie du jeu des études sup et c'est pareil pour les maths que j'ai étudié (et parfois subit) pendant 3 ans.
Les enseignants des écoles et des universités sont des chercheurs, et généralement très déconnectés du monde des entreprises privées. Pour eux, l'informatique c'est des calculs, des optimisations... bref, de la recherche. Alors ils ont un peu de mal à comprendre que leurs étudiants ne suivront pas forcément ce chemin la aussi, j'ai l'impression.
3 De r4is3 - 01/03/2013, 14:20
Idem, une vraie bille en math, entre 1 et 6 de moyenne dans tout mon cursus et j'ai obtenu mon dernier diplome en etant deuxieme de promo. Les math c'est pour les pignoleurs qui essaient de faire croire que l'informatique est une discipline elitiste.
4 De TomTom - 01/03/2013, 14:29
C'est surtout que pour faire du web les maths vont pas servir à grand chose. Mais quand tu bosses dans une SSII et que tu bosses sur des projets où tu dois t'approprier des règles métiers qui font appel à des maths là tu as pas le choix. Certes c'est pas forcément tous les jours mais c'est pas pour autant qu'il faut dénigrer les mathématiques. Les maths sont pas indispensable mais sont quand même nécessaires.
5 De CrEv - 01/03/2013, 14:32
Hum... ça dépend franchement.
Le problème déjà c'est que "informatique" ça veut tout et rien dire. Il y a plein de branches dans l'informatique ou, en effet, les mathématiques ne serviront à rien.
Mais il y a aussi plein de branches où c'est juste primordial. Dès qu'on va vouloir faire des transformations (que ce soit d'images, d'objets, ou de n'importe quoi) on va utiliser du calcul matriciel, des changements de repères. Des applications cartographiques ? Il va falloir faire des changements de projections. De la 3D ? Du traitement d'images ? De la finance ? etc.
Enfin le problème est beaucoup plus complexe qu'il n'y parait. Si on prend les études supérieures, l'enseignement de la matière n'est pas tout le temps le seul enseignement. Il y a aussi l'enseignement de méthodes, de façon de réfléchir. Et ça les mathématique aident aussi. Non pas le calcul qu'on aura appris mais la manière d'appréhender les problèmes et de les résoudre. Exemple tout bidon, j'ai fais du grafcet, des réseaux de petri. Aucun lien avec l'informatique au premier abord. Par contre, c'est des techniques qui peuvent (et m'ont déjà) servi pour résoudre des problèmes informatique.
Après c'est sur que si on se limite à la création de sites web, le problème est beaucoup moins flagrant.
6 De mageekguy - 01/03/2013, 14:52
@TomTom : Je parles de l'importance des mathématiques dans le cadre de l'apprentissage de l'informatique, pas dans le cadre professionnel (je pensais pourtant avoir clairement fait la distinction dans le billet, en parlant justement du métier).
Tu auras beau avoir fait des mathématiques pendant 10 ans, à un certain moment, tu n'auras pas les ressources nécessaires pour répondre aux besoins du métier, et les livres, Google, ou un vrai expert métier deviendront alors tes meilleurs amis.
7 De Rezouce - 01/03/2013, 14:54
Mon premier diplôme universitaire venait d'une formation d'informatique orientée développement sur les NTIC. On n'avait aucun cours de mathématiques.
La formation en question a disparu avec la réforme du LMD, mais je suppose qu'il existe encore aujourd'hui des équivalents.
Je suppose que si les formations en informatique sont souvent liées avec les mathématiques c'est parce que ces dernières demandent, comme le développement logiciel, d'avoir un raisonnement basé sur la logique.
Mais après, c'est comme les cours de réseau, de marketing, etc. Si on les étudie c'est plus pour avoir une base de connaissances liées à l'informatique que parce qu'on considère le développement comme des mathématiques.
8 De TomTom - 01/03/2013, 15:03
Je t'avouerais @mageekguy que j'ai lu en diagonale ton article, je répondais surtout aux commentaires... Ma faute je n'ai pas été super claire. Cependant pour te répondre directement il est vrai que tout n'est pas à prendre (après ça dépend de ta formation) mais dans l'ensemble les maths t'impose tout de même une certaine méthodologie et une bonne approche de la résolution des problèmes. Sur ton deuxième point je suis d'accord qu'on a tous nos limites surtout avec un bagage uniquement scolaire.
9 De Anon - 01/03/2013, 15:31
J'ai toujours été passionné par l'informatique.
Par contre, mes compétences en maths ont a peine dépassé les additions...
Ces imbéciles de conseillers d'orientation m'ont toujours refusé les filières informatiques, a cause de ma moyenne en math. Pourtant, je savais déjà programmer... Mais pour eux, rien a foutre, si c'est pas dans leur brochure tu peux toujours crever.
A la suite d'un coup de bol je me suis incrusté dans des études d'infos, mais j'ai été viré avant la fin du cursus parce que j'étais trop mauvais en sciences.
Je me suis dit, rien a foutre de tous ces cons. J'ai pris 1 ans a booster mes compétences, je savais plus ou moins ce qu'il me manquait.
Et maintenant j'ai un CDI, bien avant mes camarades, et au quotidien les maths me sont plus qu'inutiles a part dans quelques programmes spécialisés.
Le problème avec notre éducation, c'est qu'on relie bêtement tout aux maths.
Et on arrive à dégouter les jeunes passionnés de sciences et à les détourner de cette voie, juste parce qu'ils sont persuadés qu'ils vont devoir aligner des formules jusqu’à la fin de leur vie.
J'ose pas imaginer tous les talents que vous avez jeté dans les chiottes.
10 De mageekguy - 01/03/2013, 15:35
@Anon : je me suis permis de supprimer tes propos trop virulent/insultant à mon goût.
Même si je peux comprendre ta colère, il y a des choses autrement plus graves pour lesquelles ce type de propos est nettement plus approprié.
11 De Anon - 01/03/2013, 15:42
@mageekguy :
No problem, je comprend.
(Pour les choses plus graves, j'ai encore pire :p)
12 De fdsqfqsd - 01/03/2013, 15:59
Et comment on fait pour afficher les x points de vente à moins de n km sur une carte google map ?
sachant que n est variable, puisque choisi par l'utilisateur
Voila un problème concret que l'on trouve en dev web.
Si t'es bon en math, tu mets 10 minutes à pondre l'algo, sinon tu cherches sur google et tu passes une demie-journée
13 De mageekguy - 01/03/2013, 16:07
@fdsqfqsd : vraiment au pif, hein, mais vraiment, sans bien y réfléchir, je dirais qu'il faut utiliser ça et qu'il n'y a besoin d'aucune connaissance mathématique pour l'utiliser, mais ça n'engage que moi.
Plus sérieusement, évidemment que les mathématiques sont parfois nécessaire en informatique mais encore une fois, tel n'est pas mon propos de dire le contraire.
Relis le billet.
14 De naholyr - 01/03/2013, 16:19
C'est amusant, en prépa j'étais une quiche en physique et un roxor en maths. Les profs m'expliquaient que c'était impossible, vu que la physique c'était des maths. Mais je l'ai fait, 13 de moyenne en maths (autant dire un exploit dans ces classes) et 2 en physique.
Aujourd'hui avec le recul je comprends qu'ils avaient raison, mon problème était au niveau de mon interprétation de la discipline. Sans doute qu'inconsciemment pour moi les maths devaient rester abstraites, "pures", et que la physique avec ces aberrations (genre les "valeurs négligeables" ça m'a traumatisé) était une hérésie. Blocage psychologique.
C'est la même chose ici, vous croyez que l'informatique ne nécessite pas de connaissance en mathématiques parce que vous y arrivez tout en étant mauvais en maths. Mais ça n'a rien à voir, il ne s'agit que d'un blocage individuel : les maths ne valent pour vous que si elles sont appliquées concrètement, n'allez pas croire pour autant que vous ne faites pas de maths en informatique.
Un algorithme n'est rien d'autre qu'une démonstration : on sait où on doit arriver, on sait ce dont on dispose, à nous d'agencer les éléments et d'utiliser les API (théorèmes) pour arriver à destination. Plus c'est élégant, mieux c'est (cf. http://www.quora.com/Mathematics/Wh... si ça c'est pas typiquement un raisonnement mathématique qui permet d'optimiser un algorithme).
Ce n'est pas qu'on ait besoin des mathématiques pour faire de l'informatique, mais c'est un fait : quand on fait de l'informatique, on fait des maths. Être mauvais en mathématiques théoriques lycéennes ne signifie pas qu'on est fondamentalement mauvais en maths, mais simplement en maths telles qu'enseignées alors.
À part ça, la question d'arrêter l'enseignement des maths en informatique me semble bien dangereux. Il s'agirait d'oublier ses racines. Qu'un individu n'ait pas besoin de faire beaucoup de maths pour s'en sortir en informatique pourquoi pas, mais à ce moment autant arrêter d'enseigner l'histoire ou la littérature française sous prétexte qu'on n'en a pas forcément besoin. J'espère que ça vous semblerait absurde. Il en va de même pour les maths, il s'agit d'un bagage élémentaire. Rien qu'en considérant les mathématiques comme un support d'apprentissage de la réflexion structurée, elles justifient complètement leur présence dans les études de "génie logiciel".
15 De fdsqfqsd - 01/03/2013, 16:27
haha non, on n’utilise pas un service externe pour calculer une donnée interne...
Le point du billet c'est "on donne trop d'importance aux math pour un cursus info", je me trompe ?
Et bien je répond non, ça fait partie du bagage de base, certains en auront besoin, d'autres non, c'est comme l’apprentissage du français.
Et pour aller plus loin, je pense que les math apportent une vision de l'esprit, une certaine couche d'abstraction, et si l'on ne peut pas comprendre ça alors ça devient difficile de faire des études supérieures où l'on est sensé former les "meilleurs".
Et ça nous emmène à un autre point, le rabais des exigences dans le niveau d'éducation, aujourd'hui tout le monde peut être ingénieur, même en ayant 5 de moyenne en math, mais c'est un autre débat...
16 De magiccyril - 01/03/2013, 16:30
Je suis totalement d'accord avec toi, et il en est de même pour mon cas : les mathématiques n'ont pas été mon fort pendant ma formation, et je m'en sors aujourd'hui dans l’informatique.
Je n'ai pas lu l'article en P.S., mais je me permets une petite remarque. Une variable informatique et une fonction au sens mathématique n'ont pas vraiment de rapport.
En mathématiques, une "variable" est généralement une inconnue, c'est un nombre dont la valeur n'est pas précisée. Quand on écrit y = 3x + 2 les "variables" x et y prennent un nombre infini de valeurs. Et quand on écrit ax² + bx + c = 0
la "variable" x désigne les solutions à cette équation, et donc x prends zéro, une ou deux valeurs à la fois…
En informatique, je ne l'apprendrais à personne une variable possède, à un moment donné, une valeur et une seule. Et une variable peut même ne pas avoir de valeur en informatique. Le terme variable informatique est en réalité bien mal choisi !
J'ai la chance de pouvoir donner des cours d'algorithmie à des étudiants ne venant pas du tout d'univers "scientifiques" mais plutôt d'univers littéraire, voire artistique. Ils sont généralement plutôt rebutés par les mathématiques, mais ils n'ont pas de mal (trop) à comprendre l'algorithmie.
Et pour en rajouter une couche ! Si quelqu'un nous demande le chemin de la boulangerie la plus proche, on donnera des instructions à suivre les unes après les autres, avec même, parfois, des conditions (ex: s'il y a des travaux, prendre à gauche, sinon, allez tout droit). Cette logique est similaire à l'algorithmie, et ne fait appel à aucune notion mathématique.
17 De mageekguy - 01/03/2013, 16:31
@naholyr : Je ne dis pas qu’il ne faut pas enseigner les mathématiques en cursus informatique, mais qu’elles devraient être moins prépondérantes et qu’un bon niveau dans cette matière ne devrait pas être un prérequis, ou s’il l’est, ne pas être aussi important.
Et il est dommage que ton lien vers Quora nécessite une authentification facebook, car te connaissant, je suis certain qu'il est pertinent.
Et enfin, tu remarqueras que j'ai précisé avoir eu des notes déplorables en mathématiques théoriques.
En mathématiques appliquées (à l'époque, ça consistait à résoudre des problèmes mathématiques via la programmation), je me défendais plutôt pas mal.
18 De Jean-Marc Fontaine - 01/03/2013, 18:37
Je suis pareil que toi sur ce point : nul en maths mais bon en algo.
Je pense que fondamentalement l'informatique c'est de la logique. Cela se rapproche donc surtout de l'algèbre de Boole plus que des mathématiques au sens large.
19 De cym13 - 01/03/2013, 22:09
Je suis d'accord avec le fait que l'on donne trop d'importance aux mathématiques, mais pas seulement en informatique. J'ai l'impression qu'en France depuis Bourbaki et les « math modernes » on a élitisé les mathématiques au maximum. Les maths sont une « voie d'excellence » (qui n'a pas déjà entendu cela !) et bon nombre de domaines sont difficilement accessible sans les mathématiques. Je pense que si nous recentrions l'enseignement des mathématiques sur des choses pratiques (statistiques notamment) la plupart des gens auraient une meilleur image des mathématiques.
On pourrait croire que je n'aime pas les maths, mais ce serait trop vite me juger. En fait je suis en prépa math spé. Je suis juste désolé de voir qu'avec leur volonté de mettre des maths partout et pour tout les politiques ont tué l'opinion publique vis à vis des mathématiques. Oui, écrire un algorithme c'est faire des maths, mais autant que regarder le ciel, froisser une feuille ou laisser tomber un crayon. Les maths sont avant tout le plus fabuleux language de description que l'on ai inventé, évidemment que tout peut se décrire avec ! Mais j'affirme qu'elles ne sont pas nécessaires à l'apprentissage de l'informatiques et que si l'on enseignait l'algorithmique avant les outils théoriques les ingénieurs ne s'en tireraient pas plus mal. Je dois dire quand même que je n'ai vraiment compris les objets qu'après les avoir pensé en lien avec des espaces vectoriels. Mais cette vision est personnelle et d'autres les aborderont mieux avec la musique ou que sais-je ! Parce que j'aime les maths je voudrait que l'on arrète de trop attendre d'elles, elles ne feront pas de tous des sur-hommes (ni même des hommes tout court diront certains).
Et pour terminer : http://xkcd.com/1050/
20 De Bleiddwn - 01/03/2013, 23:10
Je pense personnellement que les mathématiques servent à construire les outils que les informaticiens utilisent. Derrière le protocole TCP/IP, derrière la cryptographie, il y a des théories mathématiques très lourdes, mais dont l'informaticiens peut tout à fait faire abstraction lorsqu'il code.
De plus, si un bon niveau en mathématiques est exixé pour rentrer dans des cursus info, c'est à mon avis que ces cursus doivent bien recruter sur un critère, et les mathématiques est la matière qui se rapproche le plus de l'informatique.
En revanche, je rejoins l'avis de naholyr: les maths ne doivent pas être eclipser de la formation d'un informaticien, car se sont les bases. Etant en prépa MP, certaines démonstrations formelles ne sont que des algorithmes à appliquer, et en cela les maths se rapproche de l'informatique.
21 De Cyrano - 02/03/2013, 01:56
Que voilà un sujet comme je les aime :D
Les maths ? Et si on se posait la question de savoir ce qu'elles sont intrinsèquement ? Et si on se demandait pourquoi certains de nos ainés se sont crus dans l'obligation de les intégrer comme des pré-requis dans un cursus informatique ?
La réponse aux deux questions précédentes devraient rendre le sujet beaucoup moins sujet à un quelconque débat, enfin il me semble
Ce qui suit est mon avis personnel, et, comme disait Desproges, c'est celui auquel je suis le plus enclin à me ranger. Je n'ai moi-même jamais été un foudre de guerre en mathématiques, mais aujourd'hui, je le regrette. Mais en même temps je me dis que si les mathématiques m'avaient été présentées de manière plus appropriées, il est fort probable que j'en aurai bien mieux profité parce que l'intérêt étant alors bien mieux éveillé, l'apprentissage n'aurait pas été la corvée que j'ai subi comme bon nombre d'entre nous si je me fie aux précédents commentaires de ce billet.
J'en suis arrivé à me demander si on se posait les bonnes questions, d'où mon introduction du reste. A-t-on les bons enseignants ? Je ne parierais pas ma chemise là-dessus. Pourtant, aujourd'hui, je regrette de n'avoir pas un niveau en math suffisant : j'ai actuellement une idée que j'aimerais pouvoir développer, mais elle passe par un élément purement mathématique de niveau licence... alors que je n'ai même pas un bac tout court. Je vous laisse imaginer à quelles difficultés je peux me heurter. Or je sais que pour aboutir dans l'idée que je veux amener à terme, il me faut aborder la théorie des graphes. Même si Google me donne des éléments, ça ne suffira jamais à moins que je ne dispose bien entendu des vingt prochaines années et de la patience nécessaire qui s'y rattache, tout ça pour ré-inventer des trucs que les mathématiques ont déjà résolu depuis pas mal de temps... CQFD
Les maths, c'est d'abord et avant tout de la logique, c'est l'élégance dans la formulation d'une équation qu'elle soit simple ou terriblement complexe. Mais l'algorithmie évoquée par plusieurs, ce n'est là aussi que de la logique. Or tout le monde a plus ou moins de logique (sauf peut-être quelques développeurs dirais-je en paraphrasant Sacha Guitry) Pour les bases, c'est largement suffisant. Pour faire l'intégration de CMS en agence web, je suis même prêt à admettre que c'est presque superflu. Mais si on veut faire du développement en mode R&D, c'est autre chose. Pour le quotidien, des maths élémentaires suffisent, mais comment faire si on aborde des problèmes particulièrement complexes sans construire une usine à gaz ? C'est à ce niveau que les mathématiques apportent des pistes de solution. Et je dis bien « pistes de solution », certainement pas « solution » tout court. Je conçois bien volontiers qu'on puisse obtenir un diplôme d'ingénieur sans être un cador en math, mais on arrivera à un moment ou un autre où on réalisera que des éléments qu'on ne maitrise pas du tout sont nécessaires pour avancer sur un problème qu'on doit résoudre.
Je serais tenté de classer les mathématiques au même niveau que les Design Patterns : je suis certain que pour la plupart, la comparaison peut paraître bancale, mais imaginez qu'on tente d'enseigner les Design Patterns de façon purement théorique pour passer le bac ? Le résultat serait-il plus brillant que les résultats en math ?
My 2¢
22 De tester - 02/03/2013, 13:12
Mon beau-frère travail dans le milieu hospitalier depuis 17 ans, il y travaille depuis l'âge de 16 ans en tant qu'aide soignant. Il a une expérience telle qu'il est en mesure de former les infirmiers stagiaires mais n'est pas capable de le devenir lui-même car le concours fait appel à des notions mathématiques qu'il n'a pas. Quand vous dites qu'on donne trop d'importance aux math, je pense qu'il en est l'illustration vivante...ça a une valeur + éliminatoire qu'autre chose.
En informatique, pour moi la maitrise des math sert surtout à programmer "des calcutratices"...pour le reste ça n'est pas vraiment utile.
23 De bohwaz - 02/03/2013, 14:39
C'est marrant car moi c'est justement la programmation qui m'a permis de mieux comprendre les maths au lycée. Par exemple j'ai appris les fonctions en programmation bien avant que les cours de maths ne l'enseignent, et comme le reste des maths je n'y comprenais rien, jusqu'à ce que je percute que c'était similaire aux fonctions en programmation.
Après je dois dire qu'effectivement, les maths ça sert rarement en informatique, même à faire des choses complexes, pour la carto, la finance etc. souvent on n'a même pas à y toucher car il y a des fonctions toutes faites qui font les calculs à notre place. Quand il faut le faire soi-même n'importe qui peut le faire. Les maths, malgré ce qu'on essaye de nous faire croire n'ont rien de très complexe, et pas besoin de se taper des études sur le sujet pour y arriver quand il y en a besoin.
J'ai fait un bac littéraire, que je n'ai même pas eu après plusieurs essais, ça ne m'empêche pas de faire des algorithmes et des calculs mathématiques quand c'est nécessaire, ça me prendra peut-être un peu plus de temps que qqun avec une solide base et habitude de travail dans les maths, mais rien ne m'en empêche. Tout comme j'ai appris la programmation sur le tas, rien ne s'oppose à apprendre les maths sur le tas. Donc y opposer les études c'est un peu mal connaître le sujet principal de l'informatique (en tout cas à mon sens) : découvrir, apprendre, expérimenter, rechercher, essayer.
Quand au niveau d'éducation au rabais je dirais plutôt qu'il est un peu trop élevé, pour me situer justement dans ceux qui ont été recalés et qui avait pourtant bien envie d'aller explorer des sujets plus intéressants après le bac, qui est pourtant considéré comme quelque chose de facile par certains...
24 De Revo - 02/03/2013, 18:39
En fait, tout vient à l'origine d'une confusion sur le terme informatique. En effet, l'informatique n'est pas plus la science des ordinateurs que l'astronomie n'est celle des télescopes. Aussi, quand un développeur dit qu'il fait de l'informatique, c'est à peu près aussi cohérent que lorsqu'un assembleur de PC dit qu'il fait de l'électronique :).
Ce qu'il faut comprendre, c'est que si vous n'avez pas besoin des mathématiques pour programmer, c'est justement parce que l'informatique (qui est une science fortement mathématisée) est transformée pour pouvoir être appliquée aux ordinateurs.
Il suffit de regarder autour de vous : les langages orientés objet ? A l'origine c'était des maths. Les langages fonctionnels ? Encore plus de maths. Les bases de données ? Le modèle relationnel et la théorie des ensembles (vraiment plein de maths). Hadoop/Map-Reduce ? Toujours des maths. Reconnaissance de formes ou de voix ? L'intelligence artificielle est probablement encore plus mathématisée que tout le reste. Les protocoles de routage ? La théorie des graphes. Traitement du signal pour l'audio, la vidéo et les images ? Tout plein de mathématique et de physique du signal. Calcul parallèle avec des threads, des processus et du scheduling ? Ben c'est toujours des maths. Compilateurs ? Vous croyez qu'ils partent de quoi les abstract syntax tree ? Cryptographie ? Non, là c'est même pas la peine de poser la question, c'est tellement évident.
Evidemment, tout ceci est joliment encapsulé dans des librairies ou des services, et les programmeurs n'ont aucune vision de ce fonctionnement interne. Toute l'informatique découle des mathématiques, et l'on s'en aperçoit uniquement lorsque l'on commence à contribuer sur des domaines de recherche très avancés. De fait, l'informatique a toujours été, et sera toujours liée au mathématique (pour être exact, l'informatique est une branche des mathématique). Partant de là, les écoles considèrent que devenir technicien ou ingénieur en informatique, ce n'est pas juste savoir composer quelques librairies, mais être capable d'en comprendre un minimum le fonctionnement interne. Et ça c'est impossible sans un petit bagage mathématique (celui qui est enseigné en école d'ingé vous paraît sans doute consistant, mais en fait il s'agit juste d'une initiation).
Bref, comme je le dis toujours à mes étudiants, les mathématiques ne servent qu'à ceux qui font l'informatique, pas ceux qui s'en servent =).
25 De Guile - 03/03/2013, 01:25
La littérature classique du 19è également ne me sert à rien. La géographie également, l'histoire aussi. Et la philosophie hein? Quand on développe, on n'a pas d'état d'âme sur l'utilisation qui sera fait de nos programmes. Et le dessin? Hein ça sert ça?
Oui, les études quand on les limite aux seuls besoins professionnels sont inutiles. Mais elles peuvent permettre d'autres choses comme s'ouvrir d'autres opportunités professionnelles, s'ouvrir l'esprit vers des problèmes.
J'ai eu des cours ultra théoriques sur les bases de données, et quand je dis ultra théorique c'est dire "La première année, je n'ai pas du tout créé une table à proprement parlé, pas écrit une requête". Et bien aujourd'hui je suis fort content de me rappeler de ces théories pour mon travail.
Pour les maths, j'ai eu à travailler avec des pythagore, fourrier, thalès, matrices. Oui j'en ai également chié sur certains points en math (et autre matières apparentées), mais ça me permettait de me pousser encore plus!
26 De tester - 03/03/2013, 18:55
>>Bref, comme je le dis toujours à mes étudiants, les mathématiques ne servent
>>qu'à ceux qui font l'informatique, pas ceux qui s'en servent =).
Sans recherche fondamentale il n'y aurait effectivement pas d'applications pratiques mais crois-tu réellement que tout tes étudiants vont créer/inventer/innover des algo à base de math avancée ? Pourquoi consacrer autant d'heure à la formation théorique alors qu'en pratique 99.9999% des étudiants feront dans l'applicatif ? C'est là où le bas blaisse selon moi. L'enseignement des math est une perte de temps pour la quasi totalité de ceux qui le subissent...
27 De Nicolas - 03/03/2013, 22:11
J'ai eu au lycée la chance d'intégrer une filière langages. Nous avions tous 2 langues vivantes, du latin et 4 heures d'informatiques. L'idée de la filière était de faire des interactions entre les différentes matières.
Avec le recul on s'aperçoit que faire une traduction d'un texte en latin n'est pas très éloigné au niveau raisonnement de l'écriture d'un algorithme correspondant à un besoin donné.
Le professeur à l'initiative de cette filière était tout sauf prof de maths. Il avait un niveau déplorable en maths. Il était prof de latin, grec, français et informatique.
Nous avons fait une seconde généralisée mais en première et en terminale la classe initiale a été coupé en plusieurs morceaux. Nous nous retrouvions en cours d'informatique. Les scientifiques et les littéraires se retrouvaient pour faire des algorithmes.
28 De CrEv - 04/03/2013, 09:25
@tester : Mauvais exemple. L'une des grosses différence entre aide-soignant et infirmer est justement dans la partie traitement, calculs de débits, de doses, etc. Sans cela, sans un minimum de math c'est juste dangereux un infirmier car il ne saura pas doser correctement les médicaments, ni le vérifier.
C'est justement l'exemple qu'il faut avoir fait des math pour être bon dans un métier qui ne fait que les utiliser, pour qui les maths ne sont qu'un moyen et surtout pas un objectif.
29 De HugoE_ - 04/03/2013, 12:04
Je suis à peu près d'accord avec cet article si l'on parle des mathématiques pures d'étude de fonctions complexes, de traitement de signal imbuvable pour ceux qui n'apprécient pas les maths, de résolution d'équations différentielles, j'en passe et des meilleures.
En revanche, y'a pas mal de branches dans les maths, et tout ce qui concerne les enseignements liés aux mathématiques discrètes par exemple ne me semblent pas inutile pour réussir son parcours. Par maths discrètes j'entends théorie des graphes, automates, optimisation, théorie des langages, etc. Ce sont bien des maths, et assurément dans mon cursus, si tu loupes ces modules, tu ne valides pas tes semestres / ton année...
30 De OPi - 04/03/2013, 21:57
Et bien ce sujet suscite le débat !
Je n'ai pas le courage de lire les commentaires publiés depuis mon dernier passage, je vous livre juste un lien vers un cours de combinatoire analytique :
https://www.coursera.org/course/int...
C'est en visionnant la deuxième vidéo introductive "Analysis of Algorithms" que j'ai repensé à ce blog. Après cela la nécessité des maths en informatique me semble évidente !
En passant, d'une autre université, mais sur cette même plateforme Coursera, je suis en train de suivre ce cours très intéressant :
https://www.coursera.org/course/com...
"This course will discuss the major ideas used today in the implementation of programming language compilers. You will learn how a program written in a high-level language designed for humans is systematically translated into a program written in low-level assembly more suited to machines!"
Les inscriptions sont gratuites, donc si vous avez le temps et le courage, n'hésitez pas à les suivre. Enjoy
31 De mageekguy - 05/03/2013, 08:51
À tous les futurs commentateurs, avant de rédiger le vôtre, pensez bien que je ne dis que les mathématiques sont inutiles et/ou qu'elles ne devraient pas du tout faire parties du cursus scolaire d'un informaticien.
Je dis juste qu'elles ne devraient pas y avoir l'importance qu'elles avaient à mon époque et qu'apparemment elles ont toujours aujourd'hui.
32 De JEDI_BC - 05/03/2013, 09:28
Salut,
venant d'une terminal s spé math, j'ai complètement abandonné les math à l'iut. Mais alors, complètement, genre 5 de moyenne grand max. Pour moi j'avais enfin réussit à entrer dans une école d'informatique et je ne voulait plus subir les matières autres, surtout des purement théoriques comme les maths (à part un pivot de gauss et quelques identités remarquables j'ai tout oublié). Mais ça m'a joué des tours. Malgré avoir eut mon diplôme "dans la moyenne" et vouloir continuer dans un iup réseau (16 de moyenne en réseau à l'iut) je n'ai pas été pris. J'avais même postulé à la fac (même en cochant la case comme quoi je voulais bien refaire une license, en gros refaire ma 2ème année d'iut) mais été rebouté pour "niveau insuffisant". Au final je suis entré dans la vie active sans trop de pb pour trouver du taf.
Je regrette maintenant de ne pas avoir plus bossé les maths pour plusieurs raison :
. ça m'a empêcher de continuer mes études et d'avoir une formation plus poussée en informatique. En n'ayant vu que les "bases" à l'iut je dois m'autoformer et cravacher pour rester à niveau et surtout comprendre des concepts faciles pour d'autres. (par exemple comprendre les designs patterns en ayant qu'une formation succincte en langage objet)
. Quand je vois des paradigmes de programmation comme la programmation fonctionnelle (scala, etc...) qui sont hyper intéressant et surtout très orienté math, je prends conscience de mes grosses lacunes.
. Ma copine est ingé math et je comprends que dalle quand elle me parle de son taf ^^ (bon ok c'est moins grâve ça :p)
Je pense, à l'inverse de toi, que les maths doivent rester inportantes dans les cursus informatiques mais qu'elle doivent absolument quitter la pure théorie. Où du moins chaque notion théorique doit être obligatoirement amené par des exemples pratiques. Je me rappelle trop bien avoir vue à l'iut un truc qui s'appelle le ki2 (je trouvais le nom rigolo) sans jamais avoir su à quoi ça servait concrètement. Il est pourtant probablement simple d'amener les notions mathématiques de façon pratique (et ludique ?) quand on voit leur forte implication dans des matières comme la compression, la cryptologie ou la cartographie (un exemple tout con, au lycée, je me suis mis la formule de la gravité en tête en programmant un jeux de basket sur ma casio).
Au final faut que je trouve un moyen de me remettre à niveau en math. Je sais qu'il y a des cours en ligne sur coursera ou probablement de bons bouquins mais avec un bébé de 10 mois à la maison, j'ai absolument pas le temps
33 De tester - 05/03/2013, 18:16
Anecdote amusante : un proviseur se fait interviewer un jour à la téloche. Il vante les mérites des maths, explique la nécessité vitale et absolue de les connaitre sur le bout des ongles car utiles partout et tout le temps (blablablabla) puis d'un coup se fait couper par le journaliste. "Combien font 9*6 ?" demanda ce dernier au proviseur. Surpris, interloqué, le proviseur commença par répondre fébrilement "48 ". "Non non, 9*6" rétorqua le journaliste d'une voix claire et posée. "Et bien dites le moi puisque vous semblez le savoir !". Fin de l'interview.
34 De Amaury Bouchard - 25/03/2013, 11:30
Ton article est intéressant, et il me fait penser à quelque chose que disait Nicolas Sadirac (ancien directeur de la spécialisation systèmes et réseaux d'Epita, créateur et ancien directeur d'Epitech). Il disait qu'Epita (par le passé) et Epitech (maintenant) reposaient sur une formation très particulière, dans laquelle la programmation a remplacé les mathématiques au niveau de la philosophie de base de l'enseignement. Et que cela crée non pas de meilleurs informaticiens, mais des informaticiens différents. Et qu'il serait intéressant de transposer cet enseignement à des formations qui ne conduisent pas à des carrières techniques et/ou proches de la programmation.
Il faut évidemment séparer la réalité et le discours commercial, mais c'est une réflexion intéressante. Avec mes mots, je ferais un parallèle avec les études de langues. On dit souvent que le latin est enseigné parce qu'il façonne l'esprit, ce qui rend les autres langues plus faciles à apprendre par la suite. En schématisant à l’extrême, cela reviendrait à former des linguistes en leur faisant apprendre le grec ancien plutôt que le latin ; ils ne seront pas meilleurs, mais ils seront différents.
(je sais que c'est un exemple à la con, essayez de comprendre l'analogie)
35 De mathématiques - 03/09/2013, 21:45
Ah désolé mais je soutiens fortement que les mathématiques occupe une place importante dans l'etude profonde de l'informatique
36 De mageekguy - 04/09/2013, 14:24
@mathématiques : Je trouve regrettable, surtout à la lecture de votre site, que vous n'ayez pas étayer votre propos par des arguments constructifs.
37 De Yann Ponty - 18/09/2014, 19:45
Je suis absolument d'accord avec le message de ce billet, et particulièrement touché par la justesse de la réaction d'Amaury.
C'est un sujet qui me passionne, donc ma réaction est sans doute disproportionnée (et ne sera très probablement que très peu lue, étant donné la date de publication du billet), mais dans les grandes lignes, ça donne :
- L'info, ce n'est pas (seulement) des maths !
- Le système perd énormément (en capacité d'innovation, en épanouissement individuel...) en ne détectant/valorisant pas les élèves principalement doués en info avant la fac/prépa
- Tout ce qui se formalise n'est pas des maths (et, d'ailleurs, toutes les maths ne sont pas formelles)
- Les maths, c'est super, c'est utile mais ça reste ... des maths (cad, pour l'informaticien, un outil, parmi d'autres)
Tout d'abord mon histoire perso : Élève médiocre au lycée (bac de justesse), je m'inscris à la fac "pour voir" (je faisais beaucoup de musique à l'époque, donc peu de temps a priori pour suivre les cours...
), et là je tombe sur les Maths formalisées (ah, les quantificateurs... qui permettent à l'élève d'exprimer une preuve rigoureuse et, en transférant le fardeau de la preuve au correcteur, me permettent enfin d'échapper à l'arbitraire des corrections "humaines"). Je découvre ensuite l'info, dans toute sa splendeur (de l'architecture à la machine de Turing en passant par la vérification), où tout me semble passionnant et "facile". Intéressé par les algorithmes (et leur analyse, qui requière des outils aux fondations mathématiques profondes), je candidate et suis accepté au DEA (equiv. Master 1, on ne rigole pas !) Algorithmique, où nous ne sommes que 3 élèves issus de la fac, qui compensons tant bien de mal notre manque d'"astuces de taupin" (Qui de sérieux n'a pas fait de prépa ... à part moi ?
) par une connaissance intime des objets de l'informatique (automates, grammaires, graphes...) et un goût du codage. Ce dernier en particulier, "un peu sale" pour la plupart de nos camarades théoriciens purs, s'avère un formidable support pour l'intuition (une démarche exploratoire de plus en plus répandue dans la recherche actuelle, y compris en maths !), et me permet de survivre dans un cursus assumant un fort biais en direction des profils "grandes écoles" (donc Matheux, dans le contexte). J'enchaîne alors avec une thèse en bioinformatique à Paris Sud (avec quand même pas mal d'algo... faut bien se faire plaisir un peu !), effectue quelques postdocs à l'étranger et en France, puis obtiens in extremis un poste de Chargé de Recherche au CNRS, à l'école Polytechnique, où j'effectue toujours mes recherches entre Maths Discrètes et Bioinformatique. Je suis d'ailleurs actuellement (2014) en séjour de recherche dans un département de Maths à Vancouver.
Du coup, j'ai vraiment l'impression d'être "passé entre les gouttes" d'un système qui sélectionne de façon un peu uni-dimensionnelle ("prenons les meilleurs en Maths/Physique, puis sélectionnons parmi ceux qui restent ceux qui feront de l'info"). Des fois ça marche, et les deux critères coincident : on rencontre parfois des "génies universels" un peu énervants dans cette branche professionnelle ...
et puis il est certain qu'un goût pour l'abstraction prédispose à la fois à l'Info et à certaines branches des Mathématiques. Assez souvent cependant, des informaticiens brillants (y compris dans les branches les plus théoriques) n'arrivent pas à s'exprimer dans l'idiome mathématique, ou ne partage pas la sensibilité des mathématiciens, et sont "perdus pour la cause". La plupart des preuves Mathématiques ne sont pas entièrement formelles, et l'évaluation de la qualité d'une copie ou d'un article scientifique de Maths est dépendante d'un certain nombre de critères relevant du consensus social (cf "élégance" d'une preuve, un argument "suffisamment détaillé" ...) qui relèvent bien d'une sensibilité propre (ce qui, au passage, ne remet pas en question la correction des résultats).
Toutes mes expériences en recherche, enseignement (y compris à l'X !) et vulgarisation scientifique m'ont conforté dans l'idée que la "sensibilité" d'un informaticien est qualitativement différente de celle d'un mathématicien. J'ai pu par exemple rencontrer lors d'une conférence en lycée un élève de terminale qui comprenait plus vite que tous les autres et généralisait des algorithmes, anticipant sur l'état de la recherche actuelle, avant d'apprendre de la bouche de son prof de Maths désespéré qu'il "a 1 de moyenne en Maths et n'aura jamais son bac..." (je plus marrant/désespérant : l'algo en question est une programmation dynamique, le type d'algo le plus proche des maths qui soit car reposant de façon cruciale sur une récurrence ...). De la même façon, les algorithmes contribués, dans plusieurs sous-domaines de l'informatique, par des Mathématiciens "purs" se révèlent parfois "théoriques", c'est à dire inimplémentables, incomplets ou inefficaces en pratique du fait de "constantes d'implémentation" astronomiques (Pas de généralité ici : En cryptographie par exemple, des progrès en calcul symbolique/scientifique et théorie des nombres se traduisent souvent par des avancées concrètes dans notre capacité à "casser" les codes). Plus généralement, certaines abstractions dans les langages de programmation (objet, templates C++/Java ... où la sémantique est "mouvante" mais se comprennent bien de façon mécanique en terme de "responsabilisation" des variables, ou de réécriture du code par lui-même), pour des raisons que je ne m'explique pas complètement, ne "passent" pas très facilement auprès des élèves matheux, même brillants. Pour conclure, les maths, et en tout cas des constructions formelles issues de celles-ci, sont certes omniprésente en informatique, mais elles servent de support à une sensibilité, à des intuitions et des problématiques, qui lui sont propres (exactement comme la physique théorique, par exemple) et justifierait un traitement de l'informatique comme une discipline à part entière.
Le "système France" perd énormément de la "satellisation" des informaticiens (initialement) "mono-doués", du fait de l'absence (ou la présence limitée aux dimensions "matheuse" et "technologique"... enseignée par des profs non-spécialisés) d'info avant la fac/prépa. Celle-ci permettrait de valoriser ces élèves à un age où ils en ont le plus besoin ! Pour ma part, sans une mère prof de math me rassurant sur mes capacités malgré mes notes foireuses, et un père prof de physique ayant connu le "racisme (light!) des purs", je n'aurais jamais pu faire ce métier de chercheur qui m'épanouit totalement, et où je suis persuadé que mon profil un peu atypique apporte quelque chose à la communauté. Après, le goût des Maths peut (ou pas) venir aux élèves doués en Info dans la suite de leurs études, mais il semble bien arbitraire d'en faire une condition nécessaire. Et puis, éviter une filtration initiale sur les Maths/Physique permettrait au moins de participer à l'épanouissement intellectuel et professionnel de ces élèves, et ainsi de garantir leur future contribution à la société (je commence à penser à ma retraite moi !
).
38 De mageekguy - 28/10/2015, 08:25
@Yann Ponty : Amen, et merci pour ce superbe commentaire !