Programming ∀
前往频道在 Telegram
Ushbu kanalda dasturlashga aloqador turli expriementlarim, g'oyalarim, hulosalarimni ulashaman.
显示更多1 354
订阅者
无数据24 小时
无数据7 天
-230 天
帖子存档
1 354
Nodejsda file move command yo’q ekanini endi bilibman 😁 Hosh move yo’q bo’lsa qanday yechim qilish mumkin ?
1 354
Alerting + Autoscale.
Qiziq usecase. Tassavur qiling ishlab turgan tizimda load ko'payib ketdi va alerting bo'la boshladi CPU, RAM, DISK Deyarli to'lgani haqida info kelayabti. Shunday caseda autoscaleni automation qivorish kerak ekan. Aynan downtime bo'lmasligini oldini olish uchun. Masalan yangi volume qo'shvorish. Yoki bo'lmasam yangi cluster memberlar. Umuman turli approachlar qilsa bo'ladi. Bazi technologylarda bunday imkoniyatlar uje bor bo'lsa ham kerak adashmsam.
Kimda shunday holatga extiyoj bo'lgan va qanday yechim qilgan ?
1 354
Mayli bugun trash markazlar va u yerdagi "mentorlar"ni hate qilmaymiz. Ularni kuni bo'lmasa ham bizni asab ketmasin 😎
1 354
Paradigmlar haqida qiziq hodisalarni kuzatdim.
1. Bazi paradigmlarga amal qiladiganlar mohiyatni tushunib emas balki shunchaki absurtlarni copy paste qilib ishlashadi. OOP haqida beriladigan ma'lumotlarni ko'plari aynan shu absurtlarga boy.
2. Paradigm paradoxlar mavjud. Ayniqsa traditional software engineeringda shunday. Yuqori bilim tajribali engineerlar jamoada kam yoki umuman yoqligi sababdan paradigmlarni buzishni paradox ko'rinishida amalga oshirishadi.
— Business uchun ish tez bitishi kerak...
— Biz hamma narsani murakkablashtirsak boshqalar tushunmay qoladi...
3. Paragmatical idealar asosi subyektiv fikrlardan kelib chiqadi. Lekin ma'lum formalism aspectlari orqali ushbu g'oyalar obyektivroq tus oladi.
4. Ko'p paradigmlar asosida Matematika bo'limlari yotadi. To'plamlar nazariyasi, Kategoriya nazariyasi, Lambda calculs, Calculs, Linear algebra. Bu yaxshi yoki yomon ekaniga aniq fikrlarim yo'q. Ammo matematik paradoxlar o'z o'zidan buyoqga ham aralashish extimoli bor. Lekin buyam shunchaki asossiz fikr.
5. Paradigmlar taqdim qiladigan yechimlar tomondan qaralganida juda ham o'xshash bo'ladi. Ammo yondoshuvlar farq qiladi.
6. General va specific paradigmlar mavjud. General paradigmlar o'ta complex va keng qamrovli bo'ladi. Specificlar asosan paradigm bo'limlari yoki kengaytirilgan yoki biror narsaga yo'naltirilgan ko'rinishda bo'ladi.
7. Paradigmlarni mix qilish masalan OOP va FP dagi bazi approachlarni qo'shib ishlatish bazida juda keng tarqalgan. Lekin mix qilish odatda katta prioritetizatsiya qilishga ham sabab bo'lishi mumkin. Sababi mixlardan boshqa side effectlar chiqmasligi uchun.
8. Aynan paragmatism tarafdorlari juda kichik jamiyat. Asosiy engineering jamiyatining taxminan maksimum 5-10% qismini tashkil qilsa kerak. Lekin shu torgina jamiyatlar ham juda ko'plab jamiyatchalarga bo'linib ketishgan.
9. Paradigmlar orasida aynan Functional programming jamiyati ancha active. Shu o'rinda adabiyotlar va resurslar ham juda ko'p xisoblanadi. Ammo mavzular asosan adavanced :)
10. Aynan biror paradigm oriented engineering uchun joblarda junior positionlar deyarli yo'q 😁
1 354
Inheritanceni DRYga juda mos keladi deganda bir g'alati narsani sezib qoldim. Suxbat kecha bo'lgan edi bu savol bugun keldi. Shu kabi narsalardan chiqadigan side effectlar DRYni buzish bo'ladiku ? Chunki har safar birxil turdagi muammolarni chiqarasiz 😁
Demak DRY bug levelda ham mavjud ekan :)
Qolganlar qanday fikrda ?
1 354
Juda qiziq mavzudagi kitob uchrab qoldi.
Yaqinda analog xisoblash mavzusida qiziq suxbat qilgan edik. O'sha suxbatdan keyin xisoblash tizimlari yanada qiziqtirib qo'ydi.
Organization of computer systems kitobida digital computing qanday amalga oshirilishi, tarixi, rivojlanishi va turli texnik yechimlari haqida tanishgan edim. Mavzular juda qiziq va birmuncha murakkab edi. Ammo bu kitob mavzulari va aynan xisoblashga qaratilgan turli yondoshuvdagi contentlar etiborimni tortdi.
Shu yilgacha Menga traditional digital va quantum computing tanish edi vanihoyat analog computing...
Qiziq yana qanday xisoblash tizimlari mavjud. Bu tizimlarni aynan birortasiga industury o'tganida yoki o'tish jarayonida traditional engineerlar nima qiladi ? Qiziq savollarim ko'payib ketdi )) Ammo kitobni o'qish kerak manimcha katta dunyoqarash beradi va ko'p savollarimning va boshqalarning savollarini javoblari bor bu kitobda ))
1 354
Repost from Книги для программистов
Analog and Hybrid Computer Programming, 2nd Edition (2023)
Автор: Bernd Ulmann
Количество страниц: 335
Классические цифровые компьютеры приближаются к своим физическим и архитектурным границам, поэтому интерес к нетрадиционным подходам к вычислениям, таким как квантовые и аналоговые компьютеры, стремительно растет. Для широкого круга практических приложений аналоговые компьютеры могут превосходить классические цифровые компьютеры как по скорости вычислений, так и по энергоэффективности.
Книга представляет собой введение в программирование аналоговых и гибридных компьютеров. Оно содержит большое количество практических примеров, начиная с простых задач, таких как радиоактивный распад, гармонические осцилляторы и кинетика химических реакций, и заканчивая сложными темами, включающими моделирование нейронов, хаотических систем и многое другое.
Скачать книгу
1 354
Nazarimda bazi "Hackaton"ga otni kallasiday pulni saflab ishlamaydigan software product olgandan ko'ra. Yuqoridagi kabi tizimlar ishlab chiqib product or industury based modification qilgan afzal.
Masalan manga qiziq bo'ldi yuqoridagi event. Maqsad 10k$ yutuq emas haqiqiy challenge :)
1 354
Repost from @yegor256 news
Our colleagues from Russian-Armenian University together with my friends from a large and famous IT company organize a competition for the developers of EOLANG LLVM-based code analyzers, with a prize of $10K for the winner: submit your project here.
1 354
Repost from N/a
Лидирующая финтех компания Payme открывает набор на оплачиваемую стажировку с возможностью дальнейшего трудоустройства в отдел backend разработки.
Что мы ожидаем от кандидата:
— Фундаментальные знания JavaScript
— Опыт разработки на node js будет преимуществом
— Желание развиваться как Backend разработчик
Мы предлагаем:
— Обучение в высокопрофессиональной команде и возможность стать её частью!
— Длительность стажировки от 1 до 3 месяцев
— График 5/2, с 10:00 до 19:00
— Условия оплаты обсуждаются на собеседовании
Обучение будет проходить на русском языке.
По окончанию стажировки, показавшие лучшие результаты стажеры будут трудоустроены на позицию Junior backend разработчика.
Для участия в отборе необходимо отправить резюме в TG - @dianaKpayme с пометкой «Стажировка в backend».
Резюме, направленные без пометки, к сожалению, не будут рассмотрены.
1 354
Ha yana bir narsa bor. Bu mavzuni anchadan buyon gapirib kelaman. Oldin fikrimni bayon qilay.
Agar man biror o'quv markaziga pul to'lab o'qiydigan bo'lsam. Ushbu tashkilot va u yerda dars berayotgan kishilar haqida quydagi fikrlarim mavjud.
Tashkilot: Shunchaki tashkilot u bilan Meni bog'lab turadigan narsa o'rtamizda kelishuv. Man ushbu tashkilotdan N miqtordagi pul evaziga aniq yo'naltirilgan ta'lim xizmatini sotib olaman :)
Uztoz/Mentor: Ushbu tashkilot ishchishi. Shartnomadagi mavzuga doir barcha huquqlariga ega. Yani man dars qilmasam haydab yuborishi ham mumkin. Ammo uning ham aniq vazifasi bor va bular keltirib qo'yilgan. Ammo o'sha mentor offtopic mavzularda uztozlik qilishi esa offtopic.
Endi tashkilot va mijoz o'rtasidagi munosabatlar. Man tashkilotdagi insonlar bilan hoh kotta hoh kichik vaxakazolar bo'lsa qanday gaplashishim yoki gaplashmasligim Manga bog'liq. Bu degani ushbu tashkilotdagi qandaydur "kattakon"lar bilan uzoqdan salom berib qo'lim ko'ksimda bo'lishi kerak va ularga o'ta lutf bilan muomila qilishim kerak degani emas. Ko'z ko'zga tushganida el qatori qarz salomini berishim kerak(Uyog'i insoning madaniyati darajasida. Chunki salomlashishning ham turi, uslubi ko'p).
Bazi tashikotlar o'zini xizmat emas balki qandaydur juda ko'p priviligega ega joylarday qilib tanitayotganini eshitganim uchun ushbu fikrlarni bayon qildim. Masalan Man ingliz tilini o'rganishga borganimda Ingliz tili o'qituvchim Manaviyat/Marifat va tarixdan dars berishini hohlamayman. Hohlasa bersin ammo Manda ham tanlov bor hohlasam olaman :) Ammo u kishi o'zini bunga ham majburday tutishi shart emas.
Social Distance degan mavzuni yaxshilab o'rganib chiqishimiz kerak...
1 354
Eskilarda maktab yaxshi bo'lgan. 10-15 yillik engineerlarning ko'plari bilan gaplashganimda. Fundamental bilimlari yaxshi ekani shundoq sezilib turadi. Ayniqsa Computer science backgrounda univerda o'qiganlar(Gap aynan uzb univerlarida o'qiganlar haqida emas umuman).
Shu o'rinda xozirgi boshlangich xamkasblarda nazar solaman(O'zim ham shu qatori). Fundamental bilimlardagi yetishmovchiliklar shundoq sezilib turadi.
Gap faqat nazariy bilimlarda emas. Shunchaki dunyo qarashda. Eskilarni dunyo qarashiga faqatgina tajriba sabab emas yaxshi fundament ham bo'lgan. Hulosalarimni aniqroq olish uchun asosan qanday mavzular qiziqtirishidan tortib qanday mavzularda o'qigan qanday resurslar adabiyotlardan foydalanganlarini ham so'rayman.
To'g'ri bazi oldschool engineerlarda faqat bilgan narsasini qilish yoki bir tomonlama fikrlash kabi narsalar bor. Ammo bular har qanday kvalifikatsiyadagi insonlarda mavjud. Shu sabab yuqoridagi gaplar bunday insonlarga nisbatan emas.
O'zim uchun kashf qilgan farqlarim.
Ko'p tajribali engineerlar ma'lumotlarning asosiy qismini kitoblardan olishgan. Bu narsaga infratuzulma ham sabab bo'lgan chunki media rivojlanmagan edi.
Demak default holatda ularda talablar yuqori bo'lgan. Bizda esa resurslar uchun asosiy manba bo'lishi mumkin bo'lgan narsalar birqancha. Bu vaziyatni yanayam murakkablashtiradi. Ushbu vaziyatni esa huddi yo'llarga qiyosladim.
Oldinlar asosiy yo'llar sanoqli bo'lgan bo'lsa barcha shu yo'llardan yuradiganlar avvalo ko'p sabr qilishgan va ushbu yo'lni manzilga olib borishiga ishonib barcha ogir yengiliga chidab davom qilishgan.
Xozirda yo'llar ko'p huddi labirint kabi. Insonlar esa yo'l davomida tugab qolishyabti....
1 354
O’quv markazlardagi o’ta bilimsiz “uztoz”larning ko’pligi kuchli mutaxasisslardan ham shubxalanishga sabab bo’layabti.
O’tgan yili bir tashkilotdagi “mentor” bir joydagi internship interviewdan otolmagan edi…
1 354
Maqsad bir insoning xatosi sabab hamani qoralash emas:
1. Fakt checking and validation masalasi.
2. Shu bir inson qolganlarning obrosizlantirayotgani. Biror kishi biror joyda dars berayotgan bo'lsa jiddiy qaralmaydi. Chunki shunday insonlar dasdidan ustozlar yana obrosizlangan.
3. Masuliyatsizlikning oqibati.
4. Menga alam qildi bu voqea !
1 354
Birovning xatolarini qoralamoqchi emasman. Ammo uztoz deb ko'rsatilgan kishi aynan bunday qo'pol xatoliklarga yo'l qo'yishi alamli bo'ldi....
1 354
Gap aynan higtload haqida gap ketganida. Aynan pedogoglardan sifatli javob kutiladi.
Bizning IT communitylarda bu mavzular juda ham actual bo'lmasligi mumkin sababi talab, tajriba va resurs kam bo'lishi mumkin.
Ammo o'quv markazlardagi uztozlarning juda oddiy masalalarda primitiv qaror qabul qilishi juda og'ir keladi.
To'g'ri boshlang'ich dasturchilar bunday mavzularni farqiga bormasligi fakt checking qilolmaslgi mumkin. Ammo bu mavuda tajribasi bor kishilar farqlaydi.
Masala aynan o'zi tajribasi umumay yo'q ammo dars berayotgan "uztoz"lar haqida.
Ha bu mavzuni man ko'p gapiraman tanqid qilaman. Taxminan 2 yildan buyon :) Lekin mavzuda o'zgarishlarni hech ko'rmadim.
Xozir aynan bir masalada shaxsiyga yozishgan ekan.
Masala shundaki:
Aynan juda ko'p get requestlar bo'ladi. Shu o'rinda DB barchasiga javob berishga ulgurolmay qolyabti va down bo'lyabti.
Yechim sifatida DB ni redisga cache qilishgan. Ammo memory va storage to'lib qolishni boshlagan. Yechimni taklif qilgan inson redisni shunchaki app turgan serverga o'rnatib localhostdan call qilgan.
Xatolar:
1. Redisda persistance bor ammo memory qimmat resource.
2. Requestlarni hechqanday benchmark qilinmagan. Bu degani 1 soniada qancha paralell connection mavjud ekani haqida hech qanaqa tassavur yo'q
3. DB indexlar analiz qilinmagan shunchaki berib ketilgan. Ortiqcha memory va storage.
4. App bittagina instanceda ishga tushadi shu o'rinda single app. Yani butun boshli loyiha 1 ta kichik serverda va 1 ta process.
5. Downtime mavzusi ochilmagan ham docker-compoose.yaml shunchaki ko'tarilgan :)
Yana boshqa juda ko'p ogriqli mavzular bor. Source code haqida esa gapirmasa ham bo'ladi.
Xozirgi holatda shu masalani hal etib berish juda actual va ular qancha bersa ham rozi edi. Chunki keyingi haftadan katta load bo'lar emish.
Juda tez yechim:
1. Nginx cache. Yani getway levelda cache qilish. TTL kichkina qo'yib ishlasa ancha effective aynan yonayotgan holatda.
2. Instancelarni ajratish. va Load balancing.
3. Minimalroq HA infra qurish. Clusterlar yordamida. App va DB uchun. Kerak bo'lsa readlarni alohida DB da qilish. DB uchun maksimal holatda docker-swarm juda zor versiya. Albatta vaqt sal ko'p bo'lsa bahonada yaxshi Pipeline qo'yib olinadi.
4. Query optimization. Indexing...
5. Cache qisimni redisdan to'liq olib tashalb. Transport levellarda qilish. Search va anaytics qismlarni qoldirsa bo'lishi mumkin yoki elastic ishaltish.
Juda foydali:
Monitoring, Logging, Alerting, Error tracking, Distrutive transaction tracking va boshqa tracing tracking loggin yechimlar.
Bular bo'yicha resurslar.
https://www.nginx.com/resources/wiki/start/topics/examples/reverseproxycachingexample/
https://redis.io/docs/interact/search-and-query/query-use-cases/
https://www.designgurus.io/blog/high-availability-system-design-basics
https://blog.devart.com/how-to-optimize-sql-query.html
1 354
Engineer sifatida nima motivate beradi ?
Taxminan 4-5 yilcha oldin ushbu savol actual edi. Asosiy javobim bu process edi. Learning process work process. Shu jarayondagi turli challengelar. Keyingisi esa monetization turli aspectlardagi narsalarni monetization qilish.
Turli jarayonlar, kompaniyalar ichidagi boshqaruv tizimi vaxakazo masalalar ayniqsa juda bilimsiz management sabab ko'p ustimda ishlashimga to'g'ri keldi. Junior sifatida koryeram juda success boshlanmagan bazida juda oddiy narsalarni ham eplay olmas edim yoki fail qilar edim.
O'zimdagi minimal narsalarni ham maksimal darajda monetization qilish qiziq edi. Masalan qandaydur kichik loyihani ham ustida ishlab sotsam.
Challengelardan bazida katta potensial bilan chiqsam yana bazida looser bo'lar edim.
Boshida hamma narsa qandaydur uzoq muddatli o'yin kabi edi. Man personajman turli aspectlardan rivojlantiraman rivjlanganim sari levelim oshib boradi. Ko'zimga barcha narsa shunday ko'ringan huddi Witcher3 yoki Cyberpunkga o'xshagan ammo ancha real va juda katta o'yin ichidagi main personajga o'xshar edim 😁 O'zimni faqat manaviy tomondan modify qilishim cheklanmagan qolgan narsalar cheklangan. Yaqin 1-2 yilgacha asosan shunday tassavur edi. Negaki har bir challenge yoki problem yoki vazifa manga tajriba berayotganini va bu tajriba level o'sishiga sabab bo'lishini his etar edim. Shu sabab bu process juda qiziq edi.
Oradan vaqt o'tib bu amaliyotlar biror game sujetlaridan ancha murakkab ekanini tushungan edim :) Ammo bu challengelar tugamaydi toki biz o'lmagunimizcha...
Keyin yana shu savol ko'tarildi. Sen engineer sifatida nimadan motivate olasan ?
Bu savolning javobi topilmaganday tuyulgan edi. Keyin javobni qidirish uchun analiz qilishni boshladim :) Bazida juda ko'p o'qib dars qilib ko'rdim. Bu huddi bir taraflama hayotga o'xshab qoldi. Uy o'qish ish. Keyin yana o'zgarish qildim. 2-3 ta ishda ishlab ko'rdim 4 oycha muddatda katta daromat ham qildim katta tajriba ham oldim ammo umrim ishda o'tib ketganday tuyuldi. Keyin o'z loyihalarimni qilib ko'rdim. Turli g'oyalar fikrlar manda juda ko'p keladi sekin sekin realizatsiya qilib ko'rdim. Bular katta tajriba berdi. Ammo dunyoni ko'rmay ketti sababi o'zim distiplina qilmadim.
Hullas turli parametrlarni rivojlantirib ko'rdim turli nuqtalardan qarab ko'rdim. Ammo eng katta boom bo'lgan narsa professionalism bo'ldi. Hobby vs Kasb masalasi bo'ldi. Bu ikkisni o'rtasidagi farqni tushunganim sari nima uchun bu sohada yurganimdan tortib nima uchu shu sohada qolishim kerak ekanigacha bo'lgan barcha asosli javoblar topila boshladi. Hobby uchun code yozilganida sizdan asosan ijodkorlik talab qilinadi. Dasturlash bilan shug'ullanib dam olish mumkin(Buni hamma ham eplay olmaydi).
Professional Engineer esa har bir qilayotgan ishiga nisbatan distiplina bilan qarashi kerak.
Motivationga aloqador fikrlarim ancha o'zgarib ratsionallashib boryabti.
Hosh, Sizga engineer sifatida nima motivate beradi ? Hurmatli Qo'chqor aka
