TGViewer
Channel Public Channel
Programming ∀

Programming ∀

@programming_everyone

Ushbu kanalda dasturlashga aloqador turli expriementlarim, g'oyalarim, hulosalarimni ulashaman.
Subscribers
1.35K
Photos
197
Videos
4
Links
121

Showing posts older than #4298 · Back to latest

Older Posts 19 shown
Post #4297 805
Programming ∀ Bu disko o'zidan olingan test. Bizda esa sal boshqacha bo'ldi. 1. Bizni EDSL bilan disko nix config generate qilinadi. 2. Disko cnofiglarimiz nomi doyim birxil bo'ladi shu sababli biz ularni import qila olamiz. Shu sababli biz har bir config uchun biz 2…
Nix testlar run bo'lganida.

Ammo bular parallel emas ketma ket run qilinyabti adashmsam, faqat vmlar down qilinmayotganga o'xshaydi yani hammasini kutyabti.
Post #4295 739
Bu disko o'zidan olingan test.

Bizda esa sal boshqacha bo'ldi.

1. Bizni EDSL bilan disko nix config generate qilinadi.
2. Disko cnofiglarimiz nomi doyim birxil bo'ladi shu sababli biz ularni import qila olamiz. Shu sababli biz har bir config uchun biz 2 rasmdagidek yozib qo'ydik

Endi buni flake.nix ichiga tiqilsa bo'ldi.

Masalan aynan manashu canonical-no-swap ni run qilishga quyidagicha command bo'ladi.

nix build .#checks.x86_64-linux.canonical-no-swap


Agar birdan hamma testlarni run qilish kerak bo'lsa unda shunchaki

nix flake check qilamiz.
Post #4294 509
CLI app in bash.

Adashmasam juma kundan buyon asosiy vaqtim test yozish, test muhitni sozlashga ketdi.

1. Haskellda hspec + integratsion testlar bilan ezildim unit testlar oson bo'ldi.
2. Rustda unit testlar yozdim asosan bu oson bo'ldi.
3. Endi nixda ham test yozyabman va bunaqa shell script qivoldim.
  • 😁 3
Post #4293 536
1. Kuryer kaltak yedi.
2. Operator O’zbekcha bilmaganiga gap eshityabti.

Yandex vapshe mikkimaus bo’lib ketti.
  • 😁 16
Post #4292 577
Bir repoga kirib unstar qilibman.
Kegin qayta kirib yana star bosdim.

Bu degani reponi oldin ko'rganman, star bosganman.

Oradan vaqt o'tib kirganmanda yana unstar qilib qo'yganman. Kegin blya nega star bosilmadi deb yana star bosdim.
  • 🤣 13
Post #4290 853
Stop it...
  • 😁 7
Post #4289 824
Haskell tushunarsiz deydiganlarga :)
Post #4287 798
Programming ∀ Photo
nega bunaqa comment yozishimiz sababi...
Post #4286 759
Bugun kuni bo'yi rustda yozdim endi kechgacha haskellda.

Work life balance.
  • 😁 7
  • ⚡ 2
Post #4285 773
  • 🔥 6
  • 👀 1
Post #4284 695
Programming ∀ Hullas RFC balo battarlar bilan hamma joyni standartlashga urunishadi. Ammo kimdir kelib standartlarizga tupurib ketadi. Bu narsa doyim bo'lgan. Shunchalik darajadaki xatto kundalik hayotda ko'p kuzatiladi. Standartlik va nostandartlik tushunchalari shunchalik…
Forgejo 423 degan custom http status qo'shgan ekan.

Man 429 code bilan adashtiribman. O'zi o'ylagandim 429 da repo archived ekani haqida aytishi g'alatiroq ekanini. Nu mayli degandim ammo etibor qilmabman custom codega. Kegin muammo kutilmagan joyda chiqib qoldi )) libni ishlatilgan joyda comile bo'lmay qogan ))

Voot rfcdan chetga chiqish manashunaqa mikkimausliklarga sabab bo'ladi bazilar. Biz esa forgejoni so'ka so'ka davom etyabmiz ishni...
Post #4283 531
Eski narsalar esimga tushib ketdi, kutish barbir azobda...

Ho'sh sizningcha o'quv markazlar AI ni replace qiladimi ?
Post #4282 568
Programming ∀ Dostavkalardagi estimation mexanizmlar juda yolg'on ishlaydi. Masalan yandex 2x kechikishi mumkin. Yoki 1 soat kutganizdan kegin ham zakazni otmen qivorishi mumkin. Ammo tayinli kompensatsiya kutmang. Uzum ham vapshe vapkod ekani sezilib turadi. Random momentlanrni…
Umuman logichno, agar punktuallik muhim bo'lganida kuryerlik qilmas edi hamma ham :)

Undan tashqari bu biznes va bu ishlayabti, mandaka tabi nozik mijozlar ularga na**y keramas. Fuckuplar bo'lyabti va bu norm muhimi bizness yuryabti.

O'zi hamma prikol shunda anavi gap bor ediku "Biznes uchun kod bunaqa bo'lishi..." Aslida buni dolban programmerlar aytgandi nu mayli bizni keysda ham mos tushadi yani biznes uchun murakkab sistema kerak emas ko'p narsani cover qiladigan sistema bo'lsa yetarli.
Post #4281 474
Etibor bering, bankar kreditingiz o'tib ketsa sizdan % olishadi.

Ammo schet block bo'lib qolsa, sizga juda kerak payitda app ishlamasa va yana boshqa shunaqa momentlarda sizga bir tiyn ham to'lashmaydi.

Daje bu galvarsalar sizni scam qilmasliklariga ham javob berolmaydi. KYC deysizmi ? hehe common guys bunchalik sodda bo'lmanglar myid da ham teshiklar bor ekanini bilamizku hammamiz.
Post #4280 449
Qisqa gap bilan aytganda bu galvarslar ishlamaydi. Estimationlar mexanizmlari ham chirigan legacyligicha qolgan.

Progressiv davlatda yashayabmiz ahir, manashunaqa masalalarda corplarni yaxshigina itaradigan qonunlar chiqsa zo'r bo'lar edi... Masalan dostakva kechikgani uchun katta jarima davlatga va userga, biror payment app downtime bo'lgani uchun userga shtraf to'lasa ana surprizu mana surpriz bo'ladida.

Man zerikandan 24/7 tekshirardim uptime va orderlar kechikmayotganini 😎
Post #4279 450
Dostavkalardagi estimation mexanizmlar juda yolg'on ishlaydi.

Masalan yandex 2x kechikishi mumkin. Yoki 1 soat kutganizdan kegin ham zakazni otmen qivorishi mumkin. Ammo tayinli kompensatsiya kutmang.

Uzum ham vapshe vapkod ekani sezilib turadi. Random momentlanrni belgilaydi. Masalan atayin sinaganman ko'chani narigi betidagi cafedan buyurma qilib va 40 minutda kelgandi. Kuryeradn so'raganimda biratola 3ta zakazga qo'shvordim degan.

Xop, kuryerlar birnechta buyurmani barobar olib kelar ekan. Unda nima uchun vaqtni shunga moslamaydi ? Estimation odatda siz tezroq buyrma qivorishingizga mo'ljallanadi firkimcha.

Sababi yaqinda kuryerga telefon qilib 50k sum qo'shib beraman aka deganimda 2x tez keldi buyurma 😁

Hulosalarim.
1. Estimation musor ishlaydi, uyoqda asosiy psixologiya tezroq buyurma qilish.
2. Kuryerlar vapshe ishlagisi kelmasdan ishlaydi, demak ularni ishlatadigan tizim molxona.
3. Restoranlar bilan vaqtlarni kelishmaydi. Masalan X taomni tayyorlanishiga vaqt ketmasligi mumkin lekin buni bazida avg estimationga qo'shvoradi. Aslida birdan kuryer topish mumkin edi. Ishqilib bu borada turli edge caselar o'ylanmagan deb o'ylayman.
4. Estimationi kuryer qilolmaydi, masalan 15-daqiqada yetkazib beraman deb estimate qilsa uje ekranizda boshqa raqam ko'rinishi mumkin.
5. Failar arzon. Msalan siz N summalik buyurma qildingiz, nimadir fuckup chiqdimi ? Sizga arzimagan summalik promokod beradi. Agar fail qimmat bo'lsa, masalan har bir kechikgan daqiqasi uchun 10k sum to'lasa bormi :) Kuryerga telefon qilib 10 daqiqa kech kelsa 50k berishimni aytardim )))
  • 🔥 1
Post #4278 416
Shunda biz eventlarni doyim ham reproduce qilishimiz ham shart emas. Shunchaki verify qilolsak bo'lgani. Shunda biz doyim garantiya berishimiz mumkin, agar falon hodisa bo'lsa demak aniq undan oldingi hodisa bo'lgani haqida.

Masalan Agar tsansaction success bo'lgan bo'lsa demak eshmatga aniq pul o'tgan. Biz unga pul o'tganligini reproduce qilishimiz shart emas balki transaction success bo'lishi uchun kerakli eventni bajarishga garantiya berolsak bo'lgani.
  • 🔥 1
Post #4277 510
Manga anchadan buyon qiziq bo'lyotgan narsa bu verified, reproducible events.

Masala oson ko'rinadi eventlarni storega yozamiz ularning irarxiyasi bo'yicha reproduce qilsak bo'ladi yani shunchaki olib kelamiz va execute qilamiz.

Ammo savollar juda ko'p masalan eventlar concurrent bo'lsachi ? ev2 -> oneof(ev3 | ev4) yoki bo'lmasam cheksiz irarxiya... Bu odatda kattaroq stream processingda sodir bo'ladigan hodisa, masalan kafkadan kelgan streamlar. Bu yerda event larni reproduce qilish doyim ham o'xshamasligi mumkin shunchaki katta sequence bor aynan Xni reproduce qilishga hammasini qayta qiladigan holatga duch kelish mumkin. Masalan har bir chunk ketmaketligi o'ziga hos unikal bo'lsa.

Undan tashqari vaqt faktori ham mavjud. Masalan bazi eventlar expire bo'lishi mumkin. Aytaylik verification code 1 daqiqada expire bo'ladi. Buni retry qilganingizda esa xato bo'lishi mumkin.

Ammo mavzu va bir chekkadan boshlashga arziydi. Xozircha manabunaqa plan qilyabman. Event source qilaman, bu narsani qisqaroq iohlasak. Biror statega nisbatdan sodir bo'lgan barcha actionlar. Kegin manashu actionlarni snapshot qilib saqlayman. Nu yuqorida aytilganidek va ularni bog'lab qo'yaman next, previus qilib.

Masalan qandaydir processing flow yakunlanganida sodir bo'lgan barcha actionlar record qilingan bo'ladi. Eng muhimi actiondan kegin state ham store qilinadi.

Kegin esa qandaydir spec yozaman umumiy flow qanday bo'lishi kerakligi haqida. Spec esa shu Statemachine temporal logic yani Allow + TLA deb tushunak bo'ladi. Hali aniq bilmayman ))

Endi event loglarni spec bilan mos ekanini tekshirish qoldi. Yani event loglar butun jarayonda sodir bo'lgan hodisalar. Bizni spec esa aynan jarayon qanday bo'lishining modeli endi qanaqadir checker bor, modelni o'qiydi va event loglarni o'qiydi va solishtiriadi jarayon modelga mos keladimi yo'qmi. Agar mos kelmasa demak tizimda nimadir xato.
  • 🔥 2
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →