Hackathon-gajninto: la rajtoj al la cifereca solvo restas ĉe ni

Hackathon-gajninto: la rajtoj al la cifereca solvo restas ĉe ni

Hakatono estas konkurso inter programistoj por krei ciferecajn solvojn por la profito de la kliento. Kvankam eventoj de ĉi tiu tipo estas tre popularaj en la IT-medio, multaj talentaj specialistoj timas partopreni en ili. Unu el la kialoj estas la stereotipo pri la garantiita perdo de rajtoj al la disvolvita solvo. Evgeny Mavrin, unu el la gajnintoj de grandskala hakatono, dispelas ĉi tiun miton kaj parolas pri la avantaĝoj kaj perspektivoj de programaj konkursoj.

Evgenij estas juna kaj esperiga programisto. Partoprenante la Moskvan Megapopis-konkurson, organizitan de la ĉefurbo pri Noviga Agentejo kiel parton de la reta hakatono VirusHack, li, kiel parto de la EGD BAG-teamo (kune kun Aleksej Airapetov kaj Anna Kovalenko), plenumis la taskon krei informan roboton por la mesaĝilo ICQ New, kiu informis uzantojn pri la disvastiĝo de koronavirusa infekto pli bone ol la aliaj.

Hackathon-gajninto: la rajtoj al la cifereca solvo restas ĉe ni

— Evgeny, kion vi kaj viaj teamanoj faris antaŭ ol partopreni en la hakatono? Kie vi studis, kie vi laboris, kiajn projektojn vi gvidis? Ĉu vi okupiĝis pri komerco?

— Ni estas teamo de samklasanoj. Ni diplomiĝis ĉe la Moskva Ŝtata Teknika Universitato Bauman en 2019 kun magistro pri Informaj Sistemoj kaj Teknologioj. Ni ĉiuj okupiĝas pri programado, sed en malsamaj kampoj. Ekzemple, mia ĉefa stako estas C++/Qt, kaj tiu de Lesha (Aleksej Airapetov - noto de la aŭtoro) estas Java. Aldone al nia ĉefa laboro, ĉiu el ni havis siajn proprajn projektojn en diversaj stadioj de kompletigo (legu forlasitajn). Ĝenerale, malmultaj el ili sukcesis esti publikigitaj. Neniu el niaj teammembroj iam antaŭe faris negocojn. Sed ni partoprenis, tiel diri, en "amika liberprofesia laboro", kiam iu, kiun ni konas, simple bezonis IT-helpon.
Dank' al nia edukado kaj komunaj interesoj en la IT-kampo, ne estas malfacile por ni proponi kaj efektivigi funkcian solvon al preskaŭ ajna problemo.

— Ĉu ĉi tio estis via unua partopreno en hakatono? Kiel vi eksciis pri la trako de Megapolis Moskvo?

— Persone, mi jam partoprenis la hakatonon Aramco Upstream Solutions Technathon 2019 en teamo kun kamaradoj de la Gubkina Rusa Ŝtata Universitato pri Petrolo kaj Gaso, sed tiufoje ni estis malbonŝancaj. Ne estis egaleco inter la partoprenantoj en la teamo.

Ni eksciis pri la kanto "Megapolis Moskvo" de amikoj: ili simple ĵetis reklamon de iu komunumo de akruloj (C#-programistoj) en la babilejon. Ni respondece aliris partoprenon en la VirusHack-hakatono: ni anticipe difinis la taskon kaj malglate distribuis la respondecojn. Kaj ĝi vere helpis.

— Kiel vi taksas la kompleksecon de la tasko de la ICQ-nova kliento? Kia estas la nivelo de la konkurantoj?

— Laŭ mia opinio, la tasko perfekte konvenas al la tempokadro de la hakatono. Ofte, en kelkaj tagoj asignitaj por la hakatono, multaj teamoj prezentas koncepton aŭ prototipon kiel finan solvon. Ni prezentis pretan produkton, kiun ni poste rapide enkondukis en produktadon kune kun la kliento. La nivelo de la konkurantoj estis alta. Kaj mi vere maltrankviliĝis, kiam mi vidis la rezultojn de aliaj teamoj. Multaj partoprenantoj permesis al si liberan interpreton de la tasko: iu, ekzemple, kreis roboton, per kiu oni povis ludi simplajn neformalajn ludojn.

— Rakontu al ni pri la solvo, kiu fine aperis? Kiujn ilojn oni uzis por disvolvi ĝin?

— La rezulto estis informa roboto, kiu informis uzantojn pri la disvastiĝo de koronavirusa infekto.

Uzante geoetikedon, homoj povis ricevi informojn pri novaj kaj malnovaj kazoj de infekto ĉe civitanoj, ekscii la adresojn de la plej proksimaj medicinaj institucioj kaj laboratorioj por fari COVID-19-testojn, kaj la adresojn de la plej proksimaj apotekoj kaj vendejoj. Simpligita SMS-generatoro por ricevi elektronikan enirpermesilon ankaŭ estis enkonstruita en la roboton.

Normaj Java-lingvo-iloj estis uzitaj por reguligi komputilajn fluojn dum la verkado de la roboto. Por signife simpligi la funkciadon de la roboto, oni elektis la API-bibliotekon de ICQ. La tasko simpligi la deplojon de la roboto en la produktada medio ankaŭ estis solvita: sciante, ke Docker nun estas la normo en entreprena disvolviĝo, ni preparis Docker-bildon.

Entute, la rezulto estas produkto facile ĝisdatigebla kaj skalebla.

— Kio estis la plej malfacila afero?

— La plej malfacila afero estis verŝajne "poluri" la tutan funkciadon de la roboto por ke ĝi estu oportuna por uzi. Ni efektivigis la interfacon tiel, ke la uzanto enigu datumojn tekste nur en ekstremaj kazoj, ekzemple por indiki la kialon de la eldono de unufoja permesilo (jes, tio estis grava ĝis antaŭ nelonge). Ĉiu interagado kun la roboto estis reduktita al kompetenta uzo de la mesaĝiloj. Ni tute malŝaltis la eblecon permane enigi komandojn. Cetere, jen demonstra filmeto de la roboto: https://youtu.be/1xMXEq_Svj8

— Vi gajnis la hakatonon. Kiel aferoj plu evoluis?

— Ni lernis unu tre utilan aferon — kiel montriĝis, ni mem restis la kopirajtuloj de la roboto, kio iom surprizis min. Mi pensis, ke ĉiu hakatono estas, proksimume dirite, interŝanĝo de ideo naskita en teama cerboŝtormo kontraŭ valora premio. Sed mi relegis la interkonsenton kaj regulojn de partopreno kaj trovis nenion tian. Do, al aliaj hakatonaj partoprenantoj, kiuj maltrankviliĝas pri devi transdoni la rajtojn al siaj disvolviĝoj, mi volas diri, ke ne, estas tute ne certe, ke vi estos devigitaj fari tion. Ĉe la VirusHack-hakatono, vi eĉ povus konservi la kodon en privataj deponejoj, kaj simple doni al unu el la ĵurianoj provizoran aliron por fari decidon. Ĉiukaze, ĉiam legu la partoprenajn dokumentojn antaŭ la hakatono, por ke ne estu surprizoj en la estonteco.

Cetere, ni decidis lasi nian kodon malfermita: https://github.com/airaketa/egdbag-bot"Forko" laŭplaĉe.
Post la hakatono, laŭ nia propra iniciato, ni preparis adapton de la roboto por la Telegram API en kazo de dua ondo de la koronavirusa pandemio. Sed estas pli bone, ke ĉi tiu projekto restu en privataj deponejoj por ĉiam.

Nun ni pripensas adapti la funkciojn de la roboto al la nuna situacio, kiam la mem-izoliteca reĝimo estos ĉesigita. Ekzemple, por serĉi sportejojn, restoraciojn kaj aliajn urbajn instalaĵojn. La membroj de la ICQ New teamanoj ne kontraŭas "gastigi" la ĝisdatigitan version de la roboto laŭ siaj propraj kapabloj.

— Ĉu programistoj devus partopreni en hakatonoj? Kion laŭ vi ili povas doni al partoprenantoj kaj gajnintoj?

— Sendube valoras ĝin. Estas interesa sperto — plenumi praktikan taskon de nulo en kelkaj tagoj, kiun vi poste povas diskuti kun fakuloj. Plie, ĝi estas ŝanco taksi viajn kapablojn kaj la "kapablojn" de teammembroj ĉe vera dutaga aŭ tritaga maratono. Ĝi estas ankaŭ interkonektado. En iu ajn kampo, precipe en IT, ĉi tio estas tre grava aspekto de disvolviĝo, mi pensas. Vi povas trovi novajn homojn, kiuj estas utilaj por vi, paroli kun ili, rigardi iliajn projektojn. Krome, se vi nur faras disvolviĝon ĉe via ĉefa laboro, vi povas provi vin en nova rolo ĉe hakatono, ekzemple, "produktposedanto", "teamestro", aŭ alia rolo. Sed por la gajninto, ĝi estas ŝanco sukcese kunlabori kun ĉefaj kompanioj, helpi en la reklamado de via ideo. Estas multaj kazoj, kiam grandskalaj projektoj kreskis el hakatonoj.

— En aŭgusto, oni akceptos kandidatiĝojn por nova hakatono por solvi la problemojn de la urbo "Gvidantoj de Cifereca Transformo"Ĝiaj gajnintoj ricevos solidan rekompencon. Ĉu via teamo partoprenos en ĝi? Kiel vi preparos vin? Se vi venkos, por kio vi elspezos la kontantan premion?

— Por mi, kaj ankaŭ por la aliaj teammembroj, la ĉefa celo de partopreno en la hakatono estas la ŝanco disvolvi produktoprototipon ene de areo, kiu interesas nin.
Ni akiras sperton en kolektiva disvolviĝo kaj bonan projekton en la portfolio, ni alfrontas interesajn kaj kompleksajn taskojn. Kompreneble, ni volas venki. Tamen, ni ne celas ricevi kontantan premion. Se la projekto alportas profitojn, tio estos nia venko.

Por prepari por la konkurso "Gvidantoj de Cifereca Transformo" ni provos pligrandigi la teamon: en la antaŭa hakatono ni estis tri kaj, sincere, simple ne estis sufiĉe da manoj. Krome, ni solvos la problemon pri la instalita programaro, tiel ke ĉiuj teammembroj havu la bezonatan aron da programoj antaŭ la konkurso (kiel la sperto montris, grandega kvanto da tempo estas elspezata ĝuste por solvi problemojn pri programara sinkronigado).

Se ni sukcesos ricevi la premion, ni elspezos la monon por PS5 kaj sidos hejme dum kelkaj semajnoj. Nur ŝerco! Kompreneble, ni komprenas, ke la kontanta premio estas, unue, financa helpo por la plua disvolviĝo de la projekto. Gastigado, virtualaj maŝinoj, kaj tiel plu estas parto de tio, por kio la financoj estos distribuitaj.

fonto: www.habr.com