Inkubator geniuszy: kto wygra mistrzostwa świata programowania

0
46


Fot. Getty Images

Mistrzostwa świata programowania wpływa na przyszłość silniejszy, niż mistrzostwa świata w piłce nożnej. Jak szkolić przyszłych mistrzów i co oni potem robią

“Wiesz anegdoty o ojcu, który na łożu śmierci wyjawił wnukom swój sekret pysznej kawy — “wkładać więcej fusów”? Więc tak: aby zbudować Google, trzeba po prostu zainwestować w edukację” — mówi Svetlana Великанова, CEO uniwersytetu barcelońskiego Harbour.Space. Na tym uniwersytecie na początku października 2018 roku odbyły się trzecie szkoleniowo-treningowe zgrupowanie Hello Barcelona Programming BootCamp na sportowo programowania dla studenckich zespołów. Wzięło w nim udział 39 zespołów z 16 krajów, z nich 12 drużyn z Rosji. Takie zgrupowania treningowe — główny etap przygotowań do mistrzostw świata w programowaniu ACM ICPC (International Collegiate Programming Contest). W istocie, to eliminacje zawody, w których zwycięzcę prawie zawsze staje na podium mistrzostw.

Co to są mistrzowie

Mistrzostwa programowania ICPC odbywają się corocznie od 1977 roku. Początkowo uczestniczyły w nich głównie drużyny z USA, jednak od końca lat 1980-tych geografia zaczęła się rozszerzać. Amerykańscy programiści stawali się mistrzami 17 razy, ale ostatni raz miało to miejsce 20 lat temu. Na drugim miejscu Polska: 13 drużyn zdobywali tytuł mistrzowski, a ostatnie siedem lat Rosja wygrywa co roku. Inni mistrzowie — Chiny (4 zwycięstwa), Kanada, Australia, Polska (2 zwycięstwa), Niemcy i Czechy.

W 2018 roku zdobywcą pucharu ICPC po raz siódmy z rzędu została drużyna rosyjskich studentów. Najlepsze stali chłopaki z moskiewskiego uniwersytetu państwowego, a w gronie zwycięzców znalazły się jeszcze trzy rosyjskie drużyny: МФТИ (Moskiewski fizyko-techniczny instytut), ИТМО (Sankt-Petersburski narodowy uniwersytet badawczy technologii informacyjnych, mechaniki i optyki) i УрФУ (Uralski uniwersytet federalny).

W każdej drużyny po trzy osoby. Do ich dyspozycji jeden komputer, daje im 12 zadań i pięć godzin na rozwiązanie. Zadania różnią się od tych, jakie stoją przed programistów Google lub “Yandex”: zamiast setek tysięcy linii przemysłowych kod trzeba napisać kod z 150-300 wierszy, który działa na komputerze, i zrobić to szybciej.

“To klasyczna zadanie na mistrzostwach — mówi założyciel wspólnoty Codeforces Michał Мирзаянов. — Wyobraź sobie, że mamy lokal i seria wniosków do wynajęcia. Każda aplikacja charakteryzuje się start i ostatnim dniem, a także określonej wartości. Musimy wybrać taki podzbiór wniosków, aby nie pokrywały się, a otrzymaliśmy maksymalny zysk”. Inny przykład. Dana mapa terenu z wieloma miastami. Rząd powinien budować lotnisko w taki sposób, aby zminimalizować sumę odległości między wszystkimi miastami i lotniska. Programiści powinni wymyślić algorytm, który znajdzie ten punkt na mapie. To matematyczna zadanie. W istocie, łódź, który daje najbardziej odpowiednie strony w wyszukiwarce, robi to samo.

Zwycięstwo w mistrzostwach świata nie tylko honorowy — takie zwycięstwo często staje się kluczem do kolejnych osiągnięć. Jeden z mistrzów świata Tony Shay stworzył firmę Zappos sprzedaż obuwia, które w 2009 roku Amazon kupił za $1,2 mld Inny zwycięzca ICPC Adam d ‘ Angelo, przyjaciel Marka Zuckerberga stał się dyrektorem technicznym Facebook.

Większość mistrzów z Rosji, później jasno wykazali się w technologiach informacyjnych i biznesie. Mistrzami i laureatów ICPC stawały się Mikołaj Durow (brat Pawła Дурова i współzałożyciel Telegram), Andrzej Lopatin (jeden z pierwszych twórców “Vkontakte”), Piotr Królewski (rozdział petersburg biura funduszu hedgingowego Igora Тульчинского WorldQuant — $5 mld z systemem), Piotr Митричев (zajmuje jedno z wyższych stanowisk inżynierskich w siedzibie Google), Małgorzata Короткевич (trener, zdobywca mistrzowskiego tytułu wszystkich głównych światowych zawodów programowania), Wiktor Шабуров (jeden z autorów aplikacji Looksery, która firma Snapchat kupiła za 150 mln dolarów).

“Aby zrobić projekt na $1,7 mld euro, taka jak Telegram, potrzebni są mistrzowie”, — mówi kierownik katedry technologii programowania Uniwersytetu ИТМО profesor Anatolij Шалыто. Następne pytanie: skąd te mistrzów wziąć?

Jak gotować mistrzów

Główny sekret, podobno, otworzyła Władysław Великанова: aby pojawiły się mistrzowie, musimy inwestować w edukację. Przy czym należy inwestować nie tylko pieniądze, ale czas i zainteresowanie. “W tradycyjnym modelu, i to nie tylko w Rosji, inwestycje w edukację i najczęściej traktowane są biznesem jako forma społecznej odpowiedzialności, a nie jako inwestycja, która może dać bezpośrednie najwięcej — mówi współzałożyciel holdingu inwestycyjnego SDVentures Dmitrij Wilków. — W dużej mierze jest to związane z niedoskonałością najniższej systemu edukacyjnego, bardzo sztywne do zmian środowiska. Ale przyszłość uczelniami, gdzie uczy się praktyki, a zainteresowane w młodych pracownikach firmy płacą za kształcenie studentów”.

Zdaniem Wołkow, rosyjski system edukacyjny jeszcze może korzystać z rezerwy, utworzonej w ZSRR: prawie pół wieku temu akademik Колмогоров zaproponował nauczania informatyki i podstawy programowania w szkołach. Dzięki temu pojęcie o programowaniu, nawet na najbardziej podstawowym poziomie, jest u każdego. Silne szkoła programowania jest w Polsce, Chinach i krajach byłego ZSRR — w Białorusi i na Ukrainie. “W amerykańskich szkołach informatyki na poziomie ogólnym nie są prowadzone w ogóle. Dlatego w amerykańskich zespołach samych amerykanów trochę. W zasadzie to chińscy studenci, którzy przyjechali studiować w USA” — uważa Wilków.

Ale impuls powstały pół wieku temu, prędzej czy później zabraknie. “Główny problem — zapisz najlepsze zdjęcia na uniwersytetach, aby ludzie szli uczyć, a nie odchodzili w biznes”, — powiedział Anatolij Шалыто. Dziś na jego katedrze w ИТМО uczą pięciu mistrzów świata i dwa finalisty ICPC. W 2018 roku ИТМО zajął 71 miejsce w międzynarodowym rankingu uczelni Times High Education w obszarze Computer Science. Oprócz ИТМО w rankingu znalazły się jeszcze dwa rosyjskich uczelni — МФТИ i MGU.

Szczególny wkład w utrzymanie wysokiego poziomu rosyjskiego edukacji są w stanie wnieść do firmy: są zainteresowani w uprawie specjalistów dla siebie. Katedry, związane z technologiami informacyjnymi, cieszą się obsługą firm takich, jak “Yandex”, Mail.ru Group, “Kaspersky Lab”, Remy Robotics (ta firma wyłożyli kasę na udział drużyny z niemieckiego uniwersytetu w TUM w opłatach 2018 roku w Indiach), JetBrains (partner ICPC). Według informacji “Yandex”, jego inwestycje w edukację w ciągu ostatnich trzech lat wyniosły $15,2 mln liczba Ta obejmuje i stypendium specjalne HSE im. Eliasza Сегаловича, współfundator “Yandex”. Mail.ru i JetBrains nie stały się ujawniać kwoty inwestycji.

Dokąd pójść mistrza

U rosyjskiej medium istnieje jeszcze jeden problem, a imię jej — dolina Krzemowa. Mało wychować przyszłych rosyjskich Цукербергов, trzeba jeszcze zrobić tak, aby nie wyjechali do Цукербергам amerykańskim. Вкладываясь w kształcenie przyszłych pracowników, “Yandex” i Mail.ru zdają sobie sprawę, że stworzone przez nich kompetencji będą poszukiwane w Google. Zresztą, według Мирзаянова, wśród najlepszych олимпиадников pomysł dostać pracę w IT-гигантах doliny Krzemowej nie jest zbyt popularna: “Oni nie marzą o pracy w Google z tego powodu, że dla nich to jest zbyt realne. Myślę, że mógłbym z łatwością przeszedł testy w Google. Gdyby chciał, byłby już tam jest”. Ponadto, rosyjskie firmy IT bardzo konkurencyjne na rynku pracy i są gotowi zapłacić programistom porównywalne pieniądze.

Jednak, zdaniem Мирзаянова, ogromne firmy w ogóle nie jest miejsce dla utalentowanych ludzi: “Dla mistrza programowania pracować na jakąś IT-firmę prawidłowo. Trzeba spełniać swoje marzenia”. Uważa on, że w korporacjach nie jest łatwo realizować swoje pomysły i potencjał i najlepsze programiści szybko odchodzą w małych firmach. I tu dla programisty-стартапера przyczyny wziąć kurs na Zachód już dość вески.

“Pierwszym czynnikiem jest ocena firm: firma z siedzibą w Moskwie lub Petersburgu kosztuje 10 razy mniej, niż firma z siedzibą w San Francisco. Po drugie, dostęp do finansowania w USA, zwłaszcza w dolinie Krzemowej, o wiele łatwiejsze. Po trzecie, w Dolinie powstała ekosystemem: nie ma żadnych specjalistów, i łatwiej jest negocjować z partnerami i największymi firmami technologicznymi”, — mówi Dmitrij Wilków.

W Rosji infrastruktura pomocy takich specjalistów i ich projektów przez венчурные fundusze dopiero kształtuje. Zdaniem Wołkow, przekraczając granicę, starcie dostaje się na globalny rynek, na którym wolumen inwestycji w zupełnie innej kolejności. Na przykład, Telegram i Badoo bardzo skuteczne, i są one tworzone imigrantów z Rosji. Przykład użyteczności — białoruskie Prisma i MSQRD. Ich gotowy kupić duże stratedzy, takie jak Google i Facebook, a w kolejnych rundach inwestowania za nimi stoi kolejka znanych funduszy venture capital. “Albo spojrzeć na AnchorFree: firma Davida Городянского stworzyła aplikację HotSpotShield — do szyfrowanej transmisji danych, którego liczba użytkowników przekroczyła już 600 mln ludzi w ponad 200 krajach. Ostatnio przyciągnęły rekordową kwotę 295 mln finansowania” — mówi Wilków.

Nie mniej ważne jest, na jaki rynek jest skierowany starcie. “Skoro rynek technologii informatycznych rozwija się za mało, to znaczy, że start-upy, należy skupić się na rozwoju нишевого produktu, popularny na całym świecie — mówi Wilków. — To właśnie dzięki takiemu podejściu izraelskie młode firmy, na przykład, stały się znane na cały świat i zrobili kraj swego rodzaju europejskim z siedzibą technologicznych startupów”.