Aurrerapen digitala - nola gertatu zen

Hau ez da irabazten dudan lehen hackatona, ez lehena idaztea, eta hau ez da Habré-n “Aurrerapen digitala”-ri eskainitako lehen argitalpena. Baina ezin izan nuen idazten utzi. Nire esperientzia partekatzeko aski paregabea iruditzen zait. Seguruenik, hackaton honetan talde ezberdinen partez eskualdeko etapa eta finalak irabazi dituen pertsona bakarra naiz. Hau nola gertatu den jakin nahi duzu? Ongi etorri katura.

Erregional fasea (Mosku, 27ko uztailaren 28tik 2019ra).

Aurtengo martxo-apirilean ikusi nuen lehen aldiz "Aurrerapen digitala"ren iragarki bat. Jakina, ezin nuen hackathon handi bat utzi eta webgunean erregistratu. Bertan lehiaketaren baldintzak eta egitaraua ezagutu nuen. Kontua da hackatonera joateko online proba bat gainditu behar zela, maiatzaren 16an hasi zena. Eta, beharbada, komenigarrian ahaztuko nintzatekeen, ez bainuen gutunik jaso probaren hasiera gogoraraziz. Eta, esan beharra daukat, etorkizunean CPUtik heldu zitzaizkidan GUTUN GUZTIAK spam karpetan amaitu zirela etengabe. Nahiz eta aldi bakoitzean "ez da gaitzesgarria" botoia sakatu. Ez dakit nola lortu zuten emaitza hori lortzea; ez zitzaidan ondo atera MailGun-en bidaltzea. Eta mutilek ez omen dute batere ezagutzen isnotspam.com bezalako zerbitzuen existentziaz. Baina alde egiten dugu.

Bileretako batean probaren hasieraz gogoratu nintzen hasierako kluba, han taldearen sorreraz ere eztabaidatu genuen. Proben zerrenda irekita, lehenik eta behin Javascript probara eseri nintzen. Oro har, zereginak nahiko edo gutxiago egokiak ziren (kontsolan 1 + '1' gehitzen baduzu emaitza izango den bezala). Baina nire esperientziaren arabera, horrelako probak erabiliko nituzke erreserba oso handiak dituen lan edo talde baterako kontratatzerakoan. Izan ere, benetako lanean, programatzaile batek oso gutxitan aurkitzen ditu horrelako gauzak, kodea azkar arazteko duen gaitasunarekin - ezagutza hori ez dago inolaz ere erlazionatuta, eta elkarrizketetarako horrelako gauzetarako entrena dezakezu nahiko erraz (neure buruaz badakit). Oro har, nahiko azkar egin nuen klik proban, kasu batzuetan nire burua kontsolan egiaztatu nuen. Python proban, zereginak gutxi gorabehera mota berekoak ziren, kontsolan ere probatu nuen neure burua, eta harrituta geratu nintzen JSn baino puntu gehiago lortuz, nahiz eta Python-en profesionalki sekula programatu ez dudan. Geroago, parte-hartzaileekin izandako elkarrizketetan, programatzaile indartsuek probetan puntuazio baxua lortu duten istorioak entzun nituen, nola pertsona batzuek CPUrako hautaketa-prozesua gainditu ez zutela esaten zuten gutunak nola jaso zituzten eta, hala ere, bertara gonbidatu zituzten. Argi dago proba hauen sortzaileek ziurrenik ez dutela ezer entzun probaren teoria, ez haien fidagarritasunari eta baliozkotasunari buruz, ez nola probatu, eta testekin ideia hasiera-hasieratik porrota izango zen, hackatonaren helburu nagusia kontuan hartu ez bagenuen ere. Eta hack-aren helburu nagusia, geroago jakin nuenez, Guinness errekorra ezartzea zen, eta probak kontraesanean zeuden.

Probak gainditu eta gero, deitu zidaten, parte hartuko nuen galdetu, xehetasunak argitu eta talde bat aukeratzeko txatean nola sartu esan zidaten. Laster, txatean sartu eta nire buruari buruz labur idatzi nuen. Txatean zakarrontzi osoa zegoen; bazirudien antolatzaileek informatikarekin zerikusirik ez zuten ausazko jende askori publizitatea egiten ari zirela. Produktu-kudeatzaile askok "Steve Jobsen mailan" (parte-hartzaile baten bidalketaren benetako esaldia) beren buruari buruzko istorioak argitaratu zituzten, eta garatzaile arruntak ere ez ziren ikusten. Baina zortea izan nuen eta laster hiru JS programatzaile esperientziadun elkartu nintzen. Dagoeneko hackathonean ezagutu genuen elkar, eta gero neska bat gehitu genuen taldera inspirazio eta antolakuntza arazoak konpontzeko. Ez dut gogoratzen zergatik, baina “Cybersecurity Training” gaia hartu eta “Zientzia eta Hezkuntza 2” pistan sartu genuen. Lehenengo aldiz 4 programatzaile indartsuz osatutako talde batean aurkitu nintzen eta lehenengoz sentitu nuen zein erraza zen halako konposizio batean irabaztea. Prestatu gabe etorri ginen eta bazkaltzera arte eztabaidatu eta ezin izan genuen erabaki zer egingo genuen: mugikorretarako aplikazioa edo webekoa. Beste edozein egoeratan porrota izan zela pentsatuko nuke. Guretzat inportanteena gure lehiakideek baino hobeto nola egongo ginatekeen ulertzea zen, inguruan probak, zibersegurtasun jokoak eta antzekoak mozten ari ziren talde asko zeudelako. Hau aztertu eta trebakuntza-programak eta aplikazioak Googlen bilatu ondoren, gure bereizgarri nagusia suteen simulakroak izango zirela erabaki genuen. Ezartzeko interesgarriak iruditu zaizkigun hainbat ezaugarri aukeratu ditugu (posta elektronikoa eta pasahitzak egiaztatzearekin hacker datu-baseen aurka erregistratzea, phishing-mezuak bidaltzea (banku ezagunen gutunen moduan), ingeniaritza sozialeko prestakuntza txatean). Zer egiten ari ginen erabaki eta nola nabarmendu gintezkeen ulertuta, azkar idatzi genuen web-aplikazio oso bat, eta backend garatzaile baten ezohiko papera jokatu nuen. Hala, konfiantzaz irabazi genuen gure ibilbidea eta, beste hiru talderen partez, Kazaneko finalerdietarako sailkatu ginen. Gero, Kazanen, finalerdietarako hautaketa fikzioa zela jakin nuen; han ezagutu nituen selekzioa gainditu ez zuten taldeen aurpegi ezagun asko. Channel 1eko kazetariek ere elkarrizketatu gaituzte. Hala ere, haren txostenean, gure aplikazioa segundo bakarrean erakutsi zen.

Aurrerapen digitala - nola gertatu zen
Elurretako taldea, non erregionaleko etapa irabazi nuen

Finala (Kazan, 27ko irailaren 29tik 2019ra)

Baina orduan hasi ziren porrotak. Hilabete inguruko epean Snowed taldeko programatzaile guztiek, bata bestearen atzetik, jakinarazi zuten ezingo zutela Kazanera joan finalera. Eta talde berri bat aurkitzea pentsatu nuen. Lehenik eta behin, Russian Hack Team-eko txat orokorrean dei bat egin nuen, eta han taldeetan sartzeko erantzun eta gonbidapen dezente jaso bazituen ere, inork ez zuen atentzioa eman. Talde desorekatuak zeuden, hala nola, produktua, mugikorreko garatzailea, front-end-a, alegia, zisne bat, karramarroa eta pikea gogorarazten zutenak. Teknologia aldetik egokiak ez zitzaizkidan taldeak ere bazeuden (adibidez, Flutter-en mugikorretarako aplikazio bat garatzearekin). Azkenik, zaborrontzitzat jo nuen txat batean (VKontakte bera non eskualdeko faserako taldeen aukeraketa egin zen), taldearen frontender baten bilaketari buruzko iragarki bat argitaratu zen, eta ausaz idatzi nuen. Mutilak Skoltech-eko graduondoko ikasleak izan ziren eta berehala ezagutzea eta ezagutzea eskaini zuten. Gustatu zitzaidan; hackaton batean berehala elkar ezagutu nahi duten taldeek motibazio faltarekin kezkatzen naute normalean. Pyatnitskaya-n "Rake"-n elkartu ginen. Mutilak inteligenteak, motibatuak, euren buruan eta garaipenan konfiantzaz ziruditen, eta bertan hartu nuen erabakia. Oraindik ez genekien zein pista eta zeregin izango ziren finalean, baina Machine Learning-arekin lotutako zerbait aukeratuko genuela uste genuen. Eta nire zeregina gai honetarako admin bat idaztea izango da, beraz, aldez aurretik horretarako txantiloi bat prestatu nuen antd-admin-en oinarrituta.
Kazanera doan joan nintzen, antolatzaileen kontura. Esan beharra daukat dagoeneko txat eta blogetan atsekabe handia agertu dela sarrerak erosteko eta, orokorrean, finalaren antolakuntzaren inguruan, ez dut dena berriro kontatuko.

Kazan Expo-ra heldu, izena emanda (txapa bat lortzeko arazotxo bat izan nuen) eta gosaldurik, pista bat aukeratzera joan ginen. Inaugurazio handira bakarrik joan ginen, non funtzionarioek hitz egin zuten, 10 bat minutuz.Izan ere, lehendik geunden gure gustuko ibilbideak, baina xehetasunak interesatzen zitzaizkigun. 18. zenbakian (Rostelecom), adibidez, mugikorretarako aplikazio bat garatzea beharrezkoa zela ikusi zen, deskribapen laburrean hori ez zegoen arren. Hoditegien 8. Defectoskopia, Gazprom Neft PJSC eta 13 Zentro Perinatalaren, Errusiako Federazioko Kontuen Ganberaren arteko aukera nagusia egin genuen. Bi kasuetan, Data Science beharrezkoa zen, eta bi kasuetan, weba gehitu zitekeen. 13. zenbakian, Data Science zeregina nahiko ahula zela gelditu ginen, Rosstat analizatu behar zela eta ez zegoen argi administrazio panel bat behar zen ala ez. Eta zereginaren balioa bera zalantzan zegoen. Azkenean, talde moduan 8. pistarako egokiagoak ginela erabaki genuen, batez ere mutilek lehendik ere antzeko arazoak konpontzen esperientzia zutelako. Gure aplikazioa azken erabiltzaileak zein eszenatokitan erabiliko zuen pentsatzen hasi ginen. Bi erabiltzaile mota izango genituzkeela atera zen: informazio teknikoan interesa zuten teknikariak eta finantza-adierazleak behar zituzten kudeatzaileak. Eszenatokiaren ideia bat sortu zenean, argi geratu zen zer egin aurrealdean, diseinatzaileak zer marraztu behar zuen eta atzeko aldean zer metodo behar ziren, zereginak banatzea posible izan zen. Taldeko ardurak honela banatu ziren: bi pertsonek ML ebatzi zuten aditu teknikoetatik jasotako datuekin, pertsona batek backend-a Python-en idatzi zuen, nik frontend-a React eta Antd-en idatzi nuen, diseinatzaileak interfazeak marraztu zituen. Are gehiago, eseri ginen, gure arazoak konpontzen ditugun bitartean komunikatzea erosoagoa izan zedin.

Lehen eguna ia oharkabean igaro zen. Aditu teknikoekin komunikazioan, haiek (Gazprom Neft) arazo hau jada konponduta zutela, hobeto konpondu zitekeen galdetzen ari ziren. Ez dut esango horrek motibazioa murriztu zuenik, baina hondar bat utzi zuen. Harrituta geratu nintzen gauean ataleko moderatzaileek lan-taldeei erreparatu izanak (estatistiketarako esan zuten bezala); normalean hackathons-etan ez da hori praktikatzen. Goizerako aurrealdearen prototipoa, atzealdeko rudimentu batzuk eta lehen ML irtenbidea prest genituen. Orokorrean, bazegoen jada adituei erakusteko zerbait. Larunbat arratsaldean, diseinatzaileak, jakina, nik kodetzeko denbora izango nukeen baino interfaze gehiago marraztu zituen eta aurkezpen bat sortzera pasatu zen. Larunbata diskoa erregistratzeko jarri zen, eta goizean, aretoan lan egiten zuten guztiak korridorera bota zituzten, gero aretotik sarrera eta irteera txapak erabiliz egiten ziren, eta gehiagorako utzi ahal izan zen. egunean ordu bat baino. Ez dut esango horrek eragozpen handirik sortu zigula; egun gehienean oraindik eserita eta lanean aritu ginen. Janaria, egia esan, oso eskasa zen; bazkaltzeko baso bat salda, tarta eta sagar bat jaso genituen, baina berriro ere horrek ez gintuen asko asaldatu, beste zerbaitetan zentratu ginen.

Aldian-aldian zezen gorria ematen zuten, esku bakoitzeko bi kana-erdiko, eta hori oso lagungarria zen. Edari energetikoa + kafe errezeta, hackathons-etan aspaldi probatu zena, gau osoan eta hurrengo egunean kodetzeko aukera eman zidan, edalontzi bat bezain alaia. Bigarren egunean, izan ere, aplikazioari funtzio berriak gehitu, finantza-adierazleak kalkulatu eta autobideetako akatsen estatistikei buruzko grafikoak bistaratzen hasi ginen. Gure ibilbidean ez zegoen kode berrikuspenik; adituek arazoaren konponbidea kaggle.com estiloan baloratu zuten, iragarpenaren zehaztasunean oinarrituta, eta frontend-a bisualki ebaluatu zen. Gure ML konponbidea zehatzena izan zen, agian hau da lider bihurtzeko aukera eman ziguna. Larunbatetik iganderako gauean 2:5ak arte lan egiten genuen, eta ondoren oinarri gisa erabiltzen genuen apartamentura joan ginen lotara. 9 ordu inguru egin genuen lo, igandean goizeko 2etan jada Kazan Expo-n geunden. Presaka prestatu nuen zerbait, baina denbora gehiena aurre-defentsa prestatzen pasatzen nuen. Aurre-defentsak XNUMX korrontetan egin ziren, bi aditu talderen aurrean;azkenean hitz egiteko eskatu ziguten, aditu talde biek entzun nahi gintuztelako. Hau seinale ontzat hartu dugu. Aplikazioa nire ordenagailu eramangarritik erakutsi zen, exekutatzen ari den garatzaileko zerbitzari batetik; ez genuen aplikazioa behar bezala zabaltzeko denborarik izan, hala ere, denek gauza bera egin zuten.

Oro har, dena ondo atera zen, gure aplikazioa hobetu genezakeen puntuak adierazi zizkiguten, eta defentsaren aurreko denboran iruzkin horietako batzuk ezartzen ere saiatu ginen. Defentsa ere harrigarriro leun joan zen. Aurre-defentsako emaitzetatik abiatuta, bagenekien puntuetan aurretik geundela, konponbideen zehaztasunari dagokionez lidergoan geundela, frontoi ona genuen, diseinu ona eta, oro har, ona genuen. sentimenduak. Aldeko beste seinale bat izan zen gure ataleko neska moderatzaileak gurekin selfie bat atera zuela kontzertu aretora sartu aurretik, eta orduan susmatu nuen zerbait jakin zezakeela))). Baina defentsaren ostean ez genekien gure puntuazioak, beraz, etapatik gure taldea iragartzen zen arte denbora pixka bat tenkatu igaro zen. Oholtza gainean 500000 errublo inskripzioa zuen kartoi bat eman zuten eta pertsona bakoitzari poltsa bat eman zioten katilu batekin eta sakelako telefonoko bateria batekin. Ez genuen lortu garaipenaz gozatu eta behar bezala ospatzea; azkar afaldu eta taxi bat hartu genuen trenera.

Aurrerapen digitala - nola gertatu zen
WAICO taldeak irabazi du finala

Moskura itzultzean, NTVko kazetariek elkarrizketatu gaituzte. Ordu betez filmatu genuen Polyankako Kvartal 44 kafetegiko bigarren solairuan, baina albisteak 10 segundo inguru baino ez zituen erakutsi. Azken finean, aurrerapen handia eskualdeko etaparekin alderatuta.

Aurrerapen Digitalaren inpresio orokorrak laburbiltzen baditugu, hauek dira. Ekitaldian diru asko gastatu zen; inoiz ez dut halako eskala horretako hackathoik ikusi. Baina ezin dut esan hori justifikatuta dagoenik eta benetan ordainduko duenik. Kazanera hurbildu ziren parte hartzaileen zati esanguratsu bat parrandazaleak besterik ez ziren, beren eskuekin ezer egiten ez zekiten eta errekorra jartzera behartuta zeudenak. Ezin dut esan finalerdietako lehia eskualdeko fasean baino handiagoa izan zenik. Gainera, pista batzuen zereginen balioa eta erabilgarritasuna zalantzan jartzen da. Arazo batzuk aspaldi konponduta daude industria mailan. Geroago ikusi zenez, pistak zuzendu zituzten erakunde batzuek ez zuten horiek konpontzeko interesa. Eta istorio hau oraindik ez da amaitu, pista bakoitzeko talde nagusiak hautatu ziren aurre-azeleragailurako, eta suposatzen da AURRERA-STARTUP-ak izango direla. Baina oraindik ez nago honetaz idazteko prest, ikusiko dugu zer ateratzen den.

Iturria: www.habr.com

Gehitu iruzkin berria