All aboard!

Edi­tors voor de BBC Mi­cro:Bit en Cal­lio­pe mi­ni

C’t Magazine - - Test | Experimenteerplatforms: editors - Doro­thee Wie­gand

De BBC Mi­cro:Bit en Cal­lio­pe mi­ni zijn zo ont­wor­pen dat ook kin­de­ren er goed mee over­weg kun­nen. Je hebt ech­ter niets aan de meest kind­vrien­de­lij­ke hard­wa­re als de bij­be­ho­ren­de pro­gram­meer­om­ge­ving niet ge­schikt is voor in­stap­pers. Om­dat er voor de­ze twee boards ech­ter ver­war­rend veel om­ge­vin­gen zijn, heb­ben we het aan­bod eens on­der de loep ge­no­men.

Op de web­si­te voor de Mi­cro:Bit vind je door te klik­ken op 'Aan de slag' be­schrij­vin­gen en links voor twee edi­tors. De

Ja­vaScript blo­kedi­tor kan na het op­slaan van een pro­ject ook zon­der in­ter­net­ver­bin­ding ge­bruikt wor­den. Het pro­ject be­vindt zich dan in de lo­ka­le ca­che. De Ja­vaScript blo­kedi­tor is in de prak­tijk het­zelf­de als de Ma­keCo­de-edi­tor van Mi­cro­soft. Een an­de­re mo­ge­lijk­heid voor of­fli­ne-ge­bruik is dan ook de Win­dows 10-app Ma­keCo­de

for mi­cro:bit, die op het mo­ment van schrij­ven als bè­ta be­schik­baar is.

De twee­de ver­wij­zing op de Mi­cro:Bit­si­te leidt naar de Py­thon edi­tor. Die wordt ont­wik­keld door de Py­thon-com­mu­ni­ty en is vol­gens de be­schrij­ving 'voor de­ge­nen die meer wil­len dan in blok­ken pro­gram­me­ren'. Hij is ge­richt op de wat ou­de­re scho­lie­ren. Ook de Cal­lio­pe kan met de­ze edi­tor pri­ma ge­pro­gram­meerd wor­den en de fa­bri­kant van Cal­lio­pe geeft aan dat het ap­pa­raat in de toe­komst vol­le­dig com­pa­ti­bel zal wor­den met de Py­thon-edi­tor.

Op de (En­gels­ta­li­ge) web­si­te van de Cal­lio­pe mi­ni kun je kie­zen uit drie edi­tors via 'Let's start / Edi­tor'. Daar staan drie mo­ge­lijk­he­den, na­me­lijk de Duits­ta­li­ge

Cal­lio­pe mi­ni Edi­tor, Ma­keCo­de van Mi­cro­soft en Open Ro­ber­ta Lab van het Fraun­hofer In­sti­tuut. Open Ro­ber­ta Lab wordt al­leen op de Cal­lio­pe-si­te ver­meld, maar de­ze edi­tor is ook ge­schikt voor de Mi­cro:Bit. Je kunt hem zelfs of­fli­ne ge­brui­ken als je een Open Ro­ber­ta Lab Ser­ver op een Rasp­ber­ry Pi in­stal­leert. Het ima­ge­be­stand daar­voor en al­le an­de­re ver­wij­zin­gen naar edi­tors en der­ge­lij­ke staan bij de link aan het eind van dit ar­ti­kel.

In to­taal zijn er dus vier of­fi­ci­eel aan­be­vo­len edi­tors: de hMa­keCo­de-edi­tor en Open Ro­ber­ta, met va­ri­an­ten voor bei­de boards, de Cal­lio­pe mi­ni Edi­tor en de Py­thon-edi­tor. We be­spre­ken de­ze edi­tors uit­ge­brei­der in de ka­ders op de vol­gen­de pa­gi­na's.

Al­le edi­tors zijn gra­tis. Ze wer­ken in je brow­ser, zo­dat in­stal­le­ren niet no­dig is. De werk­wij­ze is in prin­ci­pe steeds het­zelf­de. In het werk­ven­ster ont­staat de co­de stap voor stap. Het vol­tooi­de pro­gram­ma wordt daar­na als hex-be­stand op je pc op­ge­sla­gen. Ver­bind het board ver­vol­gens via usb met je pc. De Mi­cro:Bit ver­schijnt dan als ver­wis­sel­ba­re schijf 'MICROBIT', de Cal­lio­pe als 'MI­NI'. Om het pro­gram­ma uit te voe­ren, ko­pi­eer je het hex-be­stand daar ver­vol­gens naar­toe.

Een edi­tor kie­zen

Wel­ke edi­tor is voor jou of je kind het meest ge­schikt? Dat hangt voor­al af van je voor­ken­nis en wat je wilt be­rei­ken. Als het er al­leen om gaat het board te la­ten

Voor de edu­ca­tie­ve boards BBC Mi­cro:Bit en Cal­lio­pe mi­ni be­staan al­ler­lei edi­tors, van ka­kel­bont tot keu­rig klas­siek, van sim­pel tot com­plex. Er is voor ie­der­een wel een ge­schik­te, je moet hem al­leen even we­ten te vin­den. We heb­ben de vier of­fi­ci­eel aan­be­vo­len edi­tors na­der be­ke­ken, plus wat er ver­der zo­al be­schik­baar is.

pie­pen of knip­pe­ren, dan is een een­vou­di­ge blo­kedi­tor ide­aal. Daar­bij kan niets ver­keerd gaan, het ver­mijd frus­tra­ties en je hebt snel suc­ce­s­er­va­rin­gen.

Maar als het gaat om een ech­te in­stap­mo­ge­lijk­heid in het le­ren pro­gram­me­ren, dan hoort een fout of een beet­je frus­tra­tie er af een toe ook bij. Een blo­kedi­tor die fou­ten al­tijd ver­hin­dert, is dan mis­schien niet de bes­te keus. Bij die pro­gram­meer­me­tho­de wor­den ge­kleur­de gra­fi­sche ele­men­ten ge­com­bi­neerd. Veel blok­ken heb­ben op be­paal­de pun­ten klei­ne uit­stul­pin­gen, an­de­re klei­ne uit­spa­rin­gen. Dat moet er­voor zor­gen dat ze al­leen op de be­oog­de ma­nier ge­com­bi­neerd wor­den. Als je als ge­brui­ker een blok in de buurt van een zin­vol­le po­si­tie sleept, klikt het van­zelf vast. De uit­stul­ping van een voor­waar­de­blok past bij­voor­beeld mooi in de uit­spa­ring aan het be­gin van een lus­blok.

Er is he­laas ech­ter geen uni­for­me blok­pro­gram­meer­taal. Het aan­tal, de ty­pen en de in­de­ling van blok­ken is bij el­ke edi­tor an­ders. Hoe veel je er mee kunt en wel­ke ken­nis je daar­bij op­doet hangt dan gro­ten­deels af van de mo­ge­lijk­he­den van de blo­kedi­tor. Hoe over­zich­te­lij­ker het aan­tal be­schik­ba­re blok­ken en hoe een­vou­di­ger die zijn op­ge­bouwd, des te mak­ke­lij­ker de eer­ste pro­gram­meer­po­gin­gen luk­ken. Bij Ma­keCo­de en Open Ro­ber­ta Lab heb je de keu­ze tus­sen een be­gin­ner- en een pro-mo­dus. In­stap­pers krij­gen daar­door een over­zich­te­lij­ke se­lec­tie van de be­schik­ba­re blok­ken te zien.

Maar ook met een uit­ge­breid as­sor­ti­men­ten blok­ken kun je bij lan­ge na niet al­le mo­ge­lijk­he­den van een op tekst ge­ba­seer­de pro­gram­meer­taal im­ple­men­te­ren. In Ma­keCo­de zijn er bij­voor­beeld vier lus­blok­ken, maar die zijn niet erg flexi­bel. Bij het door­lo­pen van een waar­de be­gint het blok al­tijd bij 0, de stap­groot­te is al­tijd 1. Ze­ker als het om va­ri­a­be­len of func­ties gaat, stui­ten blo­kedi­tors al snel op hun gren­zen.

Fou­ten op­spo­ren

Bij veel blo­kedi­tors kun je na het bou­wen met blok­ken het equi­va­lent be­kij­ken in een op tekst ge­ba­seer­de pro­gram­meer­taal. Het blok­pro­gram­ma wordt al naar­ge­lang de edi­tor om­ge­zet in Ja­vaScript, Py­thon of C++. Met som­mi­ge edi­tors is het zelfs mo­ge­lijk de­ze co­de te be­wer­ken, maar meest­al kun je hem al­leen be­kij­ken. Soms kan de ge­toon­de co­de ook ge­ëx­por­teerd wor­den.

Een punt waar­op de blo­kedi­tors dui­de­lijk te­kort schie­ten is fout­op­spo­ring. Het aan­bod aan tools waar­mee je bugs kunt op­spo­ren is bij­zon­der ka­rig. Al­leen de of­fli­ne va­ri­an­ten van de Py­thon-edi­tor en Ma­keCo­de-edi­tor heb­ben op dat ge­bied iets te bie­den. Klik je in de of­fli­ne Py­tho­nedi­tor Mu op de knop Check, dan mar­keert hij al­le re­gels die een fout be­vat­ten met een ro­de pijl. Bo­ven­dien kun je via de REPL­knop de in­ge­bouw­de ter­mi­nal star­ten om recht­streeks met het board te com­mu­ni­ce­ren. Fout­mel­din­gen ver­schij­nen dan in een apart Ex­tra-ven­ster on­der het werk­ge­bied. Daar zijn ze een stuk be­ter te le­zen dan met een licht­krant op het klei­ne 5×5 led-dis­play.

Het is maar si­mu­le­ren

De si­mu­la­tor van de Ma­keCo­de-edi­tor biedt voor fout­op­spo­ring een zo­ge­he­ten Slow-Mo-func­tie, die je in- of uit­scha­kelt via de knop met de slak. Het is daar­bij han­di­ger dat het mo­men­teel uit­ge­voer­de blok wordt ge­mar­keerd dan dat de uit­voe­ring ver­traagd wordt. Ter­wijl je in de si­mu­la­tor kunt vol­gen wat er op het board ge­beurt, zie je rechts daar­naast de blok­ken­co­de, waar­bij steeds een blok dui­de­lijk is ge­mar­keerd met een oran­je rand.

Be­hal­ve bij Ma­keCo­de zit er ook een si­mu­la­tor in Ro­ber­ta Lab. Je kunt je af­vra­gen wat een si­mu­la­tor daar voor nut heeft, aan­ge­zien het juist om de prak­tijk­er­va­ring met het ech­te ex­pe­ri­men­teer­board gaat. Maar het kan ver­ve­lend zijn om steeds een hex-be­stand aan te moe­ten ma­ken en dat naar het board te ko­pi­ë­ren om ver­vol­gens 's-y-n-t-a-x-e-r-r-o-r' over het dis­play te zien lo­pen.

Drie van de vier uit­voe­rig ge­tes­te edi­tors zijn ook in het Ne­der­lands be­schik­baar. Niet al­leen de me­nu­op­drach­ten en knop­tek­sten zijn gro­ten­deels in het Ne­der­lands, ook de mees­te blok­ken zijn Ne­der­lands­ta­lig. Wat je dan krijgt klinkt wel krom in de oren van er­va­ren pro­gram­meurs: "als 'waar' voer uit" bij­voor­beeld, of "ver­krijg pres­sed but­ton A = waar". Dat is ver ver­wij­derd van de gang­ba­re En­gels­ta­li­ge in­struc­ties en pro­gram­meer­ta­len, maar mak­ke­lij­ker voor jon­ge kin­de­ren. Ze­ker voor kin­de­ren uit groep 5 of la­ger maakt dat ken­nis­ma­ken met pro­gram­me­ren vaak een­vou­di­ger.

Bij Ma­keCo­de is de Ne­der­land­se ver­sie vol­le­di­ger dan bij Open Ro­ber­ta Lab. Maar in bei­de ge­val­len zijn er ook on­ver­taal­de (En­gel­se) blok­ken en an­de­re on­der­de­len van de pro­gram­meer­om­ge­ving. Het helpt dus als kin­de­ren al wat ken­nis van de En­gel­se taal heb­ben. De Cal­lio­pe mi­ni Edi­tor is al­leen in het Duits te ge­brui­ken.

Voor een con­sis­ten­te pro­gram­meer­om­ge­ving kun je de Ne­der­lands­ta­li­ge edi­tors be­ter op En­gels in­stel­len. Dat heeft veel voor­de­len. Ten eer­ste heb je meer aan er­va­rin­gen uit eer­ste speel­se ex­pe­ri­men­ten als je daar­bij de bij pro­gram­meer­ta­len gang­ba­re sleu­tel­woor­den al hebt le­ren ken­nen. Ten twee­de wor­den de mees­te edi­tors ont­wik­keld in het En­gels. De ver­ta­ling naar an­de­re ta­len loopt meest­al ach­ter, wat zorgt voor vreem­de com­bi­na­ties van En­gels en Ne­der­lands. Als zo­wel de blok­ken

als de in­ter­fa­ce En­gels­ta­lig zijn, ver­mijd je ver­war­ring.

Als de eer­ste pro­beer­sels klaar zijn, wil je die pro­gram­ma's na­tuur­lijk graag pu­bli­ce­ren. Daar­voor is meest­al een ac­count no­dig. Bij Open Ro­ber­ta Lab heb je bij­voor­beeld sinds ver­sie 2.3.0 de 'Gal­le­rij' (met spel­fout), waar­in ei­gen pro­gram­ma's met an­de­ren ge­deeld kun­nen wor­den.

Laat­ste blok­jes

Tot eind 2016 wer­den op de Mi­cro:Bit-si­te nog vier edi­tors aan­ge­bo­den: Co­de King­doms Ja­vaScript-Edi­tor, de PXT-Edi­tor en Touch De­vel­op van Mi­cro­soft plus een ou­de­re ver­sie van de Py­thon-edi­tor. PXT lijkt erg veel op Ma­keCo­de, dat daar ogen­schijn­lijk de recht­streek­se op­vol­ger van is. In veel oud ma­te­ri­aal zit­ten dan ook nog ver­wij­zin­gen naar PXT. Het be­lang­rijk­ste ver­schil is dat PXT geen func­ties heeft en geen pak­ket­ten kan la­den. Touch De­vel­op be­gon als Mi­cro­soft-Re­search-pro­ject en was voor­al be­doeld voor het ont­wik­ke­len voor touch-ap­pa­ra­ten. Het wordt op 22 ju­ni 2019 uit­ge­fa­seerd. De ou­de Mi­cro:Bit-si­te is nog on­li­ne en de ge­noem­de edi­tors zijn daar nog tot eind 2018 be­schik­baar. Maar dat is voor­al om ge­brui­kers de ge­le­gen­heid te bie­den hun be­stan­den in vei­lig­heid te bren­gen. Van­af no­vem­ber kun je er al­leen nog pro­jec­ten mee ope­nen en eind dit jaar zul­len ze ver­dwij­nen. De­ze vier edi­tors zijn dus ze­ker géén goe­de keu­ze als je nu be­gint met pro­gram­me­ren van de Mi­cro:Bit of Cal­lio­pe.

Ge­mengd aan­bod

Ver­der zijn er nog ve­le an­de­re edi­tors voor Mi­cro:Bit en Cal­lio­pe. Er is voor elk wat wils, van Scratch tot C++. Je moet al­leen wel be­den­ken dat ach­ter de­ze edi­tors vaak geen gro­te ont­wik­ke­laars­ge­meen­schap zit, laat staan een over­heids­in­stan­tie of edu­ca­tie­ve stich­ting die de soft­wa­re voort­du­rend on­der­houdt en ver­der ont­wik­kelt. Als je je daar niet door laat af­schrik­ken, vol­gen hier nog en­ke­le op­ties.

Edu­blocks is een op pe­da­go­gisch ge­bied po­pu­lai­re pro­gram­meer­om­ge­ving met blok­ken/Py­thon. Sinds be­gin 2018 be­staat daar een spe­ci­a­le om­ge­ving van voor de BBC Mi­cro:Bit.

De aan het MIT ont­wik­kel­de vi­su­e­le pro­gram­meer­om­ge­ving Scratch is spe­ci­aal be­doeld voor kin­de­ren. Op Git­Hub staat een Scratch to Mi­cro:Bit brid­ge en een

ScratchX-ex­ten­sie voor macOS.

Op de web­si­te van Mbed is een C++ont­wik­kelom­ge­ving voor de Mi­cro:Bit be­schik­baar (met ver­plich­te re­gi­stra­tie). Op Git­hub staan nog meer pro­jec­ten voor het pro­gram­me­ren van de Mi­cro:Bit: in Rust, Forth, Pas­cal en Ada. (mdt) c

De Ma­keCo­de-edi­tor biedt een be­perk­te se­lec­tie blok­ken voor het ma­ken van lus­sen.

Newspapers in Dutch

Newspapers from Netherlands

© PressReader. All rights reserved.