Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript

VK gen yon tradisyon fre - yon Hackathon entèn, nan ki sèlman mesye ki soti nan VKontakte ka patisipe. Mwen pral di ou sou hackathon a sou non ekip la ki te pran premye plas ane sa a epi ki te mouri nan fatig nan antye li yo, men jere yo eseye soti yon detektè mouvman dans pou kamera a istwa.

Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript

Non mwen se Pòl, Mwen dirije ekip rechèch VKontakte tèt la epi mwen gen yon atitid cho anvè hackathon: kòm yon patisipan (Junction oswa yon kantite deephacks) ak dènyèman kòm yon konsèvatè (VK hackathon oswa ka VKontakte nan Junction - nan chemen an, sa a te premye fwa a. Mwen te patisipe gen konpayi Ris). Nou kenbe VK Hackathon, ouvè pou tout moun, pou katriyèm ane (dènye fwa nou te monte nan Katye Jeneral Hermitage a), epi yon pati enpòtan nan ekip teknik nou an te patisipe nan li anvan yo rantre nan VK.

Yon Hackathon entèn pèmèt ekip la tèt li fè eksperyans anpil ak platfòm la, teste diferan lide epi jeneralman pran plezi. Yon diferans enpòtan se ke solisyon yo ka pi plis entegre nan VK, ki ba nou opòtinite pou reyalize pwototip enteresan.

Hackathon a pran plas nan Singer House la tout lajounen - dwa nan mitan semèn nan, Katye Jeneral la vire nan yon mouvman minwi. Li komik pou w gade kijan pwodui netwayaj yo gade alantou an sipriz nan maten an - yon biwo nòmalman vid a 6 am toudenkou vin vin plen ak moun ki erise ki deplase tankou zonbi epi rele: "Senk èdtan rete!" Oswa lè ou antre nan kwizin nan a twa nan maten epi li pran sant tankou dòtwa inivèsite pandan sesyon yo: bwason enèji, pitza ak panik. Sa a, nan kou, rive nan yon jou òdinè, men li la ra sou yon echèl masiv konsa.

Twa hackathon entèn anvan yo te fèt nan sezon lete an. Nan 2019, nou deside pa gaspiye tan nan vetiy epi tou kenbe yon Hackathon sezon fredi - de hackathon yo pi bon pase yon sèl, paske sa a se yon opòtinite fre fè eksperyans ak aplike yon lide pou ki pa gen ase tan nan ritm abityèl la. Règ yo te chanje tou: deja yon ekip te kapab gen yon maksimòm de twa moun, men ane sa a gen kat, men youn pa ekri kòd, men espesyalize nan yon lòt bagay. Li te posib yo envite konsèpteur, manadjè pwodwi, tèsteur, mache ak lòt mesye nan ekip la. Yon total 38 ekip te patisipe nan Hackathon sa a.

Dreamtim (plis jisteman, youn nan 38)

Nou rive nan yon akò avèk Danei e ansanm nou konvenk Egor и Tyoma rantre nan ekip la. Kòm espere, modèl yo te an chaj nan nou, Egor te an chaj nan iOS, Tyoma te an chaj nan pwodiksyon ak konsepsyon. Devlopman mobil + konsepsyon + yon ti aprantisaj machin ak backend se kle nan siksè nan Hackathon 2k19 la.

Menm ane sa a, yon divizyon an tren parèt, ki pa t egziste anvan: Medya (nan ki nou te patisipe), Kominikasyon, Enfrastrikti, Kontni ak Divètisman. Nou te gen konpetitè pwisan. Pou egzanp, nou te toujou ap motive pa designer nan ansyen nan VK Ilya, ki te antre nan chanm nou an epi li te montre pwototip lide ekip li a.

Lide

— Mwen te pran prim nan prèske tout pirataj mwen te patisipe nan, e mwen te espere menm bagay la nan pirataj entèn sezon fredi sa a. (Danya te gen konfyans nan tèt li)

Lide nou an (espesyalman Danina a) te okòmansman sa a: nou te vle eksplore sijè a nan jenerasyon mizik + gen tout bagay sou aparèy la, otreman li ta "twò backend". Hackathon a te kòmanse ak brase lide - nou te panse sou sa nou ta ka vini ak. Jenere mizik se enteresan, men mwen vle fè li depandan itilizatè. Kèk bouton? Petèt trase sou ekran an ak jenere mizik ki baze sou li? An menm tan, nou te aprann nan men mesye yo nan ekip Mizik la kòman yo ajoute tracks nou bezwen yo. Men, li toujou pa t 'sanble byen dwat. Ekip vwazen yo t ap travay ak kè kontan sou yon bagay sou laptop yo epi yo te lakòz fristrasyon.

— E si ou rekonèt gita lè, tankou si w ap jwe yon gita, epi tou depann de sa a, jwe son gita a? (Sijè)

Bingo! Lide a se militan, epi nou gen pouvwa pou fè aranjman pou tout bagay nan yon bon fason. Pou rekonesans mouvman gen posenet, epi li trè ok (tou mobil-zanmitay). Ann pran pòz!

Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript

desizyon

Travay prensipal yo se kreye yon kadriyaj sou aparèy la (li dwe reyèl) epi aprann rekonèt mouvman. Egor te kòmanse pòtaj, Tyoma te kòmanse reflechi sou ki mouvman ki ta enteresan yo enkòpore (jis yon gita - raz), ak Danya ak mwen te kòmanse rekonèt yo. Men, sa mande done. Ki diferans ki genyen ant yon PRO ak yon amatè? PRO gen yon gwoup ak yon GPU - sa a se yon sèl bagay, de - PRO pral kolekte done pou tèt li lè li bezwen li. Danya te òganize yon kanpe kote done kowòdone anvan tout koreksyon nan yon figi rekonèt yo te anrejistre nan yon kamera, ak Lè sa a - danse! Jou lannwit sa a nou te aprann danse fil dan, skibidi и dudtsa.

Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript
Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript

Kòm yon kanpe pou anrejistreman mouvman, nou te itilize yon laptop travay, ki premye anrejistre figi Dani a (li pa te ekri yon sèl liy nan JS anvan) lè li te wè yon lòt erè JS enkonpreyansib.

Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript

— Mwen pa konprann, mwen gen yon erè nivo: enprime te disparèt nan Python! (Danya)

Dans lannwit (literalman)

Nou te filme plizyè èdtan nan mouvman kontinyèl devan kamera a nan mitan lannwit. Yo anrejistre li tèt yo, epi tou kenbe devlopè yo ki moute desann sou planche a ak FÒSE yo DANSE. Nou te resevwa sèt konbinezon diferan - kounye a nou te dwe aprann distenge ant yo.

Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript
Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript

"Mwen te vini chak twa èdtan pou tcheke si mesye yo te vivan." Pacha rele byen fò: "Nou gen yon pivot!" - ak Danya flechi ak tout fòs li. Lè sa a, tout moun danse tiyo a. Lè Daniil te manke fòs, Pasha te louvri fenèt la epi li di: "Mesye, nou bezwen rafrechi." (Madina)

Done ki soti nan figi a te pretrete: janm yo te jete deyò, tèt la te mwayèn, ak konvèti nan kowòdone polè relatif nan tors la. Nou fòme detektè mouvman an lè l sèvi avèk catboost - lè l sèvi avèk yon ekstrè twa-dezyèm nan kouran done ki soti nan modèl la. Jouk lannwit sa a nou pa t 'te travay ak bibliyotèk la - li te tounen soti nan yon sèl konba, epi ou ka mete l' nan iOS.

Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript

Yo te anseye klasifikasyon milti-klas, ak yon klas yo te kòm raz ke posib - jis pandye alantou devan kamera a. Bagay ki pi difisil la se te anrejistre mouvman "wòch la" - nou souke tèt nou tèlman dezenterese ke apre yon ti tan li te kòmanse vire. Apre sa, yo mete yon men ak yon "kabrit", byenke sa a te initil - posenet gen sèlman yon pwen sou men an antye, li pa wè dwèt.

Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript

— Apeprè 3 nan maten, Pasha te monte nan yon sak dòmi epi li te deplase sèlman nan li pou yon èdtan, sote tankou yon kangouwou reyèl. (Madina)

Anviwon 8 am nou te frape pa yon ti kriz - tout bagay te kraze e anyen pa t ap travay, men Lè sa a, toudenkou tout bagay te kòmanse travay poukont li. Vis tou de modèl nan aplikasyon an te tounen vin pi gwo defi a - Egor te fini asanble a literalman senk minit anvan dat limit la. Ann ba li pawòl la:

— Apre nou jwenn lide a, tout bagay te ale trè byen ak pwodiktif. Mesye yo te antrene griy la epi yo danse, epi mwen tache PoseNet ak kamera istwa a nan JavaScript dirèkteman nan navigatè a. Premye tès kouri te travay byen epi yo te etonan vit. Se poutèt sa, lè nan maten an li te tounen soti ke WebGL nan WebView san atann te fè aksidan lè w ap travay ak tèkstur pou kèk istwa san sans epi pa te gen okenn fason yo jwenn yon solisyon, mwen prèske tonbe nan dezespwa. Men, li te twò ta bay moute: nou te boule ak lide a. Se poutèt sa, ak dènye nan fòs nou yo ak ak dènye bwat ti towo bèf wouj la, nou trennen yon modèl altènatif ki baze sou CoreML nan kliyan iOS la sou ale a epi yo te kòmanse swiv poze natif natal - yo nan lòd yo voye yo bay modèl la ak dans. epi jwenn kèk rezilta nan pwodiksyon an. Nan sans, nou repete travay la tout lòt peyi sou ankò! Yon lòt defi te dezyèm modèl la, ki toudenkou te kòmanse atann plis pase mil agiman kòm opinyon! Xcode te pwodwi yon koòdone pou li ki ta tou senpleman ireyèl pou itilize dirèkteman. Erezman, konesans mwen an nan Objective-C pa te kite m 'desann, epi yo te jwenn yon solisyon elegant. (Yegor)

Pitching

Vandredi, a 14 p.m., te gen yon dat limit pou telechaje yon videyo sou pwojè a—plizyè ekip pa t rive alè epi yo te diskalifye. Ak nan 14:40 nou te gen yon anplasman nan konsèvatè track yo ki gen rapò ak pwodwi a. Nou te gen mesye nan ekip Videyo ak Mizik, e yo te sanble yo renmen tout bagay sou anplasman an. Nou te pran dezyèm plas nan track nou an (nou te vle premye, paske nou gen yon pwojè fre konsa!) epi nou te fini nan final yo (de ekip nan track nou an kalifye).

— Ane sa a mwen te konsèvatè yon Hackathon entèn pou premye fwa. Mwen pral di ak kontrent: li te trè difisil pou evalye travay la. Nivo tout ekip yo san eksepsyon te depase kwayans. Yon karakteristik pa ta dwe jis teknolojik avanse, pa sèlman "pre pwodiksyon," pa sèlman "potansyèlman itil pou pwodwi nou yo." Pwojè genyen an dwe satisfè tout kritè sa yo ansanm. Sanble mesye yo te reyisi. (Andre)

Nou te gen pitching final nou an a 17:40 p.m. Nan tan sa a, li te nesesè yo prepare yon lòt Demo, fwa sa a pou tout Ekip la, ak jiri a te diferan - direktè teknik, direktè pwodwi ak direktè maketing.

A senk nan aswè li te tout fini - nou te ale lakay ou nan kabann, pa konnen anyen sou rezilta yo.

Rezilta yo finalman

Rezilta yo te anonse sèlman nan Lendi. Premyèman, yo bay ganyan yo nan tren yo (pa ka nou an - kite m 'fè ou sonje, nou te dezyèm), Lè sa a, lidè yo nan odyans lan vote (pa nou), ak Lè sa a, twazyèm lan (e sa a se tou pa nou), la. dezyèm (ankò, pa nou) epi, finalman, nou.

Men pwojè nou te gen pou nou fè konpetisyon avèk yo:

2yèm plas - asistan vwa ki reponn;
3yèm plas - kalandriye erè entèn yo;
Prim Chwa Pèp la se yon rapèl reyinyon chat kap vini yo.

— Sa a se pi bon Hackathon mwen te janm patisipe nan. Te gen plis kondwi pase menm nan Junction. (Danya)

— Mwen vrèman te renmen travay ak kòlèg ki soti nan yon depatman konplètman diferan - Mwen pa t janm manyen aprantisaj machin anvan, li te sanble tankou yon kalite maji pou mwen, men kounye a li pa tankou sa. (Yegor)

— Li te trè fre pou w vin fè pati yon ekip fre konsa ak yon pwojè fre konsa. Nan yon sèl jou mwen jere yo dwe yon designer, videyograf, enjenyè son, editè, mizisyen ak copywriter! Mwen te tou sèl moun ki te jere dòmi. (Sijè)

Lavi apre Hackathon la

Pifò pwojè devlope nan hackathon pa fè li nan lavant pou plizyè rezon: yon chanjman nan konsantre, konpleksite nan aplikasyon, yon bagay enprevi nan aplikasyon an. Yon hackathon entèn pa gen okenn eksepsyon.

Men, nou lis pwojè yo ki te wè limyè a nan jounen an:

  • pi renmen tout moun Vinci;
  • tcheke konpatibilite itilizatè, ki te lanse 14 fevriye 2018;
  • красивые postè pou antre kout;
  • ak yon kantite karakteristik entèn ke nou ta kontan pale sou, men nou pa kapab :)

Ki jan nou te genyen yon Hackathon entèn lè nou aprann skibidi, fil dantè ak javascript

Sous: www.habr.com

Add nouvo kòmantè