
Konferencja odbyła się w dniu 05 lipca 2024 r., o godzinie 10:30
Powiat Limanowski, Zespół Szkół Techniczno-Informatycznych w Mszanie Dolnej oraz Stowarzyszenie Humaneo serdecznie zapraszają na konferencję online dotyczącą Branżowych Centrów Umiejętności.
Podczas konferencji:
Konferencja odbyła się w dniu 05 lipca br. o godzinie 10:30.
Wczytywanie…
Omówienie zasad automatyzacji testów, kiedy warto automatyzować oraz roli piramidy testów i testów E2E. Konfiguracja środowiska programistycznego, instalacja .NET SDK, zarządzanie paczkami NuGet oraz struktura projektu testowego w oparciu o NUnit lub xUnit.
Wprowadzenie do architektury Selenium WebDriver zgodnej ze standardem W3C, konfiguracja sterowników przeglądarek oraz inicjalizacja testów w popularnych przeglądarkach. Nawigacja po stronach i zarządzanie stanem przeglądarki.
Strategie lokalizowania elementów przy użyciu selektorów ID, Name, ClassName, CSS oraz XPath. Różnice pomiędzy selektorami relatywnymi i absolutnymi oraz wykorzystanie narzędzi deweloperskich w pracy testera.
Wykonywanie podstawowych akcji na elementach strony, takich jak kliknięcia, wprowadzanie danych i czyszczenie pól. Tworzenie asercji w NUnit oraz pisanie pierwszych samodzielnych testów automatycznych.
Wprowadzenie do GitHub Copilot jako narzędzia wspierającego testera. Konfiguracja, tworzenie promptów, generowanie fragmentów kodu oraz analiza błędów. Zastosowanie AI ma charakter wspierający i opcjonalny.
Rozwiązywanie problemów związanych z asynchronicznością aplikacji webowych. Stosowanie mechanizmów oczekiwania, różnice między implicit i explicit wait oraz wykorzystanie AI do generowania niestandardowych warunków synchronizacji.
Wprowadzenie do architektury Page Object Model, separacja logiki testowej od struktury strony oraz tworzenie klas stron. Wykorzystanie AI do generowania szkieletów klas POM na podstawie struktury HTML.
Obsługa list rozwijanych, alertów, ramek iframe oraz pracy z wieloma oknami przeglądarki. Wykorzystanie klasy Actions do realizacji bardziej złożonych interakcji użytkownika.
Tworzenie testów parametryzowanych, ładowanie danych testowych z plików zewnętrznych oraz wykorzystanie AI do generowania realistycznych zestawów danych testowych.
Rejestrowanie przebiegu testów, wykonywanie zrzutów ekranu w przypadku błędów oraz wprowadzenie do generowania raportów HTML ułatwiających analizę wyników testów.
Stosowanie zasad Clean Code w testach automatycznych, identyfikacja problemów w kodzie testów oraz optymalizacja struktury projektu przy wsparciu narzędzi AI.
Realizacja projektu end-to-end dla przykładowej aplikacji webowej, zastosowanie poznanych wzorców i narzędzi AI w praktyce oraz omówienie dalszych ścieżek rozwoju, w tym integracji z CI/CD.
Omówienie platformy n8n, jej możliwości oraz praktycznych zastosowań w automatyzacji procesów. Wyjaśnienie, jak działa środowisko, jak korzystać z interfejsu użytkownika oraz jak tworzyć pierwsze przepływy pracy, wykorzystując elementy takie jak węzły i workflow.
Przedstawienie sposobów łączenia n8n z różnymi API modeli sztucznej inteligencji (np. OpenAI, Gemini). Pokazanie, jak tworzyć elastyczne i dynamiczne workflow, które komunikują się z modelami w celu przetwarzania danych, analiz czy generowania odpowiedzi.
Budowanie inteligentnych agentów automatyzujących konkretne zadania, takich jak obsługa wiadomości email, analiza treści, klasyfikacja danych, ekstrakcja informacji z dokumentów czy analiza komentarzy z mediów społecznościowych. Omówienie ich działania, logiki oraz implementacji.
Praca z kluczowymi funkcjami n8n: węzłami HTTP Request oraz Webhook, wykorzystaniem formularzy, obróbką i ekstrakcją danych, a także możliwością rozszerzania funkcjonalności poprzez własny kod w JavaScript lub Pythonie.
Szerokie wprowadzenie do lokalnie uruchamianych modeli językowych, ich zalet, ograniczeń oraz zastosowań. Przegląd różnic między narzędziami takimi jak Ollama i LM Studio oraz omówienie popularnych modeli, m.in. LLaMA, Gemma, Mistral, Phi czy DeepSeek.
Instrukcja instalacji LM Studio oraz Ollama, wraz z interfejsem Open WebUI. Wyjaśnienie, jak pobierać modele, uruchamiać je zarówno z poziomu GUI, jak i CLI, oraz jak korzystać z lokalnego API modeli do integracji w aplikacjach i procesach firmowych.
Tworzenie użytkowników, zarządzanie dostępem do modeli i organizacja środowiska. Przedstawienie sposobów konfiguracji LLM pod kątem różnych grup użytkowników oraz ustawień dopasowanych do konkretnych procesów biznesowych, takich jak pobieranie danych z zewnętrznych wyszukiwarek.
Omówienie technik dostosowywania modeli, w tym RAG (Retrieval-Augmented Generation) w Ollama i LM Studio, a także podstaw fine-tuningu — kiedy warto go stosować i jakie daje możliwości.
Omówienie, czym są bazy danych, podstawowych pojęć takich jak tabela, rekord i kolumna. Wprowadzenie do języka SQL oraz przegląd podstawowych narzędzi, np. SQL Server Management Studio.
Poznanie składni SELECT, wybieranie danych z jednej tabeli, filtrowanie danych za pomocą WHERE, sortowanie wyników przy użyciu ORDER BY oraz ograniczanie wyników za pomocą LIMIT.
Dodawanie nowych rekordów, modyfikowanie istniejących danych oraz usuwanie rekordów. Omówienie zasad bezpieczeństwa podczas modyfikacji danych.
Tworzenie tabel za pomocą CREATE TABLE, definiowanie typów danych, kluczy podstawowych (PRIMARY KEY), modyfikacja tabel (ALTER TABLE) oraz usuwanie tabel (DROP TABLE).
Omówienie relacji między tabelami, kluczy obcych (FOREIGN KEY) oraz podstawowych typów JOIN (INNER, LEFT, RIGHT). Przykłady łączenia danych z dwóch tabel.
Funkcje agregujące (COUNT, SUM, AVG, MIN, MAX), grupowanie danych (GROUP BY) oraz filtrowanie grup za pomocą HAVING.
Podzapytania w klauzulach SELECT, WHERE i FROM; operacje na zbiorach danych (UNION, INTERSECT) oraz instrukcje warunkowe CASE WHEN.
Tworzenie użytkowników, przydzielanie uprawnień (GRANT), cofanie uprawnień (REVOKE) oraz dobre praktyki w zakresie bezpieczeństwa baz danych.
Rozwiązywanie zadań praktycznych oraz realizacja projektu końcowego polegającego na stworzeniu bazy danych i wykonaniu przykładowych zapytań SQL.
Omówienie, czym jest Python i gdzie znajduje zastosowanie. Instalacja środowiska programistycznego (Python, VS Code, Jupyter Notebook), podstawowe zasady składni oraz stworzenie pierwszych skryptów, w tym program Hello World.
Przegląd podstawowych typów danych: liczby, teksty, listy i słowniki. Omówienie operatorów arytmetycznych i porównań, operacje na stringach oraz podstawy formatowania tekstu.
Poznanie instrukcji warunkowych if, else i elif oraz pętli for i while. Omówienie instrukcji break i continue oraz ich zastosowania w prostych algorytmach i praktycznych przykładach.
Tworzenie własnych funkcji, przekazywanie argumentów i zwracanie wartości. Wprowadzenie do modułów wbudowanych (math, random, datetime) oraz importowanie własnych modułów w projektach.
Otwieranie, odczyt i zapis plików tekstowych oraz praca z plikami CSV. Praktyczne zastosowania do przetwarzania danych i tworzenia prostych narzędzi.
Klasy i obiekty, atrybuty i metody. Wprowadzenie do dziedziczenia i podstaw polimorfizmu oraz przykłady praktycznego zastosowania programowania obiektowego.
Łączenie zdobytej wiedzy w praktyce poprzez tworzenie prostych gier i aplikacji (np. quiz, kalkulator, licznik). Wprowadzenie do debugowania kodu i rozwiązywania problemów programistycznych.
Omówienie najważniejszych zagadnień kursu, realizacja mini-projektu końcowego, wspólne rozwiązywanie problemów oraz sesja pytań i odpowiedzi.
Omówienie cech bezpiecznego hasła, typowych błędów użytkowników oraz psychologii ataków socjotechnicznych. Praktyczne wskazówki, jak tworzyć silne hasła i unikać powszechnych pułapek.
Przegląd popularnych narzędzi, takich jak KeePass czy Bitwarden, w tym konfiguracja, synchronizacja, tworzenie kopii zapasowych oraz zasady bezpiecznego przechowywania haseł.
Typy phishingu (emailowy, SMS, spear phishing), rozpoznawanie fałszywych wiadomości oraz znaczenie szkoleń uświadamiających i testów socjotechnicznych.
Wykorzystanie narzędzi takich jak HaveIBeenPwned i Firefox Monitor, zarządzanie tożsamością online oraz rekomendacje w przypadku incydentów związanych z wyciekiem danych.
Wyjaśnienie czym jest ransomware, sposoby jego rozprzestrzeniania, strategie tworzenia kopii zapasowych, segmentacja sieci oraz polityki dostępu minimalizujące ryzyko ataku.
Znaczenie symbolu „kłódki” w przeglądarce, różnice między certyfikatami DV, OV i EV, analiza bezpieczeństwa HTTPS oraz granice zaufania w kontekście stron internetowych.
Analiza nagłówków wiadomości email, mechanizmy SPF, DKIM, DMARC, ochrona tożsamości nadawcy oraz procedury zgłaszania nadużyć.
Rola adresów IP w identyfikacji i śledzeniu użytkowników, maskowanie IP (VPN, Tor), geolokalizacja oraz kwestie prywatności w sieci.
Przegląd najważniejszych źródeł wiedzy i aktualnych informacji o zagrożeniach: CERT Polska, Niebezpiecznik, Zaufana Trzecia Strona, CSIRT NASK, ENISA, raporty ESET Threat Reports, praktyczne alerty, newslettery i podcasty.
Krótki test podsumowujący wiedzę uczestników (quiz lub online), omówienie odpowiedzi, wskazanie obszarów do pogłębienia oraz wymiana refleksji i doświadczeń między uczestnikami.
Tworzenie reguł wyróżniania komórek, reguł dla pierwszych i ostatnich wartości, pasków danych, zestawów ikon oraz skali kolorów w celu wizualizacji danych.
Przegląd funkcji tekstowych, funkcji daty i czasu, funkcji logicznych i matematycznych oraz obsługa komunikatów błędów w arkuszu.
Sortowanie w kolejności naturalnej, na podstawie fragmentu pola, z pominięciem przedimków, listy filtrowania, zaawansowane kryteria filtrowania danych, kryterium obliczeniowe oraz kopiowanie przefiltrowanych danych do innego zakresu.
Śledzenie poprzedników i zależności komórek, identyfikacja błędów, usuwanie strzałek śledzących oraz szacowanie formuł w celu dokładnej analizy arkusza.
Tworzenie tabel przestawnych na podstawie tabel lub zakresów danych, tworzenie tabel przestawnych z zewnętrznych baz danych oraz praca z tabelami przestawnymi i ich dostosowywanie.
Konfiguracja arkusza do pracy ze scenariuszami, dodawanie i wyświetlanie scenariuszy, edycja i scalanie scenariuszy oraz generowanie raportów w Excelu.
Wczytywanie i korzystanie z dodatku Solver, definiowanie warunków ograniczających, zapisywanie scenariuszy oraz konfiguracja opcji Solvera w celu analizy danych i rozwiązywania problemów optymalizacyjnych.
Rejestrowanie makr, przypisywanie klawiszy skrótu, uruchamianie makr oraz podgląd i edycja kodu VBA powstałego w wyniku rejestracji.
Uruchamianie edytora VBA, otwieranie istniejących i tworzenie nowych modułów, procedury VBA, tworzenie makr oraz funkcji użytkownika, obsługa zmiennych, tworzenie wyrażeń, korzystanie z okna komunikatów i instrukcji języka VBA.
Omówienie zasad tworzenia formuł w Excelu, korzystania z operatorów oraz różnic między adresowaniem względnym a bezwzględnym w arkuszu kalkulacyjnym.
Tworzenie serii danych zdefiniowanych w arkuszu kalkulacyjnym oraz definiowanie własnych serii w celu automatyzacji wprowadzania danych.
Kopiowanie wybranych atrybutów komórek, wykonywanie operacji arytmetycznych na komórkach źródłowych i docelowych oraz transpozycja wierszy i kolumn w arkuszu.
Tworzenie reguł wyróżniania komórek, reguł dla pierwszych i ostatnich wartości, pasków danych, zestawów ikon oraz skal kolorów w celu wizualizacji danych.
Przegląd funkcji tekstowych, funkcji daty i czasu, funkcji logicznych i matematycznych oraz obsługa komunikatów błędów w arkuszu.
Sortowanie w kolejności naturalnej, na podstawie fragmentu pola, z pominięciem przedimków, listy filtrowania, zaawansowane kryteria filtrowania, kryterium obliczeniowe oraz kopiowanie przefiltrowanych danych do innego zakresu.
Ukrywanie wierszy i kolumn, ukrywanie arkuszy, ochrona arkusza hasłem, blokowanie arkusza oraz wybranych komórek w skoroszycie w celu zabezpieczenia danych.
Tworzenie wykresów, zmiana ich rodzaju oraz formatowanie w celu lepszego przedstawienia danych wizualnych.
Druk całego arkusza, wybranego zakresu, konfiguracja opcji wydruku oraz drukowanie do pliku PDF.
Praca z sumami częściowymi w arkuszu oraz dostosowywanie sposobu obliczania sum częściowych w zależności od potrzeb analitycznych.
Tworzenie tabel przestawnych na podstawie tabel lub zakresów danych, w tym również z zewnętrznych baz danych. Praca i dostosowywanie tabel oraz wykresów przestawnych.
Konfiguracja arkusza do pracy ze scenariuszami, dodawanie, wyświetlanie, edycja i scalanie scenariuszy oraz generowanie raportów w Excelu.
Omówienie historii języka i jego zastosowań, przedstawienie podstawowych cech języka Java oraz instalacja środowiska programistycznego (JDK, IntelliJ/Eclipse). Uczestnicy stworzą swój pierwszy program: Hello World.
Poznanie typów danych i zmiennych, operatorów, instrukcji warunkowych (if, switch) oraz pętli (for, while). Praktyczne przykłady wykorzystania podstawowych konstrukcji językowych w programie.
Omówienie tablic jednowymiarowych i wielowymiarowych, podstawowych kolekcji (ArrayList, HashMap) oraz sposobów iterowania po elementach danych struktur.
Definicja i wywołanie metod, przekazywanie argumentów, zwracanie wartości, przeciążanie metod oraz zasady zakresu zmiennych. Praktyczne ćwiczenia tworzenia własnych metod.
Wprowadzenie do klas i obiektów, tworzenie konstruktorów, pola i metody, wykorzystanie słowa kluczowego this oraz tworzenie i użycie obiektów w praktycznych przykładach.
Rozszerzanie klas, użycie super, nadpisywanie metod, operator instanceof, klasy abstrakcyjne i interfejsy. Praktyczne przykłady dziedziczenia i polimorfizmu w projektach.
Omówienie typowych wyjątków w Javie, instrukcji try, catch, finally oraz tworzenia własnych wyjątków. Ćwiczenia w bezpiecznym obsługiwaniu błędów w kodzie.
Odczyt i zapis plików tekstowych przy użyciu klas FileReader, BufferedReader, FileWriter oraz obsługa błędów I/O. Praktyczne zastosowanie w przykładach projektowych.
Tworzenie prostego projektu (np. mini kalkulator lub menedżer zadań), omówienie struktury projektu oraz dobrych praktyk programistycznych.
Rozwiązanie zadania projektowego przez uczestników (np. system rezerwacji lub quiz) oraz omówienie rozwiązań i wniosków z całych zajęć.
Historia języka C++, jego zastosowania oraz omówienie procesu kompilacji i uruchamiania programów. Przegląd środowisk programistycznych (Visual Studio Code, Code::Blocks, terminal) oraz omówienie podstawowej struktury programu w C++.
Poznanie podstawowych typów danych (int, float, char, bool), deklaracja i inicjalizacja zmiennych, operatory arytmetyczne i logiczne oraz ich zastosowanie w prostych programach.
Instrukcje if, else, else if oraz operator switch. Praktyczne przykłady zastosowania warunków w prostych algorytmach i programach.
Pętle for, while i do-while, przerywanie pętli przy użyciu break i continue. Praktyczne zastosowania iteracji w programach i algorytmach.
Deklaracja i definicja funkcji, przekazywanie argumentów, zwracanie wartości, zakres zmiennych oraz podstawy rekurencji. Ćwiczenia w tworzeniu własnych funkcji.
Tablice jednowymiarowe i dwuwymiarowe, operacje na ciągach znaków (C-string) oraz podstawy klasy string z biblioteki STL. Praktyczne przykłady użycia tablic i ciągów znaków.
Adresy pamięci, deklaracja wskaźników, dereferencja, operacje na wskaźnikach oraz relacja wskaźników z tablicami. Przykłady zastosowania wskaźników w programach.
Tworzenie struktur struct, dostęp do pól oraz praktyczne zastosowanie struktur w prostych projektach i programach.
Klasy i obiekty, konstruktory i destruktory, enkapsulacja oraz podstawy dziedziczenia. Przykłady tworzenia obiektów i korzystania z metod w C++.
Samodzielna lub zespołowa realizacja prostego projektu (np. kalkulator, system ocen, prosty rejestr danych) z wykorzystaniem poznanych elementów języka C++.