hh 
SZKO£A PODSTAWOWA W ¦WIERZAWIE
 

KONKURS "BÓBR"

KODUJ Z KLAS¡

KURS KODOWANIA - C+

  NAUKA PROGRAMOWANIA
 


LEGO MINDSTORMS EV3

Klocki Lego Mindstorms to kszta³towanie sprawno¶ci manualnej oraz wykorzystanie praktycznych wiadomo¶ci w dziedzinie sterowania stworzonymi przez dziecko konstrukcjami,
dziêki zastosowaniu unikalnego oprogramowania oraz technologii bezprzewodowej
³±czno¶ci Bluetooth lub Wi-Fi.

Zestawy klocków Lego Mindstorms umo¿liwiaj± budowê wyj±tkowych robotów lub innych unikalnych konstrukcji in¿ynierskich, w tym zestawy z serii kosmos, dla zastosowañ edukacyjnych i konkursowych. 

Projekty: Puppy, Gyro boy, Color sorter,  Robot arm


Robo-educator




PIXBLOCKS

PixBlocks jest prosty w obs³udze i czytelny, zawiera tak¿e mnóstwo æwiczeñ
rozwijaj±cych zarówno logiczne, jak i twórcze my¶lenie. Zalety te czyni± aplikacjê ¶wietnym rozwi±zaniem, je¶li chodzi o programowanie dla dzieci i m³odzie¿y.

https://pixblocks.com/pobierz/




PYTHON

Python to jêzyk programowania zaprojektowany tak, aby by³ szczególnie
przystêpny dla pocz±tkuj±cych programistów, a z drugiej strony stanowi³ pe³nowarto¶ciowy
jêzyk programowania pozwalaj±cy na tworzenie “powa¿nych” aplikacji
na systemy operacyjne Windows, czy Linux.

Prostota Pythona polega na rezygnacji z nadmiarowych znaków w kodzie
(np.: koñcz±cych liniê kodu), braku konieczno¶ci deklarowania zmiennych, czy wymuszon± na u¿ytkowniku konieczno¶æ odpowiedniego formatowania kodu tak,
aby by³ dla innych czytelniejszy. Python jest, równie¿ jêzykiem,
dla którego ju¿ obecnie istnieje olbrzymie wsparcie edukacyjne - w internecie znale¼æ
mo¿na wiele ciekawych projektów opartych o ten jêzyk
(i np. dodatkowo minikomputer RaspberryPi). <link>

Niniejsze materia³y to poprawiona i uzupe³nionan dokumentacja do szkoleñ
z jêzyka Python realizowanych w ramach projektu Koduj z Klas± prowadzonych
przez Fundacjê Centrum Edukacji Obywatelskiej w latach 2014-2017.

Pocz±tkowe materia³y zak³ada³y wykorzystanie jêzyka Python w wersji 2.
W wersji obecnej wszêdzie, gdzie to mo¿liwe, u¿ywamy Pythona 3.

https://python101.readthedocs.io/pl/latest/


SCRATCH JR

Z programowaniem w Scratch poradzi sobie nawet uczeñ, który nie czyta jeszcze w pe³ni p³ynnie - krótkie komendy i ró¿nokolorowe klocki u³atwiaj± programowanie uczniom, którzy maj± problemy ze zrozumieniem d³u¿szych tekstów. Co jednak, je¶li chcemy wprowadziæ jêzyk Scratch w grupie, która jest dopiero na etapie poznawania literek lub w której jest wielu uczniów, których tempo czytania bardzo utrudnia prowadzenie zajêæ? Twórcy programu Scratch przewidzieli takie sytuacje i w zesz³ym roku stworzyli jêzyk Scratch Junior adresowany do dzieci w wieku 5-7 lat.

https://jfo8000.github.io/ScratchJr-Desktop/

pobierz dla WINDOWS

Scratch Junior jest uproszczon± wersj± Scratcha. Podstawowa ró¿nica polega na tym,
¿e zamiast komend mamy klocki z piktogramami, które je reprezentuj±. Komendy ustawiane
s± w jednej linii poziomej pod obrazkiem (linearna fabu³a dot. jednego duszka).

Scratch Jr posiada te¿ mniej dostêpnych komend. Np. nie ma komend wykorzystuj±cych
zmienne, z tego powodu m.in. nie ma mo¿liwo¶ci ustawienia k±ta rotacji duszka
(jest on domy¶lnie ustawiony na warto¶æ 15 stopni).

Poniewa¿ w tym wieku trudno by³o wyja¶niæ dzieciom koncepcjê osi wspó³rzêdnych
(i koordynat pozycji) Scratch Jr nie ma funkcji ustawienia konkretnej pozycji duszka.
Podobnie pêtle dotycz± ca³ego skryptu, a nie poszczególnych jego czê¶ci.
Ograniczenia te u³atwiaj± m³odszym u¿ytkownikom korzystanie z aplikacji - ograniczaj±
liczbê mo¿liwych b³êdów. Scratch Jr sprawdzi siê przede wszystkim do tworzenia
prostych gier oraz interaktywnych historyjek. 


NAUKA PROGRAMOWANIA - SCRATCH

Scratch to opracowany przez MIT (MIT Media Lab - Lifelong Kindergarten Group)
wizualny jêzyk programowania dla najm³odszych
- jego cech± wyró¿niaj±c± jest
brak konieczno¶ci pisania kodu komputerowego - elementami sk³adni tego jêzyka nie s± komendy pisane, a wizualne elementy / “klocki” kodu, które jedynie nale¿y ze sob± po³±czyæ.

Jêzyk Scratch - co niezwykle istotne w przypadku uczenia dzieci - pozwala bardzo szybko
osi±gaæ efekty programowania - ju¿ jeden pojedynczy klocek mo¿na “wykonaæ”
(co jest niecodzienn± cech± na tle innych jêzyków programowania).

Dodatkowo do uruchomienia ¶rodowiska jêzyka Scratch nie jest wymagana instalacja
¿adnych dodatkowych programów - wystarczy dzia³aj±ca przegl±darka internetowa,
pracuj±ca na komputerze z dowolnym systemem operacyjnym.

Dodatkowo dzieci mog± za³o¿yæ konto umo¿liwiaj±ce zapisywanie projektów w “chmurze”,
dziêki czemu maj± ³atwy dostêp do swojej pracy równie¿ z poza szko³y.

<link>

Pobierz


LINK: https://scratch.mit.edu/



Programowanie na etapie wczesnoszkolnym nale¿y kojarzyæ z nauk± kompetencji miêkkich
takich jak my¶lenie logiczne, kreatywno¶æ, umiejêtno¶æ rozwi±zywania problemów
pozwalaj±c dzieciom odnale¼æ siê w ¶wiecie nowoczesnych technologii.
 

===

Akcja gry rozpoczyna siê w 2020 r., w momencie, gdy kosmita Scottie w wyniku
drobnego wypadku przymusowo l±duje na naszej planecie. Jego statek kosmiczny
jest uszkodzony i tylko zdobycie czê¶ci zamiennych pozwoli mu wróciæ na swoj±
planetê. Dziesiêæ punktów na mapie, blisko sto zadañ o rosn±cym stopniu trudno¶ci.
Gdy Scottie je wykona, otrzyma upragnione czê¶ci zamienne.


Uczeñ  musi mu w tym pomóc. Kosmita Scottie pos³uguje siê pewnym
szczególnym jêzykiem, ale prostym, logicznym i bardzo precyzyjnym.
Wizualnym jêzykiem programowania, ³atwym do nauczenia nawet dla najm³odszych.

Prowadzone w okresie testów warsztaty dla dzieci i nauczycieli oraz lekcje prowadzone
w naturalnym ¶rodowisku uczniów potwierdzaj±, ¿e ¶rodowisko do programowania Scottie Go!
jest nie tylko bardzo atrakcyjnym narzêdziem edukacyjnym, ale jednocze¶nie prostym i skutecznym.
Podczas zajêæ obserwuje siê niesamowity entuzjazm graczy, zarówno w czasie opracowywania rozwi±zañ, ich przeprojektowywania, jak i w momencie osi±gania przez nich celu. 

Najm³odsi gracze rozpoczynaj±cy przygodê z czytaniem i liczeniem ze skupieniem
okre¶laj± pola do przej¶cia Scottiego, wspieraj± siê ikonami, aby zastosowaæ w³a¶ciwe klocki.

Fazy programowania w Scottie Go!

Problem i projektowanie

Przejrzysta aplikacja poprzez przygotowane samouczki wprowadza w nauczane zagadnienie,
wskazuje nowe, wystêpuj±ce w zadaniu klocki, wyznacza graczowi kolejne zadania do wykonania.
Gracz zapoznaje siê z aktualnym zadaniem i analizuje je. Planuje sekwencje poleceñ,
które sprawi±, ¿e Scottie w odpowiednim momencie podskoczy, ominie przeszkody,
podniesie obiekt, uruchomi urz±dzenie i w koñcu zrealizuje cele zadania.

Kodowanie

Nastêpnie gracz przystêpuje do pisania programu. Nie potrzebuje do tego du¿o miejsca.
Stó³, pod³oga w sali, a nawet trawnik na boisku bêd± odpowiednie. Ka¿dy program uk³ada
z klocków rozpoczynaj±c klockiem START, koñcz±c klockiem KONIEC.

Miêdzy nimi wstawia sekwencjê poleceñ. Ka¿dy klocek jest wyra¼nie opisany. Podstawowe klocki
poza nazw± wzbogacone s± ikon±, co u³atwia zabawê dzieciom, które dopiero zaczynaj± czytaæ.

Wyszukiwanie poszczególnych klocków-poleceñ jest proste, gdy¿ klocki umieszczone s± w pude³ku
jak cukierki w bombonierce. Ka¿da grupa klocków ma swój kolor, gniazda zosta³y opisane.
Uk³adanie programu natomiast u³atwiaj± wykonane w klockach odpowiednie wciêcia.

Testowanie

Po przyci¶niêciu w aplikacji przycisku Aparat, gracz przejdzie do trybu skanowania programu.
Jedno zdjêcie lub wideo i gotowe. W tym momencie u³o¿ony przez
gracza za pomoc± klocków program zostaje zarejestrowany a nastêpnie w u³amku
sekundy przetworzony na ruchy Scottiego. Aplikacja przeanalizuje tak¿e poprawno¶æ programu
oraz sprawdzi, czy cele zadania zosta³y osi±gniête.

Po wykonanym zadaniu gracz otrzymuje krótk± informacjê zwrotn± oraz gwiazdki.
Najczê¶ciej im krótszy program napisze gracz, tym wiêcej otrzyma gwiazdek.

W kolejnych modu³ach gry Scottiego czeka wiele nowych przygód. Spotkanie
z indiañskim przewodnikiem to wyzwanie, w którym nale¿y pomóc Scottiemu zebraæ pióra
do nowego pióropusza. Okazuje siê, ¿e be¿ u¿ycia instrukcji POWTÓRZ bêdzie to niezmiernie trudne.

Gracze tworz± pêtle u¿ywaj±c m.in. dwóch klocków. Klocka POWTÓRZ oraz klocka
KONIEC PÊTLI LUB WARUNKU. Klocki te otaczaj± instrukcje, które bêd± powta-
rzane. Jest to analogia do stosowanych w jêzykach programowania nawiasów.

Link do ¼ród³a: https://scottiego.com/pl/edu-scottiego/about-the-game/ 






Na zdjêciach: uczniowie z klasy 4 "b" podczas nauki programowania



Przyk³ady z ca³ego ¶wiata pokazuj±, ¿e nauka podstaw programowania jest mo¿liwa
ju¿ od wczesnych etapów nauczania i to w³a¶nie wówczas przynosi najlepsze efekty.

http://mistrzowiekodowania.samsung.pl/lekcje_programowania-p2.html

Jêzyki programistyczne nie s± ju¿ domen± informatyków, a narzêdziem,
które pozwala uczniom rozwijaæ my¶lenie kreatywne, doskonaliæ umiejêtno¶ci analityczne,
nad±¿aæ za postêpem techniki i z owoców tego postêpu ¶wiadomie korzystaæ. 

Programowanie sta³o siê – obok jêzyka ojczystego i jednego jêzyka obcego - trzecim jêzykiem,
który ka¿dy cz³owiek powinien znaæ choæ na podstawowym poziomie,
by rozumieæ otaczaj±cy go ¶wiat i zachodz±ce w nim zmiany.

Nauka programowania rozwija wiele kompetencji potrzebnych dzieciom,
pisanie programów to gimnastyka dla mózgu, pozwala wypracowaæ umiejêtno¶æ efektywnego my¶lenia. 
Poza tym zajêcia te pozwalaj± uczniom rozwijaæ my¶lenie kreatywne, doskonaliæ umiejêtno¶ci analityczne, nad±¿aæ za postêpem techniki i z owoców tego postêpu ¶wiadomie korzystaæ.

Nowoczesne gry edukacyjne odgrywaj± wa¿n± rolê w procesie nauczania i uczenia siê,
tworz± ¶rodowisko, gdzie dzieci eksperymentuj±, rozwi±zuj±c wspólnie problemy, a tak¿e: 

- doskonal± umiejêtno¶ci analitycznego i logicznego my¶lenia,
- rozwijaj± intuicjê algorytmiczn±,

- ucz± rozwi±zywania skomplikowanych problemów i pracy w grupie,

- wspieraj± rozwój kompetencji w zakresie nauczania programowania w edukacji wczesnoszkolnej
.




LOFI ROBOT W SZKOLNEJ PRACOWNI KOMPUTEROWEJ

LOFI Robot (LINK)to polski, innowacyjny zestaw edukacyjny s³u¿±cy
do nauki robotyki, czyli konstruowania oraz o¿ywiania robotów i maszyn. Umo¿liwia proste i szybkie
zbudowanie ró¿nego rodzaju robotów: omijaj±cych przeszkody, pod±¿aj±cych za ¶wiat³em,
maluj±cych, ¶wiec±cych, poruszaj±cych siê samodzielnie lub zdalnie sterowanych.

LOFI Robot oparty jest o narzêdzia open source,
dziêki czemu mo¿na go dowolnie samodzielnie modyfikowaæ i rozwijaæ.
Podstawowym z tych narzêdzi jest jêzyk oprogramowania SCRATCH.

£atwo¶æ budowania robotów LOFI jest mo¿liwa dziêki wykorzystaniu
rozwi±zañ zaprojektowanych z my¶l± o amatorach. To prosty i ³atwo dostêpny system
do konstruowania robotów i nauki robotyki, a tym samym idealne pole
do nauki podstaw mechaniki, fizyki, elektroniki i programowania.

Rosn±ce zainteresowanie robotyk± wynika w du¿ej mierze
z ogólno¶wiatowego trendu wprowadzania nauki programowania do szkó³,
poniewa¿ zaczyna byæ ono postrzegane jako umiejêtno¶æ tak samo niezbêdna
w codziennym ¿yciu jak jêzyk angielski.

LOFI Robot jest doskona³ym narzêdziem w edukacji, poniewa¿ innowacyjna
firma z Trójmiasta oferuje nie tylko system do konstruowania robotów i maszyn,
ale równie¿ ma pomys³ i konkretne rozwi±zania, pozwalaj±ce na uczenie programowania.

LOFI Robot wykorzystuje naturaln± pasjê (wyra¼nie widoczn± u dzieci i m³odzie¿y)
do budowania i wymy¶lania. Konstruowanie pojazdów i urz±dzeñ
oraz wprawianie ich w ruch i nadawanie im indywidualnego charakteru to dla uczniów
rado¶æ sama w sobie – a przy okazji ucz± siê oni podstaw mechaniki, elektroniki i programowania.

Co wiêcej, budowanie robotów ma w sobie du¿o wa¿nych
i cennych ‘miêkkich’ aspektów, takich jak umiejêtno¶æ pracy nad projektem,
pracy w grupie i pracy nad zadaniem, które trwa ca³y semestr, a nie tylko 45 minut.

(¼ród³o)

Nauczyciele informatyki

<czytaj dalej>


NAUKA PROGRAMOWANIA: 


CODE MONKEY

Ma³ej ma³pce gro¼ny goryl zabra³ worek bananów. Jednak nie zauwa¿y³,
¿e w worku by³a dziura i owoce wypadaj± na ziemiê. Ma³pka nie da³a za wygran±!
Rusza w podró¿, by odzyskaæ utracone banany. Pomó¿ jej pokonaæ przeszkody!



FROZEN

U¿yj kodu, by razem z Els± i Ann± tworzyæ niesamowite lodowe wzory.
Prowad¼ postaci po lodowisku tworz±c piêkne p³atki ¶niegu i zbuduj zimow± krainê.

https://studio.code.org/s/frozen/stage/1/puzzle/1



MINECRAFT

Nie jest ³atwo prze¿yæ w dzikim lesie. Steve i Alex z gry Minecraft dobrze o tym wiedz±.
Kluczowe jest posiadanie dobrego planu i sprawne  jego wykonanie.
Pomó¿ bohaterom sprostaæ wyzwaniom uk³adaj±c dla nich kod.

https://code.org/minecraft




ROBOT KAREL

Karel jest robotem, który potrafi wykonywaæ sporo zaawansowanych czynno¶ci.
Pomaga na farmie przy uprawie ro¶lin i w warsztacie. 

https://hoc.nclab.com/karel/pl/



LIGHTBOT (Android OS, IOS, Win OS)


W zadaniach nale¿y tak zaprogramowaæ robota,
aby zapali³ on przy pomocy polecania "¿arówka" wszystkie niebieskie pola znajduj±ce siê na planszy.


Poznajemy nowe pojêcia:

- sekwencje,
- procedury,
- pêtle,
- optymalizacja kodu,
- instrukcje warunkowe.

Czasami miejsca w polu roboczym na skrypty jest bardzo ma³o,
dlatego w niektórych etapach musimy dobrze zastanowiæ siê,
zanim u³o¿ymy odpowiedni± sekwencjê ruchu.

W ten sposób jeste¶my zachêcani przez twórców aplikacji
do optymalizacji sposobu rozwi±zywania problemu.




LIGHTBOT wersja 2

KODUJ!

Gra pochodzi ze strony Armorgames.


LINKI DO STRON
O TEMATYCE NAUKI PROGRAMOWANIA:

Ministerstwo Cyfryzacji:

http://koduj.gov.pl/rodzice/materialy-dla-rodzicow/

Strona Centrum Projektów Polska Cyfrowa

https://cppc.gov.pl

Portal EDUNEWS.PL,
którego mottem sta³o siê powiedzenie
"dobre pomys³y na edukacjê przez ca³e ¿ycie".

https://edunews.pl

KOMPUTER ¦WIAT

http://www.komputerswiat.pl

MISTRZOWIE KODOWANIA

http://mistrzowiekodowania.samsung.pl/

TYDZIEÑ KODOWANIA

http://codeweek.org.pl/





We wspó³pracy z:

         




 


SZKO£A PODSTAWOWA W ¦WIERZAWIE