MakeCode pour Micro:bit

Après une présentation du Micro:bit et un rapide tour d’horizon de ses principaux langages de programmation, je vais vous en dire un peu plus sur son principal éditeur de code.

Présentation

MakeCode est la version MicroBit de la plateforme Microsoft MakeCode qui propose également des exemples et même des supports de cours (en anglais) destinés aux professeurs. L’éditeur de code est disponible en ligne (sans installation, depuis le navigateur), mais également en version téléchargeable sur le store de Microsoft.

Les tutoriels

Le site propose de nombreux exemples et tutoriels. Vous pouvez apprendre petit à petit, comment utiliser les différentes fonctions du MicroBit, en reproduisant les programmes qui vous attirent. Les premiers tutoriels guident pas à pas l’utilisateur. Tandis que les suivants sont des exemples de code détaillées. Cela correspond parfaitement à la progression de l’utilisateur.

Les explications sont en anglais, cependant, vous pouvez choisir de mettre les blocs en français. Cela donne un curieux mélange entre les 2 langues, mais ce n’est pas très grave, les étapes sont bien détaillées et toujours illustrées par les blocs à utiliser.

Ensuite, c’est à vous reproduire l’assemblage de blocs. Mais lors de cette phase, le modèle n’est plus affiché. Ce système d’apprentissage est conçu pour empêcher l’utilisateur de recopier bêtement le schéma fourni. Il oblige à faire l’effort de comprendre et de mémoriser l’étape en cours. Pas de panique, il subsiste un indice pour nous montrer la voie et il est possible à tout moment d’afficher de nouveau le modèle (en cliquant sur la petite icône Micro:bit).

Ce qui est agréable, c’est que le tutoriel n’est pas trop directif. Rien de vous empêche (une fois que vous pensez avoir compris), d’en faire à votre tête pour créer complètement autre chose.
Dans le mode tutoriel, la plupart des blocs qui ne sont pas nécessaires sont volontairement masqués pour ne pas perturber les débutants. Mais pour les retrouver, il est possible, à tout moment de cliquer sur « Quitter le tutoriel ».

Par exemple, mon fils (11 ans) a commencé à reproduire le jeu « Pierre Papier Ciseau » avec le tutoriel. Mais un fois qu’il a compris le principe, il a continué tout seul en créant ses propres icônes. Le résultat obtenu n’était donc pas absolument identique au modèle, mais quelle que chose de personnalisé. Peut être que cette liberté créative lui donnera envie de continuer à jouer avec le MicroBit…

L’interface

Pour simplifier l’interface, une partie des blocs « plus avancés » n’est pas accessibles immédiatement. Pour les afficher, il faut d’abord cliquer sur la catégorie, puis sur « plus » .

Le menu « Base » -> « Plus » avec 2 nouveaux blocs

Le menu « Avancé » qui contient d’autres catégories de blocs.

Le petit engrenage qui permet notamment de changer la langue et de supprimer le fichier qui est automatiquement sauvegardé dans les données du navigateur internet.

Sans oublier le bouton qui permet de convertir les blocs en JavaScript (ou inversement).

Les petites choses qui m’ont un peu énervé

Mais tout n’est pas parfait, moi qui suis habitué à la rigueur du langage Arduino, je suis trouve que MakeCode va parfois un peu trop loin dans la simplification.

Par exemple, le bloc « montrer l’icône… » ne se contente pas comme on pourrait le croire d’afficher l’icône correspondante, il ajoute aussi une pause de 0,5 secondes, alors que ce n’est indiqué nul part.
Il faut bien comprendre qu’un microcontrôleur est beaucoup plus rapide qu’un être humain. Normalement avec ce type de code, on ne devrait pas avoir le temps de voir les 2 icônes de coeur s’afficher successivement, on ne verrait que la matrice éteinte. Mais là les 2 icônes s’affichent bien avant l’extinction de la matrice.

Alors c’est vrai que cela évite aux débutants de faire ce genre d’erreur mais c’est justement ça qui est intéressant dans la programmation. Lorsque le programme ne réagit pas comme prévu, il faut rechercher pourquoi. Et c’est de cette façon que l’on peut comprendre le principe de fonctionnement du Micro:Bit et progresser.

Je vous donne un autre exemple, avec l’événement « lorsque le bouton … est pressé » ne correspond pas à ce que l’on pourrait attendre de lui. Le code suivant doit afficher en permanence un grand coeur, mais quand on appuie sur le bouton A il doit afficher un petit coeur. Mais cela ne fonctionne pas au moment où l’on presse, mais lorsque l’on relâche le bouton. De plus, on laisse le doigt appuyé un peu trop longtemps sur le bouton, ça n’est pas pris en compte. Dommage qu’il n’y ai pas plutôt un type bloc de « lorsque le bouton … est pressé » et un autre « lorsque le bouton … est relaché« .

Ce code (légèrement plus compliqué), fonctionne quand même beaucoup mieux.

Un dernier point que je trouve un peu regrettable, c’est l’absence de blocs commentaires. Ils sont pourtant très utiles pour expliquer le code et en plus ils existent en JavaScript. Alors, j’ai essayé de les ajouter en JavaScript.

Et, non seulement, il n’apparaissent pas dans en mode « blocs« .

Mais en plus, ils ont complètement été supprimés et ont aussi disparu en mode « JavaScript« .

Edit du 01/03/2021 (suite au message de Serge BARSKI) :
« pour les commentaires c’est possible avec Makecode. Il faut cliquer droit sur le bloc où l’on veut ajouter un commentaire, puis dans le menu, clic sur Ajouter un commentaire. Une petite fenêtre jaune apparaît, on y entre le texte. Cette fenêtre librement déplaçable est lié au bloc par un trait bleu et cette fenêtre se ferme en cliquant sur la petite flèche blanche. Dans le bloc où se trouve le commentaire, on peut y voir en haut et à gauche une icône genre « mémo ». On clique dessus pour faire apparaître ou disparaître le commentaire que l’on peut aussi supprimer/modifier facilement. A priori, les commentaires se retrouvent bien dans le code python. »

Conclusion

Même s’il possède quelques petits défauts, MakeCode est intuitif, agréable et facile à prendre en main. Ses tutoriels permettent de découvrir le principe de la programmation. De plus, son simulateur de Micro:bit exécute automatiquement le code en cours d’élaboration. Il est donc possible de tester (ou débugger) le programme avant de le transférer dans le Micro:bit. Ce qui est très pratique.


4 réflexions sur “MakeCode pour Micro:bit

  1. Bonjour J-C, pour les commentaires c’est possible avec Makecode. Il faut cliquer droit sur le bloc où l’on veut ajouter un commentaire, puis dans le menu, clic sur Ajouter un commentaire. Une petite fenêtre jaune apparaît, on y entre le texte. Cette fenêtre librement déplaçable est lié au bloc par un trait bleu et cette fenêtre se ferme en cliquant sur la petite flèche blanche. Dans le bloc où se trouve le commentaire, on peut y voir en haut et à gauche une icône genre « mémo ». On clique dessus pour faire apparaître ou disparaître le commentaire que l’on peut aussi supprimer/modifier facilement.

    A priori, les commentaires se retrouvent bien dans le code python.
    Voilà …

    Bien cordialement
    Serge

    J’aime

    1. Bonjour Serge et merci pour l’info, j’ai modifié l’article.
      Mais je ne sais pas si à l’époque j’étais passé à coté de cette fonction ou si elle a été rajouté après.
      Bien cordialement
      JC

      J’aime

Laisser un commentaire