Select your region
and interface language
We’ll show relevant
Telegram channels and features
Region
avatar

Programming ∀

programming_everyone
Ushbu kanalda dasturlashga aloqador turli expriementlarim, g'oyalarim, hulosalarimni ulashaman.
Subscribers
1 240
24 hours
30 days
40
Post views
397
ER
37,34%
Posts (30d)
33
Characters in post
457
Insights from AI analysis of channel posts
Channel category
Technology and Apps
Audience gender
Male
Audience age
25-34
Audience financial status
Middle
Audience professions
Technology & Software Development
Summary
April 29, 11:10
Media unavailable
1
Show in Telegram

April 28, 05:25

Benchmarklarga qarab 10x tezroq narsani ishlatasiz ammo biror action 1 daqiqa davom etadi.
Eng tez backend framework ishlatishga xarakat qilasiz ammo productionda shunchaki k8s yoki biror orkestrator bilan cluster qivorasiz.
Garbage collectionsiz til ishlatasiz ammo o'zingizni GCni yasab qo'yasiz.
System design o'rganasiz ammo oddiy control flowni ham zo'rga yozasiz.
Hullas sanasa manashunday contraversal narsalar ko'p. Shu sabab hammasi eng oddiysidan boshlanishi kerak.
Falon narsani hal etdik tamam.
Unda qanday rivojlanamiz ?
Buning javobi ham oddiy. Shunchaki muammoni o'rganish kerak eng birinchi. Masalan bizda qandaydir
status
mavjud. Statusga birqancha variantlar bor
Fail
va
Done
Okay xozir hayolga kelgani
if status == `Fail`
then act1
else act2
Nu vaqt o'tdi endi bizga 3-variant qo'shildi
InProgress
ho'sh endichi ?
Biz ishlatadigan tilda qanday fichalar bor aynan shunaqa variantlar bilan ishlashga ?
savol oddiy ammo javob uchun yan detailarga kirish kerak status misolida bizga 2ta narsa muhim. 1 variantlarni elon qilish va ularni handle qilish.
Elon qilishga qandaydir tiplar masalan shu enum A yoki B
Handle qilishga esa manashu status ni handle qiladigan yechimlar: switch, match, case, etc...
data Status = Done | InProgress | Fail
case status of
Done -> act1
InProgress -> act2
Fail -> act3
Endi boshqa holatga duch keldik. Bizda birqancha variantli record yoki structlar mavjud bo'lishi mumkin. Masalan
apiResult
bizga 2 turdagi qiymat qaytaradi
Success { data:: SomethingType
va
Fail { reason:: String, code:: Int
Ho'sh buni qanday qilamiz ? Ha biz ADT va control flow haqida ko'p gaplashganmiz. Hamma tillarda ham ADT va pattern matching mavjud emas lekin yuqoridagi holatlar har qanday tilda code yozayotganingizda paydo bo'lishi mumkin bu degani shu til imkoniyatidan kelib chiqib qandaydir yechim qilasiz. Agar variantlar juda ham ko'p bo'lsa yana bu caselarni handle qilishga boshqa yechimlar qidirib ko'rasiz.
Tushunganingizdek masala mindsetda. Siz dasturchi bo'lib 10 yil tajriba qilishingiz mumkin. Ammo 10 yildan buyon birxil code yozyotgan bo'lishingiz muhmkin bunday holatda ham muammo emas. Chunki muammoni hal etyabsiz, ha code chiroyli emasdir, qayerdadir panic bo'lib crash bo'lar.
Muhim qismi o'zingizni aldamaslik. Agar sizga nimadir yoqmasa unda yoqadigan holatga keltirishga xarakat qilish kerak buning uchun esa alternativ narsalarni discover qilaverish kerak. Agar tanqid bo'lsa doyim nisbiy bo'ladi masalan sizdagi 10 turdagi variantni handle qiladigan 10ta if o'rniga boshqa yechim qilish mumkin edi. Balki siz ishlatyotgan dasturlash tili o'rniga boshqa til ishlatish mumkin edi. Hullas asosiy masa extiyojda. Hohlamaysizmi ? Okay bu sizni tanlovingiz. Boshqa optionlarni ko'rishni istamaysizmi ? Bu ham sizni tanlov.
10 yildan buyon ishlab kelyotgan narsani birdan rewrite qilish. Yoki shunchaki bor narsani sal boshqacha qilib qayta yozish kabi narsalardan esa umuman mano yo'q. Industryda juda ko'p narsani ko'rsa rewrite bo'lib yotibti ayniqsa rewrite rust kabi fenomenlar yoki qanaqadir yangi http frameworklar. Bunaqa narsalarga vaqt sarflashdan oldin o'ylab ko'ring bu qanchalik arzirli ekanini.

April 24, 18:54

Man uchun azob.
commit comment yozish
PR description yozish
Doc yozish
Lekin barbir yozishga majburman manashu narsa doyim kompramisga sabab bo'lgan.
Generatorlarga berish mavzusiga ham skeptikman ishqilib kasbimni yoqimsiz qismi deb qabul qilganman bu mavzularni.

April 24, 14:46

Alamimni kimdan olayin ?

April 24, 14:04

Shunaqa payitda hamma joy jim jid, qo'shnilar ham baqir chaqir qilmaydi.
Alam qiladi bla.
Boya xonamda uchib yurgan pashsha ham yo'q.

April 24, 13:59
Media unavailable
1
Show in Telegram

Alamimni kimdan olayin ?

April 23, 02:39

Bunaqa prikol narsalar ham bor. Juda sodda cli qivolsa bo'ladi shell o'zida.
https://www.gnu.org/software/bash/manual/html_node/Conditional-Constructs.html#index-case

April 22, 18:08

Internetni nima qildilar ?
Va nega unday qildilar ?

April 21, 18:37

Framework devayslarini prezintatsiyasi bo'lyabti ekan. Nixoyat macbooklarni musorga o'tishimizga oz qoldi. https://www.youtube.com/watch?v=uqFDIR00Mwo

April 21, 17:51

Framework devayslarini prezintatsiyasi bo'lyabti ekan.
Nixoyat macbooklarni musorga o'tishimizga oz qoldi.
https://www.youtube.com/watch?v=uqFDIR00Mwo