Pasja i dzieciaki cz.2 — jak nauczyć dzieci programowania?

Rafał Piekarski
Smarter Life
Published in
4 min readMar 10, 2017

Tak jak tydzień temu tu wspominałem, zostałem poproszony o poprowadzenie zajęć z programowania dla dzieciaków w wieku wczesnoszkolnym. Ostatnio skończyliśmy na tym, że nie znalazłem idealnego programu nauczania dostosowanego do mojej sytuacji:

krótkie zajęcia wprowadzające do kodowania trwające maksymalnie 2 godziny dla początkujących dzieciaków.

I tak trafiłem na stronę code.org, która zainspirowała mnie do wymyślenia czegoś samemu. Można na niej znaleźć krótkie zadania w formie gier, gdzie wydaje się polecenia postaciom takim jak bohater Minecrafta, Elza z Krainy Lodu, ptaki z Angry Birds czy Flappy Bird. Tak więc, przez zabawę do nauki. Instrukcje, filmiki i same interaktywne bloki kodu są przetłumaczone na język polski. Więc, o ile dziecko umie czytać, to w zasadzie poradzi sobie samo. Co do kursu, to tak naprawdę dostosowałem do swoich potrzeb i nieco uprościłem to, co tam znalazłem w sekcji kursów dla szkoły podstawowej, czyli kurs numer 2 (link do planu zajęć).

Zajęcia są adresowane do dzieci w wieku od 6 roku życia i zajmują się zagadnieniami takimi jak: instrukcje warunkowe, algorytmy, pętle, debugowanie, kod binarny. Nie ma tego dużo, ale pozwala oswoić młodych adeptów z podstawowymi pojęciami i algorytmicznym sposobem myślenia. W sam raz na początek. Ale i tak postanowiłem go nieco dostosować do mojej sytuacji.

Konspekt

  1. Algorytm a program — zabawa na podłodze i planszy z kartek rozłożonych w à la szachownicę i wydawanie poleceń sobie i innym dzieciom, zapisywanie wydanych kroków(algorytmu) na tablicy przy pomocy strzałek
  2. Algorytmy w świecie rzeczywistym — składanie samolotu z papieru
  3. Pętle — wyklaskanie rytmu, np. “We will rock you” albo “Pije Kuba do Jakuba”, przepisanie kroków ze strzałkami na skróconą formę z liczbą powtórzeń, np. ➡️➡️➡️⬇️➡️➡️➡️⬇️⬆️ na: 2(3➡️⬇️)⬆️
  4. Debugowanie — znajdowanie błędów w kodzie. Czasem żmudna, ale jednak część rzeczywistości. Szukanie błędów w sekwencji kroków na planszy
  5. Instrukcje warunkowe — wyjaśnienie na podłodze i planszy, ze sprawdzaniem, na czym się stoi, lub czy ktoś inny nie stoi na polu, gdzie próbujemy wejść
  6. Kodowanie binarne — tablica i flamastry. Wyjaśnić, że to po prostu inny sposób kodowania liczb
  7. Zdarzenia — narysowane na tablicy/kartce przyciski i ich realny efekt, np. uruchamiający sekwencję poleceń na podłogowej planszy

Taki był plan, a pomiędzy chciałem wpleść gry z kursu, takie jak Labirynt, Artysta, Pszczoła, Flappy. W zależności od tego, jak się potoczy. Punkty powyżej to tylko hasła i pomysły na aktywności przy pomocy których można je przedstawić. W materiałach na stronie są czasami nieco inne koncepty.

Realizacja

Finalnie udało mi się w dwie godziny, z przerwą w środku na podwieczorek, zrealizować wszystkie punkty poza 6. Widząc, że czas się kurczy, postanowiłem z niego zrezygnować. Zwłaszcza, że ostatnie gry przy punkcie 7. były niejako nagrodą — zaprogramowaniem swojej własnej gry podobnej do FlappyBird. Pomijałem końcowe zadania z każdego z etapów, bo nie chciałem, aby moi uczniowie czuli presję “na wynik”. Uznałem, że przy pierwszym kontakcie z programowaniem to dobra zabawa jest priorytetem.

Gdy widziałem, że któremuś dziecku słabiej szło, to próbowałem podpowiedzieć. Ale całość przebiegała dość gładko, dzieciaki bawiły się bardzo dobrze. A gdy były nieco większe dłużyzny, jak przy zadaniach dotyczących debugowania, to przerywałem po kilku pierwszych planszach, aby ich nie zniechęcić. Po kilku pierwszych zadaniach ważne okazało się pokazanie faktycznego efektu ich pracy, czyli podejrzenie kodu JS wygenerowanego z elementów blokowych, które przesuwali na ekranie. Szczególnie przy zadaniach związanych z pętlami zapis był krótszy i robił wrażenie. Choć niekoniecznie rozumieli niektóre słowa z instrukcji w JavaScripcie. Oczywiście tłumaczyłem, gdy była taka potrzeba.

Moja grupa była dosyć skromna — tylko 4 młodych padawanów w przedziale wiekowym 7–10 lat. I na koniec sumaryczna ilość kodu, jaką każdy stworzył przez dwie godziny, została oszacowana na 270 linii. Myślę, że jak na pierwszy kontakt z programowaniem to świetny wynik. Dzieciaki świetnie się bawiły i nie chciały wracać do rodziców. A ja całość potraktowałem jako dzielenie się z nimi swoją pasją. Kto wie, może któryś z nich zostanie w przyszłości programistą. Chciałbym móc napisać też, lub programistką, ale niestety, choć próbowałem namówić też dziewczęta — powołując się na to, że jakby co to pomoże im Elza z Krainy Lodu ;-) — to finalnie żadna się nie zdecydowała. Może następnym razem.

Hello Ruby

A na koniec mam dla was filmik z konferencji TED, gdzie Linda Liukas, autorka książki Hello Ruby o programowaniu dla najmłodszych — wydanej po Polsku — opowiada, jak ciekawe może być uczenie programowania dzieci już od najmłodszych lat.

A jak to wygląda u was? Macie doświadczenie w uczeniu programowania najmłodszych? W jaki sposób do tego podeszliście? Może właśnie przy pomocy książki “Hello Ruby”?

Ten wpis jest częścią serii w ramach konkursu Daj Się Poznać 2017.

--

--

Rafał Piekarski
Smarter Life

MacUser, Programmer, Entrepreneur, Amateur photographer and someone who will be rich. Soon…