Krutá Smršť Přednášek 2025

Seznam přednášek – Karolínka

Milý účastníku přednáškové Smrště, máš možnost vybrat si přednášky předem, aby se organizátoři mohli pořádně připravit již před akcí a přednášky byly co nejkvalitnější.

Přednášky jsou rozděleny do dvou kategorií: matfyzácké (témata z informatiky, matematiky či fyziky) a nematfyzácké (všechno ostatní). Hlasování v každé kategorii probíhá nezávisle a budeme se snažit o rozumně vyvážené zastoupení obou kategorií. Z každé kategorie vybíráme primárně přednášky s nejvíce body, ale bereme ohled i na možnosti a preference přednášejících.

Po přihlášení (do webového účtu, který Ti byl vytvořen při registraci, nebo který jsi již předtím měl) můžeš každé přednášce přiřadit 0 až 100 bodů a tím si ji vybrat. Body jsou kladná celá čísla nebo 0 a jejich součet přes všechny přednášky v kategorii musí být menší nebo roven 100. Doporučujeme nevyplýtvat vše na pár přednášek (či dokonce jednu).

Hlasování končí ve středu 19. 11. v 32:00. Na samotné Smršti další hlasování o přednáškách již nebude. Kdyby se Tvá oblíbená přednáška nedostala do výběru nebo budeš chtít slyšet o něčem jiném, můžeš zkusit během Smrště přemluvit k přednášení někoho z organizátorů.

  • Všechny přednášky
(Kliknutím na název přednášky zobrazíte její detail)

Všechny přednášky

Algoritmy a datové struktury

Datové struktury ve volném stylu ("Všechno důležité jde spočítat v konstantním čase.") [DSX]
Jirka Kalvoda, Martin „Medvěd“ Mareš

Pojďme spolu na výlet krajinou datových struktur. Vyšlapané cestičky lesem vyhledávacích stromů mineme a raději zahneme do opravdové džungle. Potkáme struktury pracující ve skoro konstantním čase, dynamické reprezentace grafů, roztodivné druhy hešováni a cokoliv dalšího, o co si průvodci řeknete.

Deque-like haldy ("Jsme optimální až na aditivní loglogloglog...log n!") [DEQHE]
Ríša Hladík

Ukážeme si datovou strukturu, která zobecňuje frontu i zásobník zároveň: umí smazat libovolný prvek v čase O(log(vzdálenost od bližšího kraje)). Ale hlavně: kromě toho je to zároveň halda se stejně silnými garancemi jako ta Fibonacciho. (Tedy… až na aditivní log log ... log n.) Kombinace předchozích dvou vlastností nám dává rychlé adaptivní algoritmy na různé problémy: třídění skoro setříděného pole, Dijkstra v „snadném“ grafu. V přednášce ale aplikace nezazní: naším hlavním cílem je tuto trochu overengineered haldu vybudovat od základu a možná přitom pochytat pár triků a myšlenek, které se nám můžou hodit při návrhu vlastních datových struktur. (Pokud jste někdy byli na mojí přednášce o haldách, tak vězte, že tahle přednáška je o úplně nové haldě.)

Předpoklady: nebát se hald v haldách v haldách
Dynamizace datových struktur ("Insert prý není podporován? To spravíme.") [DYNAMIC]
Katia „Čiči“ Kočická

Pro práci s daty jsme si pořídili spoustu datových struktur, které s nimi umí pracovat efektivně. Jenže ouha, některé z nich nejdou upravovat za běhu – jsou statické. Naučíme se techniky, pomocí kterých alespoň částečně takové struktury naučíme chovat se dynamicky, abychom stále zachovali rozumné časové a prostorové parametry.

FM-Index ("Insert není podporován (nevím jak to spravíš)") [FMIX]
Standa Lukeš

FM-Index je datová struktura oblíbená v bioinformatice – umí rychle hledat libovolné podřetězce i s drobnou tolerancí na chyby. V podstatě je to sufixový strom, akorát komprimovaný, často menší než původní text. Takže si ukážeme Burrows-Wheeler transformaci na které je to založené, jak ho rozumně rychle postavit a jak v něm hledat.

Modely počítačů ("Nač Pentium? Máme Turingovy stroje!") [MODEL]
Jirka Kalvoda

Na této přednášce si ukážeme na čem programují počítají teoretici. Turingův stroj obyčejný, vícepáskový, nedeterministický a univerzální. Random Access Machine (RAM) a Pointer Machine. Všechny počítače jsou si rovny, jen některé jsou si rovnější. Pokud zbude čas, pořídíme si klidně N2 procesorů a spřáhneme je do paralelního počítače (PRAM). Rychlé paralelní slévání a třídění.

Sufixový strom a sufixové pole ("Umíš sufixový strom? Tak to už s řetězci umíš úplně všechno!") [SUFIX]
Jirka Kalvoda

Pomocí sufixového stromu lze většinu řetězcových problémů vyřešit v lineárním čase. Na přednášce si ukážeme, jak sufixový strom vypadá, jak se pomocí něj řeší problémy, jak souvisí se sufixovým polem. Ukážeme si jejich konstrukce nebo aplikace.

Zpracování rádiových signálů na počítači [DSP]
Jenda Hrach

Představíme si obor na pomezí matematiky, fyziky, informatiky a inženýrství, který pohání současná rádiová zařízení, od digitální televize, přes WiFi a 5G sítě po radary. Jak vůbec reprezentovat rádiovou vlnu v počítači - kvadraturní signály, vzorkovací rychlost, šířka pásma. Základní operace se signálem - změna frekvence, převzorkování. Filtry. Fourierova transformace.

Úvod do lambda kalkulu ("Lambda x lambda y lambda z ... Všude samá lambda!") [LAMBDA]
Katia „Čiči“ Kočická

Lambda kalkulus je jiný Turingovský úplný systém, z jehož kořenů vychází funkcionální programování. Povíme si, co vůbec ta lambda představuje, z čeho se celý systém skládá a jak si v něm můžeme pořídit aritmetiku nebo logiku. Nakonec si pořídíme typy a naučíme se, jak s nimi pracovat.

Programovací jazyky a techniky

Asynchronní programování [ASYNC]
Standa Lukeš

To, že počítač dělá několik věcí najednou, za nás obvykle řeší operační systém pomocí vláken. Pokud ale potřebujeme dělat stovky věcí "najednou", může pomoci si vlákna odlehčit a přenést do programu samotného. Jaké techniky se pak používají a jak se z toho nezbláznit. Asynchronní vstup a výstup, podpora pro asynchronní programy v různých jazycích, sliby, propagace chyb. Co dělají klíčová slova async a await, která se v poslední době objevily skoro všude.

KsplangJIT ("Nejlepší programovací jazyk nemusí být nejpomalejší") [KSPLANG]
Standa Lukeš

Ksplang je tak skvělý, že je prakticky nemožné programy přeložit klasickým ahead-of-time překladačem – díky vysokoúrovnosti jazyka v něm nejsou vidět ani konstanty, natož třeba kam směřují skoky. Tyto informace se ale dozvíme za běhu, takže pak můžem rovnou program přeložit do nějakého   příčetnějšího   pro procesor stravitelnějšího kódu. Ukážem si tedy jak postavit relativně jednoduchý trace-oriented JIT, který pomocí speciálního interpretru staví SSA mezikód, na kterém rovnou zvládá aplikovat základní optimalizace.

Paměťová správa jazyka Rust ("ERROR: borrow of moved value: `meow`") [RUST]
Katia „Čiči“ Kočická

Programovací jazyky mají typicky dva přístupy, jak nám jako programátorům poskytnout paměť: buď vše řeší za nás pomocí garbage collectoru, nebo nám její správu plně přenechávají. Avšak, první přístup je nepředvídatelný, u druhého je snadné udělat chybu s velkými dopady. Jazyk Rust přináší vlastní přístup k paměti, který chce zanechat předvídatelnost a zamezit možnostem udělat chyby. Za to však platí omezeními, jak k paměti přistupovat. Podíváme se, jak tento systém funguje, jak můžeme využít jeho výhody a naopak snížit dopad nevýhod.

Pokročilý Python [PYTH2]
Jirka Kalvoda

Povídání o tom, co nám Python nabízí, aby se v něm hezky programovalo. Jak psát pythonicky aneb enumerate, zip, comprehensions či generátory. Jak se neztratit v balíčcích a jak si vytvořit vlastní. Co za pasti skýtá Python a jak přesně fungují pythonní třídy. Jak dynamicky modifikovat asi tak všechno a proč to možná nechceme dělat.

Předpoklady: Základy Pythonu
Programovací jazyk Elixir [ELIXIR]
LEdoian

Elixir je jazyk vycházející z konceptů Erlangu, ve kterém se spojuje funkcionální přístup, dynamické typování, pattern matching a paralelismus pomocí správy procesů a předávání zpráv mezi nimi. Tím vznikl jazyk, který může být pohodlný na skriptování i větší distribuované aplikace nebo netriviální webové služby.

Typst ("Nemůžete se rozhodnout mezi sázením textu a programováním?") [TYPST]
Ben Swart

Typst je rozvíjející se systém na sázení dokumentů se sílu srovnatelnou s LaTeXem, jednoduchou a přístupnou syntaxí podobnou Markdownu a mocným integrovaným skriptovacím jazykem. Ukážeme si, jak s ním vysázet jednoduchý dokument, jak přizpůsobit jeho vzhled vaším představám, jak během sázení zpracovat data nebo jak nakreslit obrázek pomocí kódu.

Programátorské nástroje

Git je prostě boží! ("git shuffle-commits –the-way-i-want") [GITGUD]
LEdoian

Za roky používání Gitu jsem dělalo různé divné věci, a vždycky mě potěšilo, že s Gitem vůbec jdou udělat. Na přednášce ukážu některé své problémy a jak se mi povedlo je vyřešit pomocí méně známých funkcí Gitu. Konkrétně plánuji ukázat přinejmenším subtrees, kreativnější využití rebase a bisect skripty a ukázat, jak mi to pomohlo řešit problémy s kernelem a forkování projektů. Bude se hodit znát uživatelské použití Gitu a nebát se příkazové řádky, vnitřnosti Gitu případně vysvětlím. Naopak, pokud máte vlastní kreativní příběhy, dám prostor pro nějaké sdílení – obohaťte mě! :-)

Předpoklady: GITIN
Git uvnitř [GITIN]
LEdoian

O Gitu se občas říká, že je složitý. Pod vrstvou různých příkazů či klikátek se ale skrývá docela elegantní způsob ukládáni různých verzí souborů. Co je větev a proč je to tak důležitý koncept? K čemu Git používá hashe? Co se děje při pushi a pullu?

Předpoklady: Může se hodit umět commitnout a pushnout, ale přednáška půjde pochopit i bez předchozích znalostí Gitu.
Textový (nejen) editor Emacs ("Přece sem ty klávesy nemontovali zbytečně") [EMACS]
Vojta Káně

Po letech člověk začne mít pocit, že už vše zná, vždyť přece umí udělat interaktivní rebase z příkazové řádky, parametry rsyncu zná nazpaměť a vimovým makrem za pár chvil přechroupe tisíci řádkové dokumenty. Je tak ještě co objevovat? Zjistil jsem, že je, a rád se o zkušenost podělím. Řeč bude o editoru Emacs z dílny GNU. Ten je známý pro svou skriptovatelnost (pravda, ve vlastním dialektu LISPu), klávesové zkratky o nichž se ani uživatelům vimu nezdálo a též pro svou těžkotonážnost. Na všech těch podhledech něco je a v tom je právě to kouzlo. Neodpovím, který textový editor je ten nejlepší na světě, ale ukážu další možné pohledy na svět, jež se hodí znát, i kdyby se přes ně člověk nakonec dívat nechtěl.

Počítačová grafika

Fotorealistická grafika aplikovaná na hrochy ("Renderujeme hrochy v 700 řádcích kódu.") [HIPPOGOD]
Kuba Pelc

Vyhlídkový výlet světem pomalé fotorealistické počítačové grafiky (na rozdíl od rychlé herní grafiky v GAMEGFX), demonstrovaný na :hippo_god: (viz https://www.shadertoy.com/view/wtGczK). Projdeme základní principy simulace světla, raytracingu, GPU a proceduální generace. Jak definovat scénu s hrochem pomocí pár řádek kódu a jak to celé použít pro nakreslení obrázku v Shadertoy.

Grafika v počítačových hrách ("But can it run Crysis?") [GAMEGFX]
Kuba Pelc

Vyhlídkový výlet světem rychlé herní počítačové grafiky (na rozdíl od pomalé fotorealistické v HIPPOGOD). Dozvíte se, jak se vyráběly hezké pixely rychle a efektivně na různých érách hardwaru i softwaru, od konce devadesátek až po současnost. Jak funguje vykreslování a GPU zevnitř a co jsou všechny ty obskurní zkratky v grafických nastaveních. A taky pár her rozpitváme zaživa frame debuggerem.

Programování na grafické kartě ("Řídí se to jako raketa – létá rychle, ale nemá volant.") [GPU]
Kuba Pelc

Dnes již není grafická karta jen placka převádějící digitální pixely na analogový signál. Dá se na ní počítat kde co. Zde si představíme trochu technologie CUDA a compute shadery v OpenGL a zmíníme, že tento ďábelský kus HW umí počítat zatraceně rychle, ale pokud tam uděláme malou chybičku, tak také zatraceně pomalu. Zmíníme, proč tomu tak je, jaké druhy paměti můžeme v programu používat a co je to multiprocesor.

Principy počítačů a operační systémy

Co se děje když počítač počítá ("od pythonu až po tranzistor") [HOWPC]
Marek Maškarinec

Přemýšleli jste co se děje uvnitř vašeho počítače když spustíte svůj program? Je to černá magie, nebo to má i nějaké jiné vysvětlení? Začneme Pythonem a postupně se prokousáme níž a níž až k tranzistorům.

Předpoklady: Alespoň trochu tušit co je to Python.
Floaty [FLOAT]
Standa Lukeš

Programátoři se tradičně bojí necelých čísel, a floatů obvzlášť. Často ale z těch špatných důvodů. Takže si ukážeme, jak floatová čísla ve skutečnosti fungují (ano, je to deterministické), na co se můžete spolehnout, na co je na naopak potřeba dávat pozor. Jaký mají význam všelijaké podivnosti jako subnormální čísla, -0, a různé NaNy. Kdy je lepší použít celá čísla, a kdy vám floaty způsobí míň problémů. Také si ukážeme pár základních triků jak se vyvarovat nepřesností, nebo je alespoň včas detekovat.

Unicode ("Jak se napíše sněhulák s kudrnatými vlasy?") [UNI]
Martin „Medvěd“ Mareš

Jak funguje znaková sada Unicode, která se snaží zapsat všechny jazyky světa? Codepointy versus glyfy. Kombinující znaky, čtvero normálních forem a pátá lehce nenormální. Typografické a neviditelné znaky. Co všechno prozradí Unicode Character Database. Uložení v paměti: formáty UCS-2, UCS-4, UTF-8 a UTF-16, nešvar s BOM. Tajemný svět emoji. Jak se s Unicode programuje? A jako vždy: bezpečnostní problémy.

Hardware

Bezpečnostní chyby v procesorech ("Sběrnicí obchází Přízrak a krade klíče.") [CPUBUG]
Martin „Medvěd“ Mareš

Že jsou v programech bezpečnostní chyby, na to jsme si už zvykli. Ale teprve zvolna si zvykáme na to, že mohou být i v hardwaru, dokonce v samotném procesoru. Poslední roky přinesly několik ošklivých překvapení tohoto druhu s veselými jmény, jako je Meltdown a Spectre. Budeme se zabývat fungováním procesoru uvnitř, zejména všelijakými triky na zrychlení výpočtu: superskalárním zpracováním instrukcí, kešováním a predikcí skoků. A ukážeme, co pokazil Intel, co AMD a jak toho jde zneužít.

Jak se hackují satelity ve vesmíru ("Když to nevyjde, další pokus máme za dvě hodiny. Když to hodně nevyjde, uvidíme padat hvězdu.") [SPACECTF]
Honza Černohorský

Před pár dny (v době psaní této anotace) jsem byl s CzechCyberTeamem na finále Ctrl+Space CTF v ESTECu v Nizozemsku, kde jsme měli možnost hackovat reálné satelity na oběžné dráze Země. V přednášce si něco povíme o úlohách, které jsme řešili, podivných technologiích, které se ve vesmíru používají a unikátních výzvách, které interakce s něčím, co obíhá planetu, na které sedíte, skýtá. Možná přijdou i nějaké ty vesmírné výpočty.

Linuxový foťák a jeho modifikace ("Nechali nám názvy symbolů, tak je pojďme využít!") [LINUXCAM]
David Koňařík

Kolem roku 2013 vyrobil Samsung několik bezzrcadlovek běžíčích na Linuxu. Dnes jsou fotografickou veřejností vesměs zapomenuty, jde ale pořád o softwarově nejotevřenější fotoaparáty. Já jsem samozřejmě neodolal a teď bych vám rád přinesl ukázat své exempláře a předvedl, jak se taková "otevřenost" dá využít. Během přednášky projdeme reálie řady Samsung NX, jak zhruba funguje její firmware a co vše je potřeba, abychom mohli přidat do binárek své modifikace. Dojde na strojový kód, ABI konvence, ptrace, kompilaci vlastního toolchainu a spoustu jiných zajímavých věcí.

Progragramování jednočipů ("hardware je to, na co se dá sáhnout") [MCPROG]
Marek Maškarinec

Hardware může na první pohled vypadat děsivě. Ukážeme si že to naopak může být celkem zábava a že k tomu ani není potřeba profesionálně vybavená dílna, nebo vzdělávání v elektrotechnice. Přednáška začne krátkým teoretickým úvodem, poté se budeme moct pustit na praktickou ukázku.

Předpoklady: Predpokládá se základní znalost céčka (stači ho umět číst).
Raspberry pico a jeho periferie PIO ("Chybí vám další UART? Nevadí, můžeme si ho naprogramovat.") [PICO]
Jirka Kalvoda

Před pěti lety Raspberry Pi představilo nový mikrokontroler RP2040 a později i novější řadu RP2350, které osazují do desek Raspberry Pi Pico. Ty můžou padnout do ruky v v ledajakých situacích, kdy chceme ovládat nějaký hardware od LEDky po klimatizační jednotky. Na této přednášce se podíváme na to, co umí a jak se dají vyvíjet programy na ně. Podstatnou část přednášky věnujeme nové periferii jménem PIO, což je takový velmi minimalistický procesor, pomocí něhož můžeme implementovat standardní komunikační protokoly jako UART a I2C i naprosté obskurnosti. V jednom čipu jich máme rovnou 8 nebo 12, takže nám tak rychle nedojdou.

Předpoklady: Schopnost alespoň číst C/C++, zběžná znalost hardwaru (Arduino a podobné).
Vytváříme chytrá zařízení pomocí Matteru a Threadu ("Na tohle nesáhnu ani dvoumatterovou tyčí") [MATTER]
Honza Černohorský

Podíváme se, jak to dopadlo, když se dalo pár korporací dohromady, aby vytvořilo """otevřený""" standard pro zařízení chytré domácnosti a vytvořilo protokol, který závisí na HTTP, TLS, MDNS, IPv6, Bluetoothu, QR kódech, NFC, WiFi a bůhví čím dalším. Podíváme se na to, co všechno musí zařízení umět, aby se mohlo po těchto dvou protokolech bavit a jak to celé bude fungovat, až (jestli) se to někomu konečně podaří pořádně implementovat.

Předpoklady: Mentální výdrž, holinky a gumový rukavice
Zajímavý PC a PC-like HW - diskuse ("Zajímavého HW není nikdy dost") [EXOTHW]
Tomáš „Jethro“ Pokorný

Mnoho z nás provozuje různé služby na různých více čí méně PC podobných zařízeních. Někdo má nabušené rackové servery, někdo malé ARMové desky, někdo vyřazené small-factor PC z korporátu. Pojďme si navzájem ukázat, kdo co a proč používá, pobavit se o výhodách a nevýhodách a navzájem si nasdílet tipy na hardware, který bychom chtěli a ještě o tom nevíme. Spíš by to měla být diskuse než přednáška, ačkoliv samozřejmě budu mít různé kousky k představení.

Zephyr - pokorčilý RTOS pro mikrokontroléry ("Zbastlete za odpoledne firmware, co jste předtím měsíc plánovali udělat od základu pořádně.") [ZEPHYR]
Tomáš „Jethro“ Pokorný

Stejně jako na desktopu máte linuxový kernel, co vám poskytne vlákna, drivery, filesystém, síť a další, existují podobné operační systémy i pro mikrokontroléry. Představíme si Zephyr, který vám umožní se při psaní firmwaru pro svůj oblíbený mikrokontrolér soustředit na aplikační logiku a nevěnovat zbytečeně čas psaní driverů na zařízení, na která už je psalo mnoho lidí před vámi. Jak si snadno a rychle zprovoznit ethernet, USB či ovládání LED pomocí PWM a jak to celé ladit a hledat chyby.

Předpoklady: Přednáška předpokládá, že posluchači někdy pracovali s Arduinem / nebo nějakým mikrokontrolérem.

Web a internet

Praktický úvod do Jekyllu [JEKYLL]
Honza Černý

Chtěl sis někdy vytvořit vlastní webovou stránku, ale ručně psát HTML a CSS tě otravuje? Zajímalo by tě, jak z Markdownu generovat pěkně vypadající, databázemi a jinou havětí nezatížené webové stránky? Ukážeme si, jak si pomocí Jekyllu vytvořit, spravovat a v neposlední řadě také publikovat webovou stránku.

Soukromí a bezpečnost na webu (a internetu) ("A kdy mi teda dorazí ty sušenky?") [WEBPRIV]
Standa Lukeš

Jak funguje web z pohledu soukromí uživatelů, a co dělat pro zlepšení své situace. Použití webové aplikace je dnes sice typicky nejlepší možnost jak používat nějakou nepříliš důvěryhodnou službu, ale je dobré vědět co na vás existuje za nástrahy. A jak se proti nim efektivně, ale rozumně pohodlně bránit. Samozřejmě není moc soukromí když se vám někdo dostane do emailu, takže si projdem nějaké bezpečnostní tipy.

Vnitřnosti elektronické pošty ("Pojďte pane, budeme si psát.") [EMAIL]
Vojta Káně

Email je ještě starší než IPv4. Je tak postavený z velmi jednoduchých komponent, které bohužel dohromady tvoří často nekontrolovatelnou mnohokrkou hydru s ostrými drápy, totiž zpětnou kompatibilitou. Pojďme společně nahlédnout pod pokličku do změti protokolů a norem, které řídí tento federovaný komunikátor. Zahlédneme protokoly SMTP/Submission, IMAP, prozkoumáme obálky a hlavičky a podíváme se i na bezpečnost v podobě DKIM, SPF, DMARC, DANE, MSTS a lehce snad i end-to-end šifrování v podobě PGP.

Webové mapy ("Země je perfektní jednotkový čtverec, že ano?") [WEBMAP]
Kuba Pelc

Webové mapy - takřka všudypřítomné a velmi užitečné. Jak ale fungují? No a co teprve, když chceme mapy vektorové? A co když chceme zobrazovat Zemi jako kouli? A zároveň vektorově? Zdánlivě jednoduchá věc jako mapa totiž dokáže skrývat mnoho zajímavých technických detailů. Nahlédneme pod pokličku knihoven Leaflet a především MapLibre, které nedávno získalo podporu vektorového glóbu. Možná jsem v tom měl prsty...

Počítačové sítě

Chatovací protokol Matrix [MATRIX]
Martin „Medvěd“ Mareš

Matrix je moderní chatovací protokol navržený tak, že každý si může provozovat svůj server, který se domluví se všemi ostatními servery. Pojďme nahlédnout, jak taková věci uvnitř funguje. Synchronizace stavových grafů a spousta zajímavé kryptografie. Zkušenosti (dobré i špatné) z provozování vlastních serverů.

Jak se (ne)zbavovat IPv4 ("Já chci své čtyři triliardy adres!") [TALK64]
LEdoian

Třicáté výročí vydání prvního standardu IPv6 oslavíme tím, že si řekneme, jak se staré, čtvrté, verze protokolu zbavovat. Povíme si o běžných přechodových mechanismech (jako je DS-Lite a NAT64), méně běžných přechodových mechanismech (jako je IPv6 frontend), a postupně se budeme nořit do různých dalších míst, kde se aktuálně IPv4 používá (kupř. Audacity 😱). Taky ukážu, jak zběsile mám nastavenou domácí síť a co mě k tomu vedlo. Bude se hodit znát co je to IP adresa (libovolné verze větší nebo rovné čtyřem), zbytek naznačím.

Předpoklady: NETBUILD
Netplan - jak nastavit síť v Debian-based systémech ("O jeden způsob, jak si rozbít síť, víc") [NETPLAN]
Tomáš „Jethro“ Pokorný

V Ubuntu již dlouho, v Debianu o něco méně se k nastavení sítě používá Netplan. Ukážeme si, jak si v něm nastavit síť, co to přináší za výhody a nevýhody a jaké s ním máme praktické zkušenosti.

Sbíráme data v odlehlých končinách ("Sbíráme studené, vlhké a slabě radioaktivní metriky") [FARDATA]
Tomáš „Jethro“ Pokorný

Mějme zajímavý pramen uprostřed lesa. Jak zařídit, abyste mohli sledovat jeho parametry, aniž byste k němu museli každý den chodit, jak data ukládat, jak systém napájet a jak mít (semi-)online přehled, co se u něj děje.

Stavíme síť, zn. soudobě a prakticky ("Proč by na LAN party nestačil jen switch?") [NETBUILD]
LEdoian

Přímo na přednášce si nakonfigurujeme router tak, jak by mohl být nakonfigurovaný doma nebo na malé LAN party. U toho si vysvětlíme, co všechno se v síti děje a případně i jak to debugovat. Jako bonus zkusíme za celou přednášku nenapsat jedinou IPv4 adresu – všechno zvládneme jen na IPv6.

Předpoklady: Není potřeba o sítích vědět nic předem.

Databáze

Sloupcové databáze [ARROW]
Standa Lukeš

Stalo se moderním ukládat tabulky dat po sloupcích místo po řádcích. Dozvíte se, co to má za výhody, s jakými nástroji se toho dá snadno využít, a něco o fungování formátů Arrow a Parquet.

Prezentace projektů

Maturujeme z češtiny, ač vyučující je sysadmin ("Že venku padají trakaře? A to má být důvod to psaní slohovek přerušit?") [MATUR]
Vojta Káně, David „Dejwut“ Pacák, Honza Černohorský

Byli jsme požádáni naší bývalou střední školou, na které v současnosti děláme (nejen) IT správce, abychom zařídili prostředí pro psaní maturitních slohových prací na počítačích. To nezní jako běžný pracovní úkol, to zní jako výzva! Sepsali jsme si, jaká vlastně máme očekávání a pustili se do práce. Vznikl Linuxový image na míru, který se nahraje po síti a spousta drobných skriptů, která celý kolos drží pohromadě. Došlo i na vlastní fork jednoho textového editoru, aby více odpovídal našim potřebám. Pojďme se společně podívat, co a jak jsme postavili a jaké kompromisy jsme při tom akceptovali.

Přispíváme do OpenStreetMap ("Co si do OSMu poznamenáš, ve stáří jako když najdeš.") [OSM]
Vojta Káně

Na této praktické přednášce se podíváme, jak přispívat do komunitních map OpenStreetMaps. Není cílem poznat vše a v plných detailech, koneckonců KSP o tom kdysi psalo seriál. My se spolu podíváme na konkrétní mapové editory, prozkoumáme nějaké konkrétní objekty a rozebereme sémantiku jejich atributů. Cílem je, abyste hned po přednášce mohli vzít do ruky mobil a ještě v průběhu Smršti zakreslili relevantní úpravy do mapy. Nikdy nevíte, kdy do té restaurace budete znovu chtít zajít a budete hledat otvíračku.

Technikálie Alertu ("Rapidly declining sanity of Víkendovka orgs, as expressed through commit messages") [ALERT]
Standa Lukeš & Kuba Pelc

Byla jednou jedna překomplikovaná hra jménem Alert. Tedy, překomplikovaná je slabé slovo. Po třech iteracích této hry jsme naakumulovali spoustu prokletých herních mechanik a ještě prokletějších technologii. Na této přednášce se podělíme o vnitřnosti Alertu a o ty „nejzábavnější“ příběhy z jeho implementace. Aspoň už ta věc není naprogramovaná v Nixu.

Matematika

Buněčné automaty a Game of Life ("Čtverečkovaný svět, co není Minecraft") [LIFE]
Martin „Medvěd“ Mareš

Game of Life je dvojrozměrný svět, ve kterém se buňky vyvíjí podle průzračně jednoduchých pravidel. Už desítky let v tomto světě objevujeme další a další zajímavé jevy. Tak do něj také nahlédneme, prozkoumáme souvislosti s evoluční biologií i s algoritmy. Též uvidíme, jak Život zapadá do obecnějšího světa buněčných automatů.

Základy diskrétní matematiky aneb šatnářkou za 90 minut ("Do divadla raději bez klobouku?") [WHOSEHAT]
LEdoian

Na přednášce vybudujeme úplné základy diskrétní matematiky. Jak se počítají funkce mezi konečnými množinami, kolik má množina podmnožin, kolika způsoby mohou být zamíchané karty, a celkově jak se „matfyzácky“ zachází s matematikou. Nakonec budeme umět zodpovědět otázku známou jako „problém šatnářky“: n lidí si odložilo v šatně klobouky, ale ty se pomíchaly. Jaká je pak šance, že všichni dostanou cizí klobouk?

Fyzika

Attosekundová fyzika ("Moje kamera je moc pomalá, co ta tvoje?") [AS]
Mikuláš Fiala

Proč bychom chtěli měřit takhle rychle? A jak to uděláme, když světlo stěží stihne za tuto dobu urazit stejně daleko, jako je průměr atomu? A co už jsme naměřili? To vše se dozvíte na této přednášce. Projdeme si generaci ultrarychlých laserových pulzů, interakci světla s elektrony a proč se za posledních 20 let rozdaly 3 Nobelovy ceny v této oblasti. Znalost optiky ani kvantové fyziky není nutná.

Brýle ("CZJWINOSTAWCZ? I know this guy!") [BRYLE]
Jenda Hrach

Jak fungují refrakční vady oka (tj. takové ty klasické problémy, které má spousta mladých lidí „od počítačů“), jak se měří a jak se řeší. Přednáška je z části teoretická a vysvětlující a z části slouží jako návod co dělat, když takovou vadu máte, a popisuje tipy z praxe - jak v českém kontextu fungují různí lékaři, vyšetření, proces získá ní brýlí atd. Na závěr se dotkneme dvou témat, která budí překvapivě silné emoce, a to jestli byste měli mít speciální brýle na počítač, a jestli je dobrý nápad objednáva t brýle po internetu.

Transistory uvnitř integrovaných obvodů ("Podíváme se pod pokličku!") [TRANSIST]
Mikuláš Fiala

Moderní procesory můžou mít triliony tranzistorů. To je nepochopitelně mnoho, zkusme se tedy podívat na obvod, který jich má jen 26. Na přednášce si povíme, co je to tranzistor, základní kombinace jako je proudové zrcadlo a nakonec se podíváme na reálné využití v čipu časovač 555.

Předpoklady: Potřeba jen znalost, co je to napětí a proud.

Biologie

Evoluce bez algoritmů [EVOB]
Standa Lukeš

O tom jak funguje evoluce IRL - jakým způsobem život nevznikl "náhodou". A jak nám znalost těchto principů umožňuje dělat "reverzní inženýrství" živých věcí.

Sekvenování DNA a analýza dat [DNASEQ]
Standa Lukeš

Představení jak se analyzují data z DNA/RNA sekvenování a jaké jsou na to potřeba algoritmy. Jednak není úplně samozřejmost rekonstruovat "písmenka" z původních molekul a druhak je pak otázka jak z gigabajtu písmenek vykoukat něco užitečného.

Umělá inteligence

AI asistenti pro vývoj software ("20 hodin ladění vám může ušetřit hodinu programování") [CHATGPT]
Jenda Hrach

Spousta lidí copypastuje z webového chatu a mně to přijde škoda, protože existují i jiné a potenciálně efektivnější způsoby. Představíme si jednotlivé přístupy a nástroje, které lze použít pro pomoc s vývojem softwaru: různé druhy chatování a agentické programování. Ukážeme si též, jak s takový mi věcmi začít a jaké implementace a služby jsou k dispozici.

Měřit čitelnost textů a jak na tom je česká byrokracie [PONK]
Honza Černý

Projekt PONK je projekt vedený na ÚFALu, který se zabývá vývojem nástrojů pro analýzu čitelnosti textů. Tyto nástroje mají pomoci najít nečitelné texty v české byrokracii a zlepšit jejich čitelnost. Na přednášce si ukážeme metody, které byly pro PONK vyvinuty, a vysvětlíme, jak fungují. Dozvíte se také jak vypadá vývoj lingvistických nástrojů a kde si je můžete vyzkoušet.

Vyhodnocování umělé inteligence ("can you melt eggs?") [AIBENCH]
Jenda Hrach

Představíme si způsoby, kterými se vyhodnocuje kvalita a vývoj současných jazykových modelů (LLM), AI asistentů a obdobných technologií. Ukážeme různé úlohy, kterými se lidé snaží zjistit, jak moc jsou jejich programy skutečně inteligentní - a co si vlastně pod inteligencí představují. Letem světem od Turingova testu přes Winogradovy dvojice po SWE-Bench a ARC-AGI.

Lingvistika

Jak si pořídit vlastní jazyk ("Minao remabi malelio koribeto.") [CONLANG]
Martin „Medvěd“ Mareš

Hodí se vám, aby postavy ve vaší hře nebo povídce mluvily neznámým jazykem? Tak si vymyslete vlastní! Ale jak na to? Jak se vytváří různé vrstvy jazyka: slovní zásoba, morfologie, gramatika, frazeologie, ale i písmo a výslovnost. Proč si pořídit imaginární uživatele a imaginární historii. Jak najít správnou míru nepravidelnosti. Čím se můžeme inspirovat z existujících jazyků a čím raději nechceme.

Quo vadis, češtino? ("Muž žena skopce dokopce si píská.") [CZLANG]
Martin „Medvěd“ Mareš

Češtinou mluvíme, píšeme, učíme se o ní. Jak moc ji ale známe? Kde se čeština vzala a jak souvisí s ostatními evropskými jazyky. Co jsme během staletí získali, o co jsme přišli a o co nejspíš brzy přijdeme. A je to škoda? Vykrádáme cizí jazyky a ony zase nás. Kolik je češtin a která je ta správná? Proč už Jan Hus spílal Pražanům? Pojďme navrhnout vlastní pravopisnou reformu.

Umění a hudba

Demoscéna - galerie programátorského umění ("I've seen things you people wouldn't believe.") [DEMOSCENE]
Kuba Pelc

Když se počítače poprvé staly dostupné pro běžné smrtelníky, nic moc ještě neuměly. Ale měly k sobě přibalený manuál od nějakého programovacího jazyka. A tak lidi začali programovat. A začali si hrát. Psali malé hry, ale také prográmky, které kreslily něco hezkého jen tak. Takzvané „intra“ nebo „dema“. A pak se začali předhánět a soutěžit v tom, kdo udělá lepší, hezčí, technicky propracovanější demo. Někdy s limitem na velikost 64 kb, někdy 4 kb, někdy bez limitu. A tak se v průběhu desetiletí vyvinula demoscéna. Pojďme se podívat na ty nejhustější dema!

Industrial: Studené umění pro horkokrevné lidi [INDUST]
Honza Černý

Tato přednáška je ohlédnutím za skoro zapomenutým, ale velmi významným uměleckým směrem. Budeme se zaměřovat především, ale nejen na hudební projekty. Půjdeme chronologicky od historických kořenů až po současnost a cestou navštívíme řadu subkultur a projektů, o nichž jste pravděpodobně ani neslyšeli. Každý, kdo má odvahu vydat se do mechanického a chladného světa industrialu, je srdečně zván.

Typografie ("What You See Is all What You've Got!?") [TYPO]
Martin „Medvěd“ Mareš

Jak na počítači text nejen napsat, ale také vysázet tak, aby pěkně vypadal a aby (což je důležitější) se i příjemně četl. Jak se sází pohádka, jak báseň a jak knížka o algoritmech plná komplikovaných vzorců. Jak jde dohromady staleté umění typografické a moderní technika. Přineste knihy i letáky, zkritizujeme sazeče, co se do nich vejde.

Dopravní prostředky

ETCS aneb proč světelné návěstidlo nestačí ("Nemůžeš projet červenou, když tam chybí semafor.") [ETCS]
LEdoian

V letošní vláčkové přednášce ukážu jen několik mimořádností, které se všechny vyznačují tím, že z nějaké míry je způsobila nedostatečnost informace svítící na semaforu. Následně si řekneme, jakým způsobem tohle řeší bájné ETCS, co si všechno vlak a „zem“ navzájem říká, a co se na modernějším přístupu všechno může rozbít. Pár slov bude i o českých specialitách jako je ETCS STOP a PZV.

Předpoklady: Nebude potřeba rozumět aktuálnímu zabezpečení, všechno aspoň stručně vysvětlím.
Jak se pilotují dopravní letadla ("Na dráze, kterou nevidíš, přistát... můžeš?") [PLANE]
David „Dejwut“ Pacák

Proč jsou piloti dva? A proč dříve byli tři? Co to znamená létat a přistávat podle přístrojů? A jak se to vůbec dělá? Proč mají letadla klapky a co že to vůbec je? V přednášce si ukážeme, jak se pilotují dopravní letadla, co se děje při přistání a při vzletu, jak vypadají mapy, které piloti musí číst, jak fungují hlavní systémy velkého dopravního letadla, jak vypadá kokpit letadla, jaké jsou hlavní rozdíly mezi Boeingy a Airbusy, jaké veličiny se sledují při letu a proč se letadla už ve vzduchu tolik nesráží. Samozřejmě také odpovíme na výše uvedené otázky a mnoho dalšího.

Předpoklady: Tušení, že existuje aerodynamický vztlak
Letecké nehody a jiné neduhy letectví ("If it's a Boeing, I ain't going!") [PLANEFAIL]
David „Dejwut“ Pacák

Přednáška nabídne pohled na průběh a příčiny několika zajímavých leteckých nehod a další události, které nějakým způsobem významně ovlivnily leteckou dopravu. Těšit se můžete třeba na prakticky funkční a letící letadlo, které je ale kompletně bez elektrického proudu, objasnění motta přednášky, kluzák, který kluzákem nikdy být neměl a podivné věci, které s letadly dělají v USA.

Letecké simulátory ("...tak tohle se mi domů fakt nevejde...") [PLANESIM]
David „Dejwut“ Pacák

Letecké simulátory dnes umí v kombinaci se správným hardwarem nabídnout poměrně důvěryhodný zážitek z pilotování letadel a oblíbený simulátor přednášejícího (X-Plane 12) nedávno dostal poměrně velkou aktualizaci, díky které nabízí relativně věrně simulovanou oblačnost a funkcionalitu palubních meteorologických radarů. Přednáška nabídne porovnání dnes dostupných leteckých simulátorů, krátké představení různých druhů hardwaru, které si k nim lze pořídit. Přednášející trochu takového hardwaru přiveze a samozřejmostí bude možnost si s něčím v X-Plane 12 v rámci časových možností zalétat.

Tarify na železnici a poblíž ("Proč to teď stojí 209, když minule to bylo jen 164?") [TARIF]
Jirka Kalvoda

Povíme si, jak se utváří cena jízdenek, zejména na dálkových trasách vlaků napříč ČR. Jak jsou na tom v dnešní době jednotlivé kraje, aneb tarif desetkrát jinak. Jakým způsobem se dá ušetřit na jízdence či vygenerovat volné místo v již plně obsazeném vlaku. Proč je občas lepší si koupit dvě samostatné jízdenky a někdy zase ne. Jaké práva má cestující, když se někde něco rozbije a vypadá to, že do cílové stanice se buď nedostaneme vůbec nebo jen později či méně komfortně.

Předpoklady: Nadšení cestovat
Železnice a kolejová doprava ("Vlak bude opožděn z důvodu ztráty lopatky na uhlí.") [RAIL]
Katia „Čiči“ Kočická & LEdoian

Cestování po železnici už dlouho patří do života mnoha z nás. Kolik o ní ale víme? Trocha historie, zajímavosti z předpisů, pár pohledů za hranice. Jak se staví trať, jak vlak a jak to všechno, když už to je hotové, skloubit do fungujícího systému. Čím se zajišťuje bezpečnost (a jak může z pohledu systému vlak prostě odletět) a k čemu jsou (zatím) všechna ta návěstidla u tratí.

Cestování

Zážitky z cest ("Říkáte, že poslední vlak už odjel? A nemáte tu alespoň nějaký útulný parčík s lavičkami?") [VYLET]
Vojta Káně

Pro jednou odpočinková přednáška, která spíše než předat nějaká fakta, má vyvolat vlastní zájem o cestování a u toho pobavit zážitky, které jsem si za léta odnesl já. Kromě jedné návštěvy Japonska jsem vždy cestoval po Evropské unii, což sice značně limituje intenzitu potenciálních dobrodružství, ale na druhou na druhou stranu se dá bezpečně vyrazit s minimem financí i zkušeností a jak si povíme, ani plnoletost není podmínkou. Tak přijďte a hlavně pak někam vyražte!

Železniční cestování po Evropě ("Doufám, ať ten Německý vlak má zpoždění... Pak budu v cíli dříve.") [INTERRAIL]
Katia „Čiči“ Kočická & Jirka Kalvoda

Povíme si poznatky z cestování Evropskou železnicí na jízenku Interrail. Projdeme si rozdíly železnice mezi jednotlivými státy či kraji, na co si dát pozor nebo naopak čeho využít. Také se naučíme triky, jak kupovat levné místenky. Pokud někde chceme přenocovat, ukážeme, jak spojit ubytování a cestu do jednoho pomocí (nejen) nočních vlaků.

Realita

O času a kalendáři ("Pungenday, 21st day of Aftermath in YOLD 3191") [CAL]
Martin „Medvěd“ Mareš

Lidé se chtějí chtějí orientovat v čase – od starých egyptských kalendářů převídajících rozvodnění Nilu podle východů Siria až po dnešní atomové hodiny s těžko uvěřitelnou přesností. Budeme vyprávět, jak vypadaly různé časomíry a kalendáře od starověkých civilizací přes současnost až k různým fantastickým světům. Proč je October desátý měsíc, a ne osmý? Proč se tak divně střídají délky našich měsíců? Proč jsou hodiny důležité pro mořeplavbu? Kde se vzaly přestupné měsíce, dny, a dokonce sekundy?

Programátoři versus realita ("Jeniffer Null ze Scunthorpe by mohla vyprávět ...") [FALSE]
Martin „Medvěd“ Mareš

Sbírka představ o světě, kterým většina programátorů věří, ale vlastně nejsou pravdivé. Jsou všechny dny stejně dlouhé? A všechny minuty? Kolik znaků má jeden znak? Čím jsou oddělené comma-separated values? Kde ve Zlíně je tř. Tomáše Bati č.p. 202? Kolikrát že? Má každý občan EU příjmení? A jméno? A právě jedno rodné číslo? Kolik zavináčů může obsahovat e-mailová adresa?

Queerness 101 ("Přednáška o písmenkové polévce") [Q]
Katia „Čiči“ Kočická & LEdoian

Queer lidi jsou… hlavně taky lidi. Dva z nich vám přijdou povídat o tom, v čem se naše životy mohou lišit, jak to interaguje s většinovou společností. Být queer vůbec nemusí být o sexu, společnost se však zaměřuje jen na něj, proto jej necháme stranou. Budeme se bavit o tom, jestli představujeme „hrozbu“, jestli máme nějakou „ideologii“ a co vůbec (ne)chceme. Přednáška bude přístupná pro všechny bez rozdílu věku, stačí být otevření novým pohledům na svět.

Zápisky organizátorovy ("Co se (ne)může pokazit, to se pokazí.") [ZORG]
Martin „Medvěd“ Mareš

Medvěd se nachomýtl k organizování nejrůznějších olympiád – od naší matematické až po mezinárodní informatickou. Místy vážné povídání o jejich zákulisí, prokládané spoustou příhod, které jsou tak neuvěřitelné, že se musely stát. Proč je potřeba počkat na půlnoc? Kdo chytí vačici v serverovně? Počítáte s Godzillou?

Odpočinkové aktivity

Rozhovory při svíčkách [ROZHOVOR]
Kuba Pelc

Dopřejeme si čas a prostředí pro hlubší rozhovor. Pohodlně se usadíme a budeme si povídat. Bude prostor pro introspekci a sdílení, porozumnění, perspektivu, emoce...

Předpoklady: Být připraven naslouchat a sdílet
Čaj ("Jak vypadá odvar z nezralých pražců?") [TEA]
Jirka Kalvoda & Martin „Medvěd“ Mareš

Pojďme usednout k šálku lahodného čaje a povídat si o tom, co se v něm skrývá. Kde se čaj vzal, kde se pěstuje, jak se zpracovává a jak ho připravovat. Trocha čajového zeměpisu, dějepisu i čajové chemie a čajové kultury. Též o všelijakých substancích čaji podobných. Bude i praktická ukázka.

Černá hodinka [CERNAHOD]
Kuba Pelc

Věříš v Boha? Nebo něco jiného? Nebo ve vůbec něco? V čem vidíš smysl života? Jak prožíváš duchovno? Každý to má trochu jinak. Pojďme si v bezpečném prostředí nasdílet, jak ho prožívá každý z nás.

Předpoklady: Být připraven naslouchat a sdílet
Rozbalit všechny přednášky