Quest: UEFI czy BIOS?

Podstawowe pojęcia i definicje

  • UEFI (Unified Extensible Firmware Interface): Nowoczesny standard oprogramowania układowego płyty głównej komputera, który zastąpił tradycyjny BIOS. Odpowiada za wstępną inicjalizację sprzętu i bezpieczne uruchomienie systemu operacyjnego.
  • BIOS (Basic Input/Output System): Starszy, przestarzały system startowy komputera działający w trybie 16-bitowym, posiadający wyłącznie tekstowy interfejs sterowany klawiaturą.
  • GPT (GUID Partition Table): Nowoczesny standard tablicy partycji dyskowych powiązany z UEFI, który umożliwia obsługę dysków o pojemnościach przekraczających 2 TB oraz tworzenie ponad 128 partycji.
  • MBR (Master Boot Record / Główny Sektor Rozruchowy): Starszy standard wprowadzony w 1983 roku. Zapisuje informacje o partycjach na samym początku dysku. Obsługuje dyski o maksymalnej pojemności do 2 TB oraz pozwala na utworzenie maksymalnie 4 partycji głównych (lub 3 głównych i jednej rozszerzonej).

Najważniejsze funkcje i zalety UEFI

  • Graficzny interfejs użytkownika (GUI): Umożliwia wygodną nawigację za pomocą myszki oraz oferuje czytelne, kolorowe menu zamiast surowych, tekstowych ekranów.
  • Secure Boot (Bezpieczny rozruch): Kluczowa funkcja bezpieczeństwa weryfikująca podpisy cyfrowe oprogramowania startowego, co skutecznie chroni system przed złośliwym oprogramowaniem typu rootkit.
  • Szybszy czas uruchamiania: Dzięki zaawansowanej optymalizacji procedur rozruchowych (POST), komputer znacznie szybciej przechodzi do ładowania systemu operacyjnego.
  • Wsparcie dla sieci i narzędzi diagnostycznych: UEFI potrafi uruchamiać wbudowane aplikacje serwisowe, a nawet pobierać aktualizacje oprogramowania bezpośrednio z internetu.
  • Tryb kompatybilności wstecznej (CSM): Specjalny tryb pozwalający na uruchamianie starszych systemów operacyjnych oraz dysków sformatowanych w przestarzałym schemacie MBR.

5 pytań do pogłębienia tematu

  • Dlaczego tradycyjny system MBR ma ograniczenie do obsługi dysków o maksymalnej pojemności 2 TB i jak radzi sobie z tym GPT?
  • W jaki sposób technologia Secure Boot w UEFI zwiększa bezpieczeństwo systemu operacyjnego już w trakcie jego uruchamiania?
  • Czym pod względem technicznym różni się inicjalizacja sprzętu (POST) w trybie BIOS od środowiska rozruchowego UEFI?
  • Jakie zabezpieczenia przed uszkodzeniem danych oferuje tablica partycji GUID (GPT), których brakuje w MBR?
  • W jakich specyficznych sytuacjach współczesne komputery wciąż korzystają z trybu zgodności ze starszym BIOS-em (Legacy)?

Quest: Mobile app, desktop app – wybór platformy

IDEJęzyk + biblioteka / frameworkGdzie piszemyPlatformy doceloweRozwój, popularność, wsparcie CKEUwagi
Visual StudioC# + WinFormsGłównie WindowsWindowsLegacy
(do 2026 CKE)
Tworzenie interfejsów w podejściu przeciągnij i upuść. Dobra do utrzymania starszych systemów.
Visual StudioC# + WPF + XAMLGłównie WindowsWindowsUgruntowana, rozwijana, legacy
(CKE)
WPF używa XAML do interfejsu.
Visual StudioC# + .NET MAUI + XAMLWindows lub macOSWindows, Android, iOS, macOSAktywnie rozwijana
(CKE)
Wspólny projekt .NET dla desktopu i urządzeń mobilnych. iOS wymaga środowiska Apple
Visual StudioC# + WinUI 3 + XAMLWindowsWindowsRozwijana, nowoczesny stos Windows
(CKE – dopuszczalne?)
Warto rozważyć do nowej aplikacji przeznaczonej wyłącznie dla Windows, szczególnie gdy zależy Ci na nowoczesnym wyglądzie i integracji z systemem.
Qt Creator lub Visual StudioC++ + QtWindows, Linux, macOSWindows, Linux, macOS; wybrane platformy mobilneAktywnie rozwijana, ugruntowana
(CKE)
Mocna opcja do wieloplatformowych aplikacji desktopowych. Qt udostępnia własne biblioteki, narzędzia UI i mechanizmy sygnałów oraz slotów.
Qt Creator lub Visual StudioC++ + Qt Quick / QMLWindows, Linux, macOSWindows, Linux, macOS, Android, iOSAktywnie rozwijana
(CKE)
QML służy do deklaratywnego opisu interfejsu; C++ realizuje logikę i operacje wymagające wydajności.
PyCharm lub Qt CreatorPython + PyQtWindows, Linux, macOSWindows, Linux, macOSUgruntowana, aktywnie używana
(CKE)
Dobry wybór do narzędzi, aplikacji wewnętrznych i prototypów.
PyCharm lub inne IDE PythonaPython + TkinterWindows, Linux, macOSWindows, Linux, macOSDostępna standardowo, prostsza (CKE – dopuszczalne?)Alternatywa dla PyQt, jeśli aplikacja ma być niewielka i nie wymaga rozbudowanego interfejsu.
Android StudioKotlin lub Java + Android SDK / Jetpack ComposeWindows, Linux, macOSAndroidAktywnie rozwijana
(CKE)
Android Studio to podstawowe IDE dla aplikacji na Androida. Java nadal działa, ale do nowego projektu warto zacząć od Kotlina.
XcodeSwift + SwiftUImacOSiOS, iPadOS, macOS, watchOS, tvOSAktywnie rozwijana, natywny ekosystem Apple (CKE)Naturalny wybór do nowych aplikacji dla Apple.

Popularność i zastosowania

JęzykUżycie w badaniu Stack OverflowGłówne obszary zastosowań
C++24,3%Gry, systemy, embedded, wydajne aplikacje desktopowe
C#27,1%Systemy biznesowe, Windows, backend, gry
Python58,0%AI, analiza danych, automatyzacja, backend
Kotlin10,8%Android, backend JVM, aplikacje multiplatformowe
JavaScript62,0%Frontend webowy, backend, aplikacje webowe
TypeScript43,8%Duże aplikacje webowe, frontend i backend
Dart4,9%Aplikacje Flutter na wiele platform
Swift5,9%Natywne aplikacje na platformy Apple

Wieloplatformowość

Język i typowy frameworkDesktopMobileWebBackend
C++ — Qt/QML5/54/52/54/5
C# — .NET MAUI / Avalonia5/54/53/55/5
Python — PySide / Django / FastAPI4/52/53/55/5
Kotlin — Compose Multiplatform4/55/53/54/5
JavaScript/TypeScript — React Native / Electron5/54/55/55/5
Dart — Flutter5/55/54/53/5
Swift — SwiftUI / UIKit3/55/52/53/5

Quest: Cowork online

Spośród narzędzi do współpracy online wybierzcie dwa i przetestujcie. Waszym celem jest zespołowe przetestowanie i ocena jakości narzędzia do pracy grupowej nad dokumentacją techniczną, a następnie stworzenie w nim instrukcji obsługi programu Clonezilla w warunkach ZSZ.

Pomocnicza lista narzędzi (by Gemini Flash Lite)

Nazwa aplikacjiTyp narzędziaPróg wejściaPrywatność i daneDarmowa przestrzeń / limity
Google DocsKlasyczny edytorBardzo niskiŚrednia (skanowanie przez Google)15 GB (wspólna z Google Drive)
NotionBaza wiedzy (All-in-one)ŚredniStandardowa (dane na serwerach Notion)Brak limitu stron, max 5 MB na plik
HackMDEdytor MarkdownŚredni (wymaga Markdown)Standardowa (chmura publiczna/prywatna)Nielimitowane notatki i pliki w chmurze
CryptPadKlasyczny edytorNiskiBardzo wysoka (szyfrowanie end-to-end)1 GB na koncie darmowym
Microsoft LoopNowoczesny edytorNiskiStandardowa (serwery Microsoft)5 GB (w ramach darmowego OneDrive)
GitBookDokumentacja ITWysoki (wymaga Git/Markdown)Standardowa (projekty darmowe są publiczne)Darmowe dla społeczności i edukacji
StackEditEdytor MarkdownŚredniWysoka (zapis lokalny lub własna chmura)Zależna od Waszego Dysku Google/Dropbox
EtherpadMinimalistyczny edytorBardzo niskiZależna od wybranej instancji publicznejZazwyczaj brak limitów tekstowych
AnytypeBaza wiedzy (All-in-one)WysokiBardzo wysoka (Lokalnie + szyfrowane p2p)1 GB na synchronizację w chmurze
AppflowyBaza wiedzy (All-in-one)ŚredniWysoka (Open-source, dane lokalne/chmura)Max 2 członków zespołu w darmowej chmurze
CodaDokument/ArkuszWysokiStandardowa (serwery Coda)Limit wielkości dokumentu (liczby obiektów)
MiroTablica wizualnaNiskiStandardowa (serwery Miro)Max 3 edytowalne tablice dla zespołu
ExcalidrawSzkicownik onlineBardzo niskiWysoka (Szyfrowanie linków do współpracy)Darmowe na czas sesji przeglądarki

Quest: Lokalnie czy w chmurze?

Wstęp

Systemy IT mogą być budowane i utrzymywane na różne sposoby — można mieć własne serwery albo korzystać z usług dostępnych przez Internet. W zależności od potrzeb można kupić gotową aplikację, wynająć miejsce i zasoby do uruchomienia własnej strony albo samodzielnie utrzymywać sprzęt. Poznanie modeli on-premises, IaaS, PaaS i SaaS pomaga zrozumieć, kto odpowiada za sprzęt, oprogramowanie, dane i ich bezpieczeństwo.

Przykłady ze szkoły

1. Dziennik elektroniczny jako gotowa aplikacja — SaaS

Szkoła korzysta z gotowego dziennika elektronicznego udostępnianego przez firmę. Nauczyciele, uczniowie i rodzice logują się przez Internet, a szkoła nie musi kupować serwerów ani instalować oprogramowania.

Model: SaaS — Software as a Service


2. Strona szkolna – klasyczny hosting WWW / hosting zarządzany

Szkoła wykupuje usługę hostingową. Dostaje gotowe środowisko, np. przestrzeń na pliki, bazę danych, PHP, panel administracyjny oraz często automatyczny instalator WordPressa. Administrator szkoły nie musi samodzielnie konfigurować systemu operacyjnego ani serwera WWW.

Przykładowy model: usługa zarządzana / platformowa, często określana jako PaaS lub managed hosting — dokładna klasyfikacja zależy od zakresu usługi.

Obrazowo: Dostajemy gotowe miejsce i narzędzia do prowadzenia strony.


3. Strona szkolna – własny serwer w chmurze – IaaS

Szkoła wynajmuje wirtualną maszynę u dostawcy chmurowego. Otrzymuje m.in. procesor, pamięć RAM, dysk i sieć, ale sama instaluje i konfiguruje system operacyjny, serwer WWW, bazę danych oraz WordPressa.

Model: IaaS – Infrastructure as a Service.

Obrazowo: Dostajemy wirtualny komputer i sami decydujemy, co na nim zainstalujemy.


4. Szkolny lokalny serwer plików — on-premises

W szkole znajduje się fizyczny serwer, na którym przechowywane są np. dokumenty nauczycieli i materiały dla uczniów. Sprzęt jest własnością szkoły, a szkolny administrator odpowiada za jego działanie, aktualizacje, kopie zapasowe i bezpieczeństwo.

Model: on-premises


Najważniejsze pojęcia

PojęcieDefinicja dla ucznia
System ITZestaw sprzętu, oprogramowania, danych i sieci służący do wykonywania określonych zadań.
SerwerKomputer lub usługa, która udostępnia innym urządzeniom dane, programy albo inne zasoby.
On-premisesModel, w którym sprzęt i system znajdują się i są utrzymywane przez organizację, np. serwer plików stojący w szkole.
Chmura (Cloud)Korzystanie przez Internet z komputerów, programów, danych lub innych zasobów znajdujących się w infrastrukturze dostawcy.
IaaSInfrastructure as a Service – wynajmowanie przez Internet infrastruktury, np. serwera, dysku lub zasobów sieciowych.
PaaSPlatform as a Service – gotowe środowisko, na którym można tworzyć i uruchamiać własne aplikacje bez zajmowania się całym sprzętem.
SaaSSoftware as a Service – gotowy program dostępny jako usługa przez Internet, np. dziennik elektroniczny.
HostingUsługa polegająca na udostępnieniu miejsca i zasobów serwera, np. do przechowywania strony internetowej.
Dostawca usługiFirma lub organizacja, która udostępnia użytkownikowi określoną usługę IT.
Model hybrydowyPołączenie różnych sposobów działania systemów, np. lokalnego serwera szkoły z usługami działającymi w chmurze.
DaneInformacje przechowywane i przetwarzane przez system, np. dokumenty, oceny, zdjęcia czy pliki.
Backup (kopia zapasowa)Dodatkowa kopia danych, którą można wykorzystać w przypadku ich utraty lub uszkodzenia.

Pytania do przemyślenia

  1. Dziennik elektroniczny: Co musi znajdować się w szkole, żeby uczniowie i rodzice mogli korzystać z dziennika elektronicznego przez Internet?
  2. Kto, dba o serwery i aktualizacje dziennika, jeśli szkoła korzysta z gotowej aplikacji? Co w takim przypadku pozostaje obowiązkiem szkoły?
  3. Jeśli strona internetowa jest umieszczona na serwerze firmy hostingowej, to co szkoła faktycznie „wynajmuje” od tej firmy?
  4. Czym różni się sytuacja, w której szkoła wynajmuje serwer, od sytuacji, w której kupuje własny serwer i stawia go w szkolnej serwerowni?
  5. Serwer plików: Jakie są zalety tego, że szkolny serwer plików znajduje się fizycznie w szkole? Jakie mogą być problemy z takim rozwiązaniem?
  6. Co się stanie z lokalnym serwerem plików, jeśli w szkole wyłączy się prąd albo zepsuje serwer? A co z dziennikiem elektronicznym?
  7. Wyobraź sobie, że szkoła chce uruchomić nową aplikację internetową. Czy lepiej kupić własny serwer, wynająć infrastrukturę, czy skorzystać z gotowej aplikacji? Jakie informacje trzeba znać, żeby podjąć decyzję?
  8. Czy szkoła mogłaby jednocześnie korzystać z lokalnego serwera plików, hostingu strony i dziennika elektronicznego w chmurze? Jak nazywamy takie połączenie różnych środowisk?
  9. Kto odpowiada za bezpieczeństwo danych w każdym z trzech przykładów: szkoła, dostawca usługi czy obie strony? Czy przeniesienie systemu do chmury oznacza, że szkoła przestaje być odpowiedzialna za dane?

Quest: Włączanie

Uruchamianie sprzętu komputerowego przebiega wg następującego shematu:
Hardware → Firmware → Bootloader → Kernel → Sterowniki → Usługi OS → UI → Aplikacje

Etap / wspólny opisPC / laptop — Windows / LinuxMacBook — macOSTelefon — Android
1. Zasilanie — Po naciśnięciu przycisku zasilania urządzenie otrzymuje energię i rozpoczyna inicjalizację podzespołów. Zasilanie musi zostać odpowiednio rozprowadzone do procesora, pamięci, układów sterujących i pamięci masowej.PSU, ATX, bateriaApple Power Management, bateriaPMIC, bateria
2. Start procesora — Procesor otrzymuje zasilanie i zaczyna wykonywać pierwsze instrukcje. Na tym etapie nie działa jeszcze system operacyjny — CPU uruchamia kod odpowiedzialny za rozpoczęcie procesu bootowania.x86-64 CPUApple Silicon, ARM64 / Intel x86-64ARM64 SoC
3. Firmware — Pierwszy kod uruchamiany przez procesor pochodzi z firmware’u urządzenia. Jego zadaniem jest przygotowanie podstawowego środowiska sprzętowego i rozpoczęcie wyszukiwania systemu operacyjnego.UEFI, BIOSBoot ROM, Apple Boot FirmwareBoot ROM, SoC Firmware
4. Inicjalizacja i test sprzętu — Firmware sprawdza, czy najważniejsze komponenty są dostępne i mogą zostać użyte. Następnie inicjalizuje je na tyle, aby możliwe było przejście do kolejnego etapu uruchamiania.POST, UEFI Hardware InitializationApple Hardware InitializationBootloader / firmware initialization
5. Wykrycie pamięci masowej — System musi znaleźć urządzenie, na którym znajdują się pliki potrzebne do uruchomienia OS. Firmware identyfikuje odpowiednią pamięć masową i lokalizuje informacje rozruchowe.NVMe, SATA, EFI System Partition (ESP)APFS, APFS VolumeUFS, eMMC, A/B Slots
6. Wybór systemu operacyjnego — Komputer może mieć jeden lub kilka systemów operacyjnych. Mechanizm rozruchowy wybiera odpowiedni system zgodnie z konfiguracją urządzenia lub decyzją użytkownika.Windows Boot Manager, GRUB, UEFI Boot ManagerStartup Manager, boot.efiAndroid Bootloader, AVB
7. Uruchomienie bootloadera — Bootloader jest programem pośredniczącym między firmware’em a systemem operacyjnym. Jego głównym zadaniem jest znalezienie i załadowanie kernela oraz niezbędnych danych do pamięci RAM.Windows Boot Manager, GRUBboot.efiAndroid Bootloader, init_boot
8. Uruchomienie kernela — Kernel, czyli jądro systemu, przejmuje kontrolę nad podstawowymi zasobami komputera. Zarządza m.in. procesorem, pamięcią RAM, procesami oraz komunikacją ze sprzętem.Windows NT, Linux kernelXNULinux kernel
9. Uruchomienie sterowników — Kernel potrzebuje specjalnego oprogramowania, aby komunikować się z konkretnymi urządzeniami. Sterowniki pozwalają OS-owi korzystać np. z GPU, Wi-Fi, dysku, ekranu czy aparatu.WDM, KMDF, Linux Kernel ModulesIOKit, DriverKitKernel Drivers, HAL
10. Uruchomienie usług systemowych — System uruchamia procesy działające w tle, które zapewniają podstawowe funkcje OS-a. Mogą one odpowiadać m.in. za sieć, bezpieczeństwo, zarządzanie użytkownikami czy komunikację między komponentami systemu.Windows Services, Service Control Manager, systemdlaunchdinit, Zygote, system_server
11. Uruchomienie interfejsu użytkownika — Po uruchomieniu podstawowych komponentów system przygotowuje środowisko graficzne. Pojawia się ekran logowania, pulpit lub ekran główny urządzenia.Windows Shell, Explorer, GNOME/KDEWindowServer, FinderSystemUI, Launcher
12. Gotowość systemu — System operacyjny jest już w pełni uruchomiony i może wykonywać aplikacje użytkownika. Aplikacje korzystają z usług OS-a, zamiast bezpośrednio zarządzać sprzętem.Win32, .NET, Windows API, Linux userspaceCocoa, SwiftUI, macOS APIsAndroid Runtime (ART), Android Framework

Zadanie

Na zdjęciach płyt głównych różnych typów urządzeń zaznacz numerami 1-12 gdzie odbywa się dany etap rozruchu. Nie zawsze da się oznaczyć wszystkie elementy. Dla których urządzeń przenośnych o wysokim poziomie integracji zadanie to jest najtrudniejsze?

PC

Asus Prime 8350plus
foto

MacBook

Apple MacBook Pro 14 M3
foto

Smartphone

Samsung Galaxy S10
foto

Laptop

MSI Katana 15 HX B14W
foto

Quest: HTML i CSS beginner

Oto kilka przydatnych kodzików i kilka przydatnych linków. Pierwsze zadanie jest następujące: zrób stronę internetową, której kod rozumiesz w 100%. Zadanie drugie: opublikuj swoją stronę.

Prosty kodzik #1

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Mały plik z poprawną strukturą</title>
	<meta name="keywords" content="struktura, html, poprawny">
	<meta name="description" content="Ble ble ble ...">
	<style type="text/css">
	@media only screen and (min-width: 900px) {
		#tresc {
			width: 850px;
			margin: 0 auto 0 auto;
			}
		}
	</style>
</head>
<body>
	<div id="tresc">
	<h1>Nagłówek</h1>
	<h2>Nagłówek 2 poziomu</h2>
	<p>Lorem ipsum.</p>
	</div>
</body>
</html>

Przydatne adresy

Prompt dla beginnera

Potrzebuję prostą stronę internetową w html i css. Niech kod będzie w jednym pliku. Strona ma być responsywna. Na dużym ekranie mają wyświetlać się symetryczne marginesy tak, by główny blok treści miał 1000px. Na górze strony ma być blok z informacjami o autorze. Później ma być kilkanaście linków do różnych serwisów internetowych wraz z krótkimi opisami. Każdy link ma zajmować oddzielny blok. Każdy blok ma być w innym pastelowym kolorze. Na dużym ekranie w jednym wierszu mają wyświetlać się trzy bloki. Na smartfonie bloki mają być pod sobą.

Prosty kodzik #2


<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Sekcje w html 5</title>
	<meta name="keywords" content="main, nav, aside, article">
	<meta name="description" content="W HTML5 wprowadzono nowe elementy blokowe, które mają zastąpić element div tam, gdzie będzie to miało sens.">
	<style type="text/css">
	@media only screen and (min-width: 900px) {
		#kontener {
			width: 850px;
			margin: 0 auto 0 auto;
			}
		main {
			float: left;
			width: 70%;
			}
		aside {
			float: right;
			width: 28%;
			}
		footer {
			clear: both;
			}
		}
	</style>
</head>
<body>
	<div id="kontener">
		<header>
			<h1>Lorem ipsum story!</h1>
		</header>
		<div>
			<main>
				<article>
					<h2>Dolor ipsum</h2>
					<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur sed enim sed erat imperdiet elementum. Praesent dapibus purus eget ullamcorper commodo. </p>
					<p>Praesent vulputate, mi id auctor commodo, sapien augue rhoncus justo, non malesuada nibh diam nec dolor. </p>
				</article>
				<article>
					<h2>Amet sit</h2>
					<p>Nam id rutrum velit. Ut gravida tristique neque et pretium. Sed eget viverra orci. </p>
				</article>
			
			</main>
			<aside>
				<nav>
					<h3>Menu</h3>
					<ul>
						<li><a href="#">Strona Główna</a></li>
						<li><a href="#">Link 1</a></li>
						<li><a href="#">Link 2</a></li>
					</ul>
				</nav>
				<section>
					<h3>Reklamy</h3>
					<p>Lorem ipsum dolor sit emet...</p>
				</section>
				<section>
					<h3>Social media</h3>
					<p>Lorem ipsum dolor sit emet etc...</p>
				</section>
			</aside>
		</div>
		<footer>
			<div> pk.sth © 2022</div>
			<div>Strona o niczym by PK przygotowane specjalnie dla 1pt. Lorem ipsum dolor sit amet, consectetur adipiscing elit. </div>
		</footer>
	</div>
</body>
</html>

Quest: 5 publicznych notatek

Wariant 1 (easy)

Z wykorzystaniem HTML, PHP i MySQL należy stworzyć aplikację webową, która każdemu użytkownikowi (bez autoryzacji) pozwoli przeglądać i edytować 5 notatek tekstowych. Wszystkie notatki mają wyświetlać się równocześnie w osobnych polach textarea. Do zapisywania notatek można wykorzystać jeden lub 5 przycisków.

Wskazówka

Użyj AI, ale nie wklejaj treści zadania. Tego typu podejście jest niezbędne by zachodził proces uczenia się!

  • najpierw utwórz/wygeneruj kod HTML z formularzem
  • oddzielnie wygeneruj działający formularz obsługiwany przez PHP, tak by wyświetlał wpisany tekst
  • oddzielnie wygeneruj SQL tworzący odpowiednią tabelę i skrypt PHP, który będzie zapisywał tam dane ze zmiennej po naciśnięciu przycisku
  • Przeanalizuj wszystkie części i połącz je samodzielnie jedynie dopytując model o konkretne szczegóły

Wariant 2 (quite easy)

Z wykorzystaniem HTML, PHP i MySQL należy stworzyć aplikację webową, która każdemu użytkownikowi (bez autoryzacji) pozwoli przeglądać i edytować 5 notatek tekstowych. Wszystkie notatki mają wyświetlać się w osobnych polach widgetu Accordion zrobionego z wykorzystaniem biblioteki jQuery UI. Do zapisywania notatek można wykorzystać jeden lub 5 przycisków.

Wariant 3 (not as easy)

Z wykorzystaniem HTML, PHP i MySQL należy stworzyć aplikację webową, która każdemu użytkownikowi (bez autoryzacji) pozwoli przeglądać i edytować 5 notatek tekstowych. Wszystkie notatki mają wyświetlać się w osobnych polach widgetu Accordion zrobionego z wykorzystaniem biblioteki jQuery UI. Zapisanie notatki ma odbywać się w czasie zwijania widgetu bez przeładowania strony (z Ajax).

Quest: System ≠ zbiór elementów

System to nie tylko zbiór urządzeń czy programów. To uporządkowany zbiór elementów, ich relacji i zasad działania, zaprojektowany lub ukształtowany tak, aby wspólnie realizować określony cel.

SYSTEM = CEL + ELEMENTY + RELACJE + REGUŁY

Różne rodzaje elementów systemu

  1. Sprzęt – fizyczne urządzenia tworzące system.
    Przykłady: komputer, serwer, NAS, przełącznik, router, projektor, drukarka, czujnik.
  2. Oprogramowanie – programy sterujące sprzętem, przetwarzające dane albo dostarczające użytkownikom funkcji.
    Przykłady: system operacyjny, aplikacja, sterownik, oprogramowanie do wirtualizacji, system zarządzania.
  3. Dane – informacje, które system przechowuje, przetwarza lub przekazuje.
    Przykłady: dokumenty, konfiguracje, konta użytkowników, bazy danych, kopie zapasowe, obrazy systemów.
  4. Połączenia – mechanizmy umożliwiające współpracę elementów.
    Przykłady: sieć LAN, Wi-Fi, Internet, magistrala komunikacyjna, API.
  5. Konfiguracja – reguły określające sposób działania elementów i ich współpracy.
    Przykłady: adresacja IP, reguły przełącznika, uprawnienia, ustawienia programów, konfiguracja serwera.
  6. Ludzie – osoby korzystające z systemu, obsługujące go, administrujące nim lub projektujące go.
    Przykłady: użytkownik, operator, administrator, nauczyciel, technik.
  7. Procedury – powtarzalne sposoby działania ludzi i systemu.
    Przykłady: „co zrobić przed egzaminem”, „jak utworzyć konto ucznia”, „jak przywrócić komputer”, „co zrobić w przypadku awarii”.
  8. Środowisko – warunki, w których system działa.
    Przykłady: pomieszczenie, zasilanie, temperatura, dostęp do Internetu, wymagania prawne, organizacja pracy szkoły.

Z czego składa się system pracowni 308?

Na przykładzie pracowni komputerowej można wyróżnić następujące elementy systemu:

Element systemuZnaczeniePrzykład w pracowni
CelOkreśla, po co system istnieje i jakie rezultaty ma zapewniać.Prowadzenie zajęć, praca uczniów, egzaminy
KomponentyFizyczne lub programowe części systemu realizujące określone funkcje.Komputery, NAS, projektor, przełącznik, systemy operacyjne, Veyon
Struktura i relacjeOkreślają, jak poszczególne elementy są ze sobą powiązane i od siebie zależne.Komputery połączone z przełącznikiem, Veyon komunikujący się z komputerami uczniów, NAS przechowujący obrazy
KonfiguracjaŚwiadome określenie parametrów i sposobu działania elementów oraz ich współpracy.Konfiguracja sieci, kont, uprawnień, Veyona, systemów operacyjnych i przełącznika
SprzętFizyczne urządzenia tworzące infrastrukturę systemu.Komputery, przełącznik, NAS, projektor, okablowanie
OprogramowanieProgramy realizujące funkcje systemu i umożliwiające wykorzystanie sprzętu.Windows, Linux, wirtualizacja, Veyon, Clonezilla
Dane i zasobyInformacje oraz inne zasoby wykorzystywane, przechowywane lub przetwarzane przez system.Obrazy systemów, materiały dla uczniów, konta użytkowników, konfiguracje
KomunikacjaMechanizmy umożliwiające wymianę informacji i współpracę elementów.LAN, protokoły sieciowe, połączenie z NAS, połączenie z projektorem
Użytkownicy i roleLudzie korzystający z systemu oraz określenie ich funkcji i odpowiedzialności.Uczeń, nauczyciel, administrator
UprawnieniaOkreślają, kto i jakie operacje może wykonywać w systemie.Administrator może konfigurować stanowisko, uczeń ma uprawnienia potrzebne do wykonywania zadań
ProceduryUstalone sposoby postępowania zapewniające powtarzalne i przewidywalne działanie systemu.Przygotowanie pracowni do egzaminu, tworzenie kont, przywracanie stanowisk
Zarządzanie i monitorowanieMechanizmy pozwalające obserwować, kontrolować i zmieniać działanie systemu.Veyon, administracja komputerami, konfiguracja przełącznika
BezpieczeństwoŚrodki chroniące system, dane i użytkowników przed awariami, błędami i nieuprawnionym dostępem.Oddzielna sieć egzaminacyjna, uprawnienia, obrazy systemów
Odporność i odtwarzanieZdolność systemu do powrotu do poprawnego stanu po awarii lub niepożądanej zmianie.Przywracanie komputerów z obrazów Clonezilla przechowywanych na NAS
UtrzymanieDziałania zapewniające sprawność i aktualność systemu.Aktualizacje, okresowe obrazowanie, zmiany konfiguracji
Dokumentacja i kompetencjeWiedza potrzebna do prawidłowego używania, obsługiwania i rozwijania systemu.Instrukcje dla nauczycieli, szkolenie uczniów, dokumentacja konfiguracji

Słowniczek

  • NAS — urządzenie podłączone do sieci, które służy do przechowywania i udostępniania plików innym komputerom.
  • Clonezilla — program umożliwiający wykonanie obrazu całego dysku lub komputera, a następnie odtworzenie z niego przygotowanego wcześniej systemu.
  • Veyon — program pozwalający nauczycielowi obserwować ekrany komputerów uczniów i zarządzać nimi z jednego komputera.
  • System operacyjny (OS) — podstawowy program komputera, który zarządza jego sprzętem i umożliwia uruchamianie innych programów.
  • Przełącznik sieciowy (switch) — urządzenie, które łączy komputery i inne urządzenia w sieci oraz przekazuje między nimi dane.
  • LAN — lokalna sieć komputerowa, np. sieć łącząca wszystkie komputery w pracowni.
  • Sieć egzaminacyjna — oddzielna sieć komputerowa przygotowana tak, aby podczas egzaminu zapewnić odpowiedni i kontrolowany dostęp do potrzebnych zasobów.
  • Konto użytkownika — osobisty profil na komputerze, który pozwala rozpoznać użytkownika i określić, co może on robić.
  • Uprawnienia — określenie, do jakich funkcji, plików i ustawień użytkownik ma dostęp.
  • Obraz systemu — zapis zawartości i ustawień komputera, który można później wykorzystać do odtworzenia jego wcześniejszego stanu.

Zadanie

Przeanalizuj omówienie systemu pracowni. Zwróć uwagę na język jakim ten system jest opisany. Zwróć uwagę na pojęcia z tabeli. Wymyśl przykład innego systemu informatycznego i zastanów się co jest w Twoim przykładzie jest celem, zasobami, procedurami i co tworzy odporność. Wybierz w grupie 2-3 osobowej najlepszy przykład i razem wypełnijcie trzecią kolumnę tabeli dla wybranego przykładu.

Mój zestaw zasad obowiązujących na zajęciach (v2.9)

Zasady dotyczące celu przychodzenia na zajęcia:

  1. Do szkoły przychodzimy, żeby się uczyć. Wyposażenie pracowni przeznaczone jest wyłącznie do nauki. Wykorzystanie sprzętu podczas lekcji do celów innych niż nauka jest zabronione i powoduje pozbawienie prądu lub wyrzucenie z sali. Czas po wykonaniu wszystkich zadań z lekcji należy wykorzystywać do pogłębiania tematu, czy zanotowanie tego co warto.
  2. Samodzielne notowanie na zajęciach jest obowiązkowe. Nauczyciel nic nie dyktuje! Notatnik papierowy jest zawsze na stole lub notatnik online jest zalogowany. Brak notowania świadczy o braku chęci nauki!
  3. Stopnie są na zajęciach mało ważne! Ważny jest komentarz do oceny! Oceniam wg dwóch skali:

Skala dla uprzywilejowanych
przywilej zyskuje się zachowując higienę cyfrową

  • kartkówki (0, 3, 4, 5)
  • testy kwartalne i projekty (0, 2, 3, 4, 5, 6)
  • własne projekty (0, 4, 5, 6)
  • nieregularnie za aktywność poznawczą (0, 3, 4, 5 , 6)
  • raz w miesiącu za pracę na lekcjach (0, 1, 2, 3, 4, 5)
    1 za mniej niż 50% pracowitej obecności
    2 za 50-79% pracowitej obecności
    3 za przynajmniej 80% pracowitej obecności
    4, 5 za
    • questy tygodniowe (dobrowolne) potwierdzane na własnym quasi-blogu
    • zdobywanie w samodzielnie wybranej formie wiedzy z przedmiotu potwierdzana na bieżąco na własnym quasi-blogu

Skala dla przeciętnych
brak higieny cyfrowej prowadzi do przeciętności

  • kartkówki (0, 1, 2, 3, 4, 5)
  • testy kwartalne i projekty (0, 1, 2, 3, 4, 5, 6)
  • własne projekty (0, 4, 5, 6)
  • nieregularnie za aktywność poznawczą (0, 3, 4, 5 , 6)
  • raz w miesiącu za pracę na lekcjach (0, 1, 2, 3, 4, 5)
    1 za mniej niż 50% pracowitej obecności
    2 za 50-79% pracowitej obecności
    3 za przynajmniej 80% pracowitej obecności
    4, 5 za
    • questy tygodniowe (dobrowolne) potwierdzane na własnym quasi-blogu
    • zdobywanie w samodzielnie wybranej formie wiedzy z przedmiotu potwierdzana na bieżąco na własnym quasi-blogu


Zasady dotyczące porządku:

  1. Twoją wolność w sali ogranicza komfort pozostałych osób. Na lekcjach dążymy do swobodnej atmosfery, która ma sprzyjać twórczej pracy.
    • Jeśli swoboda przestaje sprzyjać pracy to jest ograniczana.
    • Pojedynczo do toalety można wychodzić bez pytania. Inne wyjścia są traktowane jako obecność niepracowita.
  2. To komputer jest zaprojektowany do pracy. Telefony leżące w zasięgu ręki ucznia mają zdolność przeszkadzania, więc nauczyciel pomaga w koncentrowaniu się na lekcji. Mobilna elektronika spoczywa w skrzynce, ewentualnie głęboko w plecaku. Osoby, które nadmiernie korzystają z telefonu muszą odkładać go do skrzynki. W czasie lekcji wolno bez pytania:
    • sprawdzić coś związanego z tematem lekcji, gdy nie da się tego zrobić na komputerze
    • zrobić zdjęcie czegoś związanego z tematem lekcji
    • użyć słuchawek do tutorialu, kursu czy poradnika związanego z tematem lekcji (na zajęciach nie słuchamy muzyki)
  3. Wyposażenie pracowni jest własnością szkoły, więc wszyscy dbamy o nie bardziej niż o własny. Zabawa w hakerów (również nieudolna) nie opłaci się. Pentesting jest mile widziany.


Zasady dotyczące kultury:

  1. Posiłki spożywa się podczas przerwy (dotyczy również nauczyciela).
  2. Kultura słowa ma być standardem, a nie wyróżniającym walorem wybitnych.
  3. Strój ucznia ma być odpowiedni do sytuacji.


Zasady dotyczące przyszłości:

  1. Przewiduj! Myśl! Łącz fakty! Wyciągaj wnioski! Jeśli chcesz wykonywać ambitny zawód, musisz nauczyć się pracować efektywnie:
    • kontroluj czas pracy i czas rekreacji
    • eliminuj do 0 czas zmarnowany
    • świadomie wybieraj sobie cele i konsekwentnie dąż do nich
    • swoje błędy traktuj jako element nauki.