niedziela, 25 września 2016

Zakubkowani


Jest wiele świetnych aplikacji służących do nauki programowania. Poza językami Scratch i Scratch Junior na naszym blogu były opisywane także inne - charakteryzujące się przejrzystym interfejsem oraz łatwo dostępnym rezultatem końcowym. Wiadomo nic nie cieszy tak młodego programisty i programistki jak duszek, kotek lub księżniczka wchodząca w interakcje z innymi elementami i bohaterami.  
Bez komputera
Ostatnio odkryłam coś, co odchodzi nieco od tego kanonu. Jest to rozwiązanie, w którym nie ma nagrody w postaci atrakcyjnego rezultatu na ekranie. Pomimo tego okazało się świetną zabawą dla moich uczniów…
Mam tutaj na myśli programowanie za pomocą … plastikowych kubeczków, kartki i długopisu. Kubeczki są … elementem „interfejsu” użytkownika. Z ich pomocą budujemy budowle. To jak one mają wyglądać zapisujemy na kartce w specjalnej notacji, jako algorytm dla „budowniczych”.
Bycie programistą to dobra zabawa związana z zaprojektowaniem na kartce swojej budowli, opisywanie „kodem” procesu jej powstawania i testowaniem stworzonego algorytmu.
Okazało się, że „budowniczy” również dobrze się bawi – jest robotem, który posługując się „kodem” napisanym przez programistów, zamienia go na zamki i mosty złożone z kubeczków.


Dużo zabawy
Na moich lekcjach przeprowadzonych w klasach 4-6 było dużo radości. Królowała dobra zabawa i wyzwania – kto zaprojektuje ciekawszą budowlę, bardziej „zakręcony” algorytm, kto wymyśli bardziej odlotową jej nazwę. Uczniowie, nawet nie zauważyli, że podczas lekcji planują logicznie powiązane ze sobą akcje, przekładają swoje pomysły na język „programowania”, myślą analitycznie – przechodzą od wizualnych projektów do abstrakcji, a potem wracają do rzeczywistości naśladując komputer, który wykonuje przewidziane dla niego komendy.


O co chodzi w kubeczkach?
Wyobraźmy sobie, że mamy „stertę” kubeczków włożonych jeden w drugi. Chcemy za ich pomocą zbudować budowlę, na początek prostą wieżę złożoną z trzech kubków.


Do opisu procedury związanej z budowaniem, będziemy używać znaków umożliwiających podniesienie kubeczka do góry, opuszczenie go, przesunięcie w prawo bądź lewo oraz przekręcenie go o 90 stopni (jeśli akurat w takiej postaci będzie przedstawiony na planie). A zatem do naszego kodu zapisu będziemy używać następujących symboli:


Dla naszych celów nakładamy siatkę symbolizującą ilość kroków, o które należy przesunąć kubeczki.
Pierwsza linijka to procedura: podnieś kubek ze stosu do góry, przesuń go o dwa kroki w prawo, połóż i przesuń rękę dwa kroki w lewo. Myślę, że bez trudu poradzicie sobie z dwiema następnymi linijkami kodu.

A może teraz takie zadanie:

Dobra zabawa jest także podczas zabawy w budowniczego, gdy musimy stworzyć zamek na podstawie kodu przedstawionego przez architekta/programistę.
Tu pewna uwaga, warto wielokrotne przesunięcie w prawo lub lewo zastąpić jakimś bardziej zwięzłym kodem, np. zamiast: -> -> -> -> -> -> można zapisać (6) -> .
No to spróbujcie. Jaką otrzymacie konstrukcję z takiego kodu?
Na koniec najważniejsze: szczęśliwi uczniowie, uczący się i bawiący jednocześnie.

Wiele innych inspiracji związanych z kubkowym programowaniem znajdziecie tutaj:
https://csedweek.org/files/CSEDrobotics.pdf

Dziękuję Krzysztofowi Jaworskiemu za zarażenie mnie kubeczkami.autorka: Wioletta Szwebs, nauczycielka matematyki i zajęć komputerowych w Szkole Podstawowej nr 81 w Łodzi, trenerka programu Mistrzowie Kodowania
Share:

0 komentarze:

Prześlij komentarz