Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript

VK ngagaduhan tradisi anu saé - hackathon internal, dimana ngan ukur lalaki ti VKontakte tiasa ilubiung. Kuring gé ngabejaan Anjeun tentang hackathon atas nama tim anu lumangsung kahiji taun ieu sareng maot kacapean dina entirety na, tapi junun coba kaluar detektor gerakan tari pikeun kaméra carita.

Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript

Nami abdi Paul, Kuring mingpin tim panalungtikan VKontakte luhur jeung boga sikep haneut kana hackathons: salaku pamilon (Simpang atawa sajumlah deephacks) jeung anyar salaku curator a (VK hackathon atawa kasus VKontakte di simpang - ku jalan, ieu kahiji kalina. Kuring milu aya pausahaan Rusia). Kami ngayakeun VK Hackathon, kabuka pikeun sadayana, pikeun taun kaopat (panungtungan waktos urang naek ka Markas Umum Pertapaan), sareng bagian penting tina tim téknis urang milu dina éta sateuacan ngagabung VK.

Hackathon internal ngamungkinkeun tim sorangan pikeun ékspérimén pisan sareng platform, nguji ideu anu béda sareng umumna seneng-seneng. Beda penting nyaéta yén solusi tiasa langkung terpadu kana VK, anu masihan urang kasempetan pikeun ngahontal prototipe anu pikaresepeun.

Hackathon lumangsung di Singer House sadidinten - pas tengah minggu, Markas janten gerakan tengah wengi. Lucuna ningali kumaha tukang beberesih katingali reuwas isuk-isuk - kantor biasana kosong jam 6 énjing ujug-ujug dipinuhan ku jalma-jalma shaggy anu gerak sapertos zombie sareng ngagorowok: "Lima jam deui!" Atawa mun anjeun leumpang ka dapur jam tilu isuk-isuk sarta bau kawas asrama universitas salila sesi: inuman énérgi, pizza jeung panik. Ieu, tangtosna, kajantenan dina dinten biasa, tapi jarang dina skala anu ageung.

Tilu hackathon internal saméméhna lumangsung dina usum panas. Dina 2019, kami mutuskeun pikeun henteu miceunan waktos dina hal-hal remeh sareng ogé ngayakeun hackathon usum tiris - dua hackathon langkung saé tibatan hiji, sabab ieu mangrupikeun kasempetan anu saé pikeun ékspérimén sareng ngalaksanakeun ideu anu henteu cekap waktos dina wirahma biasa. Aturan ogé geus robah: saméméhna tim bisa boga maksimum tilu jalma, tapi taun ieu aya opat, tapi hiji teu nulis kode, tapi specializes di hal sejenna. Ieu mungkin pikeun ngundang désainer, manajer produk, testers, marketers jeung guys séjén pikeun tim. Jumlahna aya 38 tim anu milu dina hackathon ieu.

Dreamtim (leuwih tepatna, salah sahiji 38)

Urang datang ka hiji perjangjian jeung Danei sarta babarengan urang yakin Égor и Tyoma gabung tim. Saperti nu diharapkeun, modél éta jawab kami, Egor éta jawab ios, Tyoma éta jawab produksi jeung desain. Pangwangunan mobile + desain + pembelajaran mesin sakedik sareng backend mangrupikeun konci pikeun suksés dina hackathon 2k19.

Malah taun ieu, division kana lagu mucunghul, nu teu aya saméméh: Média (dimana urang milu), Komunikasi, Infrastruktur, Eusi jeung Hiburan. Kami ngagaduhan pesaing anu kuat. Salaku conto, kami terus-terusan ngamotivasi ku desainer senior VK Ilya, Anu sumping ka kamar kami sarta némbongkeun prototipe gagasan timnya urang.

gagasan

- Kuring nyokot hadiah di ampir kabéh hackathon I ilubiung dina, sarta kuring ekspektasi sarua ti hackathon internal usum kieu. (Danya yakin kana dirina)

Gagasan kami (khususna Danina) mimitina kieu: urang hoyong ngajalajah topik generasi musik + gaduh sadayana dina alat, upami henteu, éta bakal "teuing backend". Hackathon dimimitian ku brainstorming - urang mikir ngeunaan naon bisa urang datang nepi ka. Ngahasilkeun musik anu pikaresepeun, tapi kuring hoyong ngajantenkeun gumantung kana pangguna. Sababaraha tombol? Panginten ngagambar dina layar sareng ngahasilkeun musik dumasar kana éta? Dina waktu nu sarua, urang diajar ti guys ti tim Musik kumaha carana nambahkeun lagu urang diperlukeun. Tapi tetep henteu sigana leres. Tim tatangga riang ngusahakeun hiji hal dina laptopna sareng nyababkeun frustasi.

— Kumaha lamun ngakuan gitar hawa, saolah-olah anjeun maén gitar, sarta gumantung kana ieu, maén sora gitar? (Jejer)

Bingo! Ide ieu militan, sarta kami boga kakuatan pikeun ngatur sagalana dina cara hébat. Pikeun pangakuan gerak aya posenet, jeung manehna pisan ok (ogé mobile-friendly). Hayu urang pura-pura!

Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript

kaputusan

Tugas utama nyaéta nyiptakeun grid dina alat (éta kedah nyata) sareng diajar ngakuan gerakan. Egor mimiti porting, Tyoma mimiti mikir ngeunaan naon gerakan bakal metot pikeun ngasupkeun (ngan gitar - boring), sarta Danya jeung kuring mimiti recognizing aranjeunna. Tapi ieu merlukeun data. Naon bedana PRO sareng amatir? PRO ngagaduhan klaster sareng GPU - éta hiji hal, dua - PRO bakal ngumpulkeun data nyalira nalika peryogina. Danya ngatur hiji stand dimana data koordinat atah inohong dipikawanoh dirékam tina kaméra, lajeng - menari! Peuting éta urang diajar nari flossing, skibidi и dudtsa.

Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript
Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript

Salaku stand pikeun ngarékam gerakan, kami nganggo laptop karya, anu mimiti ngarékam raray Dani (anjeunna henteu kantos nyerat hiji baris dina JS sateuacanna) nalika anjeunna ningali kasalahan JS anu teu kaharti.

Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript

- Kuring teu ngarti, Kuring boga kasalahan tingkat: print geus ngiles di Python! (Danya)

Nari peuting (hartosna)

Urang syuting loba jam gerakan kontinyu di hareup kaméra peuting. Aranjeunna dirékam sorangan, sarta ogé bray pamekar anu wandered onto lantai jeung maksa aranjeunna tari. Kami ngagaduhan tujuh kombinasi anu béda - ayeuna urang kedah diajar ngabédakeun antara aranjeunna.

Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript
Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript

"Kuring datang unggal tilu jam pikeun mariksa naha éta jalma hirup." Pasha ngagorowok: "Kami gaduh pangsi!" - sarta Danya flexed kalayan sagala kakuatan na. Tuluy saréréa nari pipina. Nalika Daniil béak kakuatan, Pasha muka jandela sareng nyarios: "Guys, urang kedah seger." (Madina)

Data ti inohong ieu preprocessed: suku anu dialungkeun kaluar, sirah ieu averaged, sarta dirobah jadi koordinat polar relatif ka awak. Kami ngalatih detektor gerak nganggo catboost - nganggo kutipan tilu detik tina aliran data tina modél. Dugi ka wengi ieu kami henteu acan damel sareng perpustakaan - tétéla janten tempur, sareng anjeun tiasa nempatkeun éta dina ios.

Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript

Aranjeunna ngajarkeun klasifikasi multi-kelas, sareng hiji kelas janten pikaboseneun sabisa - ngan nongkrong di payuneun kaméra. Hal anu paling hese nyaéta pikeun ngarékam gerakan "batu" - urang ngoyagkeun sirah urang tanpa pamrih anu saatos sababaraha waktos mimiti muter. Jeung maranéhna nempatkeun kaluar leungeun kalawan "embe", sanajan ieu euweuh gunana - posenet boga ngan hiji titik dina sakabeh leungeun, teu ningali ramo.

Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript

- Kira-kira jam 3 isuk-isuk Pasha naék kana kantong saré sareng ngalih sacara éksklusif di jerona sajam, ngaluncat sapertos kangguru nyata. (Madina)

Kira-kira jam 8 énjing kami ditarajang ku krisis leutik - sadayana rusak sareng teu aya anu tiasa dianggo, tapi teras sadayana ujug-ujug ngamimitian damel nyalira. Screwing duanana model kana aplikasi tétéla tangtangan pangbadagna - Egor réngsé assembly sacara harfiah lima menit saméméh deadline. Hayu urang masihan anjeunna lantai:

- Saatos kami mendakan ideu, sadayana lancar sareng produktif. The guys dilatih grid jeung menari, na kuring napel PoseNet kana kaméra carita dina JavaScript langsung dina browser nu. Uji coba awal damel saé sareng héran gancang. Ku alatan éta, nalika isuk-isuk tétéla yén WebGL di WebView ngadadak nabrak nalika gawé bareng tékstur pikeun sababaraha omong kosong tur teu aya jalan pikeun manggihan solusi, kuring ampir murag kana asa. Tapi éta telat nyerah: kami ngaduruk ideu. Ku alatan éta, ku kakuatan panungtungan urang jeung jeung kaléng panungtungan of banteng beureum, urang nyered model alternatif dumasar kana CoreML kana klien ios on lebet tur mimitian ngalacak penah natively - guna lajeng ngirim aranjeunna ka model jeung tarian. sareng kéngingkeun sababaraha hasil dina kaluaran. Intina, urang ngulang padamelan deui! tantangan sejen éta modél kadua, nu dumadakan mimiti nyangka leuwih ti sarébu argumen salaku input! Xcode ngahasilkeun antarbeungeut pikeun éta anu ngan saukur teu realistis pikeun dianggo langsung. Untungna, pangaweruh kuring ngeunaan Objective-C henteu ngantep kuring turun, sareng aya solusi anu elegan. (Egor)

Pitching

Dinten Jumaah, jam 14 sonten, aya wates waktu pikeun ngamuat pidéo ngeunaan proyék-sababaraha tim henteu dugi kana waktosna sareng disqualified. Sarta di 14:40 urang kungsi pitch ka curators lagu patali produk. Urang tadi guys ti tim Video na Musik, sarta aranjeunna seemed resep sagalana ngeunaan pitch nu. Urang nyokot tempat kadua di lagu urang (urang hayang kahiji, sabab urang boga misalna hiji proyék cool!) Sarta réngsé nepi di final (dua tim ti lagu urang mumpuni).

- Taun ieu kuring janten kurator hackathon internal pikeun kahiji kalina. Kuring bakal nyebutkeun kalawan restraint: éta pisan hésé evaluate karya. Tingkat sadaya tim tanpa iwal éta luar biasa. A fitur teu kudu ngan jadi téhnologis maju, teu ngan "deukeut ka produksi," teu ngan "berpotensi mangpaat pikeun produk urang". Proyék unggul kedah nyumponan sadayana kriteria ieu sakaligus. Sigana guys suksés. (Андрей)

Urang tadi pitching final kami di 17:40 p.m. Ku waktu ieu, perlu nyiapkeun demo sejen, waktos ieu pikeun sakabéh Tim, sarta juri éta béda - diréktur teknis, diréktur produk jeung diréktur pamasaran.

Jam lima soré éta sadayana - urang balik ka bumi, teu terang nanaon ngeunaan hasilna.

Hasilna tungtungna

Hasilna diumumkeun ngan dina Senén. Kahiji, aranjeunna dileler winners tina lagu (sanes kasus urang - hayu atuh ngingetkeun anjeun, kami kadua), lajeng pamingpin panongton sora (sanes urang), lajeng katilu (jeung ieu ogé lain urang), nu. kadua (deui, moal urang) jeung, tungtungna, urang.

Ieu mangrupikeun proyék anu urang kedah bersaing:

tempat 2nd - asisten sora responsif;
tempat 3 - timeline kasalahan internal;
People's Choice Award mangrupikeun panginget pikeun rapat obrolan anu bakal datang.

- Ieu hackathon pangsaéna anu kuring kantos milu. Aya langkung seueur drive tibatan di Junction. (Danya)

- Abdi leres-leres resep damel sareng kolega ti departemen anu béda-béda - Kuring henteu pernah keuna diajar mesin sateuacanna, sigana mah sihir pikeun kuring, tapi ayeuna henteu sapertos kitu. (Egor)

- Éta saé pisan janten bagian tina tim anu saé kalayan proyék anu saé sapertos kitu. Dina hiji poe kuring junun jadi desainer, videographer, sound engineer, redaktur, musisi jeung copywriter! Kuring ogé hiji-hijina anu junun saré. (Jejer)

Kahirupan sanggeus hackathon

Kaseueuran proyék anu dikembangkeun dina hackathon henteu ngajantenkeun penjualan ku sababaraha alesan: parobihan fokus, pajeulitna palaksanaan, hal anu teu kaduga dina palaksanaan. Hiji hackathon internal aya iwal.

Tapi, urang daptar proyék anu ningali cahaya panonpoe:

  • karesep sarerea Vinci;
  • pariksa kasaluyuan pamaké, nu dibuka dina Pébruari 14, 2018;
  • красивые poster pikeun éntri pondok;
  • sareng sajumlah fitur internal anu bakal urang bahas, tapi urang henteu tiasa :)

Kumaha urang meunang hackathon internal ku diajar skibidi, flossing sareng JavaScript

sumber: www.habr.com

Tambahkeun komentar