Krutá Smršť Přednášek 2023
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čí v pátek 24. 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ů.
- Matfyzácké přednášky
- Nematfyzácké přednášky
Matfyzácké přednášky
V této kategorii sídlí přednášky týkající se informatiky, případně matematiky či fyziky.
Informatika – Algoritmy a datové struktury
Suffixový strom je zajímavá datová struktura, pomocí níž jde vyřešit většinu řetězcových problémů v lineárním čase. Podíváme se, jak suffixový strom vypadá, k čemu se hodí a jak ho sestrojit. Též prozkoumáme několik příbuzných zvířátek, jako třeba suffixové pole a suffixový automat.
Zapomeňte na pracné vyvažování vyhledávacích stromů. Místo toho zavedeme triviální pravidlo: pokaždé, když pracujeme s nějakým prvkem, vytáhneme ho do kořene stromu. Ukážeme, že toto pravidlo stačí na dosažení logaritmické složitosti, tedy aspoň amortizovaně. Také dokážeme, že Splay strom je nejhůře konstanta-krát horší než libovolný jiný strom, a možná i spousta dalších magických vlastností.
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.
Jak rychle umíte násobit n-ciferná čísla? My to umíme lineárně. Hodí se k tomu chytrý trik pana Fouriera, který už dávno patří k matematické a fyzikální klasice. Ukážeme, co je Fourierova transformace zač, jak ji rychle spočítat a k čemu je dobrá: rychlé násobení polynomů i čísel, digitální zpracování zvuku a obrazu (spektrální analýza či třeba komprese).
Předpoklady: Základy komplexních číselVyvažované stromy jsou úžasná datová struktura, ale většina normálních vyvažovaných stromů je pracné naprogramovat správně. Místo toho si řekneme, že náhoda to za nás vyváží. Sice přijdeme o pěknou worst-case složitost, ale bude se tato datová struktura lehce programovat. Navíc namísto normálních operací na vyhledávacích stromech, tak budeme moct podporovat i intervalové úpravy.
Informatika – Teoretická informatika
Evoluční teorie grafů je mladý obor na pomezí matematické biologie a teoretické informatiky, který studuje jisté náhodné procesy, které modelují, jak se věci šíří po grafech (sítích). Každý vrchol grafu má jednu z typicky dvou barev, které proti sobě "bojují" tak, že náhodné vrcholy náhodně přebarvují své sousedy na svou barvu až dokud jedna barva "nevyhraje". Klíčové otázky jsou určit pravděpodobnost výhry jednotlivých barev a čas, jak dlouho bude souboj průměrně trvat, v závislosti na tom, jak vypadá graf a počáteční obarvení jeho vrcholů. V přednášce si ukážeme některé elegantní výsledky z oboru, jako například Isotermální větu [Nature '05], FPRAS pro pravděpodobnost fixace na neorientovaných grafech [SODA '14] nebo existenci rychlých superamplifikátorů [Nat.Comm '21]. Prerekvizity: alespoň základy teorie grafů (vrchol, hrana, stupeň) a alespoň intuitivní chápání pojmu pravděpodobnost.
Formální verifikace se zabývá ověřováním, že programy opravdu dělají to, co mají. Například když píšete software do vesmírné rakety, nějaký šikovně umístěný bug v navigaci by byl fakt drahý. Taková příležitost vás asi v nejbližší době nečeká, ale ukážeme si alespoň, jak taková verifikace typicky vypadá v kódu, a zkusíme si u nějakých implementací základních algoritmů dokázat jejich správnost.
Jak dokázat, že jsme našli nejrychlejší možný algoritmus na danou úlohu? To je docela těžká otázka, ale aspoň u několika úloh na ni dokážeme najít odpověď. Nutnost přečíst celý vstup (opravdu?). Měříme množství informace: vážení kuliček, hledání, třídění a různost prvků v porovnávacím modelu. Omezená paměť a princip holubníku: závorkování. Komunikační složitost: palindromy na jednopáskových strojích. Nekonstruktivní důkazy existence těžkých problémů.
V rámci této přednášky se budeme zabývat problémy tak těžkými, že nikdo na světě pro ně neumí vymyslet efektivní (rozuměj polynomiální) algoritmus. Spousta lidí dokonce věří, že to vůbec možné není. Abychom mezi tyto problémy pronikli, seznámíme se s pojmy NP-úplnosti a NP-těžkosti. Především si však konkrétní těžké úlohy ukážeme a naučíme se i některé těžké úlohy rozpoznat. Závěrem si řekneme, jak se s těžkými úlohami vypořádat v praxi.
Nadefinujeme trochu netradiční počítač založený na dlaždičkách v koupelně. Prostudujeme, jak se různé druhy dlaždičkových počítačů chovají, a zjistíme, že to docela dobře odpovídá klasické teorii složitostních tříd. Jaké problémy má matematik, jehož koupelna je nekonečně velká?
Nejsou informace jako informace. Něco lze popsat jedním slovem, na něco jiného potřebujeme celé věty. Povíme si o záhadném slovu entropie, jak souvisí s informacemi a co z toho vyplývá pro možností kódování a možné komprese dat. Nahlédneme k limitům toho, kolik bitů potřebujeme k zápisu dat na základě jejích vlastností, a ukážeme si kódování, kterým se můžeme k těmto limitům přiblížit.
Informatika – Programátorské dovednosti
"Startup" je populární forma podnikání v technologickém sektoru.
Programátoři, kteří by si chtěli vydělat nějaké peníze, mohou buď někam jít
dělat programátory, dělat jiným programátory na volné noze, nebo (sami či
v kolektivu) zkusit naprogramovat něco vlastního (a přitom se tím uživit).
Tato přednáška se bude zabývat poslední možností. Zaměříme se zejména na případ,
který pojmenujeme "startup", totiž když výsledný produkt dokáže generovat
alespoň kvadraticky v čase rostoucí finanční příjem.
Vysvětlíme si základní termíny a metriky (SaaS, B2B2C, ARR, ESOP, IPO a tak),
co je to venture capital, a co je třeba v takovém startupu řešit kromě toho tu
věc naprogramovat. Co nejvíce času zkusíme věnovat diskuzi, při nedostatku
otázek se podíváme blíže na příběhy několika (ne)úspěšných startupů.
Přednáška může být užitečná všem, kdo by si v budoucnu chtěli vydělávat
vlastním projektem, nebo by je někdo do nějakého startupu lákal.
Startup spoluvedený přednášejícím nějakým způsobem nasbíral od investorů
v posledních letech přes 100M.
Pokud píšete složitější systém v Pythonu, může se hodit logovat, co právě program dělá, lépe, než pomocí obyčejného printu. Ukážeme si, jak funguje modul logging, k čemu se dá využít a co jsou jeho (z mého pohledu) slabší místa.
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 teď v jazycích objevují.
Často se dostaneme do situace, kdy řešíme NP-úplný problém (sudoku, barvení mapy n barvami) a musíme napsat spoustu stejného (boilerplate) kódu, který vůbec nezávisí na daném problému. Zde přichází na pomoc programování s omezujícimi podmínkami (CSP). Pomůže nám popsat podstatu problému a přitom se nezajímat o to, jak se daný problém bude řešit, ani zbytečnými implementačními detaily. Povíme se o základních technikách, které používají CSP řešiče, a popíšeme nějaký problém v řeči CSP.
Informatika – Technologie a nástroje
Budu povídat o interních detailech fungování LuaJITu. Třeba jak funguje ten slavný interpreter napsaný v assembly, nebo velmi konkrétně, co všechno se musí stát, když se LuaJIT rozhodne něco JITnout. Předpokládám že už víte, jak uvnitř fungují normální interpretry.
LLVM je jeden z nejsofistikovanějších kusů softwaru, který máme. Budu povídat o tom, jak to uvnitř vlastně všechno funguje, když po LLVM chceme optimalizovat nějaký náš code. (LLVM IR, canonicalization, optimalisation pipeline, inlining, loop unrolling, …?). Z přednášky si půjde vzít nějaké konkrétní tipy, jak psát code, který bude LLVM chutnat.
Vyhlídkový výlet světem počítačové grafiky, demonstrovaný
na :hippogod:
- 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.
Přehled toho jak databázové systémy spravují data která jste jim svěřili. Speciálně bude zajímat jakým způsobem lze zajistit transakčnost. Tedy zařídit atomické commity, perzistenci dat a izolaci transakcí.
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.
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.
Jeden z nejrozšířenějších formátů na předávání dokumentů má za sebou spletitou historii i dokumentaci. Ukážeme si, jak vypadá uvnitř a co se do něj dá uložit: grafické objekty, text, fonty, odkazy, všelijaké anotace a meta-data, a dokonce i kryptografické podpisy. Zmíníme se o profilech, třeba PDF/X a PDF/A. Při troše štěstí si vytvoříme jednoduchý PDF soubor ručně a možná půjde i otevřít.
Odložme na chvíli své myše a pojďme si vyzkoušet textový editor, který umí poslouchat na slovo. Pravda, budeme se ta slova muset chvíli učit, ale výsledek bude proklatě efektivní. Základní příkazy, práce s regulárními výrazy, makra, kouzla. Vimovité ovládání jiných programů, třeba webového prohlížeče.
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ů.
Donald E. Knuth napsal TeX před desítkami let proto, že mu nikdo nebyl schopen vysázet matematický text podle jeho požadavků. Od té doby se hojně používá pro sazbu nejrůznějších publikací. V této spíše praktické přednášce si ukážeme použití TeXu od hladké sazby knihy až po zběsilosti hraničící s programováním. Pozornost věnujeme i zdrojům informací a rozdílům mezi různými dialekty TeXu.
Pokročilejší přednáška o TeXu pro ty, kdo ho už nějaký čas používají. Ukážeme si, jak věci v TeXu fungují uvnitř, jak TeX používat jako (asi jeden z nejobskurnějších) a možná i proč byste to neměli dělat.
Připadá ti tvůj systém málo konfigurovatelný? Což takhle vyzkoušet Linux, kde když budeme mít chuť, a přidáte pár probděných nocí plných programování, můžete změnit chování asi tak čehokoliv (zlý jazykové tvrdí, že přípona .c znamená config). Ukážeme si, jak jej začít používat a k čemu to může být dobré.
Na co se mi hodí vlastní server a jak ho provozovat? Co se změní, když můj počítač mi nesedí na nohou ale je někde úplně jinde? Jak ho zabezpečit a jaké věci se na něm hodí provozovat? Budeme si povídat o SSHčku, klíčích, šifrování, systemd, Nginxu, mailech, DNS, Let's Encrypt, zálohování a všem dalším, co nás bude zajímat. Ideálně prakticky na nějaké virtuálce. Zkušenosti s Linuxem a výhodou.
Předpoklady: Základní znalost Linuxu a nebát se terminálu.Dnes jistě koupíme spoustu levných routerů, které mají pochybné webové rozhraní a moc toho neumí. Nezoufejme však, někdy si lze nainstalovat Linuxovou distribuci OpenWRT. Podíváme se, jak se takový systém spravuje, jak na něj instalovat další programy a jak si postavit vlastní balíčky nebo rovnou celý systém.
Jak se balíčkují projekty pro programovací jazyky, linuxové distribuce a další.
Na přednášce popíšu a posdílím pár svých zkušeností s různými méně či více šílenými postupy, jak jsem si přizpůsoboval svoje stroje. Ukážu, jak si sám nastavit síť, jak jsem zakázal aplikacím přístup k D-busu, jak vypnout uživatelskou instanci systemd a proč to nemusí být dobrý nápad. Podle úrovně posluchačů případně popíšu, co jednotlivé zmíněné části běžného desktopu dělají.
Informatika – Sítě a weby
Co se stane s e-mailem, když jej odešlete? Kudy chodí a kudy jej čerti nesou? Jaké máte záruky, že přijde; proč občas přijde pozdě nebo vůbec. Problém formátů, kódování a příloh. Protokoly SMTP, POP, IMAP a co se stane, když do nich přimícháme SSL/TLS. E-mailová bezpečnost, SPAM a (nefunkční?) obrana pomocí SPF, DKIM a DMARC.
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.
Popíšu hlavní rozdíly a nové přístupy protokolu IPv6, trochu se dotknu vývoje a změn v IPv6 od počátečních představ; ve druhé části přednášky bych naznačil, jak moc je protokol aktuálně rozšířený a použitelný.
Ne zas tak stručné povídání o tom, jak se routují packety – podíváme se kus pod pokličku protokolům OSPF, RIP a BGP a podíváme se, jaké informace si skutečně vyměňují.
Většina webu internetu je dnes založena na protokolu HTTP, pojďme se podívat, jak funguje a v čem je tak úžasný. K čemu jsou různé metody a hlavně všechny ty hlavičky (eh, všechny asi ne). Jak fungují různé cache a proxy. Něco málo o WebSocketu, TLS, HTTPS a HTTP/2.0.
Informatika – Hardware
Dnešní mikrokontroléry mají spoustu výkonu, a spoustu periferií, které umí fungovat s poměrně velkou mírou autonomie. Ukážeme si, co je to RTOS (realtime operační systém) a jak si s jeho pomocí zjednodušit práci. Pracovat budeme s FreeRTOSem, který je používán například v ESP-IDF a jedná se o jeden z nejjednodušších RTOS. Přednáška předpokládá, že posluchači někdy pracovali s Arduinem / ekvivalentem.
Dnešní mikrokontroléry už běžně umí (semi-)autonomní zápis na sériový port a mají dobrou podporu pro ladění v běžných nástrojích. Ukážeme si, jak si zjednodušit ladění a na co si dát pozor.
Co dělat, když máte v ruce kus HW, který si s vámi nechce povídat? Co je to logický analyzér a jak se používá? V říjnu jsem se tohle musel naučit během Evropské soutěže v Kyberbezpečnosti a možná to naučím i vás. Na HW úloze, kterou jsem tehdy řešil, se podíváme jak přečíst paměť, do které nemáme přístup, spustit nedosažitelný kód nebo přečíst ze stejné paměti dvakrát různou hodnotu. Po cestě si povíme, co je to I2C, EEPROM, jak vypadají paměti mikrokontrolerů a ukážeme si, jak zneužít toho, že RAMky nejsou tak prchavé, jak si myslíme nebo že se v digitálním světě jedniček a nul může vyskytnout půlka.
Srdcem mnoha dnešních technických hraček je mikrokontrolér. To je čip, na kterém je integrovaný nejen procesor, ale i paměť a spousta zajímavých periferií. Ukážeme si, jak se mikrokontroléry programují, jaké periferie typicky obsahují a jak je používat ke komunikaci s okolním světem. Něco si vyzkoušíme i prakticky na STM32.
Předpoklady: Hodí se základní znalost jazyka C.Ž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í tři 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.
Informatika – Další aplikace informatiky
S jízdními řády veřejné dopravy se dá dělat mnohé, hlavně je ale používají k orientaci cestující. V této přednášce se zaměřím na to, kde potřebný dataset získat, jak ho předzpracovat a pak na rychlé algoritmy používané pro vyhledávání optimálních spojů (včetně zamyšlení nad definicí této optimality).
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.
Pokročilejší a občas nečekané aplikace základních kryptografických primitiv. Jak přesvědčit server, že známe heslo, aniž bychom mu ho posílali? Jak zajistit, aby útočník nemohl dešifrovat komunikaci, ani když dodatečně získá soukromý klíč? Jak funguje BitCoin (decentralizovaná digitální měna) či Tor (protokol znemožňující komukoli po cestě vědět, kdo s kým komunikuje)?
Předpoklady: Základní povědomí o šifrování a víra v existenci náhodných číselProgramátoři si často myslí, že pro bezpečnou komunikaci stačí vybrat si z knihovny osvědčenou silnou šifru. Jak naivní! Navrhnout bezpečný protokol není maličkost a dá se při tom ledacos zpackat. Replay útoky (jak otevřít auto krabičkou za 30 dolarů), útoky na padding a na blokovou strukturu. Čí že je ten podpis? Jak nepoužívat RSA a jak nehešovat hesla. Jak náhodná jsou vaše čísla? Postranní kanály: časování, spotřeba, záření. K čemu se crackerům hodí termoska s tekutým dusíkem.
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ů.
Čárové kódy dnes potkáváme na každém kroku, ale jak doopravdy fungují? Prozkoumáme klasické jednorozměrné kódy (UPC, EAN, Code39, Code128), jakož i novější dvojrozměrné (QR, Aztec, DataMatrix). Kódovací a dekódovací algoritmy plus trocha matematiky okolo zabezpečení proti chybám. Další počítačem čitelné značky: RFID, bíle křížky na asfaltu, ...
Matematika – Algebra (lineární i jiná)
Ukážeme si, jak zkoumat matematické operace, aniž bychom řešili, jestli se bavíme o sčítání, násobení, nebo třeba skládání geometrických zobrazení. Co jsou grupy, podgrupy, okruhy, tělesa a další zviřátka v algebraickém zvěřinci.
Povídání o teorii čísel, které nás od základů dovede až k RSA – asi nejpoužívanějšímu asymetrickému šifrovacímu algoritmu dnešní doby. Počítání modulo složené číslo a Eulerova věta. Jak RSA funguje, proč funguje a jestli bude ještě fungovat. Generování klíčů, faktorizace kontra testování prvočíselnosti. Časová složitost aritmetiky.
Předpoklady: Vědět, co je dělitelnost a jak funguje modulární aritmetika.Matematika – Jiné
Taky už vás nebaví počítat Fibonacciho čísla postupně ? Nejde to rychleji ? Na této přednášce se pokusím představit arzenál zbraní jménem vytvořující funkce. Ukážeme si souvislost mezi poslopnostmi, řadami a polynomy. Zjistíme, že jsou mnohem příbuznější než se na první pohled může zdát a že společně dokáží velké věci.
Při navrhování algoritmů a počítání jejich složitosti narazíme na celou řádku zajímavých a ne úplně triviálních kombinatorických problémů, a tak se naučíme, jak na ně. Základní triky s faktoriály a kombinačními čísly, sčítání konečných a občas i nekonečných řad, rekurentní rovnice a princip inkluze a exkluze. Možná se také potkáme s Dlouhým, Širokým a poněkud zmatenou šatnářkou.
Historie matematiky je dlážděna trampotami s nekonečnem. Začalo to roztomilým problémem s želvou pana Zénona a vedlo až k poněkud děsivým paradoxům 18. století. V moderní době jsme se proti tomu obrnili teorií množin, na níž je dnes takřka celá matematika postavena. Jak se taková teorie buduje a jak se pomocí ní popisují nekonečné objekty. Množiny a jejich velikosti. Cantorův diagonální trik. Ordinály a houšť kardinálů. Potenciální kontra aktuální nekonečno. Jak si pořídit přirozená čísla a jak ta reálná. Potíže s axiomem výběru.
Pokud budeme v životě věřit všemu, co je „přeci zřejmé“, dostaneme se brzy do potíží a v matematice to platí dvojnásob. Přírodní vědy si vymyslely opakovatelné pokusy a matematici axiomatický přístup. Ukážeme, jak z jednoduché sady axiomů vybudovat takřka celou matematiku. Dokonce tak, že správnost důkazů za nás ověří počítač, aspoň když mu trochu pomůžeme. Nadšení trochu ochladí Gödelova věta: ať děláme, co děláme, vždy zbude nějaké nerozhodnutelné tvrzení. Pomůže přidávat axiomy? Asi ne, ale za odměnu získáme mnoho různých matematik. A dá-li bůh, stihneme dokázat jeho existenci i neexistenci :–).
Možná vás už také zarazilo, že některé fraktály nejsou ani dvourozměrné, ani třírozměrné, ale něco mezi tím. Pojďme se podívat, co to znamená. Cestou potkáme různé zajímavé partie matematiky (jako třeba metrické prostory a teorii míry) a různá podivuhodná zvířátka: Cantorovo diskontinuum, von Kochovu vločku a Hilbertovu křivku.
Kolik existuje binárních stromů? Kolika způsoby jde uzávorkovat výraz? A kolika způsoby projít čtvercovou mřížku, aniž bychom překročili úhlopříčku? Kam oko pohlédne, všude se skrývají Catalanova čísla. Kromě případů, kdy za ně zaskakují čísla Fibonacciho. Povídání o dvou zajímavých posloupnostech a jejich početném příbuzenstvu. Dlouhá cesta od hezkého vzorečku k rychlému algoritmu.
Fyzika
Jak studenstký tým z ČVUTu posouvá hranice civilní raketové vědy. Raketa Illustria měřící přes 3,5 metru představuje výsledek dvouletého vývoje laboratoře CTU Space Research. Jedná se o doposud největší raketu svého druhu vyrobenou v Česku. Rozebereme si její vývoj a testování. Jak probíhala soutěž v Portugalsku a kdy máme první start? Je složité raketu ovládat? Dozvíte se i jakou roli hrají LEGO kostky a rajský plyn.
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 co jsem musel zjistit tou těžkou cestou (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ávat brýle po internetu.
GPS je vstutku magická technologie, a ačkoli se to nezdá, využívá jedny z nejdůležitějších výsledků moderní vědy. Vysvětlíme si, na jakém pricipu GPS funguje, a proč by to jinak nešlo.
Pojďme si spočítat, kdy zítra vyjde slunce! Očekávejte spoustu úhlů a nedostatek prostorové představivosti. Přednáška bude ráno pokračovat praktickou částí, kdy vyjdeme na kopec a ověříme správnost výsledku.
Pokusíme se odpovědět na otázku, jak by tak mohl vypadat vesmír, kdyby měl jiný počet prostorových dimenzí než naše osvědčené tři. Co by fungovalo a co by se naopak rozbilo? Byl by v takových vesmírech vůbec možný život? Přednáška předpokládá základní znalosti středoškolské fyziky a matiky a jistou dávku otevřenosti vůči konceptům, které jsou doslova z jiného světa.
Operační systémy
Internetovými diskutujícími nenáviděný soubor init systému a přidružených démonků je nejrozšířenějším svého druhu. Je vůbec možné, aby většina běžných distribucí používala něco tak pekelného? Na přednášce se vás pokusím přesvědčit, že SystemD je vlastně docela milý a zejména velmi mocný kamarád, který za nás umí oddřít spoustu těžké práce, i pokud nejsme admini serveru, ale jen běžní uživatelé Linuxových notebooků. Krom tlachání si spolu rovnou nějakou službu napíšeme a pokud zbyde čas, zkusíme postavit co nejmenší bootovatelný systém se SystemD jako initem.
Na minulé smršti jsem sliboval ukázat svéráznou Linuxovou distribuci NixOS, leč nakonec přednáška pokryla jen funkcionální jazyk Nix a jak pomocí něj popsat návod na sestavení balíčku. V této přednášce bych rád rest zahladil a ukázal, jak spravovat celou konfiguraci svého systému v Nixu. Znáte ten závan čerstvého vzduchu, když přejdete na nový osobní notebook a teď postupně instalujete a konfigurujete a přemýšlíte, co případně tentokrát udělat jinak? Já ne, naklonuju si svůj repozitář s konfigurací, zavolám nixos-install a za 15 minut mám stroj k nerozeznání od původního.
Když se zatvrzelý Linuxák vydá na druhou stranu barikády, je to tvrdé, ale ne nepřínosné. V koláži vlastních zkušeností ukážu, kde se dá u Redmondu inspirovat a kde raději ne. Podíváme se na Active Direcory i její reimplementaci v podobě Samby. A podumáme, jak nesmiřitelné světy zkřížit pro náš maximální prospěch za cenu ztráty politických bodů na obou stranách.
Umělá inteligence
Pro mnohé programátory může být překvapením, že pro úspěšné využití jejich
práce v praxi (zejména neprogramátory) často nestačí pouze funkční implementace
nějakého algoritmu. Je třeba udělat krok od "technologie" k "produktu".
Úskalí s tím spojená si ukážeme na příkladu startupu Rossum, který vznikl jako
řešení konkrétního problému řady firem (hledání údajů v dokumentech) deep
learningem - a pak byl konfrontován se všemi zákaznickymi požadavky (když se
tedy povedlo najít první zákazníky).
Zamyslíme se nad tím, jaké druhy problémů vůbec má smysl řešit. Jak zjistit,
jak má vypadat správné řešení vybraného problému nad rámec vhodného algoritmu.
Mrkneme se zběžně na machine learning algoritmy konkrétně používané v Rossumu,
a ukážeme si, čím vším jsme je museli obalit, aby je někdo mohl využívat v
každodenní praxi.
Zastavíme se u problému trénovacích dat a zpětnovazebných smyček v produktu.
Na závěr zkusíme vysvětlit, co ve větších kolektivech dělají "project manažeři",
"product manažeři" a "UX designéři", a proč jsou firmy často za software ochotny
platit částky z pohledu nás obyčejných spotřebitelů absurdně znějící.
Desková hra Go je zajímavá z mnoha úhlů. Je to jedna z nejstarších her na
světě, vyniká matematicky svůdnou estetikou, inspirovala kombinatorickou
teorii her a tradičně sloužila jako příklad problému, ve kterém ještě před 10
lety lidská mysl a intuice o řád převyšovala výpočetní sílu počítačů.
Na začátku roku 2014 velká většina výzkumníků počítačového Go předpokládala,
že překonání lidských mistrů je dekády před námi. Na začátku roku 2016 AlphaGo
od DeepMindu porazil nejlepšího goistu světa Lee Sedola.
Krátce vysvětlíme pravidla Go a povíme si, proč bylo Go pro počítače tak těžké
ve srovnání např. s šachy. Popíšeme klíčový herní algoritmus MCTS, od základů
Monte Carlo metody přes exploration-exploitation dilema v optimalizačních
problémech až po aplikaci v minimaxových herních stromech. Pak se podíváme na
to, jakou roli v tom všem hrají hluboké neuronové sítě a v čem spočívá klíčová
myšlenka AlphaGo a AlphaZero.
Na závěr se zamyslíme, jak robustní ta "AI silnější než lidi" doopravdy je,
a jestli nám to něco říká třeba o robustnosti velkých jazykových modelů.
Přednášející je autorem historického Go programu Pachi, který sloužil v Nature
publikacích DeepMindu jako hlavní referenční baseline pro prezentaci výsledků
AlphaGo.
Umělá inteligence se k nám blíží každým dnem. S ní se ale blíží i spousta reálných rizik. Podívejme se společně na reálná nebezpečí, která s umělou inteligencí přicházejí a jestli jim dokážeme zabránit.
Velké jazykové modely (Large language model, LLM) vyvolaly v posledním roce
velkou bouři i mezi laickou veřejností. Jejich využití pro řešení všemožných
úloh je vskutku impozantní. Na jednoduchých příkladech si ukážeme, jak funguje
neuronová síť a jak se učí. Na řešení problému rozpoznávání obrázků (kde se to
lépe ukazuje) si ukážeme základní koncepty a vývoj. Potom už přejdeme k jazykovým
modelům. Představíme si, k čemu to vlastně bylo a je dobré, a ukážeme si několik
vzorových úloh, na kterých se jazykové modely vyhodnocují, jako je například
Winograd schema challenge.
Vysvětlíme si zásadní průlomy, které
postupně vedly od jednoduchých jazykových nástrojů k nejnovějším systémům jako
ChatGPT a GPT-4 - kódování vstupu pomocí word2vec a byte pair encoding, rekurentní
sítě s attention, prompt engineering. Zmíníme si limitace současných LLM a nahlédneme
do budoucnosti, jak se některé z nich možná budou řešit. Na závěr odstoupíme od čistě
technického popisu a zamyslíme se nad vývojem a bezpečností AI.
Nematfyzácké přednášky
Zde najdete přednášky, které už s informatikou, matematikou nebo fyzikou souvisí jen okrajově, ale zato typicky přinášející nějaké netradiční téma.
Lingvistika
Převážně nevážné a mírně nepřed-vídatelné po-vídání o jazyku i jazyce. Základní jazykové rodiny a jejich podobnosti i odlišnosti. Co má společného čínština s angličtinou a co nikoliv. Proč jeden jazyk potřebuje 15 pádů, zatímco jiný se bez nich obejde úplně. Jak se jazyky vyvíjejí a jak se navzájem ovlivňují. Kde se berou jazyková pravidla. Kde se vzalo písmo a proč se mluvený a psaný jazyk tolik liší. Jak se na jazyk dívá matematik a jak se na matematiku dívají lingvisté.
O češtině časů minulých, současných i (potenciálně) budoucích. 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 pravopisnou reformu!
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.
Malá inventura zvuků, které lidé dovedou vytvářet, a jejich použití v komunikaci. Různé způsoby vytváření a modulace zvuku. Kolik různých B dokážete říci? Fonetické kontrasty a co si z nich různé jazyky vybraly. Rázy, polosamohlásky a jiní obyvatelé polosvěta. Přízvuk kontra délka. Asimilace, přehlasování a další „principy líné huby.“ Vše prakticky procvičíme.
Hudba a tanec
Na přednášce nebudeme ani stavět houpačku, ani psát GUI v Javě, nýbrž tančit! Zanoříme se do světa částečně improvizovaných párových tanců, které vznikaly na počátku minulého století během boomu Big Bandu. Věnovat se budeme 6-countové verzi Lindy Hopu, jejím základním figurám a jak o nich během tance komunikovat bez použití slov. Nakonec si můžeme předvést sestavu Shim Sham, která je pokládána za jakousi hymnu stepu.
Dovednosti
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.
Přesně jak to zní, pojďte si zkusit základy pletení! Není třeba předchozí zkušenost (i popletové vítáni!) ani spousta pomůcek nebo materiálu či spletitých postupů, do kterého bychom se jen zamotali, začneme od začátku a dál se přizpůsobíme tomu, jak to komu půjde. Nebojte se, s tímhle workshopem se nespletete!
Religionistika
Od poloviny minulého století přibylo mnoho nových náboženství a duchovních hnutí. Povíme si o jejich historii a dopadu na společnost. Povíme si i o psychologii schovanou za sektami a jak vlastně interně fungují. Povíme si i o charismatizaci a jak ji poznat.
Žijeme v době, kdy můžeme být svědkem velkých změn, a to dokonce i ve vnímání duchovna a životních hodnot. Řekneme si o historickém vývoji náboženského směru „new age“ a jeho aktuální podobě. Cílem přednášky je pochopit vývoj hodnotových systémů a jak ovlivňuje jednotlivce. Přednáška z velké části vychází z pozorování Karla Gustava Junga.
Biologie a medicína
Čistý zub se nezkazí a kdo nečistí, ten pak u zubaře pláče. Bolestí zubů i nad vyluxovanou peněženkou. Jak, čím a proč si čistit zuby, abychom od zubaře mohli odcházet s úsměvem.
Během posledních KSP akcí mě lidé často posílali spát a to mě přimělo přemýšlet nad různými otázkami. Co se mi stane když budu spát moc? Kolik spánku naopak už nepřežiju? Co se děje v těle během spánku? Kdybych chtěla spát přes 20 hodin, jakým zvířetem bych měla být? Budeme se primárně zabývat spánkem, ale je možné že se při průzkumu mozku dostaneme i k nějakým jiným zajímavostem. :)
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í.
Úvod do sveta toxikológie. Chemická cesta exogénnych látok v ľudskom tele. Od otrávených šípov až po najťažšie vystopovateľné proteinové jedy.
Jiné aneb co vám chci ukázat
Jednou ročně se sejde pár stovek šílenců, aby běhali po lese, snažili se neztratit, a během toho všeho řešili problém obchodního cestujícího dotažený do extrému. Tak nějak vypadá SMIK. Představíme si jeho princip, prohlédneme mapy z proběhlých závodů a zkusíme na nich najít nejlepší cestu.
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.
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 všechna ta návěstidla u tratí.
Technicky zajímavá železniční neštěstí: Ani železnici se občas nevyhnou nehody. Na přednášce projdeme pár těch, jejichž příčina je technicky zajímavá a případně jak jsme se z takových nehod pokusili poučit. Věděli jste, že vlak může uletět?
Je člověk od přírody sobecké bezohledné zvíře, které myslí jen samo na sebe a jediné, co ho drží od bratrovraždy je společnost a její pravidla dodržována výhružkou trestu? Nebo vlastně každý miluje každého a těch pár projevů nenávisti je jen výsledek nekvalitního spánku pár rozmrzelých nešťastníků? Ponořte se s námi do spletitého světa lidské psychiky a s trochou štěstí se vynoříte o něco moudřejší.
Tradiční rodina - slyšeli jsme to asi všichni, jeden otec, jedna matka, sezdaní, stejného věku, nerozvedení, aspoň dvě děti, a tak dále, muž pracuje a žena v domácnosti, děti se bojí rodičů, ale říkají tomu respekt, a tak dále, a tak dále... Ale bylo to vůbec někdy takhle? Pojďme se podivat na některé (ne)tradiční svazky a rodiny napříč historií, které tento stereotyp asi nikdy neslyšely. Polygamie, harémy, milenci i milenky současně, rozvody a rozchody, levobočci a nesezdané páry, to všechno najdeme v našem malém evropském rybníčku, stačí se rozhlédnout...
Nalijme si čaj a pojďme nahlédnout do soukromí postav, o kterých jste se učili ve škole. Že to bylo jinak? Možná, ale možná taky ne. Troška bulváru a spousta šeptandy.
Pojďme si zahrát hru! Absolvovali jste ve škole už řadu hodin dějepisu, ale máte stále pocit, že ve Karel IV. si mohl dát bramborové placky? Myslíte si, že Masaryk a Lincoln nežili ve stejnou dobu? Nebo máte pocit, že fanoušek Star Wars nemohl stihnout být ve Francii popraven gilotinou? A co Napoleon, mohl si dávat do čaje tři kostky cukru?
Co ovšem dělat, když selže páteřní síť? Jak navrhnout zprávu lidem a civilizacím, které nikdy nepotkáme? A jak poslat instrukce agentovi na druhé straně Lamanšského průlivu? O tom všem si něco málo povíme.
Svět finančního světa se může zprvu zdát velmi složitý, ale většina problematiky tkvý ve všech možných pojmech, které používá. Co je to podílový fond, ETF, forex, akcie, dluhopis i…? Kdo je to broker, bankéř a finanční poradce? Pobavíme se o různých možnestech investování jako je např. penzijní připojištění či robo-advisor. Co je to trading, obchodování na páku a je to opravdu investování?
Zažite live autonómnu senzorickú meridiánovú reakciu! Relaxácia pri čítaní Ludolfovho čísla a.k.a. Pi. Zabudnite na všetky starosti pri počúvaní jednej z najznámejších matematických konštánt.