Aktivizimi digjital - si ndodhi

Ky është hera e parë që fitoj një hackathon, nuk është e para për të cilën shkruaj, dhe kjo nuk është aspak postimi i parë në Habrë që i kushtohet "Përparimit Digjital". Por të mos shkruaj për këtë nuk mund të shkoja. E konsideroj përvojën time mjaft unike për ta ndarë. Ndoshta unë jam i vetmi në këtë hackathon që fitoi fazën rajonale dhe finalen me ekipe të ndryshme. Dëshironi të dini si ndodhi kjo? Mirë se erdhët poshtë.

Faza rajonale (Moskë, 27 — 28 Korrik 2019).

Reklamën për "Përparimin Digjital" e pashë për herë të parë diku në mars — prill të këtij viti. Sigurisht, nuk mund të kaloja pa u regjistruar në një hackathon kaq të madh. Atje u njoha me kushtet dhe programin e garës. Doli se, për të marrë pjesë në hackathon, duhej të kaloja një testim online, i cili filloi më 16 maj. Dhe ndoshta do të isha harruar për këtë, pasi letra me kujtesë për fillimin e testimit nuk erdhi. Dhe, duhet thënë, të gjitha LETRAT që më erdhën nga CP, përmbushnin rregullisht dosjen e spamit. Edhe pse gjithmonë e shtypja butonin "nuk është e padëshirueshme". Nuk e di si arritën të arrinin një rezultat të tillë, unë me dërgimin tim në MailGun nuk kam patur sukses. Dhe për ekzistencën e shërbimeve si isnotspam.com, duken se nuk e dinë fare. Por ne u larguam nga tema.

Më kujtoi fillimin e testimit në një nga takimet e klubit të startupeve, aty aty ne diskutuam për formimin e ekipit. Duke hapur listën e testeve, unë fillova ngushtë me testin për Javascript. Në përgjithësi, detyrat ishin më shumë-më pak të arsyeshme (si, çfarë do të ishte rezultati nëse do të mbledhim në konsolë 1 + ‘1’). Por nga përvoja ime, përdorimi i tillë i testeve për përzgjedhjen në punë ose në një ekip do të ishte me shumë rezervë. Arsyeja është se në punën reale një programues përballet me këto gjëra rrallë, dhe aftësia e tij për të shkruar kod shpejt - këto njohuri nuk korrelacionojnë aspak, dhe stërvitja për këto gjëra për intervista mund të bëhet mjaft lehtë (e di nga vetja). Në përgjithësi, unë e kalova testin mjaft shpejt, në disa raste kontrollova veten në konsolë. Në testin për python, detyrat ishin përafërsisht të njëjtit lloj, gjithashtu kontrollova veten në konsolë, me habi arrita më shumë pikë se sa në JS, megjithëse në python nuk kam programuar ndonjëherë profesionalisht. Më vonë në biseda me pjesëmarrësit dëgjova histori se si programues të fortë kishin marrë pikë të ulëta në teste, si disa njerëz kishin marrë letra se nuk kaluan përzgjedhjen për CP, dhe përsëri i ftonin atyre. Është e qartë se krijuesit e këtyre testeve, shumë të mundshëm, nuk kishin dëgjuar as për teorinë e testeve, as për besueshmërinë dhe vlefshmërinë e tyre, as për mënyrën se si t’i provojnë, dhe ideja me testet fillimisht do të ishte dështim, edhe nëse nuk merret parasysh qëllimi kryesor i hackathon-it. Dhe qëllimi kryesor i hakut, siç mësova më vonë, ishte të vendoste një rekord Guiness, dhe testet i kundërshtonin atë.

Në një moment pas kalimit të testeve, më telefonuan dhe më pyetën nëse do të merrja pjesë, sqaruan detajet dhe më thanë se si të hyja në faktin për përzgjedhjen e ekipit. Shpejt, hyra në chat dhe shkrova shkurt për veten time. Në chat ishte një kaos i plotë, duke krijuar përshtypjen se organizatorët kishin sjellë përmes reklamave shumë njerëz të rastësishëm që nuk kishin lidhje me IT-në. Numri i menaxherëve të produkteve "në nivelin e Steve Jobs" (një frazë e vërtetë nga një paraqitje e pjesëmarrësit) postonin histori për veten e tyre, ndërsa zhvilluesit e zakonshëm as që ishin të dukshëm. Por pata fat, dhe shpejt u bashkova me tre programues të njohur JS. U njoftuam me njëri-tjetrin gjatë hackathon-it, kurse atëherë e shtuam një vajzë në ekip për frymëzim dhe për të zgjidhur çështjet organizative. Nuk e mbaj mend pse, por ne e përzgjodhëm temën "Trajnimi në sigurinë kibernetike" dhe e patëm këtë në gjurmën "Shkenca dhe edukimi 2". Pata herën e parë në një ekip prej 4 programuesve të fortë dhe herën e parë ndjeva sa e lehtë ishte të fitonim në këtë përbërje. Erdhëm të papërgatitur dhe deri në drekë polemizuam dhe nuk mundëm të përcaktonim se çfarë do të bënim: një aplikacion mobil ose një web. Në çdo situatë tjetër do të mendoja se ishte një dështim. Gjëja më e rëndësishme për ne ishte të kuptonim se si do të ishim më të mirë se konkurrenca, sepse përreth kishte shumë ekipe që kishin hartuar teste, lojëra mbi sigurinë kibernetike dhe gjëra të ngjashme. Duke e parë këtë dhe duke kërkuar programe dhe aplikacione për trajnim, vendosëm që karakteristika jonë kryesore do të ishin trajnimet sipas parimeve të alarmit të zjarrit. Ne përzgjedhëm një sërë veçorish që na dukeshin interesante për t'u realizuar (regjistrim me verifikimin e email-it dhe fjalëkalimit nga bazat e hakerëve, dërgimi i email-eve të phishing-ut (si email-e nga banka të njohura), trajnimet për inxhinierinë sociale në chat). Pas që kemi përcaktuar se çfarë do të bënim dhe kuptuar se si mund të veçoheshim, shpejt shkruam një aplikacion web të plotë, ndërsa unë luaja një rol të panjohur si zhvillues backend. Në këtë mënyrë, ne fituam me besim gjurmën tonë dhe së bashku me tre ekipe të tjera arritëm në finale në Kazan. Më vonë, në Kazan, mësova se përzgjedhja për finale ishte një iluzion; takova shumë fytyra të njohura nga ekipet që nuk e kaluan këtë përzgjedhje. Na intervistuan madje gazetarë nga kanali 1. Megjithatë, në raportin nga ai intervistim, vetëm për 1 sekondë shfaqën aplikacionin tonë.

Aktivizimi digjital - si ndodhi
Ekipi Snowed, me të cilin fitova fazën rajonale

Finalja (Kazan, 27 – 29 Shtator 2019)

Por më pas filluan dështimet. Të gjithë programuesit nga ekipi Snowed për një muaj, një pas një, njoftuan se nuk mund të shkonin në Kazan për finalen. Dhe unë fillova të mendoj për një ekip të ri. Në fillim, hodha një thirrje në bisedën e përgjithshme të ekipit Russian Hack Team, dhe pavarësisht nga përgjigjet e shumta dhe ftesat për në ekipe, asnjëra nuk më tërhoqi. Kishim ekipe të pabalancezuara, si p.sh., produkt, zhvillues mobil, frontend, që më kujtonin përrallën e mjellmës, gungës dhe peshkut. Kishim gjithashtu ekipe që nuk më përshtateshin teknologjikisht (p.sh., me zhvillimin e aplikacioneve mobile në Flutter). Në fund, në bisedën, që e konsideroja trash, (ajo që ndodhte në VKontakte, ku po bëhej përzgjedhja e ekipeve për fazën rajonale), postuan një njoftim për kërkimin e një zhvilluesi frontend dhe unë e shkrova rastësisht. Djemtë rezultuan të ishin doktorantë të Skoltech dhe menjëherë propozuan të takohemi dhe të njohim njëri-tjetrin. Më pëlqeu kjo, ekipet që preferojnë të njihen menjëherë në hackathon zakonisht më shqetësojnë për shkak të mungesës së motivacionit. U takuam në "Grablja" në Pyatnitskaya. Djemtë më dukeshin të mençur, të motivuar, të sigurt në vetvete dhe në fitore, dhe vendimi e mora aty. Ende nuk e dinim se cilat do të ishin shinat dhe detyrat në finale, por supozonim se do të zgjidhnim diçka që ka të bëjë me Machine Learning. Detyra ime do të ishte të shkruaja një panel administrativ për këtë, prandaj përgatita paraprakisht një bazë mbi antd-admin.
Shkova në Kazan falas, financuar nga organizatorët. Duhet thënë se në bisedat dhe bloget ishte shprehur shumë pakënaqësi në lidhje me blerjen e biletave dhe, në përgjithësi, organizimin e finalit, nuk do ta përsëris gjithë këtë.

Pasi duke arritur në Kazan Expo, pas regjistrimit (ku kishte disa probleme të vogla me marrjen e distinktivit) dhe pas një mëngjesi, ne shkuam të zgjidhim një pistë. Në hapjen ceremoniale, ku ishin zyrtarë të ftuar, ne qëndruam vetëm për 10 minuta. Në të vërtetë, ne kishim preferenca për pistat, por na interesonin detajet. Në pistën Nr. 18 (Rostelecom), për shembull, rezultoi se duhej të zhvillohej një aplikacion mobil, edhe pse në përshkrimin e shkurtër nuk ishte përmendur. Zgjedhja jonë kryesore ishte mes pistës Nr. 8, Defektologjia e Pipave, PAO "Gazprom Neft" dhe pistës Nr. 13, Qendrat Perinatale, Dhoma e Llogarive të RF. Në të dy rastet, nevojitej Data Science, dhe në të dy mund të integromim uebin. Në pistën Nr. 13, na ndali fakti se detyra për Data Science atje ishte mjaft e dobët, duhej të analizoheshin të dhënat e Rosstat dhe nuk ishte e qartë nëse duhej një panel admini. Po ashtu, vetë vlera e detyrës shkaktonte dyshime. Në fund, ne vendosëm që si ekip ishim më shumë të përshtatur për pistën Nr. 8, sidomos pasi ata kishin përvojë në zgjidhjen e detyrave të ngjashme. Filluam me mendimin për skenarin në të cilin aplikacioni ynë do të përdorej nga përdoruesi përfundimtar. Doli që do të kishim dy lloje përdoruesish: teknikët, për të cilët ishin të rëndësishme informacionet teknike, dhe menaxherët, të cilëve u duheshin të dhënat financiare. Kur morëm një ide për skenarin, u bë e qartë se çfarë duhej të bëhej në front, çfarë duhej të vizatonte dizajneri, dhe cilat metoda nevojiteshin në backend, duke e bërë të mundur shpërndarjen e detyrave. Detyrat në ekip u shpërndanë si në vijim: dy persona zgjidhnin ML me të dhënat e marra nga ekspertët teknikë, një person shkruante backend në Python, unë shkrova frontin në React e Ant Design, dhe dizajneri vizatonte ndërfaqet. Madje u ulëm në mënyrë që të komunikonim më lehtë, duke zgjidhur detyrat tona.

Ditë e parë kaloi pothuajse pa u vënë re. Në biseda me ekspertët teknikë u zbulua se ky problem tashmë është zgjidhur prej tyre ("Gazprom Neft"), thjesht iu intereson nëse mund të zgjidhet më mirë. nuk do të them që kjo ulte motivimin, por mbeti një shqetësim. Më habitë se gjatë natës moderatorët e seksioneve shënonin ekipet që punonin (siç thanë për statistikë), zakonisht në hackathonet kjo nuk praktikohet. Në mëngjes, ne kishim gati një prototip të frontit, disa fillesa të back-end-it dhe një zgjidhje të parë të ML. Me fjalë të tjera, tashmë kishte diçka për të treguar ekspertëve. Në pjesën e dytë të ditës së shtunë, dizajneri kishte vizatuar shumë më tepër ndërfaqesh se sa do të mund të kisha koduar në atë kohë dhe kaloi në krijimin e prezantimit. E shtuna ishte e rezervuar për regjistrimin e një rekordi, dhe në mëngjes, të gjithë ata që punonin në sallë u dëbuan në korridor, pastaj hyrja dhe dalja nga salla bëhej me leje, dhe dilte vetëm për më shumë se një orë gjatë ditës. Nuk do të them se kjo na shqetësoi ndjeshëm, sepse pjesën më të madhe të ditës ne ishim ende ulur dhe punonim. Ushqimi, në të vërtetë, ishte shumë skarco, për drekë ne morëm një filxhan me bulion, një pie dhe një mollë, por përsëri nuk na shqetësoi shumë, ne ishim të përqendruar në diçka tjetër.

Periodikisht na jepnin red bull, dy kanistra për secilin, kjo ishte shumë e dobishme. Një recetë e provuar që në hackathon, energjizuesi + kafe, na lejonte të kodonim gjatë gjithë natës dhe ditës pasuese, duke u ndjerë fresk si një xham. Në ditën e dytë ne, në thelb, thjesht shtonim karakteristika të reja në aplikacion, bëmë llogaritjet e parametrave financiarë, filluam të nxjerrim grafiket mbi statistikën e defekteve në magjistrale. Në rrugën tonë nuk kishte një shqyrtim kodesh, ekspertët vlerësonin zgjidhjen e problemit në stilin e kaggle.com, sipas saktësisë së parashikimit, ndërsa frontend-i vlerësohej vizualisht. Zgjidhja jonë ML doli të ishte më e saktë, ndoshta kjo na ndihmoi të dalim në krye. Natën e së shtunës në të diel, ne punuam deri në orën 2 të natës, pastaj shkuam të flinim në apartamentin që e përdornim si bazë. Flogjëm rreth 5 orë, të dielën në ora 9 ishim tashmë në Kazan Expo. Unë isha duke përfunduar disa gjëra me ngut, por shumicën e kohës e zë filli përgatitja për mbrojtjen paraprake. Mbrojtjet paraprake u zhvilluan në dy procese, para dy grupeve ekspertësh, na kërkuan të flisnim të fundit, pasi të dy ekipet e ekspertëve donin të na dëgjonin. Ne e morëm këtë si një shenjë të mirë. Aplikacioni u mostrua nga laptopi im, nga serveri i zhvillimit në funksion, nuk kishim kohë ta shpërndanim aplikacionin si duhet, por kështu bëri të gjithë.

Në përgjithësi, gjithçka shkoi mirë, na treguan momentet në të cilat mund ta përmirësonim aplikacionin tonë, dhe gjatë kohës deri në mbrojtje madje u përpoqëm të realizonim disa nga këto sugjerime. Mbrojtja po ashtu u zhvillua befasueshëm qetë. Pas mbrojtjes paraprake ne e dinim se sipas pikëve ishim përpara, ne udhëhoqëm në saktësinë e zgjidhjes, kishim një frontend të mirë, një dizajn të mirë dhe, në përgjithësi, kishte ndjenja të mira. Një tjetër shenjë pozitive ishte fakti që moderatorja e grupit tonë, para hyrjes në sallën e koncertit bëri një selfie me ne, atëherë dyshova se ndoshta ajo di diçka))). Por ne nuk e dinim pikët tona pas mbrojtjes, kështu që koha deri në momentin e shpalljes sonë nga skena kaloi disi me tension. Në skenë u dha një karton me mbishkrimin 500000 rubla dhe secilit një paketë me një filxhan dhe një Akku për celularin. Të shijonim fitoren dhe ta festonim siç duhet nuk mundëm, ne u ndaluam për një darkë të shpejt dhe shkuam me taksi në tren.

Aktivizimi digjital - si ndodhi
Ekipi WAICO fiton në finale

Pasi ktheva në Moskë, gazetarët nga NTV na morën një intervistë. Xhiruan një orë të tërë në katin e dytë të kafenesë "Kvartal 44" në Poljanka, por në lajme treguan vetëm 10 sekonda. Sidoqoftë, kjo është një përparim i dukshëm krahasuar me fazën rajonale.

Nëse e përmbledhim përshtypjen e përgjithshme nga Përparimi Digjital, ajo është kjo. Në ngjarje u shpenzuan thjesht shumë para, nuk kam parë ndonjëherë hackathon të këtij shkalle. Por nuk mund të them se këtë është për t'u justifikuar, dhe që do të kthehet në investim. Një pjesë e konsiderueshme e pjesëmarrësve që erdhën në Kazan ishin thjesht festues, të cilët nuk dinin të bënin asgjë me duar, dhe që u sollën për të vendosur një rekord. Nuk mund të them se konkurrenca në finale ishte më e lartë se në fazën rajonale. Gjithashtu, vlera dhe dobishmëria e disa problemeve të disa rrugëve sjellin dyshime. Disa probleme ishin zgjidhur që prej kohësh në nivel industrial. Siç doli më vonë, disa organizata që udhëhoqën rrugët, nuk ishin të interesuar në zgjidhjen e tyre. Dhe kjo histori ende nuk ka përfunduar, ekipet lider nga çdo rrugë u seleksionuan për preakselerator, dhe pritet që prej tyre të dalin STARTUP-e KALIMTAR. Por për ta shkruar këtë nuk jam ende gati, le të shohim se çfarë do të dalë prej saj.

Burimi: habr.com

Blini hostim të besueshëm për faqe interneti me mbrojtje DDoS, serverë VPS VDS 🔥 Blini hostim të besueshëm për faqe interneti me mbrojtje DDoS, serverë VPS VDS - ProHoster