Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript

VK nduweni tradhisi sing apik - hackathon internal, sing mung bisa melu wong lanang saka VKontakte. Aku bakal pitutur marang kowe bab hackathon atas jenenge tim sing njupuk Panggonan pisanan ing taun iki lan tilar donya amarga kesel kabeh, nanging bisa nyoba detektor gerakan tari kanggo kamera crita.

Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript

Jenengku yaiku Paulus, Aku mimpin tim riset VKontakte ndhuwur lan duwe sikap anget marang hackathon: minangka peserta (Junction utawa sawetara deephacks) lan bubar minangka kurator (VK hackathon utawa kasus VKontakte ing Junction - dening cara, iki pisanan pisanan. Aku melu ana perusahaan Rusia). Kita nganakake VK Hackathon, mbukak kanggo kabeh wong, kanggo taun kaping papat (pungkasan kita munggah menyang Markas Umum Pertapaan), lan bagean penting saka tim teknis kita melu sadurunge gabung karo VK.

Hackathon internal ngidini tim kasebut nyoba akeh banget karo platform kasebut, nyoba macem-macem ide lan umume seneng-seneng. Bentenane penting yaiku solusi bisa digabungake menyang VK, sing menehi kesempatan kanggo entuk prototipe sing menarik.

Hackathon njupuk Panggonan ing Singer House sedina muput-tengen ing tengah minggu, Markas dadi gerakan tengah wengi. Pancen lucu ndeleng kepiye tukang resik katon kaget ing wayah esuk - kantor sing biasane kosong jam 6 esuk tiba-tiba diisi karo wong-wong sing shaggy sing obah kaya nir lan bengok-bengok: "Tinggal limang jam!" Utawa nalika lumaku menyang pawon jam telu esuk lan mambu kaya asrama universitas sajrone sesi: minuman energi, pizza lan gupuh. Iki, mesthi, kedadeyan ing dina biasa, nanging arang banget ing skala gedhe.

Telung hackathon internal sadurunge ditindakake ing musim panas. Ing taun 2019, kita mutusake ora mbuwang wektu kanggo perkara-perkara cilik lan uga nganakake hackathon musim dingin - loro hackathon luwih apik tinimbang siji, amarga iki minangka kesempatan sing apik kanggo eksperimen lan ngetrapake ide sing ora cukup wektu ing irama biasa. Aturan uga wis diganti: sadurunge tim bisa duwe maksimum telung wong, nanging ing taun iki ana papat, nanging siji ora nulis kode, nanging spesialisasine ing mergo. Sampeyan bisa ngundang desainer, manajer produk, penguji, pemasar lan wong lanang liyane menyang tim. Gunggunge 38 tim sing melu hackathon iki.

Dreamtim (luwih tepate, salah siji saka 38)

We teka menyang persetujuan karo Danei lan bebarengan kita nggawe percoyo Egor ΠΈ Tyoma melu tim. Kaya sing dikarepake, model kasebut tanggung jawab kanggo kita, Egor ngurusi iOS, Tyoma tanggung jawab kanggo produksi lan desain. Pangembangan seluler + desain + sinau mesin cilik lan backend minangka kunci sukses ing hackathon 2k19.

Malah ing taun iki, divisi menyang trek muncul, sing durung ana sadurunge: Media (ing kita melu), Komunikasi, Infrastruktur, Konten lan Hiburan. Kita duwe pesaing sing kuat. Contone, kita terus-terusan dimotivasi dening desainer senior VK Ilya, sing teka ing kamar kita lan nuduhake prototipe saka idea tim kang.

Idea

- Aku njupuk hadiah ing meh kabeh hackathon aku melu, lan aku samesthine padha saka hackathon internal mangsa iki. (Danya wis yakin karo awake dhewe)

Ide kita (khususe Danina) wiwitane iki: kita pengin njelajah topik generasi musik + duwe kabeh ing piranti kasebut, yen ora bakal "banget mburi". Hackathon diwiwiti kanthi brainstorming - kita mikir babagan apa sing bisa ditindakake. Nggawe musik iku menarik, nanging aku pengin nggawe gumantung pangguna. Sawetara tombol? Mungkin nggambar ing layar lan ngasilake musik adhedhasar? Ing wektu sing padha, kita sinau saka wong lanang saka tim Musik carane nambah trek sing dibutuhake. Nanging isih katon ora bener. Tim tangga-tanggane padha seneng-seneng nggarap apa wae ing laptop lan nyebabake frustasi.

β€” Apa yen sampeyan ngenali gitar udhara, kaya sing muter gitar, lan gumantung iki, muter swara saka gitar? (Tema)

Bingo! Ide kasebut militan, lan kita duwe kekuwatan kanggo ngatur kabeh kanthi cara sing apik. Kanggo pangenalan gerakan ana posenet, lan dheweke ok banget (uga seluler-loropaken). Ayo padha pura-pura!

Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript

kaputusan

Tugas utama yaiku nggawe kothak ing piranti (kudu nyata) lan sinau kanggo ngenali gerakan. Egor miwiti porting, Tyoma wiwit mikir babagan gerakan apa sing bakal digabungake (mung gitar - mboseni), lan aku lan Danya wiwit ngerti. Nanging iki mbutuhake data. Apa bedane PRO lan amatir? PRO duwe kluster karo GPU - sing siji bab, loro - PRO bakal ngumpulake data kanggo dhewe nalika iku perlu. Danya ngatur ngadeg ing ngendi data koordinat mentah saka tokoh sing diakoni direkam saka kamera, banjur - nari! Bengi iku kita sinau nari flossing, skibidi ΠΈ dudtsa.

Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript
Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript

Minangka stand kanggo ngrekam obahe, kita nggunakake laptop karya, sing pisanan ngrekam pasuryan Dani (dheweke durung nulis siji baris ing JS sadurunge) nalika ndeleng kesalahan JS liyane sing ora bisa dingerteni.

Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript

- Aku ora ngerti, Aku duwe kesalahan tingkat: print wis ilang ing Python! (Danya)

Tari wengi (secara harfiah)

Kita njupuk pirang-pirang jam gerakan terus-terusan ing ngarep kamera ing wayah wengi. Dheweke ngrekam dhewe, lan uga nyekel para pangembang sing mlaku-mlaku ing lantai lan MEKSA supaya TARIAN. Kita entuk pitung kombinasi sing beda - saiki kita kudu sinau mbedakake.

Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript
Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript

"Aku teka saben telung jam kanggo mriksa apa wong lanang isih urip." Pasha mbengok: "Kita duwe poros!" - lan Danya flexed karo kabeh kekuwatane. Banjur kabeh wong nari pipo. Nalika Daniil kentekan tenaga, Pasha mbukak jendhela lan kandha, "Wah, kita kudu seger." (Madina)

Data saka tokoh kasebut wis diproses sadurunge: sikil dibuwang, sirah rata-rata, lan diowahi dadi koordinat polar sing relatif marang awak. Kita nglatih detektor gerakan nggunakake catboost - nggunakake kutipan telung detik saka aliran data saka model kasebut. Nganti wengi iki kita wis ora kerjo karo perpustakaan - iku dadi perang, lan sampeyan bisa sijine iku ing iOS.

Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript

Dheweke ngajar klasifikasi multi-kelas, kanthi siji kelas dadi mboseni - mung nggandhol ing ngarep kamera. Sing paling angel yaiku ngrekam gerakan "rock" - kita goyangake sirah kanthi tanpa pamrih sing sawise sawetara wektu wiwit muter. Lan padha ngetokake tangan karo "wedhus", sanajan iki ora ana gunane - posenet mung duwe siji titik ing kabeh tangan, ora weruh driji.

Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript

- Kira-kira jam 3 esuk, Pasha munggah menyang tas turu lan pindhah-pindhah sacara eksklusif sajrone jam, mlumpat kaya kangaroo nyata. (Madina)

Kira-kira jam 8 esuk, kita ngalami krisis cilik - kabeh rusak lan ora ana sing bisa digunakake, nanging kabeh dumadakan wiwit kerja dhewe. Screw loro model menyang aplikasi dadi tantangan paling gedhe - Egor rampung perakitan secara harfiah limang menit sadurunge deadline. Ayo menehi lantai:

- Sawise kita nemokake ide kasebut, kabeh dadi apik lan produktif. Wong lanang dilatih kothak lan nari, lan aku masang PoseNet menyang kamera crita ing JavaScript langsung ing browser. Tes awal mlaku kanthi apik lan cepet banget. Mulane, nalika esuk ternyata WebGL ing WebView tiba-tiba nabrak nalika nggarap tekstur kanggo sawetara omong kosong lan ora ana cara kanggo nemokake solusi, aku meh ora kentekan niat. Nanging kasep kanggo nyerah: kita padha kobong karo idea. Mulane, kanthi kekuatan pungkasan lan kanthi kaleng abang abang pungkasan, kita nyeret model alternatif adhedhasar CoreML menyang klien iOS nalika lelungan lan wiwit nglacak pose kanthi asli - supaya bisa dikirim menyang model kanthi tarian. lan entuk sawetara asil ing output. Intine, kita mbaleni karya maneh! Tantangan liyane yaiku model kapindho, sing dumadakan wiwit ngarepake luwih saka sewu argumen minangka input! Xcode ngasilake antarmuka sing ora bisa digunakake kanthi langsung. Untunge, kawruh babagan Objective-C ora nguciwani, lan solusi sing elegan ditemokake. (Dadi)

Pitching

Ing dina Jumuah, jam 14, ana tenggat wektu kanggo ngunggah video babagan proyek kasebut - sawetara tim ora teka ing wektu lan didiskualifikasi. Lan ing 14:40 kita wis Jarak menyang kurator trek related kanggo produk. Kita duwe wong lanang saka tim Video lan Musik, lan padha kaya kabeh babagan lapangan. We njupuk Panggonan liya ing trek kita (kita wanted pisanan, amarga kita duwe proyek kelangan!) Lan rampung ing final (loro tim saka trek kita qualified).

- Taun iki aku dadi kurator hackathon internal kanggo pisanan. Aku bakal ngomong kanthi ngendhaleni: angel banget kanggo ngevaluasi karya kasebut. Tingkat kabeh tim tanpa pangecualian ora bisa dipercaya. Fitur kasebut ora mung maju kanthi teknologi, ora mung "cedhak karo produksi," ora mung "berpotensi migunani kanggo produk kita." Proyek sing menang kudu nyukupi kabeh kritΓ©ria kasebut bebarengan. Kayane wong lanang wis sukses. (Andrei)

Kita wis pitching pungkasan ing 17:40 p.m. Ing wektu iki, perlu nyiyapake demo liyane, wektu iki kanggo kabeh Tim, lan juri beda - direktur teknis, direktur produk lan direktur pemasaran.

Ing jam lima sore kabeh wis rampung - kita mulih menyang amben, ora ngerti apa-apa babagan asil.

Asil pungkasanipun

Asil mung diumumake dina Senin. Pisanan, dheweke menehi pemenang trek (dudu kasus kita - supaya aku ngelingake sampeyan, kita padha kaping pindho), banjur para pamimpin pamirsa milih (dudu kita), banjur katelu (lan iki uga dudu kita), kapindho (maneh, ora kita) lan, pungkasanipun, kita.

Iki minangka proyek sing kudu kita saingan:

Panggonan kaping 2 - asisten swara responsif;
Panggonan kaping 3 - garis wektu kesalahan internal;
People's Choice Award minangka pangeling saka rapat-rapat obrolan sing bakal teka.

β€” Iki hackathon paling apik sing aku tau melu. Ana luwih akeh drive tinimbang ing Junction. (Danya)

β€” Aku pancene seneng nggarap kolega saka departemen temen beda - Aku wis tau ndemek machine learning sadurunge, ketoke kaya sawetara jenis Piandel kanggo kula, nanging saiki iku ora kaya. (Dadi)

- Apik banget dadi bagian saka tim sing apik banget kanthi proyek sing apik banget. Ing sawijining dina aku bisa dadi desainer, videographer, sound engineer, editor, musisi lan copywriter! Aku uga mung siji sing bisa turu. (Tema)

Urip sawise hackathon

Umume proyek sing dikembangake ing hackathon ora nggawe dodolan amarga macem-macem alasan: owah-owahan fokus, kerumitan implementasine, soko sing ora dikarepake ing implementasine. Hackathon internal ora kajaba.

Nanging, kita ndhaptar proyek sing katon padhang:

  • favorit saben wong vinci;
  • mriksa kompatibilitas pangguna, sing diluncurake ing 14 Februari 2018;
  • красивыС poster kanggo entri singkat;
  • lan sawetara fitur internal sing kita seneng ngomong, nanging ora bisa :)

Kepiye carane kita menang hackathon internal kanthi sinau skibidi, flossing lan javascript

Source: www.habr.com

Add a comment