Opis
Nauczyć młodzież jak korzystać z narzędzi Open Source, rozwijać własne projekty oraz współpracować w globalnej społeczności programistów.
Grupa docelowa:
Uczniowie szkół średnich (14-18 lat)
Plan warsztatów:
Dzień 1: Podstawy Open Source i Narzędzia
Wprowadzenie do Open Source (1 godzina)
Co to jest Open Source? Historia i kluczowe projekty.
Korzyści i wyzwania korzystania z Open Source.
Podstawy Git i GitHub (2 godziny)
Instalacja i konfiguracja Git.
Tworzenie konta na GitHub, pierwsze repozytorium, klony, forki, gałęzie, commitowanie i pull requesty.
Zajęcia praktyczne: uczestnicy tworzą swoje repozytoria i ćwiczą podstawowe operacje.
Wprowadzenie do licencji Open Source (1 godzina)
Omówienie najpopularniejszych licencji Open Source i ich zastosowań.
Jak wybrać odpowiednią licencję dla swojego projektu.
Praca zespołowa i projektowanie (1 godzina)
Wprowadzenie do pracy zespołowej w projektach Open Source.
Znaczenie komunikacji, zarządzania projektem i narzędzi wspierających procesy (np. Slack, Trello).
Dzień 2: Projektowanie i Wdrażanie Projektów Open Source
Planowanie projektu Open Source (2 godziny)
Brainstorming i wybór projektu do realizacji przez grupę.
Planowanie funkcjonalności, podział zadań, ustalenie harmonogramu.
Warsztaty programistyczne (2 godziny)
Programowanie w wybranym języku (np. Python, JavaScript) z użyciem otwartoźródłowych bibliotek i frameworków.
Praktyczne zadania programistyczne realizujące funkcje projektu.
Testowanie i dokumentacja (1 godzina)
Podstawy testowania oprogramowania.
Tworzenie dokumentacji projektowej, która jest kluczowym elementem projektów Open Source.
Prezentacja projektów (1 godzina)
Prezentacja gotowych projektów przed grupą.
Feedback od uczestników i prowadzących.
Dyskusja i networking (1 godzina)
Omówienie doświadczeń uczestników z warsztatów.
Jak kontynuować pracę nad projektem i angażować się w inne projekty Open Source.
Budowanie sieci kontaktów z innymi entuzjastami Open Source.
Uwagi:
Warsztaty wymagają od uczestników podstawowej wiedzy o komputerach i programowaniu.
Prowadzący powinni być przygotowani na różnorodne poziomy zaawansowania uczestników i elastycznie dostosowywać poziom trudności zadań.
Kluczowe jest stworzenie otwartej i wspierającej atmosfery, która zachęca do eksploracji i dzielenia się wiedzą.