Q: Hackathons

Q: Hackathons

Zadnji del trilogije hackathon. IN 1. del Govoril sem o motivaciji za udeležbo na takih dogodkih. Drugi del je bil posvečen napakam organizatorjev in njihovim rezultatom. Zadnji del bo odgovoril na vprašanja, ki niso sodila v prva dva dela.

Povejte nam, kako ste začeli sodelovati na hackathonih.
Študiral sem za magistrski študij na Univerzi v Lappeenranti med reševanjem tekmovanj v analizi podatkov. Moj običajen dan je izgledal takole: vstajanje ob 8, nekaj parov na fakulteti, nato tekmovanja in tečaji do polnoči (medtem ko se šteje oddaja, gledam predavanja ali berem članke). Tako strog urnik je obrodil sadove in zmagal sem na tekmovanju za analizo podatkov MERC-2017 (o katerem se je celo govorilo objava na vozlišču). Zmaga mi je vlila samozavest in ko sem po naključju naletel na informacijo o hackathonu SkinHack 2 v Moskvi, sem se odločil, da obiščem starše in hkrati izvedem, kaj je hackathon.

Sam hackathon je izpadel prav smešno. Na voljo sta bili dve progi za analizo podatkov z jasnimi metrikami in naborom podatkov z denarno nagrado 100 tisoč rubljev. Tretja proga je bila o razvoju aplikacije z nagrado 50 tisočakov in ni bilo udeležencev. V nekem trenutku je organizator povedal, da lahko okence z gumbom brez funkcionalnosti osvoji 50k, ker nagrade ni mogoče izplačati. Nisem se lotil učenja programiranja aplikacij (ne tekmujem tam, kjer me zlahka »obrne«), je bilo zame jasno sporočilo, da na hackathonih ni gneče.

Nato sem sam rešil obe progi analize podatkov. Našel sem puščanje podatkov, ki mi je omogočilo, da dobim idealno hitrost, vendar stolpca s puščanjem ni bilo v testnih podatkih, ki sem jih prejel dve uri pred koncem dogodka (mimogrede, takrat sem razumel, da prisotnost "ciljnega" stolpca v vlaku ne šteje kot puščanje). Istočasno se je odprla lestvica, moja oddaja brez obraza je zasedla tretje mesto od petih, za prvim je bil velik zaostanek in odločil sem se, da ne bom izgubljal časa in odšel.

Ko sem s svežim umom analiziral, kaj se je zgodilo, sem našel kopico napak (ena od mojih navad je, da z beležko v mislih brskam po tem, kar se je zgodilo, in analiziram napake, njihov vzrok in kaj bi lahko spremenili - tako prijetna dediščina polprofesionalne igre pokra). Nekaj ​​pa je bilo zagotovo jasno – hekatoni imajo veliko vrednosti in to sem preprosto moral implementirati. Po tem dogodku sem začel spremljati dogodke in skupine in kasnejši hackathon ni bil dolg. Potem še ena, pa še ena...

Zakaj delaš hackathone ti in ne Kaglo?
Kagle mi trenutno ni všeč. Od določene stopnje spretnosti, brez posebnih razlogov za sodelovanje, kagle postane manj uporaben kot druge dejavnosti. Prej sem veliko sodeloval, očitno mi je uspelo nekako »odlepiti«.

Zakaj hekatoni in ne delo na lastnem projektu?
Všeč mi je zamisel, da s počasnim tempom naredim nekaj kul z lastnimi rokami. Organizirali so se fantje iz ODS Projekti hišnih ljubljenčkov ODS za vse, ki želite konec tedna preživeti ob delu na svojem projektu s podobno mislečimi ljudmi. Mislim, da se jim bom kmalu pridružil.

Kako najdete dogodke?
Glavni vir - hackathon.com (svet) in telegram chat Ruski hekerji (Rusija). Poleg tega se napovedi dogodkov pojavljajo v oglasih na družbenih omrežjih in na linkedinu. Če ne najdete ničesar, lahko pogledate tukaj: mlh.io, devpost.com, hackevents.co, hackalist.org, HackathonsNear.me, hackathon.io.

Ali pred sodelovanjem pripravite načrt rešitve ali se vse odloča sproti? Ali na primer teden dni pred hackathonom mislite: "Tukaj bomo potrebovali takšnega in takega strokovnjaka, morali ga bomo iskati"?
Če je hackathon za hrano, ja, se pripravljam. Nekaj ​​tednov prej ugotovim, kaj bom naredil, ugotovim, kdo bi lahko bil koristen, in zberem ekipo prijateljev ali udeležencev iz preteklih hackathonov.

Je res mogoče hackathon vdreti sam? Kaj storiti, če ni ekipe?
Data science hackathoni so resnični (sem živ primer tega), špecerijskih hackathonov še nisem videl, čeprav tudi meni tako. Na žalost včasih organizatorji omejijo najmanjše število udeležencev v ekipi. Mislim, da je to posledica dejstva, da vsi "samotarji" ne pridejo v finale (to pomeni, da preprosto odidejo s prvimi težavami), sodelovanje v ekipi še vedno zadržuje. Tudi po dogodku se pričakuje, da boste nadaljevali delo na projektu. Z ekipo bo projekt lažje uresničiti.

Na splošno svetujem, da vedno sodelujete z ekipo. Če nimate svoje ekipe, vam jo bodo organizatorji vedno pomagali najti ali sestaviti.

Kako se spopadate z utrujenostjo med hackathonom?
Na hackathonu imate na voljo 2 dni za delo, to je 48 ur (30-48 ur, vzemimo 48 za lažje štetje). Odstranimo čas za spanje (16-20 ur), ne pustimo več kot 30. Od tega bo 8 ur (povprečno) dejansko porabljenih za produktivno delo. Če pravilno organizirate svoje delo (spanje, prehrana, odhod na svež zrak, vaje, minute pozornosti, pravilna komunikacija z ekipo in preklapljanje med aktivnostmi), se lahko delovni čas poveča na 12-14. Po takem delu se boste počutili izčrpani, vendar bo prijetna utrujenost. Kodiranje brez spanja in odmorov, ki ga prekinjajo energijske pijače, je recept za neuspeh.

Ali imate svoje pripravljene cevovode za hackathone? Kako si jih dobil, kako so organizirani (so v mapah z .py datotekami, vsaka za svojo nalogo itd.) in kako se lotiti ustvarjanja teh sam?
V novih ne uporabljam povsem pripravljenih rešitev iz preteklih hackathonov, ampak imam svoj živalski vrt modelov in cevovodov iz preteklih tekmovanj. Standardnih kosov mi ni treba prepisati iz nič (na primer pravilno ciljno kodiranje ali preprosto mrežo za izločanje namena iz besedila), kar mi prihrani veliko časa.

Trenutno je videti takole: za vsako tekmovanje ali hackathon obstaja svoj repo na GitHubu, shranjuje zvezke, skripte in majhno dokumentacijo o tem, kaj se dogaja. Poleg tega obstaja ločen repo za vse vrste "trikov" v škatlah (kot je pravilno ciljno kodiranje z navzkrižno validacijo). Ne zdi se mi najbolj elegantna rešitev, vendar mi zaenkrat ustreza.

Začel bi tako, da bi vso svojo kodo shranil v mape in napisal kratko dokumentacijo (zakaj, kaj, kako sem to naredil in rezultat).

Ali je MVP realno pripraviti iz nič v tako kratkem času ali vsi udeleženci pridejo s pripravljenimi rešitvami?
O projektih, povezanih s podatkovno znanostjo, lahko rečem le - da, to je mogoče. MVP je zame kombinacija dveh dejavnikov:

  • Izvedljiva ideja, predstavljena kot izdelek (tj. naslikana na poslovno platno). Vedno mora biti jasno, zakaj in za koga izdelujemo izdelek. Včasih projekti z dobro utemeljeno zasnovo, vendar brez prototipa, osvojijo nagrade in to ni presenetljivo. Žal mnogi udeleženci ne morejo mimo grenkobe poraza in svoje neuspehe pripisujejo kratkovidnosti organizatorjev, ki na naslednjih hackathonih še naprej krojijo modele neznancem.
  • Neki pokazatelj, da lahko izdelate ta izdelek (aplikacija, koda, opis cevovodov).

Zgodi se, da ekipa pride na hackathon z že pripravljeno rešitvijo in jo skuša »prikrojiti« po navodilih organizatorjev. Takšne ekipe so med tehničnim pregledom odrezane ali pa se »šteje« le del, ki so ga opravile na spletnem mestu. Takšnih ekip nisem videl kot zmagovalce, vendar menim, da se jim še vedno izplača igrati zaradi prihodnje vrednosti (stiki, nabori podatkov itd.).

Ali obstajajo kakšni primeri prenašanja obrti, implementirane na hackathonih, v proizvodnjo/zagon?
ja Imel sem tri primere, ko so ga pripeljali v proizvodnjo. Enkrat sam, dvakrat - s tujimi rokami, na podlagi svojih idej in kode, ki sem jo napisal na hackathonu. Poznam tudi nekaj ekip, ki so še naprej sodelovale s podjetjem kot svetovalci. Končnih rezultatov ne poznam, a najverjetneje je bilo nekaj dokončanega. Sam nisem organiziral startupov in ne vem, da jih je kdo, čeprav sem prepričan, da obstajajo primeri.

Po sodelovanju na številnih hackathonih, kaj bi svetovali sebi, če bi se lahko vrnili v preteklost?

  1. Taktika je pomembnejša od manevrov. Na vsako rešitev pomislite kot na končni izdelek. Ideja, prenosnik Jupiter, algoritem niso vredni nič, če ni jasno, kdo bo to plačal.
  2. Preden karkoli oblikujete, ne odgovorite na vprašanje "kaj?", ampak "zakaj?" In kako?". Primer: ko načrtujete katero koli rešitev ML, najprej razmislite o idealnem algoritmu: kaj prejme kot vhod, kako se njegove napovedi uporabljajo v prihodnosti?
  3. Bodi del ekipe.

Kaj običajno hranijo na hackathonih?
Ponavadi je hrana na hackathonih slaba: pica, energijske pijače, soda. Skoraj vedno je hrana organizirana v obliki bifeja (ali servirne mize), za katero je ogromna čakalna vrsta. Običajno ne zagotavljajo hrane ponoči, čeprav je bil primer na enem tekmovanju v Parizu, ko so hrano pustili čez noč - čips, krofe in kolo. Predstavljal si bom miselni proces organizatorjev: »Pa kaj programerji tam jedo? Oh, točno tako! Čips, krofi - to je vse. Dajmo jim te smeti." Naslednji dan sem vprašal organizatorje: »Fantje, ali je mogoče za noč narediti kaj drugega? No, mogoče kakšno kašo?« Potem so me gledali, kot da sem idiot. Slavna francoska gostoljubnost.

Na dobrih hackathonih se hrana naroča v škatlah, razdeljena je na običajne, vegetarijanske in košer obroke. Poleg tega so postavili hladilnik z jogurti in müsliji - za tiste, ki želijo prigrizniti. Čaj, kava, voda - standardno. Spominjam se hackathona Hack Moscow 2 - v menzi pisarne 1C so me srčno nahranili z borščem in kotleti s pire krompirjem.

Razumnost hackathonov je tako rekoč odvisna od poklicne sfere organizatorjev (na primer, najboljše hackathone izvajajo svetovalci)?
Najboljši hackathoni so bili organizatorji, ki so hackathone že organizirali ali pa so se jih že kdaj udeležili. Morda je to edini dejavnik, od katerega je odvisna kakovost dogodka.

Kako razumeti, da niste noob in je čas za hackathon?
Najboljši čas za obisk hackathona je leto nazaj. Drugi najboljši čas je zdaj. Zato pojdite, delajte napake, učite se – v redu je. Celo nevronska mreža - človekov največji izum od kolesa in vzpona, ki se dviguje nad drevesi - ne more ločiti mačke od psa v prvi dobi šolanja.

Katere »rdeče zastavice« takoj nakazujejo, da dogodek ne bo zelo dober in da ni treba izgubljati časa?

  • Jasen opis, kaj je treba storiti (pomembno za produktne hackathone). Če ste med registracijo dobili jasno nalogo, potem je bolje ostati doma. V mojem spominu ni bilo niti enega dobrega hackathona s tehničnimi specifikacijami. Za primerjavo: V redu – naredite nam nekaj v zvezi z analizo zvočnih pogovorov. Slabo – naredite nam aplikacijo, ki bi znala pogovor razdeliti na dva ločena zvočna posnetka za vsako osebo.
  • Majhen nagradni sklad. Če vas prosijo, da naredite »Tinder za spletno trgovino z AI« in je nagrada za prvo mesto 500 evrov in najmanjša velikost ekipe 5 ljudi, verjetno ni vredno izgubljati časa (ja, to je pravi hackathon, ki je bil potekal v Münchnu).
  • Pomanjkanje podatkov (pomembno za hackathone podatkovne znanosti). Organizatorji običajno zagotovijo osnovne informacije o dogodku in včasih vzorčni nabor podatkov. Če tega niso zagotovili, vprašajte, nič vas ne bo stalo. Če v 2-3 minutah ni jasno, kateri podatki bodo zagotovljeni in ali bodo sploh zagotovljeni, je to rdeča zastava.
  • Novi organizatorji. Ne bodite leni in poiščite v Googlu informacije o organizatorjih hackathona. Če tovrstno prireditev prirejajo prvič, obstaja velika verjetnost, da bo šlo kaj narobe. Po drugi strani pa, če so organizator in člani žirije že organizirali hackathone ali aktivno sodelovali v preteklosti, je to zelena zastava.

Na nekem hackathonu so mi rekli: »Imel si najboljšo rešitev v kratkem času, ampak oprosti, mi ocenjujemo timsko delo, ti pa si delal sam. Zdaj, če bi v svojo ekipo vzel študenta ali dekle ...«? Ste se kdaj srečali s takšno krivico? Kako ste se spopadli?
Da, srečal sem se več kot enkrat. Stoično gledam na vse, kar se zgodi: naredil sem vse, kar je bilo v moji moči, če ni šlo, pa naj bo.

Zakaj delaš vse to?
Vse to je samo iz dolgčasa.

Vir: www.habr.com

Dodaj komentar