Hackathon DevDays'19 (cuid 1): dialann le moltaí, gineadóir bealaí siúil agus daonlathas leachtach

Le déanaí táimid inis faoi ​​chlár máistreachta corparáideach JetBrains agus Ollscoil ITMO “Forbairt Bogearraí / Innealtóireacht Bogearraí”. Tugaimid cuireadh do gach duine ar spéis leo teacht chuig an lá oscailte ar an Luan, 29 Aibreán. Inseoimid duit faoi na buntáistí a bhaineann lenár gclár máistreachta, cad iad na bónais a chuirimid ar fáil do mhic léinn agus cad a theastaíonn uainn mar chúiteamh. Ina theannta sin, is cinnte go bhfreagróimid ceisteanna ónár n-aíonna.

Hackathon DevDays'19 (cuid 1): dialann le moltaí, gineadóir bealaí siúil agus daonlathas leachtachBeidh an lá oscailte ar siúl in oifig JetBrains san Times Business Centre, áit a ndéanann mic léinn ár máistreachta staidéar. Tosaíonn ag 17:00. Is féidir leat na sonraí go léir a fháil amach agus clárú don imeacht ar an suíomh Gréasáin mse.itmo.ru. Tar agus ní bheidh aiféala ort!

Ceann de phríomhchodanna an chláir ná cleachtas. Bíonn go leor de ag mic léinn: obair bhaile sheachtainiúil, tionscadail seimeastar agus haiceatóin. A bhuí le tumoideachas iomlán i modheolaíochtaí agus i dteicneolaíochtaí forbartha nua-aimseartha le linn a gcuid staidéir, comhtháthaíonn céimithe go tapa isteach i bpróisis oibre cuideachtaí móra TF.

Sa phost seo ba mhaith linn labhairt níos mine faoi hackathons DevDays, a tharlaíonn gach sé mhí. Tá na rialacha simplí: bailíonn foirne de 3-4 duine agus ar feadh trí lá tugann na mic léinn a gcuid smaointe féin ar an saol. Cad a d’fhéadfadh teacht as seo? Léigh an chéad chuid de scéalta faoi thionscadail haicathóin an tseimeastair seo ó na mic léinn iad féin :)

Dialann le moltaí scannáin

Hackathon DevDays'19 (cuid 1): dialann le moltaí, gineadóir bealaí siúil agus daonlathas leachtach

Údar an smaoineamh
Ivan Ilchuk
Líne-suas
Ivan Ilchuk - parsáil plota scannáin, freastalaí
Vladislav Korablinov - samhlacha a fhorbairt chun comparáid a dhéanamh idir cóngaracht na hiontrála dialainne agus plota scannáin
Dmitry Valchuk - Chomhéadain
Nikita Vinokurov – Chomhéadain, dearadh

Ba é sprioc ár dtionscadal feidhmchlár deisce a scríobh - dialann a mholfadh scannáin don úsáideoir bunaithe ar na hiontrálacha atá ann.

Tháinig an smaoineamh seo chugam nuair a bhí mé ar mo bhealach chuig an ollscoil agus ag smaoineamh ar na fadhbanna atá agam. “Cibé fadhb atá os comhair duine, tá scríbhneoir clasaiceach éigin scríofa cheana féin faoi,” shíl mé. “Agus ó scríobh duine éigin é, ciallaíonn sé go bhfuil scannánú déanta ag duine éigin cheana féin.” Mar sin bhí an fonn chun féachaint ar scannán faoi dhuine a bhfuil an crá meabhrach céanna le feiceáil go nádúrtha.

Ar ndóigh, tá raon leathan dialanna ar leith agus seirbhísí molta ar leith ann (ach de ghnáth bíonn na moltaí bunaithe ar na rudaí a thaitin leis an duine roimhe seo). I bprionsabal, tá rud éigin i gcoiteann ag an tionscadal seo le cuardach a dhéanamh ar scannán de réir príomhphointí, ach fós, ar an gcéad dul síos, soláthraíonn ár bhfeidhmchlár feidhmiúlacht dialainne.

Hackathon DevDays'19 (cuid 1): dialann le moltaí, gineadóir bealaí siúil agus daonlathas leachtachConas a chuireamar é seo i bhfeidhm? Nuair a bhrúnn tú an cnaipe draíochta, seolann an dialann iontráil chuig an bhfreastalaí, áit a roghnaítear an scannán bunaithe ar an gcur síos a tógadh ón Vicipéid. Rinneadh ár n-aghaidh in Electron (úsáidimid é, ní an láithreán gréasáin, toisc gur shocraigh muid ar dtús sonraí úsáideoirí a stóráil ní ar an bhfreastalaí, ach go háitiúil ar an ríomhaire), agus rinneadh an freastalaí agus an córas moltaí féin i Python: bhí TFanna a fuarthas ó na tuairiscí - veicteoirí IDF a cuireadh i gcomparáid le haghaidh cóngaracht don veicteoir iontrála dialainne.

D'oibrigh ball foirne amháin ar an tsamhail amháin, d'oibrigh an ceann eile go hiomlán ar an taobh tosaigh (i dtús báire le tríú ball, a d'athraigh go dtí an tástáil níos déanaí). Bhí mé ag gabháil do pharsáil ceapacha scannán ó Vicipéid agus ón bhfreastalaí.

Céim ar chéim fuair muid níos gaire don toradh, ag sárú roinnt fadhbanna, ag tosú leis an bhfíric go raibh gá le go leor RAM ar an tsamhail ar dtús, ag críochnú leis an deacracht a bhaineann le sonraí a aistriú chuig an bhfreastalaí.

Anois, chun scannán don tráthnóna a aimsiú, ní gá duit mórán iarrachta a dhéanamh: is é toradh ár gcuid oibre trí lá ná feidhmchlár deisce agus freastalaí, a bhfaigheann an t-úsáideoir rochtain air trí https, ag fáil mar fhreagra ar rogha de 5 scannán le cur síos gairid agus póstaer.

Tá mo thuairimí ar an tionscadal an-dearfach: bhí an obair thar a bheith suimiúil ó mhaidin go mall san oíche, agus ó am go chéile bíonn torthaí an-ghreannmhara ar an stíl “Oíche Chodladh” le hiontráil dialainne faoin obair bhaile san ollscoil nó i scannán mar gheall ar an bhfeidhmchlár a tháinig as. faoin gcéad lá ar scoil le haghaidh scéal faoin gcéad lá ag an roinn.

Is féidir naisc ábhartha, suiteálaithe, etc. a fháil anseo.

Gineadóir bealaigh

Hackathon DevDays'19 (cuid 1): dialann le moltaí, gineadóir bealaí siúil agus daonlathas leachtachÚdar an smaoineamh
Artemyeva Irina
Líne-suas
Artemyeva Irina - ceannaire foirne, príomh-lúb
Gordeeva Lyudmila ceol
Platonov Vladislav - bealaí

Is breá liom a bheith ag siúl timpeall na cathrach: ag féachaint ar fhoirgnimh, ar dhaoine, ag smaoineamh ar an stair. Ach, fiú agus m’áit chónaithe á athrú agam, luath nó mall tá mé ag tabhairt aghaidhe ar an bhfadhb a bhaineann le bealach a roghnú: tá na cinn go léir a bhféadfainn smaoineamh orthu críochnaithe agam. Seo mar a tháinig an smaoineamh chun giniúint bealaí a uathoibriú: léiríonn tú túsphointe agus fad an bhealaigh, agus tugann an clár rogha. Is féidir le siúlóidí a bheith fada, agus mar sin dealraíonn sé go bhfuil forbairt loighciúil ar an smaoineamh ag cur leis an gcumas pointí idirmheánacha a chur in iúl le haghaidh “stad,” áit a bhféadfadh tú sneaic agus scíth a ligean. Brainse eile forbartha a bhí sa cheol. Bíonn níos mó spraoi i gcónaí ag siúl le ceol, agus mar sin bheadh ​​sé iontach an cumas seinmliosta a roghnú bunaithe ar bhealach ginte a chur leis.

Níorbh fhéidir réitigh den sórt sin a aimsiú i measc na bhfeidhmchlár a bhí ann cheana. Is iad na analógacha is gaire ná pleanálaithe bealaigh ar bith: Google Maps, 2GIS, etc.

Tá sé an-áisiúil feidhmchlár den sórt sin a bheith agat ar do ghuthán, mar sin ba rogha mhaith é Telegram a úsáid. Ligeann sé duit léarscáileanna a thaispeáint agus ceol a imirt, agus is féidir leat é seo go léir a rialú trí bot a scríobh. Baineadh úsáid as an Google Map API leis an bpríomhobair le léarscáileanna. Déanann Python an dá theicneolaíocht a chomhcheangal go héasca.

Bhí triúr ar an bhfoireann, agus mar sin roinneadh an tasc ina dhá fhothasc neamhfhorluiteach (ag obair le léarscáileanna agus ag obair le ceol) ionas go bhféadfadh na guys oibriú go neamhspleách, agus ghlac mé orm féin na torthaí a chur le chéile.

Hackathon DevDays'19 (cuid 1): dialann le moltaí, gineadóir bealaí siúil agus daonlathas leachtachNíor oibrigh aon duine againn riamh le API Google Map nó le róbónna scríofa Telegram, agus mar sin ba í an phríomhfhadhb an méid ama a leithdháileadh chun an tionscadal a chur i bhfeidhm: tógann tuiscint ar rud éigin níos faide i gcónaí ná rud a bhfuil a fhios agat go maith a dhéanamh. Bhí sé deacair freisin API bot Telegram a roghnú: mar gheall ar bhlocáil, ní oibríonn gach ceann acu agus bhí orm streachailt le gach rud a shocrú.

Is fiú a lua ar leithligh conas a réitíodh fadhb na mbealaí giniúna. Tá sé éasca bealach a thógáil idir dhá shuíomh, ach cad is féidir leat a thairiscint don úsáideoir mura bhfuil ach fad an bhealaigh ar eolas? Lig don úsáideoir ag iarraidh siúl 10 ciliméadar. Roghnaítear pointe i dtreo treallach, is é 10 ciliméadar an fad go dtí an líne dhíreach, agus ina dhiaidh sin tógtar bealach go dtí an pointe seo feadh fíorbhóithre. Is dócha nach mbeidh sé díreach, mar sin giorrúimid é go dtí an 10 ciliméadar sonraithe. Tá go leor roghanna ann le haghaidh bealaí den sórt sin - fuair muid fíor-ghineadóir bealaigh!

Ar dtús, bhí mé ag iarraidh an léarscáil a dheighilt i limistéir a fhreagraíonn do limistéir ghlasa: claífoirt, clóis, sráideanna, chun an bealach is taitneamhaí a fháil le haghaidh siúlóide, agus freisin ceol a ghiniúint de réir na réimsí seo. Ach bhí sé deacair é seo a dhéanamh ag baint úsáide as API Google Map (ní raibh am againn an fhadhb seo a réiteach). Mar sin féin, bhí sé indéanta tógáil bealaigh a chur i bhfeidhm trí chineálacha sonracha suíomhanna (siopa, páirc, leabharlann): má chuaigh an bealach timpeall na n-áiteanna sonraithe go léir, ach nach bhfuil an t-achar atá ag teastáil tar éis taisteal go fóill, tá sé críochnaithe go dtí a. fad atá sonraithe ag an úsáideoir i dtreo randamach. Ligeann API Google Map duit an t-am taistil measta a ríomh, rud a chabhraíonn leat seinmliosta a roghnú go díreach don siúlóid iomlán.

Mar thoradh air sin, d'éirigh le glúin a dhéanamh bealaí de réir phointe tosaigh, achair agus pointí idirmheánacha; ullmhaíodh gach rud ceol a rangú de réir codanna den bhealach, ach mar gheall ar easpa ama, socraíodh an rogha a fhágáil chun seinmliosta a roghnú go simplí mar bhrainse Chomhéadain bhreise. Mar sin, bhí an t-úsáideoir in ann an ceol a éisteacht leis a roghnú go neamhspleách.

Ba í an phríomhfhadhb a bhain le bheith ag obair le ceol ná fios a bheith agat cá háit le comhaid mp3 a fháil gan a cheangal ar an úsáideoir cuntas a bheith aige ar aon seirbhís. Socraíodh ceol a iarraidh ón úsáideoir (modh UserMusic). Cruthaíonn sé seo fadhb nua: níl an cumas ag gach duine rianta a íoslódáil. Is é réiteach amháin ná stór a chruthú le ceol ó úsáideoirí (modh BotMusic) - uaidh is féidir leat ceol a ghiniúint beag beann ar sheirbhísí.

Cé nach raibh sé foirfe, chuireamar an tasc i gcrích: chríochnaíomar le feidhmchlár ba mhaith liom a úsáid. Go ginearálta, tá sé seo an-fionnuar: trí lá ó shin ní raibh ach smaoineamh agat agus ní smaoineamh amháin ar conas go díreach é a chur i bhfeidhm, ach anois tá réiteach oibre ann. Bhí siad seo thar a bheith tábhachtach dom trí lá. níos fearr!

Daonlathas Leachtacha

Hackathon DevDays'19 (cuid 1): dialann le moltaí, gineadóir bealaí siúil agus daonlathas leachtach

Údar an smaoineamh
Stanislav Sychev
Líne-suas
Stanislav Sychev - ceannaire foirne, bunachar sonraí
Nikolay Izyumov - comhéadan bot
Anton Ryabushev - inneall

Laistigh de ghrúpaí éagsúla, is minic go mbíonn gá le cinneadh nó le vótáil. De ghnáth i gcásanna den sórt sin téann siad i muinín daonlathas díreach, áfach, nuair a éiríonn an grúpa mór, féadann fadhbanna teacht chun cinn. Mar shampla, b’fhéidir nach mbeadh fonn ar dhuine i ngrúpa ceisteanna a fhreagairt go minic nó ceisteanna a fhreagairt faoi ábhair áirithe. I ngrúpaí móra, téann siad i muinín na bhfadhbanna a sheachaint daonlathas ionadaíoch, nuair a roghnaítear grúpa ar leith “teachtaí” as measc na ndaoine go léir, a shaorann an chuid eile ó ualach na rogha. Ach tá sé deacair go leor a bheith ina ionadaí den sórt sin, agus ní gá go mbeadh an duine a thiocfaidh chun bheith ina dhuine macánta agus measúil, mar a bhí sé ag na vótálaithe.

Chun fadhbanna an dá chóras a réiteach, mhol Brian Ford an coincheap daonlathas leachtach. I gcóras den sórt sin, tá gach duine saor chun ról úsáideora rialta nó toscaire a roghnú, go simplí trína mian a chur in iúl. Is féidir le duine ar bith vótáil go neamhspleách nó vóta a thabhairt do thoscaire ar shaincheist amháin nó níos mó. Is féidir le toscaire a vóta a chaitheamh freisin. Ina theannta sin, mura n-oireann an toscaire don vótálaí a thuilleadh, féadfar an vóta a tharraingt siar tráth ar bith.

Tá samplaí d’úsáid an daonlathais leachta le fáil sa pholaitíocht, agus theastaigh uainn smaoineamh comhchosúil a chur i bhfeidhm lena n-úsáid ó lá go lá laistigh de gach cineál grúpa daoine. Ag an gcéad hackathon DevDays eile, shocraigh muid bot Telegram a scríobh le haghaidh vótála de réir phrionsabail an daonlathais leachtach. Ag an am céanna, bhí mé ag iarraidh fadhb choitianta a sheachaint le róbónna den sórt sin - clogáil an chomhrá ginearálta le teachtaireachtaí ón bot. Is é an réiteach ná an oiread feidhmiúlacht agus is féidir a thabhairt isteach i gcomhrá pearsanta.

Hackathon DevDays'19 (cuid 1): dialann le moltaí, gineadóir bealaí siúil agus daonlathas leachtachChun an bot seo a chruthú, d'úsáideamar API ó Telegram. Roghnaíodh bunachar sonraí PostgreSQL chun stair na vótála agus na dtoscaireachtaí a stóráil. Chun cumarsáid a dhéanamh leis an bot, suiteáladh freastalaí Fleascán. Roghnaigh muid na teicneolaíochtaí seo mar gheall ar ... bhí taithí againn cheana féin ar idirghníomhú leo le linn ár staidéir mháistir. D'éirigh le hobair ar thrí chomhpháirt an tionscadail - an bunachar sonraí, an freastalaí agus an bot - a dháileadh ar bhaill na foirne.

Ar ndóigh, is tréimhse ghearr é trí lá, agus mar sin le linn an hhackathon chuireamar an smaoineamh i bhfeidhm go dtí leibhéal an fhréamhshamhail. Mar thoradh air sin, chruthaigh muid bot a scríobhann chuig an gcomhrá ginearálta ach faisnéis maidir le hoscailt na vótála agus a thorthaí gan ainm. Cuirtear an cumas chun vóta a chaitheamh agus vótaíocht a chruthú i bhfeidhm trí chomhfhreagras pearsanta leis an bot. Chun vóta a chaitheamh, cuir isteach ordú a thaispeánann liosta saincheisteanna a dteastaíonn aird dhíreach orthu. I gcomhfhreagras pearsanta, is féidir leat liosta na dtoscairí agus na vótaí a bhí acu roimhe seo a fheiceáil, agus do vóta a thabhairt dóibh ar cheann de na hábhair freisin.

Físeán le sampla oibre saor in aisce,.

Bhí sé suimiúil a bheith ag obair ar an tionscadal, d'fhan muid san ollscoil go dtí meán oíche. Eispéireas taitneamhach a bhí ann a bheith ag obair i bhfoireann dhlúth.

PS. Tá clárú do chláir mháistreachta don bhliain acadúil seo chugainn cheana féin oscailte. Bígí linn!

Foinse: www.habr.com

Add a comment