Bot Telegram ji bo hilbijarkek kesane ya gotaran ji Habr

Ji bo pirsên wekî "çima?" gotarek kevntir heye - Natural Geektimes - çêkirina cîhê paqijker.

Gelek gotar hene, ji ber sedemên subjektîf hin ji wan hez nakim, û hin jî, berevajî, heyf e ku ez biçim. Ez dixwazim vê pêvajoyê xweşbîn bikim û dem xilas bikim.

Gotara jorîn rêgezek nivîsandina nav-gerokê pêşniyar kir, lê min bi rastî jê hez nekir (her çend min berê jî bikar aniye) ji ber sedemên jêrîn:

  • Ji bo gerokên cihêreng ên li ser komputer / têlefona xwe, heke gengaz be, divê hûn wê dîsa mîheng bikin.
  • Parzûnkirina hişk ji hêla nivîskaran ve her gav ne hêsan e.
  • Pirsgirêka nivîskarên ku hûn naxwazin gotarên wan ji dest bidin, her çend salê carekê werin weşandin jî, nehatiye çareser kirin.

Parzûna ku li ser malperê li ser bingeha rêjeyên gotarê hatî çêkirin her gav ne rehet e, ji ber ku gotarên pir pispor, tevî nirxa wan, dikarin nirxek pir hindik bistînin.

Di destpêkê de, min dixwest ku ez feedek RSS (an jî çendek) çê bikim, tenê tiştên balkêş li wir bihêlim. Lê di dawiyê de, derket holê ku xwendina RSS ne pir hêsan xuya dike: di her rewşê de, ji bo şîrovekirin / dengdana gotarek / lê zêdekirina wê li bijareyên xwe, pêdivî ye ku hûn bi gerokê re derbas bibin. Ji ber vê yekê min botek telegramê nivîsand ku di peyamek kesane de gotarên balkêş ji min re dişîne. Telegram bixwe pêşdîtinên xweşik ji wan çêdike, ku digel agahdariya li ser nivîskar / nirx / dîtinan, pir agahdar xuya dike.

Bot Telegram ji bo hilbijarkek kesane ya gotaran ji Habr

Li jêr birîn hûrguliyên wekî taybetmendiyên xebatê, pêvajoya nivîsandinê û çareseriyên teknîkî hene.

Bi kurtî li ser botê

Depo: https://github.com/Kright/habrahabr_reader

Bot di telegramê de: https://t.me/HabraFilterBot

Bikarhêner ji bo etîket û nivîskaran nirxek zêde destnîşan dike. Dûv re, parzûnek li ser gotaran tê sepandin - nirxa gotarê li ser Habré, nirxa bikarhêner a nivîskar û navînî ji bo nirxandinên bikarhêner ji hêla tagê ve têne zêdekirin. Ger mîqdar ji bendek diyarkirî ya bikarhêner mezintir be, wê hingê gotar parzûnê derbas dike.

Armanca aliyekî nivîsandina botê ew bû ku kêf û ezmûna xwe bi dest bixe. Bi ser de, min bi rêkûpêk ev yek anî bîra xwe Ez ne Google me, û ji ber vê yekê gelek tişt bi qasî ku gengaz dibe bi hêsanî û hetta primitive têne kirin. Lêbelê, ev yek rê neda ku pêvajoya nivîsandina botê sê mehan bigire.

Li derve havîn bû

Tîrmeh qediya, û min biryar da ku botekê binivîsim. Û ne bi tenê, lê bi hevalekî ku scala serdest bû û dixwest tiştekî li ser binivîsîne. Destpêk sozdar xuya bû - kod dê ji hêla tîmek ve were qut kirin, peywir hêsan xuya bû û min fikirîn ku di nav du hefte an mehekê de dê bot amade be.

Digel vê yekê ku ez bi xwe van çend salên dawîn dem bi dem kodê li ser zinar dinivîsim, kes bi gelemperî vê kodê nabîne an nanihêre: projeyên heywanan, ceribandina hin ramanan, pêş-processing daneyan, masterkirina hin têgehên ji FP. Ez bi rastî eleqedar bûm ka koda nivîsandinê di tîmekê de çawa xuya dike, ji ber ku koda li ser kevir dikare bi awayên pir cûda were nivîsandin.

Çi dikaribû biçûya wiha? Lêbelê, bila tiştan lez nekin.
Her tiştê ku diqewime dikare bi karanîna dîroka commit ve were şopandin.

Nasekî di 27ê Tîrmehê de depoyek çêkir, lê tiştek din nekir, ji ber vê yekê min dest bi nivîsandina kodê kir.

Tîrmehê 30

Bi kurtî: Min parsek ji rss-a Habrê nivîsî.

  • com.github.pureconfig ji bo xwendina mîhengên typesafe rasterast di polên dozê de (ew pir rehet derket holê)
  • scala-xml ji bo xwendina xml: ji ber ku di destpêkê de min xwest ku ez pêkanîna xwe ji bo rss-ê binivîsim, û rss-ê di forma xml de ye, min ev pirtûkxane ji bo parskirinê bikar anî. Bi rastî, parskirina RSS jî xuya bû.
  • scalatest ji bo testan. Tewra ji bo projeyên piçûk jî, ceribandinên nivîsandinê wextê xilas dike - mînakî, dema ku parskirina xml-ê xelet dike, dakêşandina wê li pelek, nivîsandina ceribandinan û rastkirina xeletiyan pir hêsantir e. Gava ku paşê xeletiyek bi parskirina hin html-ya xerîb bi tîpên nederbasdar utf-8 re xuya bû, xuya bû ku meriv wê di pelê de bihêle û ceribandinek lê zêde bike.
  • lîstikvanên ji Akka. Armanc, ew ​​qet ne hewce bûn, lê proje ji bo kêfê hate nivîsandin, min dixwest ku wan biceribînim. Wekî encamek, ez amade me ku bibêjim ku min jê hez kir. Fikra OOP dikare ji aliyekî din ve were nihêrtin - aktor hene ku peyaman diguhezînin. Ya balkêştir ev e ku hûn dikarin (û divê) kodê bi vî rengî binivîsin ku peyam negihêje an jî neyê pêvajo kirin (bi gelemperî dema ku hesab li ser yek komputerê dimeşe, divê peyam winda nebin). Di destpêkê de min serê xwe dihejand û di kodê de çopê hebû ku lîstikvan ji hev re bûne abone, lê di dawiyê de min karî avahiyek pir sade û xweşik derxim holê. Koda di hundurê her lîstikvanek de dikare yek-têlek were hesibandin; dema ku lîstikvanek têk diçe, acca wê ji nû ve dide destpêkirin - encam pergalek bi qasê xelet-tolerans e.

9 Aug

Min li projeyê zêde kir scala-scrapper ji bo parkirina rûpelên html-ê ji Habrê (ji bo derxistina agahdariya wekî rêjeya gotarê, hejmara nîşangiran, hwd.).

Û Pisîkan. Yên di zinar de.

Bot Telegram ji bo hilbijarkek kesane ya gotaran ji Habr

Dûv re min pirtûkek li ser databasên belavbûyî xwend, min ji ramana CRDT (Tîpa daneya dubarekirî ya bê pevçûn, eciband, https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type, habr), ji ber vê yekê min ji bo agahdariya di derbarê gotara li ser Habré de çînek tîpek nîvgrûbek veguhezbar şand.

Bi rastî, raman pir hêsan e - me hejmarên ku monoton diguhezin hene. Hejmara danasînan gav bi gav mezin dibe, her weha hejmara plusan (û her weha hejmara kêmaniyan). Ger du guhertoyên agahdariya min di derbarê gotarekê de hebin, wê hingê ez dikarim "wan di yek yek de bihêlim" - rewşa jimarvana ku mezintir e têkildartir tê hesibandin.

Nîvkom tê wê wateyê ku du tiştên ku di derheqê gotarekê de agahdariya wan heye dikarin di yek de werin yek kirin. Veguheztin tê vê wateyê ku hûn dikarin her du A + B û B + A hev bikin, encam bi fermanê ve girêdayî nabe, û di dawiyê de guhertoya herî nû dê bimîne. Bi awayê, di vir de komelayetî jî heye.

Mînakî, wekî ku hatî plansaz kirin, rss piştî parskirinê agahdariya hinekî qels di derbarê gotarê de peyda kir - bêyî metrîkên wekî hejmara dîtinan. Dûv re lîstikvanek taybetî di derbarê gotaran de agahdarî girt û çû ser rûpelên html-ê da ku wê nûve bike û bi guhertoya kevn re bike yek.

Bi gelemperî, wekî di akka de, hewcedariya vê yekê tune bû, hûn dikarin tenê ji bo gotarê nûvekirinDate hilînin û yek nûtir bêyî hevgirtinê bigirin, lê riya serpêhatiyê rê li min girt.

12 Aug

Min dest pê kir ku xwe azadtir hîs bikim û, tenê ji bo kêfê, min her sohbetek kir aktorek cihê. Ji hêla teorîkî ve, lîstikvanek bixwe bi qasî 300 byte giran e û ew dikarin bi mîlyonan werin afirandin, ji ber vê yekê ev nêzîkatiyek bi tevahî normal e. Ji min re xuya dike ku çareserî pir balkêş derket holê:

Yek lîstikvan pirek di navbera servera telegram û pergala peyamê ya li Akka de bû. Wî bi tenê peyam wergirtin û ji lîstikvanê chatê yê xwestî re şandin. Lîstikvanê chatê dikaribû di bersivê de tiştek bişîne - û ew ê ji telegramê re vegere. Ya ku pir hêsan bû ev e ku ev lîstikvan bi qasî ku pêkan hêsan bû û tenê mantiqa bersivdana peyaman dihewand. Bi awayê, agahdariya di derbarê gotarên nû de ji her sohbetê re hat, lê dîsa ez di vê yekê de ti pirsgirêk nabînim.

Bi gelemperî, bot jixwe dixebitî, bersivê dide peyaman, navnîşek gotarên ku ji bikarhêner re hatine şandin hilanîn, û min jixwe difikirî ku bot hema hema amade ye. Min hêdî hêdî taybetmendiyên piçûk ên mîna normalîzekirina nav û etîketên nivîskar lê zêde kir (li şûna "sd f" bi "s_d_f" re).

Tenê tiştek mabû biçûk lê — dewlet li tu derê rizgar nebû.

Her tişt xelet çû

Dibe ku we bala xwe dayê ku min bot bi piranî tenê nivîsand. Ji ber vê yekê, beşdarê duyemîn beşdarî pêşveçûnê bû, û guhertinên jêrîn di kodê de xuya bûn:

  • MongoDB ji bo hilanîna dewletê xuya bû. Di heman demê de, têketinên di projeyê de şikestin, ji ber ku ji ber hin sedeman Monga dest bi spammkirina wan kir û hin kesan bi tenê ew li seranserê cîhanê qut kirin.
  • Lîstikvanê pirê yê di Telegram de ji naskirinê wêdetir hate guheztin û bi xwe dest bi parskirina peyaman kir.
  • Lîstikvanên ji bo sohbetan bi bêmerhemetî hatin qut kirin, û li şûna wan lîstikvanek ku hemî agahdariya di derheqê hemî sohbetan de bi carekê ve veşart, hatin şûna wan. Ji bo her pişikê, ev lîstikvan ketiye tengasiyê. Belê, erê, mîna dema nûvekirina agahdarî li ser gotarekê, şandina wê ji hemî aktorên chatê re dijwar e (em wekî Google-ê ne, bi mîlyonan bikarhêner ji bo her yekê li benda mîlyonek gotarên di chatê de ne), lê her carê ku chat tê nûve kirin, normal e ku meriv biçe Mongayê. Wekî ku min gelek paşê fêm kir, mantiqa xebatê ya sohbetan jî bi tevahî qut bû û di şûna wê de tiştek ku nexebitî xuya bû.
  • Ji çînên tîpan tu şopek nemaye.
  • Hin mantiqên nebaş di lîstikvanan de bi aboneyên xwe yên ji hev re xuya bûne, ku dibin sedema rewşek nijadî.
  • Strukturên daneyan bi qadên cureyê Option[Int] bi nirxên xwerû yên efsûnî yên mîna -1 veguherî Int. Dûv re min fêhm kir ku mongoDB json hilîne û tiştek xelet tune ku wê li wir hilîne Option baş e, an bi kêmanî -1 wekî None parse bike, lê wê demê min ev yek nizanibû û gotina xwe girt ku "divê wusa be." Min ew kod nenivîsî, û min dev jê berneda ku wê demê biguhezînim.
  • Min fêhm kir ku navnîşana IP-ya min a gelemperî diguhere, û her carê neçar ma ku wê li navnîşa spî ya Mongo zêde bikim. Min bota herêmî da destpêkirin, Monga wekî pargîdaniyek li cîhek serverên Monga bû.
  • Ji nişkê ve, normalîzekirina tag û formatkirina peyaman ji bo têlegraman winda bû. (Hmm, çima ew ê bibe?)
  • Min jê hez kir ku dewleta botê di databasek derveyî de tête hilanîn, û dema ku ji nû ve dest pê kir ew wekî ku tiştek nebûbe xebata xwe didomîne. Lêbelê, ev yekane plus bû.

Kesê duyemîn bi taybetî bi lez û bez nebû, û ev hemî guhertin di destpêka Îlonê de di yek girseyek mezin de xuya bûn. Min tavilê pîvana hilweşîna encam negirt û dest bi fehmkirina xebata databasê kir, ji ber ... Min berê tu carî bi wan re mijûl nebû. Tenê paşê min fêhm kir ka çiqas koda xebatê hatî qut kirin û çend xeletî li şûna wê zêde bûne.

Îlonê

Di destpêkê de min fikirîn ku ew ê kêrhatî be ku meriv Monga master bike û wê baş bike. Dûv re min hêdî hêdî dest bi fêhm kir ku organîzekirina danûstendina bi databasê re di heman demê de hunerek e ku tê de hûn dikarin gelek pêşbaziyan bikin û tenê xeletiyan bikin. Mînakî, heke bikarhêner du peyamên mîna werdigire /subscribe - û di bersiva her yekê de em ê têketinek di tabloyê de çêbikin, ji ber ku di dema hilanîna wan peyaman de bikarhêner ne abone ye. Gumanek min heye ku pêwendiya bi Monga re di forma xweya heyî de bi awayê çêtirîn nehatiye nivîsandin. Mînakî, mîhengên bikarhêner di dema ku ew îmze kiriye de hatine afirandin. Ger wî hewl da ku wan berî rastiya abonetiyê biguhezîne ... bot tiştek bersiv neda, ji ber ku koda di lîstikvan de ji bo mîhengan ket nav databasê, ew nedît û têk çû. Dema ku jê pirsîn ka çima li gorî hewcedariyê mîhengan naafirînin, min fêr kir ku heke bikarhêner nebin abone ne hewce ye ku wan biguhezîne... Pergala parzûnkirina peyaman bi rengek ne diyar hate çêkirin, û tewra piştî nihêrînek nêz li kodê jî min karî. fêm nakin ka ew di destpêkê de bi vî rengî hatî armanc kirin an xeletiyek li wir heye.

Lîsteya gotarên ku ji sohbetê re hatine şandin tune bû; li şûna wê, pêşniyar kirin ku ez bixwe wan binivîsim. Vê yekê ez şaş kirim - bi gelemperî, ez ne li dijî kişandina her cûre tiştan di nav projeyê de bûm, lê ji bo yê ku van tiştan anî û wan xera kir dê mentiqî be. Lê na, beşdarê duyemîn dixuye ku dev ji her tiştî berdide, lê got ku navnîşa di hundurê chatê de bi guman çareseriyek xirab bû, û pêdivî bû ku bi bûyerên mîna "gotara y ji bikarhênerê x re hat şandin" nîşanek çêbike. Dûv re, heke bikarhêner xwest ku gotarên nû bişîne, pêdivî bû ku daxwazek ji databasê re bişîne, ku bûyerên têkildarî bikarhêner ji bûyeran hilbijêrin, navnîşek gotarên nû jî werbigire, wan fîlter bike, ji bikarhêner re bişîne. û bûyerên li ser vê paşde bavêjin databasê.

Beşdarê duyemîn li cîhek ber bi abstractions ve hat birin, dema ku bot dê ne tenê gotarên ji Habr bistîne û ne tenê ji telegramê re were şandin.

Min ji bo nîvê duyemîn îlonê bi rengekî bûyer di forma nîşanek cûda de pêk anî. Ew ne çêtirîn e, lê bi kêmanî botê dest bi xebatê kir û dîsa dest bi şandina gotaran ji min re kir, û min hêdî hêdî fêm kir ku di kodê de çi diqewime.

Naha hûn dikarin vegerin destpêkê û bînin bîra xwe ku depo bi eslê xwe ji hêla min ve nehatiye afirandin. Ma çi dikaribû bi vî rengî biçûya? Daxwaza min a vekişînê hate red kirin. Derket holê ku min kodek redneck heye, ku min nizanibû ez ê çawa di tîmekê de bixebitim, û min neçar ma ku di kêşeya bicîhkirina heyî de xeletiyan rast bikim, û wê di rewşek bikêr de safî nekim.

Ez xemgîn bûm û li dîroka commit û mêjera kodê hatî nivîsandin nihêrî. Min li kêliyên ku di eslê xwe de baş hatine nivîsandin mêze kir, û dûv re jî hatin şikandin…

F*rk bike

Gotar hat bîra min Hûn ne Google in.

Min fikir kir ku bi rastî kesek bêyî pêkanîna ramanek hewce nake. Min fikir kir ku ez dixwazim botek xebitandinê hebe, ku dê di yek kopiyek yekane de li ser yek komputerê wekî bernameyek java ya hêsan bixebite. Ez dizanim ku bota min dê bi mehan bêyî ji nû ve destpêkirinê bixebite, ji ber ku min berê berê botên weha nivîsandiye. Ger ji nişka ve bikeve û gotarek din ji bikarhêner re neşîne, ezman wê nekeve erdê û tiştek felaket çênabe.

Ma çima ez hewceyê Docker, mongoDB û nermalava bargiraniya din a nermalava "ciddî" dikim heke kod bi hêsanî nexebite an bi xeletî bixebite?

Min proje şikand û her tişt wekî ku min dixwest kir.

Bot Telegram ji bo hilbijarkek kesane ya gotaran ji Habr

Di heman demê de, min kar guhert û dema vala pir kêm bû. Sibehê ez rastê di trênê de şiyar bûm, êvarê ez dereng vegeriyam û êdî min nedixwest tiştekî bikim. Demekê min tiştek nekir, dûv re xwesteka qedandina botê li min bi ser ket, û min dest bi hêdî-hêdî kodê ji nû ve dinivîsand dema ku ez sibehê diçûm kar. Ez ê nebêjim ku ew hilber bû: rûniştina li ser trênek dihejîne û laptopek li ser çonga xwe rûniştin û li ser têlefona xwe mêze kirin ne pir rehet e. Lêbelê, wextê ku ji bo nivîsandina kodê derbas bû, bi tevahî nediyar derbas bû, û proje hêdî hêdî ber bi rewşek xebatê ve çû.

Li deverek di pişta hişê min de kulmek gumanê hebû ku dixwest mongoDB bikar bîne, lê min fikirîn ku ji bilî avantajên hilanîna dewleta "pêbawer", dezawantajên berbiçav jî hene:

  • Database dibe xalek din a têkçûnê.
  • Kod tevlihevtir dibe, û nivîsandina wê ji min re dirêjtir dibe.
  • Kod hêdî û bêbandor dibe; Li şûna ku tiştek di bîranînê de biguhezîne, guhertin ji databasê re têne şandin û, ger hewce be, paşde têne kişandin.
  • Li ser celebê hilanîna bûyeran di tabloyek cihêreng de, ku bi taybetmendiyên databasê ve girêdayî ne, sînorkirin hene.
  • Guhertoya ceribandinê ya Monga xwedan hin sînor hene, û heke hûn bi wan re bimeşin, hûn ê neçar bibin ku Monga li ser tiştek bidin destpêkirin û mîheng bikin.

Min monga qut kir, naha rewşa botê bi tenê di bîra bernameyê de tê hilanîn û dem bi dem li pelek bi forma json tê hilanîn. Dibe ku di şîroveyan de ew ê binivîsin ku ez xelet im, ku li vir divê databas were bikar anîn, hwd. Lê ev projeya min e, nêzîkatiya pelê bi qasî ku pêkan hêsan e û ew bi rengek zelal dixebite.

Nirxên sêrbaz ên mîna -1 avêtin û yên normal vegerandin Option, hilanîna tabloyek hash bi gotarên şandî vegerî objektê bi agahdariya chatê re zêde kir. Jêbirina agahdariya li ser gotarên ji pênc rojan kevntir zêde kir, da ku her tişt neyê hilanîn. Min têketin anîn rewşek xebatê - têketin hem ji pelê û hem jî ji konsolê re bi hejmarên maqûl têne nivîsandin. Gelek fermanên rêveberiyê yên wekî tomarkirina dewletê an bidestxistina statîstîkên wekî hejmara bikarhêner û gotaran zêde kirin.

Gelek tiştên piçûk rast kirin: Mînakî, ji bo gotaran hejmara dîtin, ecibandin, ne ecibandin û şîroveyan di dema derbasbûna parzûna bikarhêner de nuha tê destnîşan kirin. Bi gelemperî, ecêb e ku çend tiştên piçûk neçar bûn ku werin rast kirin. Min lîsteyek hilda, li wir hemî "bêrêkûpêk" destnîşan kir û bi qasî ku pêkan bû wan rast kir.

Mînakî, min şiyana danîna hemî mîhengan rasterast di yek peyamê de zêde kir:

/subscribe
/rating +20
/author a -30
/author s -20
/author p +9000
/tag scala 20
/tag akka 50

Û tîmek din /settings wan tam di vê formê de nîşan dide, hûn dikarin nivîsê jê bistînin û hemî mîhengan ji hevalek xwe re bişînin.
Ew tiştek piçûk xuya dike, lê bi dehan nuwazeyên wekhev hene.

Parzûnkirina gotarê di forma modelek xêzikî ya hêsan de hatî bicîh kirin - bikarhêner dikare ji bo nivîskar û etîketan nirxek zêde, û her weha nirxek beredayî destnîşan bike. Ger berhevoka nirxa nivîskar, nirxa navînî ya nîşanan û rêjeya rastîn a gotarê ji nirxa sînor mezintir be, wê hingê gotar ji bikarhênerê re tê xuyang kirin. Hûn dikarin ji botê gotarên bi fermana /new bipirsin, an jî bibin aboneyê botê û ew ê di her wextê rojê de gotaran di peyamek kesane de bişîne.

Bi gelemperî, ramanek min hebû ku her gotarek bêtir taybetmendî derxe (hub, hejmara şîroveyan, nîşangir, dînamîkên guhertinên nirxandinê, hêjmara nivîsê, wêne û koda di gotarê de, peyvên sereke), û ji bikarhêner re başek nîşan bide. ne ok di bin her gotarê de deng bidin û ji bo her bikarhênerek modelek perwerde bikin, lê ez pir tembel bûm.

Bi ser de jî, mantiqa xebatê wê ew qas eşkere nebe. Naha ez dikarim bi destan rêjeyek +9000 ji bo nexweş Zero destnîşan bikim û bi rêjeyek berbangê +20 re ez ê garantî bikim ku ez hemî gotarên wî bistînim (bê guman, min -100500 ji bo hin etîketan destnîşan neke).

Mîmariya paşîn derket holê ku pir hêsan e:

  1. Lîstikvanek ku rewşa hemî sohbet û gotaran hilîne. Ew rewşa xwe ji pelek li ser dîskê bar dike û wê dem bi dem vedigerîne, her car di pelek nû de.
  2. Lîstikvanek ku dem bi dem diçe ser feed RSS, li ser gotarên nû fêr dibe, li lînkan dinêre, pars dike û van gotaran ji lîstikvanê yekem re dişîne. Wekî din, ew carinan ji lîstikvanê yekem navnîşek gotaran daxwaz dike, yên ku ji sê rojan ne kevntir in, lê ji demek dirêj ve nehatine nûve kirin hildibijêre û wan nûve dike.
  3. Lîstikvanek ku bi telegramê re têkilî dike. Min hîn jî parsinga peyamê bi tevahî anî vir. Bi awayek dostane, ez dixwazim wê li du parçe bikim - da ku yek peyamên hatî pars bike, û ya duyemîn bi pirsgirêkên veguheztinê yên wekî ji nû ve şandina peyamên neşandiye. Naha ji nû ve şandin tune, û peyamek ku ji ber xeletiyekê nehatibe dê bi hêsanî winda bibe (heya ku ew di têketinê de neyê destnîşan kirin), lê heya nuha ev yek nebûye sedema ti pirsgirêk. Dibe ku pirsgirêk çêbibin ger komek kes bibin aboneyê botê û ez bigihîjim sînorê şandina peyaman).

Tiştê ku min jê hez kir ev e ku bi saya akka, ketina lîstikvanên 2 û 3 bi gelemperî bandorê li performansa botê nake. Dibe ku hin gotar di wextê xwe de neyên nûve kirin an jî hin peyam negihîjin telegramê, lê hesab lîstikvan ji nû ve dest pê dike û her tişt berdewam dike. Ez agahdariya ku gotar ji bikarhênerê re tê xuyang kirin tenê dema ku lîstikvanê telegramê bersivê dide ku wî bi serfirazî peyam radest kiriye, hildibijêrim. Tiştê herî xirab ku min tehdîd dike ev e ku ez çend caran peyamê bişînim (eger ew were radest kirin, lê piştrastkirin bi rengek winda dibe). Di prensîbê de, ger aktorê yekem dewlet di hundurê xwe de neparast, bi hin databasan re têkilî danî, wê hingê ew jî dikaribû bi rengekî nedîtî bikeve û vegere jiyanê. Di heman demê de ez dikarim berdewamiya akka biceribînim da ku rewşa lîstikvanan vegerînim, lê pêkanîna heyî bi sadebûna xwe min xweş dike. Ne ew e ku koda min pir caran têk çû - berevajî vê yekê, min gelek hewil da ku ew ne gengaz bike. Lê tiştek diqewime, û şiyana perçekirina bernameyê li perçeyên-aktorên veqetandî ji min re bi rastî hêsan û pratîk xuya bû.

Min circle-ci lê zêde kir da ku heke kod bişkîne, hûn ê tavilê pê zanibin. Bi kêmanî, ev tê vê wateyê ku kod berhevkirina rawestiyaye. Di destpêkê de min dixwest ku travis lê zêde bikim, lê ew tenê projeyên min bêyî forks nîşan da. Bi gelemperî, van her du tiştan dikarin bi serbestî di depoyên vekirî de werin bikar anîn.

Encam

Jixwe meha Mijdarê ye. Bot hatiye nivîsandin, ev du hefteyên dawîn ez wê bikar tînim û min jê hez kir. Heke ji bo çêtirbûnê ramanên we hene, binivîsin. Ez di dravkirina wê de xalê nabînim - bila ew tenê bixebite û gotarên balkêş bişîne.

Girêdana botê: https://t.me/HabraFilterBot
Github: https://github.com/Kright/habrahabr_reader

Encamên piçûk:

  • Projeyek piçûk jî dikare gelek wext bigire.
  • Hûn ne Google in. Tu feydeya çivîkan ji topê tine ye. Dibe ku çareseriyek hêsan bi heman rengî bixebite.
  • Projeyên heywanan ji bo ceribandina teknolojiyên nû pir baş in.
  • Botên Telegram bi hêsanî têne nivîsandin. Ger ne ji bo "karûbarê tîmê" û ceribandinên bi teknolojiyê bûna, dê bot di hefteyek an du hefteyan de bihata nivîsandin.
  • Modela lîstikvan tiştek balkêş e ku bi koda pir-mijal û xelet-tolerant re baş derbas dibe.
  • Ez difikirim ku min tahmek ji vê yekê girt ku çima civata çavkaniya vekirî ji forksê hez dike.
  • Danegeh baş in ji ber ku dewleta serîlêdanê êdî bi têkçûn/destpêkirina serîlêdanê ve girêdayî nabe, lê xebata bi databasê re kodê tevlihev dike û li ser avahiya daneyê sînordar dike.

Source: www.habr.com

Add a comment