Zespół Szkół Zawodowych im. Króla Jana III Sobieskiego w Przeworsku Sprawozdanie z pilotażu wdrożenia programowania w edukacji formalnej Przeworsk 2016/2017
W roku szkolnym 2016/2017 realizowaliśmy innowację pedagogiczną pn.: PROGRAMOWANIE KOMPUTERÓW DROGĄ DO SUKCESU na lekcjach informatyki we wszystkich klasach pierwszych i drugich Zasadniczej Szkoły Zawodowej oraz klasach pierwszych Technikum i Liceum Ogólnokształcącego w wymiarze 10 godzin. 1 Podstawowe wiadomości o języku C/C++. Charakterystyka środowiska programistycznego C/C++. 2 Struktura programu w języku C/C++. Elementy języka C/C++. - przeznaczenie języka - obiektowość - edytor - kompilator - konsolidator - debugger - dyrektywy preprocesora - funkcje główne (nagłówki funkcji) - funkcja return - słowa kluczowe - komentarze - znaki języka 3 Zmienne i stałe. - deklaracje - typy - zmienne lokalne i globalne 4 Funkcje wejścia/wyjścia. - funkcje standardowego wejścia - funkcje standardowego wyjścia 5 Operatory i wyrażenia. - rodzaje operatorów - wyrażenia - operator przypisania 6 Instrukcje w języku C/C++. - instrukcja warunkowa (if, if... else...) 7 Instrukcje w języku C/C++. - instrukcje pętli (for) 8 Instrukcje w języku C/C++. - instrukcje (while, do... while) 9 Instrukcje w języku C/C++. - instrukcja wyboru (switch) 10 Funkcje w języku C/C++. - struktura funkcji - prototyp - przekazywanie parametrów do funkcji - przekazywanie parametrów na zewnątrz funkcji
Kurs Partner: CPA Programming Essentials in C++ prowadzimy od roku szkolnego 2015/2016 i cieszy się bardzo dużym powodzeniem wśród młodzieży. Nie jest również żadną przeszkodą, że materiały szkoleniowe są w języku angielskim, wręcz przeciwnie, młodzież ma możliwość kształcenia również języka angielskiego ukierunkowanego zawodowo w branży informatycznej. Kurs kończy się uzyskaniem prestiżowego certyfikatu potwierdzającego wysokie umiejętności z programowania w języku C++.
W roku szkolnym 2012/2013 została utworzona Lokalna Akademia Sieciowa Cisco działająca przy Zespole Szkół Zawodowych im. Króla Jana III Sobieskiego w Przeworsku. Uczniowie naszej szkoły mogą nieodpłatnie zdobywać prestiżowe certyfikaty firmy Cisco Systems jak również korzystać z oferty innych partnerów firmy Cisco, w tym partnerów, dzięki którym i my jako instruktorzy możemy prowadzić kursy z programowania w języku C/C++ na platformie e-learningowej NETACAD.
Duża siła takiego nauczania tkwi również w tym, że oprócz lekcji, które możemy prowadzić z uczniami w szkole, zajęcia takie mogą być również realizowane przez samych uczniów w domu. Wystarczy mieć dostęp do Internetu, konto na platformie e-learningowej NETACAD oraz być zapisanym przez instruktora na kurs, np.: z programowania. Specjalny panel dyskusyjny umożliwia również wymianę informacji dla osób aktualnie zalogowanych. Jest to bardzo atrakcyjny sposób dotarcia do wielu uczniów, którzy z obecną technologią stykają się na co dzień. W roku szkolnym 2016/2017 wdrożyliśmy kolejny kurs z programowania, który pojawił się na platformie NETACAD Partner: CLA Programming Essentials in C. Z uwagi na to, iż drugi rok prowadzę zajęcia pozalekcyjne z programowania w języku C w ramach prac Koła Naukowego Programistów KOR-ALGOL, zdobycie kolejnego prestiżowego certyfikatu jest wspaniałym uwieńczeniem tych zajęć.
Niesamowite materiały szkoleniowe sprawiają, że nauka programowania staje się bardzo przyjemna i efektywna. Uczniowie, którzy uczestniczą w kursach uzyskują znacznie lepsze wyniki ze sprawdzianów oraz egzaminów związanych z programowaniem, chociażby z przedmiotów zawodowych informatycznych wchodzących w obszar kwalifikacji E.14, obecnej w Technikum kształcącym w zawodzie technik informatyk.
Kolejnym kursem na platformie e-learningowej Netacad jest kurs NDG Linux Essentials, który prowadzę już drugi rok. Wśród ponad 30 modułów, które musi zaliczyć kursant są moduły związane z programowaniem, m.in.: pisanie skryptów w powłokach bash czy csh (C Shell).
Ilość wydanych certyfikatów w roku szkolnym 2016/2017 Kurs CPA Programming Essentials in C++ - 9 Kurs CLA Programming Essentials in C 5 Kurs NDG Linux Essentials 15 Na kursach poruszana jest wysoce specjalistyczna wiedza dotycząca programowania w językach C/C++ z uwagi na to kursy te prowadzimy dla klas drugich, trzecich i czwartych Technikum kształcącym w zawodzie technik informatyk po uprzednim przygotowaniu, np.: są to uczestnicy zajęć pozalekcyjnych w ramach prac Koła Naukowego Programistów KOR-ALGOL.
Kolejnym działaniem związanym z nauką programowania są liczne projekty konkursowe, do których przygotowywaliśmy się w ramach zajęć pozalekcyjnych. W projektach wykorzystywaliśmy jeden z najpopularniejszych języków programowania logicznego jakim jest PROLOG (program SWI-PROLOG), szczególnie dobrze sprawdzającym się w programach ze sztuczną inteligencją. TEMATY PROJEKTÓW KONKURSOWYCH System ekspertowy diagnozujący spalinowe silniki samochodowe System ekspertowy rozpoznający choroby sprzężone z płcią oraz choroby autosomalne
Przykładowe sesje działania programu
Fragment kodu źródłowego jednego z projektów konkursowych
Kolejnym działaniem związanym z propagowaniem nauki programowania, które zostało podjęte w naszej szkole jest utworzenie w roku szkolnym 2015/2016 Koła Naukowego Programistów KOR-ALGOL, którego jestem inicjatorem oraz opiekunem. W roku szkolnym 2015/2016 regularnie na spotkania koła uczęszczało 14 uczniów z klas Technikum kształcącego w zawodzie technik informatyk. Spotkania organizowane były dwa razy w tygodniu (1 godz. zegarowa) przez cały rok szkolny w ramach zajęć pozalekcyjnych. Korzystaliśmy z dwóch środowisk programistycznych: Code::Blocks oraz wxdev-c++. W roku szkolnym 2016/2017 koło liczy 30 uczniów, pracujemy w dwóch grupach ćwiczeniowych. Programujemy w języku C oraz C++. Dla swoich uczniów opracowałem skrypt do nauki programowania w tych językach, jak również korzystamy z innej literatury fachowej, np.: Język ANSI C - B.W.Kernighan D.M.Ritchie
Na stronie internetowej naszej szkoły można przejść do zakładki Szkolny Klub Internetowy, a następnie dotrzeć do materiałów publikowanych w ramach pracy Koła Naukowego Programistów KOR-ALGOL. Przygotowywaniem oraz publikacją materiałów zajmuje się jeden z uczniów członek koła. Poszczególne artykuły ze spotkań zawierają przykładowe zadania (kody źródłowe programów) wraz z wynikiem działania wykonywane na zajęciach.
W ramach pracy Koła Naukowego Programistów KOR-ALGOL przewidziano również rywalizację konkursową w programowaniu indywidualnym oraz grupowym. Głównym założeniem podjętych przez nas inicjatyw związanych z propagowaniem nauki programowania jest: kształcenie umiejętności pracy zespołowej i projektowej kształcenie umiejętności kreatywnego rozwiązywania problemów na różnych przedmiotach uatrakcyjnienie procesu nauczania możliwość zdobycia prestiżowych certyfikatów z programowania w ramach Lokalnej Akademii Sieciowej Cisco stworzenie uczniom możliwości odniesienia sukcesu (m.in.: poprzez samodzielne stworzenie działającego programu, gry, aplikacji, itp.) stymulowanie rozwoju intelektualnego ucznia
Kolejnym działaniem propagującym naukę programowania w naszej szkole jest nawiązanie współpracy z Politechniką Rzeszowską w ramach inicjatywy pn.: Akademia ORACLE. Jest to cykl trzech zajęć pozaszkolnych (wyjazdów sobotnich), w których bierze udział 3-osobowa drużyna z danej szkoły (więcej informacji na stronie prz.edu.pl/oracle). Zajęcia kończą się olimpiadą. Uczniowie podczas zajęć laboratoryjnych prowadzonych przez nauczycieli akademickich programują systemy bazodanowe firmy ORACLE posługując się językiem SQL oraz administrują systemem operacyjnym UNIX Solaris, m.in.: poprzez pisanie skryptów w powłokach np.: (C shell, Z shell, bash), gdzie wymagana jest specjalistyczna wiedza z programowania. Dużym osiągnięciem naszej szkoły jest to, iż drugi rok z rzędu mamy uczniów, którzy dostali się do ścisłego finału (5-ciu najlepszych uczniów): - Rok szkolny 2015/2016 Gabriel Ślawski 4 miejsce - Rok szkolny 2016/2017 Krzysztof Socha 5 miejsce
Od lewej: Krzysztof Socha uczeń naszej szkoły, nagrodę wręcza dr inż. Mirosław Mazurek prowadzący zajęcia: Zarządzanie systemem operacyjnym Unix Solaris oraz dr inż. Paweł Dymora prowadzący zajęcia: Systemy zarządzania relacyjnymi bazami danych firmy Oracle (język SQL).
W roku szkolnym 2016/2017 nawiązaliśmy współpracę z Gimnazjum Nr 1 im. Kardynała Stefana Wyszyńskiego w Przeworsku mającą na celu propagowanie nauki programowania nie tylko na lekcjach informatyki, lecz również w ramach zajęć pozalekcyjnych. W trzech grupach ćwiczeniowych uczestniczy regularnie w zajęciach z programowania 32 uczniów (2 godziny lekcyjne tygodniowo każda grupa) w roku szkolnym 2017/2018 planujemy rozszerzyć działalność o kolejne gimnazja z naszego powiatu. W ramach współpracy przewidujemy: - prowadzenie zajęć z programowania w placówkach macierzystych (gimnazjach) lub u nas w szkole - lekcje prowadzone będą przez wykwalifikowanego nauczyciela lub/i ucznia/ów wyróżniających się w trakcie zajęć koła naukowego programistów - pokazanie umiejętności uczniów naszej szkoły szerszemu forum (wyjście na zewnątrz) - umożliwienie uczniom gimnazjów zdobycie prestiżowych certyfikatów z programowania - zorganizowanie konkursu (olimpiady) w programowaniu indywidualnym oraz grupowym dla uczniów z gimnazjów współpracujących z naszą szkołą
W roku szkolnym 2017/2018 planujemy zakupić zestawy Raspberry Pi platformę komputerową wspierającą naukę programowania. W ramach Lokalnej Akademii Sieciowej Cisco zostanie wdrożony kolejny certyfikat: IoT Fundamentals: Hackathon Playbook, gdzie jednym z warunków zaliczenia kursu jest zaprogramowanie minikomputera Raspberry Pi.
Wyróżnienia dla naszej akademii oraz instruktorów