Zimní semestr posledního ročníku je za mnou

Od Petr Zemek, 2010-01-31

Později než ovbykle, ale přece :). Zkouškové pro mě skončilo, známky mám v informačním systému a tedy, již tradičně, bych chtěl v následujícím příspěvku shrnout, jaké byly mé předměty v zimním semestru a zda se naplnilo mé očekávání ze září 2009.

Předměty

  • FAV - Formální analýza a verifikace (V) - ve zkratce: jeden z nejlepších, nejzajímavějších a nejpoučnějších předmětů tady na FITu. Výborný přednášející (doc. Vojnar), velmi kvalitní slajdy (byl to pro mě šok, když jsem se po FAVu začal připravovat na zkoušky ze zbývajících předmětů) a zajímavá oblast aplikace teoretické informatiky. Kdybych se nevěnoval formálním modelům, tak bych určitě dělal formální verifikaci :). Opravdu, pokud si někdo myslí, že teoretická informatika nemá žádné uplatnění, tak si zapište tento kurz a jedno z nesmírně užitečných uplatnění uvidíte. Ok, už s těmi superlativy přestanu... :)

    V tomto předmětu byl pouze týmový projekt za 30b a zkouška za 70b. Cílem projektu bylo se seznámit s některým nástrojem užívaným ve formální analýze a verifikaci. My jsme si vybrali Spin, což je LTL Model checker zaměřený na verifikaci paralelních systémů (systém je popsán v jazyce Promela). Zkouška byla kombinovaná, čili měla písemnou část a za týden ústní část. Při ústní části došlo k opravení písemky a doplňujících dotazů (takže jste efektivně měli po písemce týden čas se doučit to, co jste na písemce nevěděli).

    Jelikož nic není dokonalé, tak i nějaká negativa. Předmět měl bohužel jen dvě hodiny přednášek týdně, z toho nám pár přednášek odpadlo, které jsme nahrazovali prodloužením přednášek (rekordní délka dvouhodinové přednášky, která normálně trvá 100 minut, byla 150 minut :)). Dvě hodiny je podle mě pro tento předmět málo -- tři hodiny týdně by byly lepší (alespoň by se mohla látka více procvičit). Dále jsem očekával, že zkouška z tohoto předmětu bude brutální, ale nestalo se tak. Poslední věc, která mě ještě napadá, je ta, že je škoda, že jsme se více nezabývali statickou analýzou (pouze 1 přednáška zaměřená na data-flow analýzu).

  • THE - Teorie her (V) - největší překvapení tohoto semestru. Nově otevřený předmět s dr. Hrubým zabývající se matematikou interaktivního rozhodování :). Tato látka mě neskutečně nadchla a předčila mé očekávání. Dr. Hrubý je fajn přednášející, látka i přednášky byly zajímavé a tak mě předmět opravdu bavil.

    V tomto předmětu byl projekt za 40b (já jsem dělal implementaci algoritmu Lemke-Howson pro hledání smíšeného Nashova ekvilibria v nedegenerovaných dvouhráčových hrách v normální formě) a zkouška ze 60b. Za velikou výhodu považuji to, že dr. Hrubý opravoval projekty průběžně a kromě tří standardních termínů zkoušek vyhlašoval i další termíny (takže pokud vám některý z termínů nevyhovoval, tak jste mohli jít na jiný) a byla zde možnost (téměř kdykoliv) přijít na ústní přezkoušení, čehož jsem využil, a měl jsem tak předmět hotový ještě před Vánoci. Zkouška byla poměrně detailní a strávil jsem v jeho kanclu cca 70 minut :).

    Největším problém bych viděl v tom, že předmět má jen dvě hodiny přednášek a látky bylo poměrně hodně (klidně 60 slajdů na jednu přednášku), a tak nezbylo mnoho času na procvičení příkladů. Byl jsem rád (a všem, kteří si tento předmět plánují zapsat bych to doporučil), že jsem shlédnul všechny přednášky Bena Polaka z Yale (Game Theory), které perfektně doplnily spíše matematicky zaměřené přednášky dr. Hrubého (bez nich bych spoustu věcí pořádně nepochopil). Na slajdech se vyskytovalo poměrně velké množství různých překlepů a chyb (když jsem to počítal, tak za semestr jsem upozornil na cca 120 překlepů), ale to bylo dáno množstvím slajdů a tím, že předmět letos běží poprvé -- příští rok už by to mělo být lepší :). Dále bych z předmětu úplně odstranil některé méně důležité části (např. nucleolus), aby zbylo více času na to podstatné. Také by neškodilo uvést více příkladů -- bez nich se to chápe hůře. Poslední poznámka se týče toho, že za předmět jsou jen 4 kredity. Nicméně, jak už asi každému došlo, počet kreditů a náročnost předmětu z pohledu studenta spolu vůbec nesouvisí, ač se někteří vyučující stále snaží tvrdit opak.

  • VYPe - Výstavba překladačů (v angličtině) (V) - tvorba překladačů s prof. Medunou :). To, že prof. Meduna je výborný přednášející, bych asi zmiňovat nemusel, ale i přesto to udělám. Před začátkem semestru jsem si myslel, že anotace předmětu se opravdu změnila a čekají nás nové věci, ale nestalo se tak, a tak je předmět s větší části opakováním věcí z IFJ. Mezi nové věci patří konstrukce SLR tabulky, vyhodnocování výrazů shora dolů, obecná syntaktická analýza založená na Chomského normální formě, a ještě asi pár drobností, což není moc. Alespoň bylo prezentováno několik přednášek z pokročilých témat teorie formálních jazyků, které se přednáší třeba v TIDu. A v neposlední řadě, předmět byl vyučován v angličtině, což byla paráda (víc takových předmětů!). Nic víc mě k tomuto předmětu nenapadá -- snad ještě to, že se mi líbilo, že na poslední přednášce jsme měli možnost prezentovat svoje prezentace (část projektu). Já jsem měl prezentaci na téma "Lookahead k > 1 in LL and LR Translators".
  • GAL - Grafové algoritmy (V) - druhý z nově otevřených předmětů, kde přednášejícím byl dr. Masopust. Jak už název napovídá, v tomto předmětu jsme se zabývali grafy a algoritmy nad těmito strukturami :). Zajímavostí tohoto předmětu byl projekt, který byl týmový (5-6 lidí) a cílem bylo vyřešit 8-12 zadaných příkladů z knížky, na které byl předmět založen, vypracovat o tom zprávu a své řešení odprezentovat. Nic se tedy neprogramovalo.

    Předmět měl mít tři hodiny týdně, ale bylo to tak, že první hodinu byla prezentace řešení projektu jednoho z týmu, druhou hodinu jsme probírali algoritmy a pak jsme šli na oběd. Látku jsme stihli dobrat ještě před poslední přednáškou. Celkově jsme probrali cca 12 algoritmů (BFS, DFS, Kosarajův alg., Kruskalův alg., Bellman-Fordův, Dijkstrův alg., Floyd-Warshallův alg., Ford-Fulkersonova metoda a další), jejich složitosti a náznaky možné implementace, různé koncepty z oblasti grafů (tahy, cesty, kružnice, topologická uspořádání, barvení grafů atd.) a prošli si důkazy korektností těchto algoritmů a důkazy některých skutečností, které z nich plynou.

    Člověk by řekl, že by toho mohlo být víc, ale tak zase na druhou stranu, poměrně dost času zabraly ony důkazy prezentovaných tvrzení a vysvětlení, proč dané algoritmy fungují, což se mně líbilo. Škoda jen, že jsme vynechali některé klasické algoritmy (např. Tarjanův algoritmus)... Dále, co se týče prezentace projektů, tak tam byl problém, že některá zadání či řešení byla poměrně komplexní, a tak se to za hodinu nedalo dostatečně dobře vstřebat. Asi by bylo vhodné si zkusit všechny příklady "vypočítat" (v uvozovkách, protože cílem většiny příkladů bylo vymyslet nějaký algoritmus či dokázat nějaké tvrzení), ale na to bohužel není čas... Co mě dále mrzelo bylo to, že dr. Masopust koncem prosince odešel z FITu, a ani nám nedal vědět. Předmět po něm přebral dr. Křivka.

  • AIS - Analýza a návrh informačních systémů (P) - analýza a návrh (informačních) systémů s doc. Zendulkou. Největší přednost tohoto kurzu bych viděl v tom, že jsem se konečně detailněji seznámil s modelováním pomocí jazyka UML, který jsem doposavad znal jen zběžně a to jen některé typy modelů/diagramů. Zbytek kurzu se zabýval principy analýzy a návrhu systémů, od sběru požadavků, přes návrh architektury, až po implementaci. Přednášky byly zajímavé, ale mnohdy jsem měl pocit, že se přednáší buď naprosto zřejmé věci (např. principy GRASP), nebo věci, jejichž význam zatím nejsem schopen docenit.

    Projekt byl týmový (2-4 lidi) a šlo v něm o to navrhnout a namodelovat informační systém ze zvolené oblasti (my jsme dělali IS pro výstaviště) pomocí UML. Jeho význam vidím v tom, že jsme si procvičili tvorbu určitých UML diagramů. Během semestru jsme měli tři přednášky, které přednášel někdo jiný, než doc. Zendulka. První byla naprosto nezáživná a nudná "přednáška" dr. Květoňové na téma plánování a řízení (100 slajdů plných vaty), druhá byla přednáška mgr. Rychlého na téma servisně orientovaných architektur (věc, kterou asi nejsem schopen docenit) a architektury Java EE, a třetí byla přednáška odborníka z praxe na téma "Enterprise architektury".

    Co mi vadilo, tak bylo to, jak velký důraz se kladl na onu přednášku dr. Květoňové. Jednak otázka z této přednášky tvořila hodnocení 1/3 polosemestrální zkoušky, a jednak ji máme jako okruh ke státnicím. No co se dá dělat... Další výtku bych směřoval na testovou část závěrečné zkoušky (druhá část byla fulltextová za 30b). Jednalo se o 21 otázek, kde byly dvě možnosti a max. jedna odpověď správně. Tedy pokud jste nevěděli odpověď a nezaškrtli nic, bralo se to jako odpověď "žádná z odpovědí není správně", což případně vedlo ke ztrátě 0.2b :). Takže výsledkem bylo, že to, co nevíte, tak to musíte tipnout. Přidejte k tomu to, že obtížnost testových otázek byla opravdu přestřelená, a dostanete zajímavý výsledek :).

  • BIS - Bezpečnost informačních systémů (P) - tento předmět s doc. Hanáčkem by se měl jmenovat "Bezpečnost a kryptologie". Ve skutečnosti se tak dříve jmenoval (resp. místo kryptologie bylo kryptografie, ale kryptologie bude přesnější), ale přejmenovali ho. Opravdu nechápu proč, protože mi přišlo, že třetina přednášek a polovina závěrečné zkoušky se týkala šifrování a dešifrování. Naštěstí tyto přednášky byly zajímavější než ty týkající se samotné bezpečnosti IS.

    První část předmětu se zabývala bezpečností obecně a poté bezpečnostními kritérii, což byla nejnudnější část předmětu (nakonec se to snad vůbec nezkoušelo). Druhá část předmětu se týkala kryptologií. Poslední část bylo několik přednášek jiných lidí, než je doc. Hanáček. První z těchto přednášek (v tomto případě se jednalo o "přednášku") měl jakýsi anonymní doktorand na téma bezpečnost operačních systémů, a bylo to naprosto otřesné (zastaralé a nevěrohodné informace, zmatený obsah atd.). Další "přednáška" byla o bezpečnosti wifi sítí od doktoranda, který se také nepředstavil, ale podle fotky se jednalo o ing. Zadinu. Celou "přednášku" se koukal do monitoru a četl slajdy => další nuda. Pak se to naštěstí zlepšilo a přednášky ing. Drozda (IDS systémy) a dr. Kumpošta (bezp. webových aplikací a databází) byly zajímavé.

    Co se mně dále na kurzu nelíbilo, tak bylo to, že jak na půlsemestrálce, tak na závěrečné zkoušce byla otázka z něčeho, co jsme neprobírali. Když jsem to říkal tomu, kdo písemku připravoval, tak mi bylo řečeno, že doc. Hanáček to schválil... Alespoň, že tu otázku (dle opravujícího) na zkoušce hodnotili všem kladně. Dále mně přišel opravdu zvláštní způsob odevzdávání prvního projektu, který jsme měli opravujícímu posílat přes email. Alespoň, že ten projekt byl zajímavý (cílem bylo získat hesla k zadaným webovým aplikacím užitím SQL injection, využitím zranitelností Wordpressu atp.).

Závěr

Semestr končím s průměrem 1.0 a 1. místem v ročníku oboru ze 130 lidí. Tento semestr byl zajímavý tím, že zde nebyl žádný předmět, který bych vyloženě neměl rád (jako třeba PDS minulý semestr) a na jehož přednášky se netěšil.

Nakonec přidávám pár "nej":

  • Nejlepší přednášející: prof. Meduna (VYPe) a doc. Vojnar (FAV)
  • Nejhorší přednášející: dr. Květoňová (1 "přednáška" v AIS), ing. Zadina a neznámý přednášející bezpečnosti OS (každý jedna "přednáška" v BIS)
  • Nejjednodušší předmět (na zisk A): VYPe
  • Nejobtížnější předmět (na zisk A): AIS a THE
  • Nejjednodušší zkouška: VYPe
  • Nejobtížnější zkouška: AIS
  • Nejzajímavější předmět: FAV
  • Nejméně zajímavý předmět: těžko říct, ale když bych musel něco vybrat, tak asi AIS

Co vy -- jak se vám líbil zimní semestr a předměty v něm?

Obsah tohoto pole je soukromý a nebude veřejně zobrazen.

Filtrované HTML (využíváno)

  • Povolené HTML značky: <a href hreflang> <em> <strong> <cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <table>
  • Zvýraznění syntaxe kódu lze povolit přes následující značky: <code>, <blockcode>, <bash>, <c>, <cpp>, <haskell>, <html>, <java>, <javascript>, <latex>, <perl>, <php>, <python>, <ruby>, <rust>, <sql>, <text>, <vim>, <xml>, <yaml>.
  • Řádky a odstavce se zalomí automaticky.
  • Webové a e-mailové adresy jsou automaticky převedeny na odkazy.
CAPTCHA
5 + 2 =
Vyřešte tento jednoduchý matematický příklad a vložte výsledek. Např. pro 1+3 vložte 4.
Nějak se mi tady rozmohl spam, takže poprosím o ověření.

Jsem sice zatim ve tretaku na bakalarovi, ale vzdycky si rad prectu, co me pripadne ceka:) Sam take pisu podobne hodnotici clanky. Kazdopadne obdivuju Tvuj zajem v teoretickych predmetech. Mne sice IFJ bavilo, ale radeji mam prakticteji zamerene predmety... No uvidime jak se poperu s TINem:-D Z predmetu co jsi popisoval se bezkonkurencne nejvic tesim na IBS, pocitacova bezpecnost - to je muj obor:)

Jo a prumer 1.0... Congrats!:)

Ahoj, díky za komentář a gratulaci ;). Co se týče výběru předmětů, tak tam se snažím vybírat předměty z oblastí, o které se zajímám (teoretická informatika, matematika, programovací jazyky, vývoj SW, operační systémy, bezpečnost, + pár dalších), a také podle toho, kdo je přednáší (za tu dobu, co jsem na FITu, už u většiny lidí tuším, co od nich čekat). Shodou okolností to vychází na teoretičtěji zaměřené předměty :).

Koukal jsem na tvé stránky a vidím, že děláš do bezpečnosti, což je rozhodně zajímavá a důležitá oblast (nejen) IT. Já se o bezpečnost také zajímám. Sice zřejmě ne tak moc jako ty, ale je to potřeba (kvůli programátorům, kteří se o bezpečnost nezajímají, vznikají bezpečností průsery :)). Na tom, že tě tolik neberou teoretické předměty, nic špatného není. Každý má dělat to, co ho baví. Důležité akorát je, aby člověku nenaskočila kopřivka, jen co vidí kus matematického textu :), protože matematika sehrává důležitou roli ve snad každé oblasti IT.