Millaista on tavata tai tuntea Petr Mitrichev?

Paras vastaus

Petr on entinen saman vuoden opiskelijani Moskovan valtionyliopiston matematiikan laitoksella. Hän oli minulle kuin henkilökohtainen valmentaja kahden ACM ICPC -finaalin jälkeen, kun hänen ACM-uransa virallisesti päättyi. Olemme myös työskennelleet yhdessä 2 vuoden ajan Googlen Moskovan toimistossa, ja vuokrasimme yhdessä asunnon näiden kahden vuoden aikana, joten tunnen hänet suhteellisen hyvin.

Kannatan ehdottomasti Adityan ajatusta vastaus hänen nöyryydestään. Petr on hyvin vaatimaton, ja hän ei todellakaan pidä kaikesta tästä super-suosiosta hänestä luodun Facebook-sivun jne. kanssa. Hän on erittäin kohtelias eikä koskaan näy millään tavalla. Kukaan kilpailukykyinen ohjelmointi voi ohittaa ilman näitä roskapuhelukeskusteluja, kuten ”(keltainen kooderi) – Voi, minä” hölmö: Minun piti lähettää 250 pistettäni. (punainen kooderi) – Voi, olen ”hölmö: olen korjannut kovani 30 sekunnissa koodausvaiheen päättymisen jälkeen. (Petr) – Voi, olen ”hölmö: Minulle on jäänyt 2 kelvollista haastetta huoneeni helpolle ongelmalle” – tämän sanotaan sen jälkeen, kun hän on ratkaissut kaikki kolme ja voittanut SRM: n. tai ehkä 2. sija. Tämä saattaa tuntua pilkkaavalta sivulta, mutta oikeastaan ​​se on vain vilpitöntä analyysia itsesi virheistä kierroksen aikana. Se on vain, että virheet ovat tällä hetkellä hyvin erilaisilla noilla ihmisillä.

Voin varmasti vastusta Petria kaikkien kuviteltavien ohjelmointikilpailujen voittajana kaikkien kuviteltavissa olevien matemaattisten kilpailujen voittajien keskuudessa siinä mielessä, että hän voi olla paljon sosiaalisempi henkilö, hänen kanssaan on helppo kommunikoida ja hän ei todellakaan ole super-nerdy, jonka odotat tapaamisen jälkeen ”outoja matemaatikkoja”, katsomassa joitain Hollywood-elokuvia tai vain muistaa nörtti luokkatoverisi. Hän ei vieläkään ole tiedottaja tai jotain, mutta hän on täysin tavallinen kaveri muukalaiselle.

Petr on erittäin hyvä strategisissa lautapeleissä. Rakastimme Catanin uudisasukkaita ja pelasimme todennäköisesti useita satoja kertoja, ja hän oli voittaja noin 2/3 kertaa, mikä on vaikuttavaa, kun otetaan huomioon 3-4 pelaajan peli ja annetaan melko hienostuneet vastustajat. Pelaamme myös ”ruotsalaista shakkia” (oikeastaan ​​”bughouse” englanniksi, mutta bughouseilla on hieman erilaiset säännöt), ”Carcasson”, ”Ticket to Ride” ja muita. On paljon helpompaa voittaa Petr yhdessä näistä kuin voittaa hänet ohjelmointikilpailussa, mutta se on vaikeaa.

Petr on yksi kilpailevista ohjelmoijista, jolla on todella vahva matemaattinen ajattelu. On olemassa erilaisia paradigmat ACM-maailmassa, mukaan lukien ”Se hyväksyttiin ==> algoritmi on oikea”, mutta näyttää siltä, ​​että Petr melkein ei koskaan lähetä mitään ratkaisua ilman tarkkaa todistetta, vaikka hyvä matemaattinen intuitio riittää ja todiste on vaikea. väite on välttämätön ominaisuus huippukilpailijalle, sillä pahin asia, jonka voisit tehdä kilpailussa, on väärän ratkaisun toteuttaminen.

Petr on (tietysti) erittäin hyvä algoritmisessa ongelmanratkaisussa. tai ainakin voisin) voittaa hänet matemaattisissa olympialaisissa erityisongelmissa, on vain muutamia algoritmisia ongelmia, jotka voisin joskus ratkaista teoreettisesti nopeammin kuin hän, ja yleensä hän on paljon nopeampi. intuitio alueella: sama asia, joka erottaa hän on matemaattisten olympialaisten voittajia, mutta soveltaa algoritmisiin ongelmiin tavallisten matemaattisten ongelmien sijaan. Joten vaikka olisit erittäin hyvä koodauksessa, virhevapaiden koodien kirjoittamisessa ja virheenkorjauksissa, heti kun ongelmat ovat riittävän vaikeita, hän ”lyö sinut silti teoreettisen ongelmanratkaisun nopeuden vuoksi. Vahvan matemaattisen taustansa vuoksi hän ei ole epäsäännölliset ongelmat, jotka ovat harvinaisia ​​IMHO-kilpailuissa, pelottelevat, mutta monimutkaisimmat ovat aina epätyypillisiä. Petr pitää ongelmista, jotka voidaan ilmaista 1-2 yksinkertaisella lauseella, mutta joita on vaikea ratkaista eniten.

Yksi asia kuin erittäin nopea ongelmanratkaisu matematiikkatasolla, joka todella erottaa Petrin muista kilpailijoista, on hänen algoritminsa ja ohjelmiensa ymmärtäminen. Sitä on vaikea selittää, mutta se on ydin syy hän joko ei tee virhettä tai löytää sen suuruusluokkaa nopeammin kuin muut huippukilpailijat. Hän ei todellakaan tarvitse tehdä askel askeleelta virheenkorjausta ollenkaan: se on joko hänelle selvää vain lukemalla koodi missä vika on, tai hän voi tehdä ”Suorita tälle riville” virheenkorjauskoodin, tarkastella arvoja useista ennalta määritetyistä muuttujista, mukaan lukien matriisit, joukot ja matriisit, ja etsi vika juuri sillä hetkellä ilman mitään askelia eteenpäin. Kaikki muut virheenkorjaukset näyttävät olevan hyvin-hyvin harvinaisia, ja avain on siinä, että hän ymmärtää, mitkä invariantit pitää pitää milloin tahansa ohjelmassa ja havaitsee häiriöt, ja sitten hän jotenkin tietää hyvin nopeasti, missä koodissa näitä invarianteja saatetaan rikkoa.

Petr kirjoittaa aina erittäin puhtaan ja ymmärrettävän koodin. Hänellä ei ollut taipumusta kirjoittaa lyhyempi koodi, mutta aina luettavissa.Muuten, se auttaa paljon virheettömän koodin kirjoittamisessa alun perin ja erittäin nopeassa virheenkorjauksessa kilpailevassa ohjelmoinnissa, mikä ei ole niin ilmeinen strategia kuin teollisessa ohjelmoinnissa.

On selvää, että hän on erittäin hyvä keskittyneenä, erittäin tarkkaavainen ja erittäin hyvä lukemaan kaikki mahdolliset tapaukset tarkasti ongelmiin, joissa se on välttämätöntä.

Yksi asia, joka voi yllättää, on, että hän ei ole koskaan käyttänyt liikaa aikaa kilpailukykyisen ohjelmoinnin koulutukseen. Tarkoitan, poika, joka alkoi käydä koko Venäjän tietotekniikan olympialaisissa ja harjoitusleireillä 6. luokasta alkaen tavallisen 9. luokan sijaan, sai paljon koulutusta. Mutta hän sanoo aina halunneensa aina omistaa ja käyttää aikaa jalkapallon pelaamiseen ystäviensä kanssa jne. En tiedä kouluvuosista, mutta hän ei todellakaan harjoittanut muuta kuin osallistunut todellisiin kilpailuihin ACM-vuosiensa aikana yliopistossa . Minä ja Egor (@ http://www.quora.com/TopCoder/Who-is-Egor-Kulikov/) yritimme aina laboratoriossa yrittää löytää uusia kilpailuja Internetistä ja osallistua, kun hän vain tuli sisään ja joskus pilkasi meitä siitä hieman: ) Sitten TopCoder ”ilmestyi”, ja jonkin verran haluttomuutta liittyä (”Miksi minä? Tomek voittaa minut joka tapauksessa :)”) hän löysi säännöllisen kilpailulähteen, josta hän harvoin puuttuu näihin päiviin saakka. Minulle ei ole edes yllättävää, kun Petr voittaa jonkin SRM: n tai toisen henkilökohtaisen kierroksen odottaessaan lennolle nousua lentokentällä ja sillä on 40 minuutin sijasta 75 minuutin sijasta koodaus. Mutta lukuun ottamatta virallisia kilpailuja, joita on nykyään paljon, mutta joita oli melko vähän 8–10 vuotta sitten, en nähnyt häntä harjoittelemasta.

Yksi muista erityispiirteistä on erityisesti rehellisyys, joka on työnnetty rajoille. Voit pohtii Petrin periaatteessa tietokoneohjelmana pelkän kuolevaisen sijasta sanojensa ja tekojensa suhteen 🙂 Jos hän sanoo jotain, hän ”pitää sanansa, ja hän, kuten aina, noudattaa kaikkia voimassa olevia sääntöjä laeista ja kilpailusäännöistä ylittämiseen liikennevalot. Voisi sanoa, että kaikkien pitäisi tehdä tämä, mutta todellakin harvoin löytyy henkilö, joka todella tekee sen. Ja tämä on usein roolimalli, jota käytän itselleni, toisin kuin ympärilläni oleva ”pehmeiden lakien” yleinen mentaliteetti. Vaikka ei aina 🙂 Voit myös odottaa vaikutusta itseesi sen takia: hän ”puhuu aina kanssasi englanniksi, jos on ihmisiä, jotka eivät ymmärrä venäjää ympärilläsi, ja sinun on aina kiinnitettävä turvavyön auto 🙂 Vaikka olisit takaistuimella 🙂 (jota kaikkien tulisi noudattaa, mutta valitettavasti näin ei ole todellisessa maailmassa).

Petr osallistui myös useimpiin yliopistokursseihin, mikä ei ole lainkaan yleistä MSU: ssa. Olemme molemmat valmistuneet täydellä 5.0 GPA: lla, mikä on harvinainen tilaisuus. En tiedä hänen syytä siihen, minun oli kuin ”miksi ei saada 5 (A), jos se on” helppoa ”. Et todennäköisesti yllättyisi siitä, että Petrille oli helppo opiskella, mutta se sisältää myös joitain humanistisia ja urheilulajeja ja kertoo silti jotain tärkeää henkilöstä.

Petrilla on usein kiistanalainen mielipide jostakin aiheesta. Hämmästyttää minua ei pelkästään tämä tosiasia, vaan se, että hänellä on usein tämä päinvastainen mielipide aiheesta, jota pidät niin ilmeisenä ja ratkaistuna ikuisesti kaikille, ja se ei ole vain mielipide, vaan erittäin vahva argumentti sen puolesta 🙂 Se kirjaimellisesti saa sinut ainakin miettimään uudelleen suhtautumistasi joihinkin tavallisiin asioihin, joista et koskaan edes ajattele.

Näyttää myös siltä, ​​että suhtaudumme tieteeseen on jotain. Molemmat emme vielä saaneet tohtorin tohtoria, enimmäkseen koska kävi ilmi, että Googlen käytännön ongelmiin liittyvä työ ja Yandex (minulle) houkuttelivat meitä paljon enemmän kuin ratkaisemattomat matemaattiset ongelmat, joita olemme kokeilleet, ja tieteellisille tutkimuksille annettiin alhainen prioriteetti. Ystävät ”hyppäävät” kysymään miksi don ”Me teemme tohtorintutkintomme, mutta minulle ja oletan Petrille, että todistus itsessään ei ole mitään arvoinen, jos en ratkaise jotain todella tärkeää. Etsin edelleen ”omaa” aihetta, en ole varma Petristä, mutta uskon, että molemmat todennäköisesti löytävät mielenkiintoisia julkaistavia aiheita vahingossa tulevaisuudessa.

Vastaa

Eräänä iltana, kun harjoittelin biljardia Googlessa, kaveri kysyi, voisiko hän liittyä minuun. Pelasimme 3-4 peliä, ja hän pelasi moitteettomasti, pelaaen minua joka kerta suurella marginaalilla. Olin aloittanut pelaamisen vain äskettäin, joten ei tuntunut kovin pahalta näissä musertavissa tappioissa. Koko ajan hän ei puhunut paljon ja kysyttäessä esitteli itsensä Petriksi ja mainitsi vierailevansa Moskovan toimistosta.

Sen jälkeen tapasimme muutaman kerran peleihin ja kerran päivällisen aikana. Hän ei koskaan maininnut mitään ohjelmoinnista tai algoritmeista. Hän oli aivan kuten mikä tahansa muu Googlen työntekijä, jonka olin tavannut, paitsi että hän puhui harvoin ja kun puhui, ei ollut kyse kovista ongelmista, joita hän ratkaisee työssä.

Muutama päivä myöhemmin törmäsin tähän artikkeliin http://www.technologyreview.com/news/428610/in-the-olympics-of-algorithms-a-russian-keeps/ ja minut räjäytettiin tietämään kuka tämä ”Petr” oli! Olin täysin tyrmistynyt hänen nöyryydestään.Ja yhtäkkiä en tuntenut niin pahaa menettää uima-altaalla, koska tiesin, että on muitakin asioita, joilla hän voi voittaa minut vielä suuremmalla marginaalilla :).

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *