Aujourd'hui, il y avait une émission sur France Culture au sujet de l'enseignement de l'informatique à l'école. Les invités sont des gens bien que j'apprécie beaucoup : Gérard Berry, Claude Terosier et David Roche. Comme je n'ai pas pu écouter l'émission en direct, je me suis dirigé vers le site web pour l'écouter en différé.

Mais là, c'est le drame. J'ai pour habitude de fuir les commentaires des sites d'information car comme dit le site parodique Le Gorafi, lire ces machins est une forme particulièrement cruelle de neknomination. Mais la mise en page du site de France Culture étant ce quelle est, je n'ai pas pu y couper. Voici ce que j'ai dû lire :

Du coup, au lieu d'écouter les paroles d'espoir des copains, j'ai commencé une petite réponse à ce grand visionnaire. J'ai beaucoup édité et augmenté ce texte depuis que je l'ai posté sur le site de France Culture, pour arriver à la réponse que voici.

On peut en discuter, mais l'option "informatique industrielle" telle qu'enseignée me semble aussi nécessaire pour former des citoyens éclairés au XXIème que la biologie marine est utile pour faire pousser des laitues : il y a certes un certain rapport indéniable sur le sujet d'étude, mais l'approche diffère quelque peu. L'option "informatique industrielle" reste indispensable pour ceux qui veulent par exemple faire des machines-outils numériques leur métier, mais ils sont probablement moins nombreux que ceux qui seront en contact quotidien avec des ordinateurs.

L'enseignant d'ISN que vous citez a malheureusement raison : en France en 2014 pour avoir un haut diplôme, il est raisonnable de privilégier l'ingurgitation de mathématiques. Et André Gide disait aussi que Victor Hugo est, hélas, le plus grand poète français. Tout état de fait n'est pas forcément souhaitable.

Par ailleurs, vous reprochez à M. Berry de n'avoir pas défini ce qu'était la science informatique. Mais avez-vous défini ce que sont les mathématiques, au fait ? Est-ce seulement une science ? Pour la petite histoire, si on consulte la page anglophone (ou celle en hébreu) de "science informatique", on découvre que la sagesse populaire est de lier informatique et ingénierie électrique. En portugais, c'est lié à la théorie de l'information de Shanon. En allemand (et russe), ce serait une branche de la linguistique avec Chomsky en père spirituel ! Il n'y a que les francophones (et les italophones) pour en faire une branche des mathématiques. Vérifiez avec Google translate (ou autre) si vous ne me croyez pas.

D'aucuns vous renverront même votre polémique en argumentant que les modèles algorithmiques utilisés de nos jours en sciences et techniques sont un sur-ensemble strictement inclusif des modèles équationnels à la Navier-Stokes and co utilisés avant eux pour cela. En ce sens, les mathématiques sont une petite branche de l'informatique, bien plus vaste puisqu'elle s'occupe aussi de comment réaliser des systèmes réels efficaces (la technique s'occupe de la réalisation pratique, mais en informatique au moins, la technique est précédée de la science qui réfléchit à comment réaliser). Si vous voulez une bonne définition de ce qu'est cette discipline, voici un bon point de départ : Computing as a Discipline, Denning et Al.

Personnellement, comme je n'aime pas trop les guerres de clocher, je constate simplement que la très respectable université de Heidelberg a une faculté de "Sciences naturelles, mathématiques, et science informatique", comme si ces trois branches du savoir étaient proches, mais qu'il n'était pas raisonnable de les confondre pour autant.

De plus, il y a certes cinq spécialités au bac S, mais l'ISN est celle qui monte si on en croit les statistiques officielles : 37% en S-SI par exemple, alors que l'on a toutes les peines du monde à former les enseignants à cette nouvelle discipline avec les maigres moyens qu'on nous donne pour cela : beaucoup d'académies doivent donner un niveau licence d'informatique aux futurs profs d'ISN après seulement 3 jours de formation financés. Mais que font nos élèves en licence pendant 3 ans ?? Madame Fioraso, voilà une autre gabegie de la formation initiale dont le coût devrait être maîtrisé !..

Pour ce qui est de la proportion filles/garçons en ISN, mes collègues au Brésil me disent depuis plusieurs années qu'ils ont plus de filles que de garçons dans leurs enseignements d'informatique. Et cette année, c'est également le cas à Berkeley.

Mais so what, au fait ? Quelle est la corrélation entre la présence de zizi et la maîtrise de la pensée informatique ? L'auteur de cet article extraordinaire (à lire absolument) est par exemple une femme, mais qu'est-ce que ses organes génitaux changent à l'affaire ? Personnellement, que les informaticiens soient des informaticiennes (ou autre) me semble une information aussi pertinente que de savoir si leurs yeux sont verts, marrons ou mauves.

Après, si les décideurs IT regrettent qu'il n'y ait pas assez de femmes dans la profession, qu'ils commencent par gommer les différences de salaire H/F chez leurs ingénieurs ! Si cette différence n'était que de 10% en informatique (contre environ 20% sur l'ensemble de la société française), la profession se féminiserait à vitesse grand V. Serait-il plus simple de parler d'attractivité de la formation que d'améliorer celle des carrières ?

Mais je m'égare. Voici pour finir une petite anecdote historique pour insister sur les enjeux auxquels doivent répondre nos dirigeants ici et maintenant.

Il y a quelques siècles, la Chine était une puissance mondiale de tout premier ordre, qui avait inventé entre autre la boussole, l'imprimerie, le papier ou la poudre noire. Mais la sagesse populaire disait qu'utiliser la poudre noire dans des canons plutôt que dans un feu d'artifice était une pratique contraire à la tradition, donc à décourager. Quand les Britanniques ont déclaré la guerre pour pouvoir continuer à vendre de l'opium, les Chinois n'avaient pas vraiment amélioré leurs canons depuis leur invention, plusieurs siècles auparavant. Ils étaient peu efficaces et malpratiques pour viser (référence). Malgré les deux millénaires d'histoire de l'empire chinois, la puissance de feu britannique a rapidement eu raison des résistances chinoises, menant aux rebondissements historiques que l'on sait.

Ailleurs et à une autre époque, d'autres disent que "maîtriser les ordinateurs pour ne pas qu'ils nous maîtrisent" est une expression bébête et vide de sens (et trouvent normal d'être aliénés par leur smartphone). N'avons-nous pas eu 11 médailles Fields sur 60 le siècle passé ? Dans le même temps, tous les collégiens du Vietnam apprennent à programmer, et leurs examens à 14 ans sont comparables aux épreuves techniques de recrutement Google, réputées parmi les plus sélectives au monde.

Vous êtes naturellement libre d'avoir votre avis, et vous faites ce que vous voulez. Mais mes enfants sauront se faire obéir des ordinateurs aussi bien que je sais programmer (et j'ai fait de cette passion mon métier). Pour les enfants des autres, je pense que l'état français devrait prendre ses responsabilités.

Au delà de ces considérations géostratégiques qui me dépassent, on peut aussi trouver des tas de raisons plus personnelles pour apprendre les concepts sous-jacents à l'informatique, par exemple au travers de la programmation. Nous avons fondé avec Bastien Guerry et David Roche un site regroupant des interviews d'individus heureux de savoir programmer : http://jecode.org/.

Si vous êtes convaincu et que vous cherchez des billes pour apprendre à programmer à vos gamins, visitez la maigre page que j'ai faite en m'inspirant de la très belle initiative de Claude Terosier, ou bien les activités débranchées (sans ordinateur) que nous proposons avec Jean-Christophe Bach pour dédramatiser notre science et présenter les concepts fondamentaux de l'informatique.

Si vous avez peur que l'enseignement de l'informatique se fasse au détriment de celui des fondamentaux (lire écrire compter), regardez l'initiative Bootstrap qui vise à redynamiser l'enseignement de ces fondamentaux (surtout des maths, mais pas seulement) au travers de l'enseignement de la programmation dans un bon langage de programmation (pas javascript). Leurs résultats sont très instructifs et inspirants.

Si vous avez de bonnes bases et souhaitez approfondir, tournez vous vers l'exerciseur du programmeur que nous avons réalisé avec Gérald Oster pour permettre aux novices d'apprendre par la pratique à leur rythme, ou même vers les cours d'introduction en algorithmique ou en systèmes que je donne à mes élèves, futurs ingénieurs informaticiens.

Toutes mes ressources sont librement disponibles : utilisez-les, améliorez-les et diffusez-les. Ce qui m'importe, c'est que tous les citoyens (re)deviennent maîtres de leur monde, devenu numérique.

Voilà. Bien sûr que tout le monde ne doit pas devenir un programmeur émérite (ce qui prend au moins 10 ans intensifs), mais il demeure de la responsabilité de nos dirigeants de faire donner les bases à chaque citoyen.

Si vous ne devez que lire un seul des liens donnés, lisez l'article de Janette Wing sur la pensée informatique (2006). J'avais déjà une thèse d'informatique et j'enseignais à l'université depuis plusieurs années quand je l'ai lu, mais c'est cet article qui m'a permis d'enfin comprendre ma discipline. Le second meilleur article de la liste est celui de Denning : Computing as a Discipline.

Bon, du coup, j'écouterai l'émission demain, grmbl.

(https://xkcd.com/386/ -- CC-BY-NC).