Un samedi après-midi du mois de mai, je me suis soudainement rendu compte que la Fête des Mères était le lendemain et que je n'avais rien pour ma mère, j'ai alors commencé à me demander ce que je pourrais bien lui acheter pour la Fête des Mères. Je me suis dit, pourquoi ne pas lui créer une carte interactive pour la Fête des Mères en utilisant le logiciel Scratch que j'étais en train de développer avec mon groupe de recherche au Laboratoire audiovisuel du MIT ? On l'a développé pour que les gens puissent facilement créer leurs propres histoires, jeux et animations interactives, et partager ensuite leurs créations entre eux. Donc, je me suis dit que ça serait une opportunité d'utiliser Scratch pour créer une carte interactive pour ma maman. Avant de créer ma propre carte de Fête des Mères, J'ai voulu jeter un coup d'œil au site web de Scratch. Au cours des dernières années, des enfants du monde entier, âgés de 8 ans ou plus, ont partagé leurs projets, et je me suis demandé si parmi ces 3 millions de projets, il y avait quelqu'un qui avait pensé à partager des cartes pour la Fête des Mères. Donc, j'ai tapé dans l'outil de recherche "Fête des Mères" et j'ai été surpris et ravi de voir qu'une liste de dizaines et dizaines de cartes de Fête des Mères sont apparues sur le site Scratch, beaucoup d'entre elles ayant été postées au cours des dernières 24 heures par des procrastinateurs tout comme moi. Alors j'ai commencé à les regarder. (Musique). J'en ai vu une dans laquelle il y avait un chaton qui souhaitait à sa maman une joyeuse Fête des Mères. Et le créateur proposait avec beaucoup d'égards à sa mère la possibilité de voir l'animation à nouveau. Il y avait un autre projet interactif où, quand on survolait avec le curseur les lettres de "Bonne Fête des Mères", un slogan spécial pour la Fête des Mères apparaissait. (Musique) Dans celle-ci, la créatrice raconte comment elle a dû aller sur Google pour connaître la date de la Fête des Mères. (Bruits de tapotement de clavier) Et une fois qu'elle a trouvé la date de la Fête des Mères elle a envoyé des vœux spéciaux de Fête des Mères qui exprimaient à quel point elle aime sa mère. J'ai vraiment adoré regarder ces projets et interagir avec eux. En fait, j'ai tellement aimé ça, qu'au lieu de créer mon propre projet, j'ai envoyé à ma mère les liens d'une douzaine de ces projets. (Rires) Et elle a réagi exactement comme je l'avais espéré. Elle m'a répondu : « Je suis si fière d'avoir un fils qui a créé un logiciel permettant aux enfants de créer des cartes de Fête des Mères pour leur maman. » Donc ma mère était heureuse, ce qui m'a rendu heureux, mais en réalité, j'étais encore plus heureux pour une autre raison. J'étais heureux parce-que ces enfants utilisaient Scratch exactement comme nous l'avions espéré. En créant leurs cartes interactives pour la Fête des Mères, on pouvait voir qu'ils commençaient vraiment à maîtriser les nouvelles technologies. Qu'est-ce que je veux dire par maîtriser ? Je veux dire qu'ils sont capables de s'exprimer et d'exprimer leurs idées. Quand vous commencer à maîtriser une langue, ça veut dire que vous pouvez écrire dans votre journal, ou raconter une plaisanterie à quelqu'un, ou écrire une lettre à un ami. Et c'est la même chose avec les nouvelles technologies. En écrivant, en créant ces cartes interactives pour la Fête des Mères, ces enfants ont montré qu'ils maîtrisaient les nouvelles technologies. Bon alors peut-être que vous n'êtes pas vraiment surpris, parce que les gens pensent souvent que les jeunes d'aujourd'hui peuvent faire toutes sortes de choses avec la technologie. Je veux dire, nous avons tous entendu parler des jeunes en tant que "natifs numériques". Mais en réalité, je suis plutôt sceptique sur l'utilisation de ce mot. Je ne suis pas sûr qu'il faille considérer les jeunes en tant que natifs numériques. Quand on y regarde de plus près, comment les jeunes passent-ils la plupart de leur temps à utiliser les nouvelles technologies ? On les voit souvent dans des situations comme celle-ci, ou celle-là, et il ne fait aucun doute que les jeunes sont tout-à-fait à l'aise et familiers avec les moteurs de recherche les discussions instantanées - ou chats - les sms et les jeux. Mais ça ne fait pas d'eux des personnes qui maîtrisent les nouvelles technologies. Les jeunes d'aujourd'hui ont une grande expérience et une grande facilité à interagir avec les nouvelles technologies, mais beaucoup moins à créer avec les nouvelles technologies et à s'exprimer à l'aide des nouvelles technologies. C'est un peu comme s'ils savaient lire mais pas écrire avec les nouvelles technologies. Et je trouve très intéressant de voir comment on peut aider les jeunes à maîtriser les nouvelles technologies de sorte qu'ils apprennent à écrire. Ça veut dire qu'ils ont réellement besoin d'être capables d'écrire leurs propres programmes informatiques ou de coder. Donc, de plus en plus, les gens commencent à reconnaître l'importance d'apprendre à coder. Vous savez, ces dernières années, il y a eu des centaines de nouvelles organisations et de sites internet pour aider les jeunes à apprendre à coder. Si vous regardez sur le net, vous verrez des sites comme Codecademy, des évènements comme CoderDojo, et des sites comme Girls Who Code, ou bien Black Girls Code. On dirait que tout le monde s'y met. Vous savez, juste au début de cette année, au moment du nouvel an, le maire de New York, Michael Bloomberg, a pris la bonne résolution d'apprendre à coder en 2012. Quelques mois plus tard, l'Estonie a décidé que tous les élèves de C.P. devaient apprendre à coder. Et ça a déclenché un débat au Royaume-Uni sur la nécessité que tous les enfants apprennent à coder en Estonie. Maintenant, pour certains d'entre vous, quand vous entendez ça, ça peut paraître étrange que tout le monde apprenne à coder. Pour beaucoup de gens, quand ils pensent au code, ils pensent que c'est réservé à une sous-communauté très étroite de personnes ayant cette connaissance, et ils pensent que coder ressemble à ça. Et en fait, si coder ressemblait à ça, seule une petite sous-communauté de personnes ayant des compétences mathématiques spéciales ainsi qu'un profil technologique pourrait coder. Mais coder n'a pas à être comme ça. Laissez-moi vous montrer comment on code avec Scratch. Alors avec Scratch, pour coder, il suffit d'assembler des blocs. Dans ce cas, vous prenez une brique, vous l'accrochez à une pile, et les piles de briques contrôlent les comportements de différents personnages dans votre jeu ou votre histoire, dans ce cas, contrôler le gros poisson. Après avoir créé le programme, vous pouvez cliquer sur "Partager", et ensuite partager votre projet avec d'autres personnes, qui peuvent alors utiliser votre projet et commencer à travailler sur le projet également. Donc, bien sûr, faire un jeu de poisson n'est pas la seule chose qu'on peut faire avec Scratch. Parmi les millions de projets sur le site web de Scratch, il y a de tout, des histoires animées, des projets scolaires de science, des feuilletons animés, des kits de construction virtuelle, des reconstitutions de jeux vidéo classiques, des sondages politiques, des tutoriels de trigonométrie, des œuvres interactives et oui, des cartes de Fête des Mères. Alors je pense qu'il y de nombreuses façons différentes pour que les gens s'expriment en utilisant Scratch, afin de partager leurs idées avec le monde. Et ça ne fait pas que rester sur l'écran. Vous pouvez aussi programmer pour interagir avec le monde réel autour de vous. Voici un exemple qui nous vient de Hong Kong, dans lequel des enfants on fait un jeu et ont ensuite construit leur appareil d'interface physique, puis ont ajouté un capteur de lumière qui détecte le trou dans le tableau, de sorte que quand ils bougent la scie, le détecteur de lumière reconnaît le trou et contrôle la scie virtuelle sur l'écran et abat l'arbre avec la scie. On va continuer à observer de nouvelles façons d'associer le monde physique au monde virtuel et de le connecter au monde qui nous entoure. Ceci est un exemple d'une nouvelle version de Scratch qui sera lancée dans les prochains mois, et on cherche une fois de plus à vous pousser vers de nouvelles directions. Voici un exemple. On utilise une webcam. Et lorsque je bouge ma main, je peux faire éclater les ballons ou je peux faire bouger l'insecte. Donc c'est un petit peu comme Kinect de Microsoft, qui permet d'interagir avec les mouvements dans le monde [réel]. Mais au lieu de ne jouer qu'avec le jeu de quelqu'un d'autre, vous pouvez créer des jeux, et si vous voyez le jeu de quelqu'un d'autre, vous pouvez tout simplement dire "voir à l'intérieur", vous pouvez regarder la pile de briques qui le contrôlent. Donc il y a une nouvelle brique qui donne la quantité de mouvements vidéo, et ensuite, s'il y a cette quantité de mouvements vidéo, alors ça commandera au ballon d'éclater. De la même façon que la caméra est utilisée pour transmettre de l'information à Scratch, on peut utiliser un microphone. Voici un exemple de projet qui utilise un micro. Alors je vais vous tous, vous laisser contrôler de ce jeu à l'aide de vos voix. (Chants de criquets) (Cris) (Bruit de mastication) (Rires) (Applaudissements) Quand les enfants créent des projets comme celui-ci, ils apprennent à programmer, mais plus important encore, ils programment pour apprendre. Parce qu'en apprenant à programmer, ça leur permet d'apprendre plein d'autres choses et leur donne de nombreuses opportunités d'apprentissage. Encore une fois, c'est utile de faire l'analogie avec la lecture et l'écriture. Quand on apprend à lire et à écrire, ça donne l'opportunité d'apprendre beaucoup d'autres choses. Quand on apprend à lire, on peut alors lire pour apprendre. C'est la même chose avec la programmation. Quand on apprend à programmer, on peut programmer pour apprendre. Maintenant certaines des choses qu'on peut apprendre sont évidentes. On apprend comment les ordinateurs fonctionnent. Mais c'est juste le commencement. Quand on apprend à programmer, ça ouvre les portes de l'apprentissage de bien d'autres choses. Laissez-moi vous montrer un exemple. Voici un autre projet, que j'ai vu quand j'ai visité un de ces clubs d'informatique. Ce sont des centres pour les activités extrascolaires que nous avons aidés à lancer et qui proposent aux jeunes des quartiers défavorisés d'apprendre à s'exprimer de manière créative en utilisant les nouvelles technologies. Et quand je suis allé à un des clubs il y a quelques années, J'ai vu un garçon de 13 ans qui utilisait le logiciel Scratch pour créer un jeu un peu comme celui-ci, il était très heureux avec son jeu et il en était fier, mais il voulait faire plus. Il voulait en garder une trace. Alors c'était un jeu dans lequel un gros poisson mange un petit poisson, mais il voulait garder le score, de sorte qu'à chaque fois que le gros poisson mangerait un petit poisson, le score augmenterait et ça en garderait une trace mais il ne savait pas comment faire. Alors je lui ai montré. Avec Scratch, vous pouvez créer quelque chose qu'on appelle une variable. Je l'appellerai score. Ça vous crée quelques nouvelles briques, et ça crée aussi un petit écran de résultat qui enregistre ce score, donc à chaque fois que je clique sur "Modifier score", ça incrémente le score. Donc j'ai montré ça au membre de ce club -- appelons le Victor -- et quand Victor, a vu que cette nouvelle brique allait lui permettre d'incrémenter le score, il a su exactement quoi faire. Il a pris la brique et l'a ajoutée au programme exactement là où le gros poisson mange le petit poisson. Ainsi, à chaque fois que le gros poisson mange un petit poisson, ça incrémentera le score, et le score augmentera de un en un. Et ça marche vraiment. Il a vu ça et il était si excité, qu'il a approché sa main vers moi, et il a dit : « Merci, Merci, Merci ». Et voilà ce qui m'est venu à l'esprit : est-ce fréquent que les professeurs soient remerciés par leurs étudiants pour leur avoir enseigné les variables ? (Rires) Dans la plupart des salles de classe, ça n'arrive pas, mais c'est parce que dans la plupart des classes, quand les enfants apprennent les variables, ils ne savent pas pourquoi ils apprennent ça. Ça n'est vraiment en rien quelque chose qui peut leur être utile. Quand on apprend des concepts comme ceux-ci dans Scratch, on les apprend d'une manière qui leur donne vraiment un sens et qui est motivante, et on comprend alors pourquoi on apprend les variables, et on observe que les enfants apprennent de façon plus profonde et apprennent mieux. Je suis sûr que Victor a appris ce qu'était une variable à l'école, mais il n'avait pas vraiment appris -- il n'y avait pas vraiment fait attention. Maintenant il avait une raison d'apprendre les variables. Donc quand on apprend grâce à la programmation, et qu'on programme pour apprendre, on apprend dans un contexte qui a du sens, et c'est la meilleure façon d'apprendre. Alors quand des enfants comme Victor créent des projets comme celui-ci, ils apprennent des concepts importants tels que les variables, mais ça n'est que le début. Pendant que Victor travaillait sur ce projet et écrivait les scripts, il a également appris le processus de conception, comment commencer avec une idée lumineuse et en faire un projet concert, qui fonctionne comme vous pouvez le voir ici. Alors il apprenait de nombreux principes fondamentaux de la conception, comment tester de nouvelles idées, comment prendre des idées complexes et les décomposer en étapes simples, comment collaborer avec d'autres personnes sur un projet, comment identifier et résoudre les bugs quand il y a des erreurs, comment rester concentré et persévérer face à la frustration quand les choses ne se déroulent pas bien. Ces compétences essentielles ne sont pas uniquement utiles à la programmation. Elles sont pertinentes pour toutes sortes d'activités. Maintenant, qui sait si Victor va grandir et devenir programmeur ou informaticien ? C'est peu probable, mais peu importe ce qu'il fait, il sera capable d'utiliser les compétences de conception qu'il a acquises. Peu importe qu'il devienne directeur de marketing ou mécanicien ou militant associatif, ces idées sont utiles à tout le monde. Encore une fois, c'est utile de penser à l'analogie avec le langage. Quand on commence à lire et écrire couramment, ce n'est pas quelque chose qu'on fait uniquement pour devenir écrivain professionnel. Très peu de gens deviennent des écrivains professionnels. Mais c'est très utile pour tout le monde d'apprendre à lire et à écrire. C'est encore la même chose avec la programmation. La plupart des gens ne deviennent pas des ingénieurs informaticiens ou programmeurs, mais ces compétences de pensées créatives, de raisonnement systématique, de travail collaboratif -- des compétences que vous développez quand vous codez avec Scratch -- sont des choses que les gens peuvent utiliser peu importe ce qu'ils font dans leur vie professionnelle. Et il ne s'agit pas seulement de votre vie professionnelle. Programmer peut également vous permettre d'exprimer vos idées et vos sentiments dans votre vie personnelle. Laissez-moi terminer en vous donnant un dernier exemple. Revenons à mon histoire de Fête des Mères : après que j'ai envoyé à ma mère ma carte pour la Fête des Mères, elle a décidé qu'elle voulait apprendre à utiliser Scratch. Elle a donc fait ce projet pour mon anniversaire et m'a envoyé une carte de vœux à l'aide de Scratch. Bon, ce projet ne gagnera aucun prix pour sa conception, et vous pouvez être certains que ma mère de 83 ans n'a pas l'intention de devenir programmeur professionnel ou ingénieur informaticien. Mais en travaillant sur ce projet, elle a réussi à créer un lien avec quelqu'un qui compte pour elle, à continuer à apprendre de nouvelles choses à continuer à exercer sa créativité et à développer de nouvelles façons de s'exprimer. Alors quand on y regarde de plus près, on réalise que Michael Bloomberg apprend à programmer, que tous les enfants d'Estonie apprennent à programmer, que même ma mère a appris à programmer, ne pensez-vous pas qu'il est temps de vous mettre à l'apprentissage de la programmation ? Si vous voulez faire un essai, je vous encourage à aller sur le site de Scratch. C'est scratch.mit.edu, et essayez de programmer. Merci beaucoup. (Applaudissements)