«

»

wrz
25

Programowanie od przedszkola

Myślę, że wszyscy zgodzą się ze mną, że dzisiaj dzieci spędzają dużo więcej czasu przed komputerem niż kiedykolwiek wcześniej. Wiele osób to martwi, a specjaliści starają się określić jaka ilość czasu spędzanego przez dzieci przed ekranem jest dla nich bezpieczna. Tak naprawdę nie ma jeszcze badań stwierdzających definitywnie, że przebywanie przed ekranem szkodzi, co nie oznacza, że jest ono zupełnie bezpieczne – brakuje bowiem także takich badań, które by zaprzeczały jego szkodliwości. Mimo wszystko nasze osądy w tej sprawie opierają się bardziej na naszych przeświadczeniach niż na konkretach. Niestety dużo częściej interesuje nas ilość, a czasem zupełnie zapominamy o jakości czasu spędzanego przed komputerem. Wydaję się, że interakcje dzieci z nieodpowiednim materiałem mogą przynieść o wiele więcej szkody niż zbyt długie przebywanie przed ekranem. Dla nas nauczycieli to ważna informacja. Wiemy, że mamy przede wszystkim zadbać o jakość i wartość materiału edukacyjnego, który zamierzamy wykorzystać w przedszkolu. Stąd moja, wydawałoby się na pierwszy rzut oka, nietypowa propozycja. Zachęcania przedszkolaków do programowania.

Skąd w ogóle pomysł na programowanie od przedszkola?

Zacznijmy od wyjaśnienia czym jest programowanie komputerów. W tym artykule będę wykorzystywać najbardziej ogólne znaczenie tego pojęcia: programowanie to sprawienie, żeby komputer robił to co my zechcemy. W tak szerokiej definicji mieści się wiele, dlatego nie dziwi fakt, że dziś programowanie jest nazywane nową łaciną (jednak w odróżnieniu od niej nie jest martwym językiem). W dzisiejszych czasach uczenie dzieci programowania jest też porównywane do uczenia najmłodszych z poprzednich pokoleń umiejętności pisania i czytania. Aby zrozumieć tę analogię przypomnijmy sobie historyczne czasy kiedy większość ludzi nie potrafiła pisać ani czytać, a w razie potrzeby korzystali z pomocy wynajętych specjalistów.  Dziś taką sytuację trudno nam sobie wyobrazić. A przecież podobnie się dzieje, kiedy chcemy zaprogramować nasz komputer. W niedalekiej przyszłości to będzie nie do pomyślenia, będziemy bowiem traktować umiejętność programowania na równi z umiejętnościami pisani i czytania. Właściwie już teraz nie wystarczy posiadanie umiejętności interakcji z nowymi technologiami, trzeba umieć je samemu tworzyć.

Coraz więcej krajów zdaje sobie sprawę z wagi problemu i wprowadza zmiany w swoich programach nauczania. Ostatnio głośno jest o Estonii, która zdecydowała się na nauczanie programowania uczniów od 7 do 16 roku życia. Jest to słuszny krok przygotowujący społeczeństwo do wyzwań 21 wieku.[1] Wprawdzie dzisiaj jeszcze nie znamy zawodów jakie będą wykonywać nasi podopieczni (głównie dlatego, że niektóre jeszcze nie istnieją), możemy jednak stwierdzić z dużym prawdopodobieństwem, że będą to profesje związane z umiejętnością programowania, czy też chociażby logicznego myślenia. Proponując dzieciom zajęcia programowania tak naprawdę przygotowujemy je po prostu do życia w świecie nowych technologii.

Dlaczego przedszkolaki? Czy to nie za wcześnie?

Nie ma wątpliwości, że ucząc się programowania dzieci spędzają czas w sposób  wartościowy i rozwijający. Uczenie się programowania to nie tyle nabywanie umiejętności czysto technicznych ile dbanie o swój wszechstronny rozwój. Zajęcia z programowania uczą precyzyjnego myślenia, rozwijają umiejętność myślenia logicznego, kreatywność, pomysłowość, dbałość o szczegóły, powodują wzrost różnorodności pomysłów.[2] Pozwalają pokazać dzieciom nowy sposób rozwiązywania problemów, wykorzystujący komputery w sposób aktywny, pozwalający poznać zasady działania nowych technologii, pozwalający lepiej, głębiej zrozumieć komputery.

Jeden z amerykańskich ekspertów uważa, że „najważniejsze jest to, że małe dzieci zaczynają odkrywać związek z komputerem, który opiera się na odczuciu, że to one kontrolują komputery, a nie odwrotnie”.[3] Już od najmłodszych lat dzieci powinny mieć prawidłowe wyobrażenie o roli komputerów. Powinny rozumieć, że nie są one mądre same z siebie, ale dlatego, że ktoś je zaprogramował, żeby były mądre. Że to człowiek stoi za ich inteligencją. Trzeba przedstawiać dzieciom komputery w taki sposób, by widziały w nowych technologiach coś czego można użyć do wyrażania siebie. Coś czego mogą do wyrażania siebie używać nawet przedszkolaki.

Zdaję sobie sprawę, że niektórzy sceptycznie podejdą do prezentowanej tu idei. Przeciw niej przemawiają przecież ograniczone możliwości poznawcze najmłodszych. Czy w okresie przedszkolnym dzieci są na odpowiednim etapie rozwoju? To świetne pytanie, szczególnie gdy przyjrzymy się dobrze znanej nam koncepcji Piaget’a i przypomnimy co mówi ona o czasie, kiedy dziecko dojrzewa do wykonywania operacji formalnych. Tylko, że po pierwsze: podział okresów rozwoju zaproponowany przez Piaget’a okazał się niedokładny, po drugie: dzisiejsze dzieci dojrzewają szybciej, a po trzecie: podział Piaget’a ukazuje uśredniony czas przejścia w poszczególne fazy, a przecież rozwój dzieci jest różnicowany indywidualnie i może przebiegać u jednych szybciej, a u innych wolniej w zależności od dostępnych doświadczeń. Wiemy już, że niektóre dzieci posiadają niezbędne do programowania podstawowe umiejętności dużo wcześniej niż inne, że umożliwiając dzieciom nabywanie odpowiedniego doświadczenia, możemy nieco przyspieszyć ich pojawienie się.

Ostatnie badania dowodzą, że małe dzieci programując mogą nie tylko odtwarzać wyuczone sekwencje, ale także samodzielnie je tworzyć. Jest to możliwe także dlatego, że dzisiejsze programowanie to nie tylko mozolne wpisywane wielu linijek kodu. Dostępne od niedawna nowe, wyrafinowane narzędzia zupełnie zmieniają sposób w jaki dzieci mogą programować komputery. Są dużo prostsze, często opierają się na elementach wizualnych, czasem w ogóle nie wymagają umiejętności czytania, czy pisania. Dziś programowanie bardziej przypomina grę komputerową. Wsparte jest dobrze przygotowanymi filmami instruktażowymi, które pokazują krok po kroku jak uczyć dzieci tak, by nawet nie zdawały sobie sprawy, że to nie tylko zabawa ale i nauka.

Jak zabawa w programowanie ma się do podstawy programowej, zapytają pewnie niektórzy. Można w niej znaleźć kilka punktów, które świetnie współgrają z celami, które osiągamy wprowadzając dzieci w świat algorytmiki.

Przyjrzyjmy się niektórym celom edukacji przedszkolnej:

„stwarzanie warunków sprzyjających wspólnej i zgodnej zabawie oraz nauce dzieci o zróżnicowanych możliwościach fizycznych i intelektualnych;

2) budowanie dziecięcej wiedzy o świecie społecznym, przyrodniczym i technicznym oraz rozwijanie umiejętności prezentowania swoich przemyśleń w sposób zrozumiały dla innych;

(…)10) zapewnienie dzieciom lepszych szans edukacyjnych poprzez wspieranie ich ciekawości, aktywności i samodzielności, a także kształtowanie tych wiadomości i umiejętności, które są ważne w edukacji szkolnej.”

Oraz obszarom, które mamy wspomagać:

„Kształtowanie umiejętności społecznych dzieci: porozumiewanie się z dorosłymi i dziećmi, zgodne funkcjonowanie w zabawie i w sytuacjach zadaniowych.

Wspieranie dzieci w rozwijaniu czynności intelektualnych, które stosują w poznawaniu i rozumieniu siebie i swojego otoczenia.

Wspomaganie rozwoju umysłowego dzieci poprzez zabawy konstrukcyjne, budzenie zainteresowań technicznych.

Wspomaganie rozwoju intelektualnego dzieci wraz z edukacją

matematyczną.”


Kiedy zacząć?

Jeśli dziecko zna podstawy obsługi komputera (np. potrafi przeciągać obiekty z jednego miejsca ekranu w drugi) oznacza to, że może zacząć przygotowywać się do programowania. Czy może programować? To zależy od stadium rozwoju, w którym w danej chwili się znajduje, od stopnia rozwoju jego umiejętności myślenia logicznego. Każde dziecko dojrzewa w swoim tempie i jeśli zabawa w programowanie jest dla niego za trudna, trzeba ją na jakiś czas odłożyć. Warto jednak proponować dziecku inne zabawy rozwijające myślenie i próbować co jakiś czas wracać do programowania, żeby sprawdzić, czy dziecko zaczęło się nim interesować, czy już jest w stanie „dać mu radę”. Wśród narzędzi wprowadzających lub umożliwiających programowanie znajdziemy takie, które z powodzeniem będą mogły wykorzystywać pięciolatki, a czasem nawet trzy, czterolatki.

Jak wprowadzać dzieci w świat programowania?

Zaczynamy oczywiście od gier i zabaw, które rozwijają ogólne umiejętności dzieci. Niektóre z nich w cale nie potrzebują użycia komputera. Zwykle nie zdajemy sobie sprawy, że rozwiązywanie zagadek typu Sudoku, czy innych zadań logicznych np. szukanie drogi w labiryncie, to rozwiązywanie prawdziwych problemów programistycznych. W okresie przygotowawczym możemy także wykorzystywać dostępne w Internecie liczne gry wspierające rozwój myślenia, przygotowujące do właściwego programowania. Znajdziemy tam też narzędzia stworzone specjalnie z myślą o najmłodszych i wprowadzające w proste zagadnienie programistyczne. Nie łudźmy się na tym większość przedszkolaków poprzestanie, ale tak naprawdę, będzie to już bardzo duży krok w świat „dojrzałego programowania”. Pamiętajmy też, że nawet jeśli dziecko na późniejszym etapie edukacyjnym nie będzie kontynuowało swojej przygody z programowaniem, zyska na tej przygodzie bardzo wiele – swój przyspieszony i wszechstronny rozwój, który pozwoli mu lepiej funkcjonować w szkole. Zdobycie umiejętności niezbędnych do programowania, takich jak np. umiejętność myślenia logicznego, przydaje się nie tylko do samego programowania, ale także przy nauce innych zagadnień (np. matematyki).

Programowanie powinno wiązać się z bardzo ważnym elementem procesu uczenia się – kontaktami społecznymi dziecka z partnerem edukacyjnym wspierającym jego wysiłki programistyczne. Może być nim nauczyciel, może rodzić, czy nawet starsze rodzeństwo, ważne, żeby zabawa w programowanie była odczuwana przez przedszkolaka jako coś ważnego. A będzie to możliwe, gdy osoba wspierająca dziecko będzie doceniała jego wysiłki.

Przy zadaniach programistycznych ważny jest dostęp dziecka do komputera i czas na ich rozwiązanie. Wprawdzie dzieci mogą pracować razem, np. w parach, ale czy pojedynczo, czy w parach praca przy komputerach także wiąże się z problemami natury organizacyjnej. Myślę, że najlepszym rozwiązaniem będzie przygotowanie w sali przedszkolnej, w której dzieci spędzają główną część czasu, kącika komputerowego, w którym znajdzie się jeden, czy kilka komputerów (w zależności od możliwości przedszkola)z dostępem do internetu. Mogą przy nim pracować (indywidualnie, w małych zespołach) zainteresowane programowaniem dzieci w czasie tzw. swobodnej zabawy. Przy odpowiednim wsparciu i motywacji mogą osiągać naprawdę zaskakujące wyniki.

Czego używać?

Wspomniałam już o wielu aplikacjach komputerowych, które są dedykowane małym dzieciom.

Oto przykłady narzędzi, które przydadzą się w okresie wprowadzającym, przygotowującym do programowania oraz w czasie rozwiązywania zadań programistycznych:

Kids Logic – gry ćwiczące myślenie przyczynowo-skutkowe i logiczne dla najmłodszych. Wymagania: system Android

Mouse Trap Junior – gra logiczna online http://www.sheppardsoftware.com/braingames/mousetrapjr/mousetrapjr.htm. Wymagania: przeglądarka internetowa obsługująca Flash player

Logic – aplikacja pozwalająca nawet najmłodszym przedszkolakom rozwiązywać zadania logiczne. Wymagania: iPad

Trainyard Express – aplikacja pozwalająca rozwiązywać łamigłówki i ćwiczyć myślenie logiczne. Wymagania: iPad

Kodable – aplikacja, która pozwala dzieciom rozwiązywać proste zadania programistyczne. Wymagania: iPad

Cargo-Bot – aplikacja pozwalająca programować robota. Wymagania: iPad

A.L.E.X. – kolejna aplikacja, która pozwala dzieciom bawiąc się w sterowanie robotem rozwiązywać proste zadania programistyczne. Wymagania: iPad

Cato’s Hike Lite: A Programming and Logic Oddyssey – aplikacja, która przedstawia przygody małego Cato. Aby go uratować dzieci za pomocą programowania pokonują różne przeszkody. Wymagania: iPad

Baltie – aplikacja, która pozwala budować i wyczarowywać sceny nawet czterolatkom. Pozwala też stworzyć program komputerowy, który „jest przepisem, który mówi komputerowi jak wykonać zadanie. Wymagania: system Windows

Bee-Bot – programowalny robot w kształcie pszczoły dla najmłodszych dzieci, przydaje się nie tylko do nauki programowania, ale i przy zdobywaniu wielu innych umiejętności.

Light-Bot – aplikacja do programowania robota, ucząca podstaw programowania. Wymagania: przeglądarka internetowa obsługująca Flash player

Scratch JR– środowisko programistyczne dla najmłodszych (nawet 3 letnich dzieci), które pozwala „budować” programy z cegiełek z oznaczonymi na nich graficznymi skojarzeniami funkcji i dodanymi nagraniami zastępującymi oznaczenia tekstowe. Niestety, obecnie czekamy na zakończenie fazy testów (prowadzonej przy udziale przedszkolaków i ich nauczycieli), która to potrwa przynajmniej do jesieni tego roku.[4] Warto jednak wiedzieć o tej inicjatywie i warto zaczekać na jej wyniki. Oprócz samego narzędzia nauczyciel będzie miał do dyspozycji wsparcie merytoryczne i dydaktyczne, a dzieci szanse dzielenia się swoimi dziełami w serwisie społecznościowym stworzonym na potrzeby wymiany doświadczeń.

Dla tych, którzy nie czują się do końca przekonani do uczenia podstaw programowania od przedszkola cytat z filmu promującego programowanie wśród dzieci amerykańskich: „Każda osoba w tym kraju powinna uczyć się programowania… ponieważ to uczy w jaki sposób myśleć.” Steve Jobs

Bibliografia

“Preschool cookbook of computer programming topics” L. Morgado, M. Cruz, K. Kahn, Australasian Journal of Educational Technology 2010, 26(3), 309-326;

„Baltie dla każdego dziecka na świecie” wywiad z Bohumirem Soukupem,  „Gazeta Szkolna” nr 48/2010;

„Introducing Programming to Preschoolers” by MindShift;

“How Young Is Too Young to Learn to Code?” by Eslam Mahgoub, http://smashcs.wordpress.com/2012/02/29/how-young-is-too-young-to-learn-to-code;

Programming for Children, Minus Cryptic Syntax, By Peter Wayner, http://www.nytimes.com/2011/11/10/technology/personaltech/computer-programming-for-children-minus-cryptic-syntax.html?_r=0

“Teaching your kids how to write computer programs” by Marshall Brain http://www.marshallbrain.com/kids-programming.htm


[1] Artykuł powstał w roku 2013 (publikacja w „Wychowaniu w przedszkolu”). Dziś już wiemy, że  to samo, już od przyszłego roku szkolnego będzie się działo w Polsce.

[2] Effects of Computer programming on Young Children’s Cognition, 1984, Clements, Douglas H, Dominic F. Gullo

[3] Mitch Reswick, Direktor of the Life Kindergarten group

[4] Aplikacja ScratchJr jest już od jakiegoś czasu dostępna na rynku.