Další materiály

Upoutávky :-)

Následující shrnutí by vám měly poskytnout představu o celkovém směřování předmětu a co se bude probírat na jednotlivých cvičeních.

Cvičení 1: Organizace předmětu, Linux jako grafický uživatelský systém. Stručně si představíme cíle předmětu, pravidla a podmínky pro splnění. Pak prozkoumáme grafické rozhraní nabízené Linuxem, abychom si mohli vybrat to nejhezčí a upravit si ho.

Cvičení 2: Úvod do Linuxového rozhraní příkazové řádky. Skutečná síla Linuxových systém je v jejich rozhraní příkazové řádky. Uvidíme, jak ji můžeme využít pro práci se soubory ale i pro pokročilé úlohy jako je monitorování systému. A to jen pomocí pár základních příkazů, které jsou na každém unixovém systému.

Cvičení 3: Základní skriptování a zpracování dat v Linuxu. Na tomto cvičení odkryjeme skutečnou sílu shellových skriptů: univerzální a mocné lepidlo, které zjednoduší každodenní úlohy ale také zvládne hrubé zpracování dat (než je předáme do specializovaných nástrojů pro detailnější analýzu).

Cvičení 4: Stavební bloky shellových skriptů a Git na příkazové řádce. Vylepšíme naše znalosti shellových skriptů tím, že se naučíme používat návratové kódy k jejich řízení. Také rozšíříme seznam používaných příkazů: API shellu. Také začneme používat Git lokálně z příkazový řádky.

Cvičení 5: Práce na vzdálených strojích pomocí SSH, písemka na cvičení I (skripty a roury). Skutečná síla Linuxové shellu se projeví, až když je používán vzdáleně: uvidíme jak je práce na serverech jednoduchá přes SSH a proč příkazová řádka dominuje serverovému světu. Také si zrychlíme práci s Gitem pomocí autentikace bez hesla. Cvičení začne krátkým povinným testem.

Cvičení 6: Shellové skripty. Učiníme naše skripty čitelnější pomocí funkcí a proměnných a ukážeme si další cesty, jak spolu mohou programy komunikovat (např. pomocí command substitution).

Cvičení 7: Každodenní větvení v Gitu. Větve v Gitu jsou to co umožní více vývojářům pracovat na stejném projektu. Bez potřeby explicitní synchronizace nebo strachu, že přepíšou kód někoho jiného. Ale také bez dalších nároků na vaši práci s Gitem a s minimální režií.

Cvičení 8: Pokročilé skriptování a lintovací nástroje. Tohle cvičení je závěrečnou kapitolou k skriptování v shellu: uvidíme, jak fungují cykly a podmínky. Také využijeme ShellCheck a další nástroje pro nalezení chyb v našich skriptech dřív, než je vůbec spustíme.

Cvičení 9: Regulární výrazy, BATS testy, základní správa, písemka na cvičení II (Git). Linuxové systémy mohou běžet roky bez přerušení, ale občas nějakou údržbu vyžadují. V tomto cvičení si projdeme úplné základy správcovství. Také se podíváme na regulární výrazy, které mohou sloužit pro jednoduché i absolutně divoké hledání v textu (nebo dokonce jeho změnu). Cvičení začne krátkým povinným testem.

Cvičení 10: Systémy pro sestavování a základy make. Zavedeme si koncept systémů pro sestavování (build tools): pomocí nich lze zachytit, jak sestavit složitý software, takže vývojáři si nemusí pamatovat každý detail. Zaměříme se nástroj make. Také se podíváme na archivaci souborů a základní utility pro práci s disky.

Cvičení 11: Siesta. Protože je uprostřed týdne státní svátek, nejsou žádná nová témata. Dožeňte zameškané úlohy nebo přeskočená témata z předchozích cvičení. Nebo si prostě jen odpočiňte a udělejte si prodloužený víkend.

Cvičení 12: Pokročilé nástroje pro vývoj v Pythonu a prográmky find a xargs. Uvidíme, jak můžeme využít virtuální prostředí Pythonu pro vývoj projektů a přípravu pro další distribuci. A také se podíváme na dva zajímavé prográmky: xargs a find, které mohou být použitý pro vyhledávání souborů a práci s nimi (i parallelně). A podíváme se, jak se dělá SSH port forwarding.

Cvičení 13: Kontejnery s Podmanem. Ukážeme si, jak lze využít Podman pro efektivní testování programů v různých prostředích v izolaci, aniž bychom tím nějak ovlivnili náš systém. A také si vysvětlíme, proč existuje tolik nástrojů s podobným významem. A z čistě praktického hlediska se podíváme, jak je na tom Linus s tiskem a skenováním.

Cvičení 14: Continuous integration, síťové nástroje a signály, písemka na cvičení III (make). Uvidíme, že nastavení continuous integration, které spouští automatické testy při každém commit je strašně jednoduché v GitLabu a budete si ho moci nachystat pro vaše vlastní projekty. Ale také si představíme několik síťových nástrojů a zakončíme pohledem na signály, které mohou být použity pro sdělování neočekávaných stavů mezi procesy. Cvičení začne krátkým povinným testem.