ICPC 2013 - finále největší programátorské soutěže v Ruském Petrohradě
Kapitoly článků
Po finále jsem se potkal s Ivanem Romanovem, vítězem z roku 2006 reprezentujícím ruskou Saratov State University. Po svém úspěchu přijal práci v proslulé výzkumné laboratoři IBM ve švýcarském Curychu, ale v současné době pracuje v poradenské firmě. Poodhalil mi realitu kariérního postupu většiny soutěžících a mluvil také o motivaci finalistů.
Jak se Rusové připravují na tuto programovací soutěž? Co je činí tak úspěšnými?
Jak jsi mohl slyšet, Rusové mají tréninkové kempy přímo určené pro tuhle soutěž. Probíhají v Petrozavodsku, což je město pár set kilometrů severně od Petrohradu, a scházíme se dvakrát ročně na deset dní. Každý den děláme pětihodinový kontest jako tady a odpoledne jsou lekce, kde diskutujeme o problémech. Dostáváme také rady od vedoucích týmů a večer máme čas na vyřešení zbytku problémů, které se nám nepovedlo zdolat během dne.
Takže se z toho stal v Rusku dobře definovaný a funkční systém. Začali jsme pořádat kempy v roce 2003 a Rusko začalo soutěžit v ICPC myslím v roce 1994, takže nám chvíli trvalo, než jsme se dostali na správnou úroveň, prostě to chce hodně pracovat.
Máte nějaké speciální trenéry, které vás připravují pouze pro tuto soutěž?
Ano, většinou máme na univerzitě pár starších lidí, kteří tam jsou již delší čas a organizují celý proces. Tihle lidé většinou již nepřispívají svými znalostmi. A pak máme většinou bývalé soutěžící, jako je například Andrew z ITMO, který sám soutěžil, kteří mají chuť zůstat na univerzitě a trénovat ostatní. Je to samostatná práce na plný úvazek připravit týmy na soutěž.
Pak máme ještě každý rok soutěž pro nováčky, kde vidíme, jestli jsou schopní udělat alespoň něco, a pak je vyfiltrujeme. Dokonce tam potkáš lidi, kteří sice nic neumí, ale mají velkou motivaci se učit. Takže máš hromadu lidí a začneš jim dávat lekce. Je to také hodně o samostatné přípravě. Lidé z letošní Saratov State jako přípravu vyřešili neuvěřitelné množství problémů, které jsou dostupné online. Takže je to jen tvoje osobní motivace, která tě může přivést k nějakým výsledkům.
Jaká je tedy hlavní motivace soutěžících? Je to práce v IBM, práce v IT?
Vůbec ne. Pro mě je to hlavně ten pocit, když to dokončím. Když jsi nejdřív vůbec nevěděl, jak ten problém vyřešit, a pak najednou se ti to povede. Uděláš to jednou, dvakrát a funguje to. Víš, přestěhoval jsem se z Ruska do Švýcarska, jakmile jsem v roce 2006 vyhrál finále. Pracuji a žiji teď v Curychu již více než 6 let a můj život je poměrně bezstarostný. Je to velmi krásná země, nemusíš se příliš starat o svůj život, je to krása. Ale pořád mám motivaci soutěžit v podobných soutěžích, v téhle už nemůžu, protože jsem moc starý, ale existují soutěže online, kam může každý.
A vidíš, že úroveň se velmi rychle zvyšuje. V roce 2006 jsme byli silnější, než týmy několik let potom, ale dnes bych neměl vůbec žádnou šanci v soutěži s dnešními lidmi, protože oni tráví 20 - 50 hodin týdně trénováním, já jen například 2 hodiny týdně. Ani náš kouč, ani kouč vítězné ITMO by neměli šanci v porovnání se svými nejlepšími studenty.
Asi to je tím, že se dostaneš z tempa…
Ano, jsi z tempa, už nenapíšeš tak rychle algoritmus. Asi se ti zpomaluje i mozek, už se nevyvíjí tak rychle. A pro mě je hlavně důležité, že už nenásleduji moderní trendy, existují dnes nové algoritmy, které někdo vyvinul během posledních pár let.
Takže je pro soutěž musíš znát?
Musíš znát alespoň nějaké základy, pak se na tom dá stavět. Během soutěže nemáš čas přicházet na něco, co už udělal několikrát někdo před tebou. Znáš komponenty, ale potřebuješ nějaký geniální nápad, jak a které spojit dohromady.
Když se podíváme na kariéru soutěžícího - vyhraješ finále a pak jdeš k IBM nebo k jiné IT firmě? A co tam děláš?
Já dělám práci ohledně vývoje v Javě pro soukromou konzultační firmu. Odešel jsem z IBM a teď se mi to líbí, protože můžu pracovat se zajímavými klienty a vidět, jak se problémy řeší v reálném životě. Většina mých kamarádů opravdu jde pracovat pro Google, pro Facebook, pro IBM.
No naše kariéra je někdy pěkná nuda. [Nuda??] Ano, pro některé z kolegů z této komunity, například u Googlu. Protože sice jdete do Googlu, je to super, fascinující, dostanete tři zmrzliny… A pak rok, dva, tři vylepšujete navigaci na Google mapách, tu jejich modrou čáru, aby vypadala ve všech prohlížečích stejně, aby pixel nepřesahoval sem nebo tam. Pro tohle jsi snad tvrdě netrénoval, ne? A tohle je pravdivý příběh, to se fakt stává.
Takže si myslíš, že firmy prostě nevědí, co s vámi?
Ale jo, vědí, občas děláš těžké věci, u kterých je potřeba algoritmizace, ale je to jenom malé procento. Většinou ta přidaná hodnota z prostředí soutěže znamená, že když píšeš jednoduchý, normální kód, neděláš chyby a děláš to efektivně, protože máš pár dobrých nápadů.
Díky za rozhovor.
Ivan se ještě nakonec zmínil, že mezi jeho klienty v rámci konzultací v Curychu patří i IBM. Během večera jsme se potkali také se zakladatelem CodeForces.com Mikem Mirzayanovem (autorem ICPC výzvy), který mi odpověděl na otázku motivace úplně stejně jako Ivan. Dělat něco kvůli dobrému pocitu - to je charakterní vlastnost, která se dnes už moc nevidí. Prý CodeForces založil, aby se mohla komunita potkávat a sdílet své znalosti online. Web pořádá často online programátorské soutěže.
Večer jsme strávili ve společnosti několika finalistů a jejich koučů a viděli jsme mezi turisty oblíbené zvedání mostů na řece Něvě stejně jako proslulou Bílou noc. Za zmínku snad stojí, že v Petrohradě se po desáté hodině již v restauracích neprodává alkohol (oficiálně). Místní obchody však prý vycházejí zákazníkům maximálně vstříc a prodají vám například sáček brambůrek za 800 rublů (necelých 500 korun) a jako pozornost podniku dostanete zdarma láhev. V noci centrem projíždí také neoficiální dodávky, nechci ale spekulovat o jistě tvrdé přirážce.
Závěr
Následujícího dne jsem se šel projít alespoň "před dveře" Petrohradské ermitáže. Také jsem viděl kostel Prolité krve Spasitele s tradičními ruskými cibulovými věžičkami. Na letišti Pulkovo jsem se potkával s různými soutěžícími, dokonce se mnou jeden student s typickým zeleným tričkem jel až do Prahy.
Celý výlet byl pro mě velkou zkušeností. Sice potkávám na půdě ČVUT celou řádku "šprtů", ale tohle byla jejich celosvětová přehlídka. Dále to povzbudilo vášeň pro programování a řešení problémů. Na podobném mítinku potkáte také možné budoucí "superhvězdy" IT průmyslu. V roce 1993 vyhráli za Harvard soutěž studenti Derrick Bass, Tony Hsieh a Craig Silverstein. Derrick pracuje u Googlu, Tony založil Zappos.com a je v balíku a Craig je první zaměstnanec Googlu, kde si vydělal necelou miliardu dolarů.
Doufejme, že příští rok se podaří ať už Karlově univerzitě nebo ČVUT dostat se do finále a budeme vlastenecky držet palce Čechům. Koneckonců Karlovka v roce 1998 vyhrála finále!