Archiv pro měsíc: Srpen 2013

První zážitky ze stáže

Mám za sebou první 3 dny studijní stáže na Polytechnique de Montreál a tak je na čase podělit se o své první zážitky.

Oficiální název mé stáže zní: Parallelizing a Large Scale Static Analysis using the Hadoop Map/Reduce Framework. Je to poměrně krkolomný, dlouhý a nic neříkající název. Ve skutečnosti se jedná o poměrně zajímavou věc – přizpůsobení již existujících algoritmů na statickou analýzu kódu pro využití v cloudu. Tedy aby ty algoritmy neběžely na jednom počítači, ale třeba na stovce…

První seznámení s projektem

V pondělí 26. 8. jsem po vyřízení několika formalit zamířil za profesorem a k laboratořím. Po příchodu do laboratoře jsme narazili na problém s nefunkčním počítačem. A tak jsem se zatím dočasně usídlil na sousedním místě, kde počítač funguje. Profesor mi dal přístup k SVN repozitáři, ze kterého jsem si měl stáhnout zdrojáky, a poslal mi soubor se seznamem projektů, které budu potřebovat. Bylo mi jasné, že se nejprve musím seznámit s tím, jak je nástroj naprogramovaný, jak funguje apod., než začnu dělat nějaké modifikace. Ale už jsem netrpělivě očekával své první seznámení s tím jejich úžasným nástrojem pro statickou analýzu kódu, který budu následující 3 měsíce paralelizovat. To jsem ovšem nevěděl, co mě čeká…

V repozitáři se nachází několik stovek projektů (odhadoval bych to tak na 200-300), které mezi sebou mají různé závislosti. Když se mi po několika desítkách minut čekání podařilo konečně stáhnout několik set MB dat z repozitáře, doufal jsem, že už to půjde hladce. To byl ovšem omyl. Všechny projekty jsou dělané v Eclipse a NEMAJÍ mezi sebou nijak nastavené závislosti. A že těch závislostí tam je… Takže po kliknutí na tlačítko Build all se objevilo asi 3000 chyb při kompilaci a dalších pár tisíc warningů (které raději ignoruji). Většina chybových hlášek se týkala chybějících závislostí. No a mě nezbývalo než ručně se proklikat chybami ke konkrétnímu zdrojáku, nastavit pro projekt správné závislosti a kompilovat znovu. A znovu. Občas jsem dokonce narazil i na závislost na projektech, které jsem ještě neměl stažené z repozitáře, a tak jsem je musel stáhnout.

Resolve dependency, build, debug…

Druhý den vypadal víceméně stejně, pokračoval jsem v řešení závislostí a nekonečným kompilováním projektů. Pak se mi konečně podařilo zkompilovat a spustit projekt, který měl sloužit jako ukázka, jak se používá onen nástroj na statickou analýzu. Bohužel jsem stále neměl vyhráno. Projekt jsem sice spustil, ale hnedka na mě vykoukla výjimka a program spadl. A tak jsem strávil celý den debugováním desítek tříd kódu, ke kterým prakticky neexistuje dokumentace, a o kterých jsem neměl ani potuchy co a jak vlastně mají dělat. Byl jsem poměrně zklamaný, protože tohle nebylo zrovna to, co jsem očekával. Nakonec se mi podařilo program dostat do takové fáze, že již nevyhazoval výjimky a tvářil se, že je vše vpořádku. Bohužel nebylo – program nedělal vůbec nic. Statická analýza neproběhla. Profesorovi se to zdálo nějaké divné a tak poslal výpis stack-trace jinému profesorovi, který je vedoucím tohoto projektu.

Třetí den ráno dorazila odpověď. Verze projektu v repozitáři je nějaká rozbitá, máme použít jinou. Tak jsem tedy smazal vše, co jsem doposud dělal a stáhl jsem si novou verzi projektu. A začalo řešení závislostí znovu, nanovo… Naštěstí už jsem tak nějak věděl, který projekt na kterém je závislý a kde tyto závislosti nastavit, takže mi netrvalo dlouho zkompilovat a spustit aplikaci. Běžela. Hurá! S radostí jsem napsal e-mail profesorovi, který přišel a konečně mi taky trošku vysvětlil, co že tam vlastně mají a na čem budu pracovat. A pak mi dal za úkol rozjet další část projektu. Ta už se mi ovšem rozjet nepodařila, protože některé zdrojové kódy v projektu jsou psané pro Javu 1.7 a na mém počítači byla jen verze 1.5.

Není football jako fotbal

Dnes jsem se byl podívat na univerzitní zápas v americkém fotbale mezi Polytechnikou a McGillem. Musím říct, že to byl vskutku nevšední, ale bohužel také velmi nudný zážitek. Abych řekl pravdu, pravidla moc neznám, znám jen pár základních – vím co je touchdown, vím jak se skóruje apod. Ale při té hře, kterou jsem viděl, člověk stejně pravidla znát ani nemusel.

Hra je rozdělena na čtvrtiny a každá čtvrtina trvá 15 minut herního času. Jenže… Herní čas není reálný čas. Hra ve skutečnosti vypadá tak, že hráči rozehrajou, hraje se tak 10-20 sekund, pak buď někdo fauluje, nebo se stane nějaká jiná událost, která vyvolá pískot rozhodčího. Po zapískání rozhodčího následuje vystoupení roztleskávaček, které trvá většinou kolem 1-2 minut, občas bývá i delší. Člověk sleduje roztleskávačky, pak se najednou znenadání začne zase hrát – ovšem jen těch pár sekund, a pak následují zase roztleskávačky. Celkově to působí mnohem více jako vystoupení roztleskávaček než nějaký zápas. Jedna čtvrtina hry zabere cca 45 minut reálného času.

Vydržel jsem sledovat dvě takovéto čtvrtiny a za celou dobu se toho co se týče hry moc neudálo. Čekal jsme hodně akce, spoustu touchdownů apod. A celkově jsem očekával mnohem větší dynamiku hry. Bohužel opak byl pravdou. Většinu času z té patnáctiminutovky se hraje na jedné polovině hřiště a to ještě většinou pouze v rozmezí pár metrů. Hraje se doslova tak, že hráči popojdou pár metrů popojdou-li vůbec, pískot, rozehrávka a znovu. A takhle to šmolí až dokud někdo neskóruje, což se moc často nestává. Touchdown je ještě vzácnejší. Ovšem když se domácím podaří skórovat touchdown, to je potom událost. Ozvou se famfáry, ze dvou opačkných rohů hřiště vyběhnou vlajkonosiči, ktěří běží proti sobě skrz celé hřiště. Celý stadion (tedy ta část která fandí týmu co skóroval) se raduje a vydává různé zvuky například pomocí balónků, kterými se mlátí o sebe, nebo vuvuzel či jiných hlučných nástrojů. Za dobu co jsem tam byl dala Polytechnika celkem 3 touchdowny a McGill jeden.

Po dvou čtvrtinách následuje 20 minutová přestávka. To už mi došla trpělivost a odešel jsem. Jednak se venku poměrně ochladilo a hlavně mě ta hra vůbec nebavila. Když jsem dorazil domů, potkal jsem své francouzské spolubydlící, kteří se také byli podívat na zápase. Ptali se mě, jak se mi to líbilo, a když sem jim řekl, že to vůbec nechápu a že mě to nebavilo, tak mi řekli, že oni sami to vzdali po pár minutách 🙂

První den v Montrealu

Právě končí můj první den v Montrealu. Byl to den vskutku dlouhý a plný kulturních šoků a neobvyklých zážitků. Vezmu to pěkně popořadě od rána až do večera 🙂

Ráno

Ráno po probuzení jsem vyrazil na metro. Metro a obecně MHD v Montrealu se v mnohém liší oproti Pražské MHD. O tom se dále rozepíšu v samostatném článku. Metrem jsem dorazil až do stanice Villa-Maria kde jsem se sešel s Českou kamarádkou Kamilou, která letos bude taky studovat v Montrealu. Nechal jsem si u ní kufry a vyrazili jsme na jídlo a obhlédnout mé budoucí ubytování.

Hledání bytu

Hledání bytu, kde budu následující téměř 4 měsíce bydlet, bylo poměrně dobrodružné. Majitelka mi bohužel nedala přesnou adresu a tak jsem měl „pouze“ název ulice a odkaz na Google maps. Google tady neukazoval číslo popisné a tak jsem musel jít na blind. Zkusil jsem zazvonit na několik vchodů u domu o kterém jsem si myslel, že je to ten správný. Z jednoho vchodu vyšla paní, která mě poslala o vchod vedle. Tam jsem ovšem neuspěl, nikdo nebyl doma. A tak jsem si řekl, že zkusím majitelku znovu kontaktovat a stavím se za ní později odpoledne.

Oběd v místní „Menze“

Jelikož nám poměrně vyhládlo, tak jsme se rozhodli zajít do místní školní jídelny. Jídelna se nachází přímo v budově Polytechniky, která mi velice připomínala novou budovu ČVUT. Člověk by až skoro řekl, že jí navrhoval stejný architekt 🙂

Místní menza není jeden podnik jako u nás, ale je rozdělená do několika částí se specifickou kuchyní. Je tam například nějaká obecná jídelna, grylovaná jídla a Italská kuchyně. Bohužel jsme přišli příliš brzy a tak byla Italská kuchyně ještě zavřená, a tak jsme se rozhodli zkusit něco v obecné části.

Při pohledu na francouzský jídelníček mi bylo jasné, že tady se toho moc nedozvím, a tak jsem si jídlo vybral podle toho, jak to vypadalo. Dal jsem si masové kuličky (aneb IKEA klasika) a k tomu jako přílohu vařenou zeleninu. Trochu zvláštní příloha k takovémuto pokrmu, ale z možností jako je salát s mušlemi, prapodivně vypadající cosi připomínající kuskus se mi zelenina zdála jako nejlepší varianta. Velké překvapení pro mě bylo, když mi paní podávala talíř s připraveným jídlem. Jednak mě překvapilo, že používají polystyrenové talíře a plastový příbor, ale to nebylo to nejhorší… Můj oběd vypadal, jako že by ho už někdo snědl! Kdo nadává na malé porce v menzách ČVUT ještě nezažil toto.

Oběd v místní menze za 7.85$

Řekl jsem si, že bych ten drobný předkrm, zde nazývaný hlavním chodem, rád něčím zapil. A tak jsem se porozhlédl po okolí a uviděl chlaďáky plné různách nápojů, automaty na kolu, džus apod. Ale něco mi tam pořád chybělo… Ceny. Byly to ceny. Zeptal jsem se paní pokladní, kde mohu zjistit ceny. Odpověděla mi, že tam ceny nejsou (což jsem si již dávno všiml!) a že ani nejsou nikde napsané. Pak jen dodala: když chceš vědět kolik to stojí, kup si to a uvidíš! Museli jsme vypadat opravdu překvapeně a zmateně, tak nám ještě poradila, že když si vezmeme hlavní jídlo, zákusek, salát a malé pití, tak to bude stát kolem 6.5$. Na salát jsem chuť neměl a tak jsem si vzal ještě poměrně velký muffin a vydal jsem se k pokladně. Tam mě čekalo nepříjemné překvapení – za jídlo jsem zaplatil nějakých 7.85$. Divil jsem se, proč to není kolem těch 6.5$ nebo méně, když jsem neměl salát, ale pak jsem si všiml, že cena vychází na 6.4$ bez DPH. Tady v Montrealu udávají některé ceny bez DPH.

Co zařídit před odjezdem do Kanady

Ještě před odjezdem do Kanady je nutné zařídit několik důležitých věcí o kterých bych vám rád pověděl v tomto článku.

Vízum a pracovní povolení

Do Kanady potřebujete vízum a studijní povolení. Do Quebecu je ještě nutné mít CAQ – tedy povolení přímo pro provincii Quebec (bez něj vám nevydají vízum). Pokud jedete na stáž, potřebujete Kanadské pracovní povolení, ale již není vyžadováno CAQ.

Získání víza je poměrně snadné. Nejprve si musíte stáhnout formulář s žádostí o pracovní/studijní povolení do Kanady a formulář s rodinnými údaji. Tyto formuláře vyplníte a vytisknete. Pak je potřeba zaplatit manipulační poplatek 110€, který je nutné uhradit osobně na pobočce ČSOB. Dále potřebujete fotografii, zvací dopis z univerzity, výpis z účtu a v případě pracovního povolení také výpis z trestního rejstříku. Všechny tyto dokumenty spolu s potvrzením o zaplacení zanesete na Kanadský konzulát a tam vám vystaví vízum a potřebné povolení. Profesor z univerzity mě varoval, že vystavení víza a pracovního povolení může trvat klidně až 5 měsíců. Naštěstí se to nepotvrdilo a zvládli to mnohem rychleji. Pas s potvrzeným vízem a pracovním povolením jsem si vyzvedával již po cca 3 týdnech.

Letenka

Dnes již není problém poměrně snadno sehnat letenku – stačí vám k tomu pouze internetové připojení. Na internetu najdete spoustu stránek kde se dají zabookovat letenky, namátkově například http://www.edreams.com, http://www.skyscanner.com apod. Já jsem letenku kupoval z eDreams. Cena zpáteční letenky z Prahy do Montrealu se základním pojištěním zavazadel a zpoždění letu byla cca 875€. Letenka do Montrealu je téměř vždy se 2 mezipřistáními. Já mám mezipřistání v Londýně a v New Yorku. Doba čekání na letištích je do 2 hodin. Celková doba letu tam je kolem 15 hodin. Zpáteční let vychází o něco lépe – většinou se obejde s jedním mezipřistáním v Londýně. Doba letu zpět je 12 hodin (dají se sehnat i ještě lepší lety, já mám při zpáteční cestě čekání 3 hodiny na letišti v Londýně).

Cestovní pojištění

Další naprosto nezbytnou věcí je cestovní pojištění. Navštívil jsem několik pojišťoven, pročetl spoustu srovnání a článků o jednotlivých pojišťovnách a jejich nabídkách a nakonec jsem si vybral pojištění Alive od pojišťovny UNIQA. Toto pojištění je nabízeno pouze majitelům ISIC karty. Nabízí poměrně velké plnění zdravotní péče (až do 4 000 000 Kč) a je platné po dobu jednoho roku. Cena je krásných 3 150 Kč. Pokud jedete na kratší dobu, dají se sehnat i ještě výhodnější pojistky. Do 45 dnů vychází pojištění Alive na pár stovek, případně do 90 dnů nabízí většina pojišťoven zvýhodněný tarif.

Založení blogu

Dnes je to přesně týden před mým odletem do Montrealu a tak jsem se rozhodl zprovoznit blog, na který budu psát své zážitky a postřehy. Těšit se můžete na spoustu fotek, informací, zkušeností, zážitků a prostě všeho co mě napadne na téma studium a život v Kanadě  🙂

Chtěl bych (a doufám, že se mi to povede) psát alespoň jeden příspěvek týdně.