Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen

VK hat in koele tradysje - in ynterne hackathon, dêr't allinnich jonges út VKontakte meidwaan kinne. Ik sil jo fertelle oer de hackathon út namme fan it team dat dit jier it earste plak naam en yn syn gehiel stoar oan wurgens, mar it slagge om in dûnsbewegingsdetektor foar de ferhaalkamera út te probearjen.

Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen

Myn namme is Paul, Ik lied it top VKontakte-ûndersyksteam en haw in waarme hâlding foar hackathons: as dielnimmer (Junction of in oantal deephacks) en koartlyn as kurator (VK hackathon of VKontakte-saak by Junction - trouwens, dit wie de earste kear Ik die mei dêr Russyske bedriuw). Wy hâlde de VK Hackathon, iepen foar elkenien, foar it fjirde jier (de lêste kear dat wy yn 'e Algemiene Haadkertier fan' e Hermitage klommen), en in wichtich part fan ús technyske team hat dêroan meidien foardat hy by VK kaam.

In ynterne hackathon lit it team sels in protte eksperimintearje mei it platfoarm, ferskate ideeën testen en oer it algemien wille hawwe. In wichtich ferskil is dat oplossings folle mear yntegrearre wurde kinne yn VK, wat ús de kâns jout om ynteressante prototypen te berikken.

De hackathon fynt plak yn it Singer House de hiele dei lang - krekt yn 'e midden fan' e wike feroaret it haadkertier yn in middernachtbeweging. It is grappich om te sjen hoe't de skjinmakkers moarns ferrast omsjogge - in normaal leech kantoar om 6 oere blykt ynienen fol te wêzen mei shaggy minsken dy't bewege as zombies en roppe: "Fiif oeren oer!" Of as jo moarns trijen de keuken yn rinne, en it rûkt nei universitêre sliepsealen by sesjes: enerzjydranken, pizza en panyk. Dit bart fansels op in gewoane dei, mar it is seldsum op sa'n massale skaal.

Trije eardere ynterne hackathons fûnen yn 'e simmer plak. Yn 2019 hawwe wy besletten om gjin tiid te fergrieme oan lytse dingen en ek in winterhackaton te hâlden - twa hackathons binne folle better as ien, om't dit in koele kâns is om in idee te eksperimintearjen en út te fieren wêrfoar d'r net genôch tiid is yn it gewoane ritme. De regels binne ek feroare: earder mocht in ploech maksimaal trije minsken hawwe, mar dit jier binne dat fjouwer, mar ien skriuwt gjin koade, mar is spesjalisearre yn wat oars. It wie mooglik om ûntwerpers, produktbehearders, testers, marketeers en oare jonges út te noegjen foar it team. Yn totaal diene 38 teams mei oan dizze hackathon.

Dreamtim (mear krekter, ien fan 38)

Wy kamen ta in oerienkomst mei Danei en tegearre hawwe wy oertsjûge Egor и Tyoma join it team. Lykas ferwachte, wiene de modellen yn lieding oer ús, Egor wie yn lieding oer iOS, Tyoma wie yn lieding oer produksje en ûntwerp. Mobile ûntwikkeling + ûntwerp + in bytsje masine learen en backend is de kaai foar sukses by de 2k19 hackathon.

Ek dit jier ferskynde in yndieling yn spoaren, dy't earder net bestie: Media (dêr't wy oan meidiene), Kommunikaasje, Ynfrastruktuer, Ynhâld en Entertainment. Wy hiene machtige konkurrinten. Bygelyks, wy waarden hieltyd motivearre troch de senior ûntwerper fan VK Ilya, dy't yn ús keamer kaam en prototypen fan it idee fan syn team sjen liet.

Idea

- Ik helle prizen yn hast alle hackathons dêr't ik meidwaan oan, en ik ferwachte itselde fan de ynterne hackathon dizze winter. (danya wie fertrouwen yn himsels)

Us (spesifyk Danina's) idee wie yn earste ynstânsje dit: wy woenen it ûnderwerp fan muzykgeneraasje ferkenne + alles op it apparaat hawwe, oars soe it "te backend" wêze. De hackathon begûn mei brainstorming - wy tochten oer wat wy koenen betinke. It generearjen fan muzyk is nijsgjirrich, mar ik wol it brûker-ôfhinklik meitsje. Guon knoppen? Miskien tekenje op it skerm en generearje muzyk basearre op it? Tagelyk learden wy fan 'e jonges fan it Muzykteam hoe't wy de nûmers kinne tafoegje dy't wy nedich wiene. Mar it like noch net hielendal goed. Buorteams wurken fleurich oan wat op har laptops en soargen foar frustraasje.

- Wat as jo loftgitaar werkenne, as jo in gitaar spylje, en ôfhinklik fan dit, it lûd fan 'e gitaar spylje? (Tema)

Bingo! It idee is militant, en wy hawwe de krêft om alles op in geweldige manier te regeljen. Foar bewegingsherkenning is der posenet, en se is hiel ok (ek mobile-friendly). Litte wy pretendearje!

Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen

beslút

De wichtichste taken binne it meitsjen fan in raster op it apparaat (it moat echt wêze) en learje om bewegingen te werkennen. Egor begon te portearjen, Tyoma begon te tinken oer hokker bewegingen ynteressant wêze soe om op te nimmen (gewoan in gitaar - saai), en Danya en ik begonen se te erkennen. Mar dit fereasket gegevens. Wat is it ferskil tusken in PRO en in amateur? PRO hat in kluster mei in GPU - dat is ien ding, twa - PRO sil sammelje gegevens foar himsels as it nedich is. Danya organisearre in stand dêr't rauwe koördinaat gegevens fan in erkende figuer waard opnommen út in kamera, en dan - dûnsjen! Dy nachts learden wy flossend dûnsjen, skibidi и dudtsa.

Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen
Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen

As stand foar it opnimmen fan bewegingen brûkten wy in wurklaptop, dy't earst Dani's gesicht opnaam (hy hie noch gjin inkelde rigel yn JS skreaun) doe't hy in oare ûnbegryplike JS-flater seach.

Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen

- Ik begryp it net, ik haw in nivo flater: print is ferdwûn yn Python! (danya)

Nacht dûnsje (letterlik)

Wy filme nachts in protte oeren fan trochgeande beweging foar de kamera. Se namen it sels op, en fongen ek de ûntwikkelders dy't op 'e flier swalken en twongen se te DANCE. Wy krigen sân ferskillende kombinaasjes - no moasten wy leare om der tusken te ûnderskieden.

Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen
Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen

"Ik kaam elke trije oeren binnen om te kontrolearjen oft de jonges libbe." Pasha rôp: "Wy hawwe in pivot!" - en Danya bûgde mei al syn macht. Doe dûnse elkenien de piip. Doe't Daniil sûnder krêft rûn, iepene Pasha it finster en sei: "Jongens, wy moatte opfriskje." (Madina)

De gegevens fan 'e figuer waarden foarbewurke: de skonken waarden útsmiten, de holle waard gemiddeld, en omboud ta poalkoordinaten relatyf oan' e romp. Wy trainden de bewegingsdetektor mei catboost - mei in úttreksel fan trije sekonden fan 'e gegevensstream fan it model. Oant dizze nacht hienen wy net wurke mei de bibleteek - it die bliken in fjochtsjen te wêzen, en jo kinne it yn iOS sette.

Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen

Se learden mearklassenklassemint, wêrby't ien klasse sa saai mooglik wie - gewoan foar de kamera hingje. It dreechste wie om de "rock" beweging op te nimmen - wy skodden ús holle sa selsleas dat it nei in skoft begon te draaien. En se stekke in hân út mei in "geit", hoewol dit nutteloos wie - posenet hat mar ien punt op 'e hiele hân, it sjocht gjin fingers.

Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen

- Om sawat 3 oere moarns klom Pasha yn in sliepsek en beweecht dêr in oere eksklusyf yn, sprong as in echte kangoeroe. (Madina)

Om 8 oere hinne waarden wy troffen troch in lytse krisis - alles wie stikken en neat wurke, mar doe begon alles ynienen fan himsels te wurkjen. It skroeven fan beide modellen yn 'e applikaasje blykte de grutste útdaging te wêzen - Egor hat de gearstalling letterlik fiif minuten foar de deadline ôfmakke. Litte wy him it wurd jaan:

- Nei't wy it idee fûnen, gie alles tige goed en produktyf. De jonges trainden it raster en dûnsen, en ik hechte PoseNet oan 'e ferhaalkamera yn JavaScript direkt yn' e browser. Inisjele testruns wurken goed en wiene ferrassend fluch. Dêrom, doe't moarns bliek dat WebGL yn WebView ûnferwachts crashte by it wurkjen mei tekstueren foar wat ûnsin en der wie gjin manier om in oplossing te finen, foel ik hast yn wanhoop. Mar it wie te let om op te jaan: wy baarnen fan it idee. Dêrom, mei de lêste fan ús krêft en mei it lêste blikje fan Red Bull, sleepten wy in alternatyf model basearre op CoreML yn 'e iOS-kliïnt ûnderweis en begon native posysjes te folgjen - om se dan nei it model te stjoeren mei dûnsen en krije wat resultaat fan har. Yn essinsje hawwe wy it wurk wer werhelle! In oare útdaging wie it twadde model, dat ynienen begûn te ferwachtsjen mear as tûzen arguminten as input! Xcode generearre in ynterface foar it dat soe gewoan ûnrealistysk te brûken direkt. Gelokkich liet myn kennis fan Objective-C my net yn 'e steek, en waard in elegante oplossing fûn. (Egor)

Pitching

Op freed, om 14 oere wie d'r in deadline om in fideo oer it projekt te uploaden - ferskate teams kamen it net op 'e tiid en waarden diskwalifisearre. En om 14:40 hienen wy in pitch foar de spoarkurators yn ferbân mei it produkt. Wy hiene jonges fan it fideo- en muzykteam, en se liken alles oer it fjild te leuken. Wy kamen op it twadde plak yn ús baan (wy woenen earst, want wy ha sa'n tof projekt!) en kamen yn de finale (twa teams fan ús baan ha kwalifisearre).

- Dit jier wie ik foar it earst kurator fan in ynterne hackathon. Ik sil mei bedaring sizze: it wie ekstreem lestich om it wurk te evaluearjen. It nivo fan alle ploegen sûnder útsûndering wie net te leauwen. In funksje moat net allinich technologysk avansearre wêze, net allinich "ticht by produksje," net allinich "potinsjeel nuttich foar ús produkten." It winnende projekt moat oan al dizze kritearia tagelyk foldwaan. It liket de jonges slagge. (Andrei)

Wy hienen ús lêste pitching om 17 oere. Tsjin dizze tiid wie it nedich om in oare demo te meitsjen, dizze kear foar it heule team, en de sjuery wie oars - de technysk direkteur, de produktdirekteur en de marketingdirekteur.

Jûns om fiif oere wie it foarby - wy gongen nei hûs op bêd, neat wisten fan de resultaten.

De resultaten binne úteinlik

De resultaten waarden pas moandei bekend makke. Earst hawwe se de winners fan 'e spoaren útrikt (net ús gefal - lit my jo herinnerje, wy wiene twadde), dan stimme de lieders fan it publyk (net wy), en dan de tredde (en dit binne ek net wy), de twadde (wer, net ús) en, as lêste, ús.

Hjir binne de projekten wêrmei't wy moatte konkurrearje:

2e plak - responsive stim assistint;
3e plak - tiidline fan ynterne flaters;
De People's Choice Award is in oantinken oan kommende peteargearkomsten.

- Dit is de bêste hackathon dêr't ik ea oan meidien haw. Der wie folle mear riden as sels by Junction. (danya)

- Ik wurke tige mei kollega's fan in folslein oare ôfdieling - ik hie noch noait earder oanrekke masine learen, it like my in soarte fan magy, mar no is it net sa. (Egor)

- It wie heul cool om diel te wurden fan sa'n cool team mei sa'n cool projekt. Yn ien dei slagge it my om ûntwerper, fideograaf, lûdingenieur, redakteur, muzikant en copywriter te wurden! Ik wie ek de iennichste dy't sliepe koe. (Tema)

It libben nei de hackathon

De measte projekten ûntwikkele by hackathons meitsje it net om ferkeap foar ferskate redenen: in feroaring fan fokus, kompleksiteit fan ymplemintaasje, wat ûnfoarsjoen yn 'e ymplemintaasje. In ynterne hackathon is gjin útsûndering.

Dochs listje wy de projekten dy't it ljocht seagen:

  • elkenien syn favorite Vinci;
  • brûker komptabiliteit kontrôle, dy't lansearre op 14 febrewaris 2018;
  • красивые posters foar koarte ynstjoerings;
  • en in oantal ynterne funksjes dêr't wy graach oer prate, mar wy kinne net :)

Hoe't wy in ynterne hackathon wûnen troch skibidi, flossing en javascript te learen

Boarne: www.habr.com

Add a comment