Dr. Algorithm
3.05K subscribers
470 photos
52 videos
3 files
534 links
Saidolim Djuraev’ning mantiq va qiziqarli ma'lumotlar haqida kanali.

Savollar yoki javoblar uchun: @DrAlgorithmBot
Download Telegram
Forwarded from Jakhongir Rakhmonov - IT
Nega Discord loyihasi Go tilida yozilgan servisni Rustda qayta yozib chiqdi

Discordni 614 millionga yaqin foydalanuvchi ishlatadi. Ulardan 200 milliontasi aktiv tarzda ishlatadi. Hazillashadigan raqamlar emas.

Xullas shu Discordda har bir foydalanuvchi qaysi kanallarni va qaysi xabarlarni o‘qiganini o‘zida saqlab turadigan “Read Service” degan servisi bor. Kimdirlar buni microservice deb atashlari mumkin. Bu degani, har safar Discordga kirganingizda, har safar xabar yuborilganda va o‘qilganda ishlatiladigan service. Ya’ni eng ko‘p ishlatiladigan servicelardan biri. Gap millionlab requestlar haqida ketyapti. Va bu service Go tilida yozilgan ekan.

Boshida hammasi yaxshi bo‘lgan, lekin vaqt o‘tib har bir necha daqiqada ushbu service qisqa vaqtga sekinlashib qolishni boshlagan: latency va CPUlarda o‘sish kuzatilgan. Discord jamoasi bu sekinlashish “Garbage Collection”ni deb bo‘layotganini aniqlagan. O‘zi Garbage Collection (ahlat tozalash) nima?

Sizning dasturingiz kompyuter xotirasidan foydalanadi. Aytaylik bitta o‘zgaruvchi yaratib shu o‘zgaruvchida ismingizni saqlasangiz shu ma’lumot xotiraga yoziladi. Dasturingiz bu ma’lumotdan foydalanib bo‘lgandan so‘ng kompyuter xotirasidan uni o‘chirib tashlash kerak. Agar shu tarzda tez-tez tozalanib turmasa xotirada joy qolmaydi va tabiiyki hech nima ishlamay qoladi.

Go tilida bu ish avtomatik tarzda bajariladi. Taxminan har ~2 daqiqada Go tili xotiradagi har bir ma’lumotni tekshirib chiqadi. “Sen hali ham ishlatilyapsanmi?” deb so‘raydi. “Ha, men hali ham dasturga kerakman” desa, “Bo‘pti, qolaver. Propiskangni uzaytiraman” deydi. “Yo‘q, meni ishlatib bo‘ldi dastur. 2 daqiqadan beri ishsiz o‘tiribman” desa, “Unda senga rahmat, ketaver qishlog‘ingga“ deb u ma’lumotni o‘chirib tashlaydi.

Ana endi eslang. “Read Service” ni millionlab foydalanuvchi ishlatadi va har bir foydalanuvchi uchun ko‘plab ma’lumot saqlanadi. Undan tashqari bu service juda ham aktiv, har sekundda millionlab request keladi. Ya’ni, tozalash kerak bo‘lishi mumkin bo‘lgan ma’lumot juda juda ko‘p. Garbage Collector hammasini har 2 daqiqada tekshirib chiqish uchun yaxshigina kuch va vaqt sarflaydi. Natijada dastur sekinlashadi. Garbage Collectionni esa o‘chirib qo‘yib bo‘lmaydi. Unda Go tili ishlamay qolgan bo‘lar edi.

Ana endi Rustni eslaymiz. Rust tilida Garbage Collection umuman yo‘q. Xotirani u boshqa usulda boshqaradi. Xotiradagi ma’lumot ishlatib bo‘lishiga darhol uni o‘chirib tashlaydi. 2 daqiqa kutib o‘tirmaydi. Natijada tozalash uchun Go kabi ko‘p kuch va vaqt sarflamaydi.

Shuning uchun ham Discord “Read Service” ni Rust tilida qayta yozib chiqqan va zo‘r natijalarga erishgan. Tezlikdan tashqari, ularning aytishi bo‘yicha kodning o‘zi ham ancha osonlashgan. Sababi qiyin asinxron kodni Rustda Go tiliga solishtirgan yozish ancha osonroq.

“Go baribir top” deb yozishni boshlaydiganlar uchun eslatib o‘tay. Hech kim Rustni Godan ko‘ra ustunroq demayapti. Shunchaki Discord uchun va aynan ushbu service uchun Rust ko‘proq to‘g‘ri kelgan.

Manba: https://discord.com/blog/why-discord-is-switching-from-go-to-rust

📱 @jakhonrakhmonov   🤝 Muallifni qo‘llab-quvvatlash
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍6
Jakhongir Rakhmonov - IT
Manba: https://discord.com/blog/why-discord-is-switching-from-go-to-rust

📱 @jakhonrakhmonov   🤝 Muallifni qo‘llab-quvvatlash
Jamiyat uchun foydali

Maqolani o`qib mazza qildim. Juda ko`pchilik tushunmasdan talashadigan tillar jangiga chiroyli javob bo`lgan. Undan ham muhimi tillarning mihiyati va GC tushunchalarini muammoli tushuntirib berilgan.

Shu o`rinda bir fikr kelib qoldi. Ko`pchilik maqolalarni rus tilida o`qiydi. Yana ham ko`pchilik umuman o`qimaydi, chunki faqat o`zbek tilini biladi.
Aslida bunday foydali maqolalar ko`p. Ko`p kitob o`qishga qiziqqanlar yaxshi bilishadi.

Ma'lumotli bo`lish uchun quyidagi usul bor:
1. Ketma-ket soha maqolalarini o`qishni boshlaysiz. Tanlamasdan.
2. Qaysi maqola foydali, qaysi maqola ko`chirilgan, qaysi maqola takrorlandi tahlil (analiz) qilish ko`nikmasi shakllanadi. Endi tanlashni boshlaysiz.
3. Faqat sara maqolalar beriladigan manbalarga a'zo bo`lasiz. Sara maqolalarni o`qishni boshlaysiz. 2-3 kun orqada yurishingiz mumkin. Lekin 5 ta maqola o`qishdan ko`ra, 1 ta sini o`qib vaqt tejagan bo`lasiz.
4. Maqolalarni yig`ib, jamiyatga ulashishni boshlaysiz. Afsuski hamma ham siz o`qigan tilni (rus, ingliz, fors, ispan, arab, yapon) bilmagani uchun o`qiy olishmaydi.
5. Jamiyatga foydali bo`lish uchun maqolalarni o`zbek tiliga tarjima qilib, ulashishni boshlaysiz. Tushunasiz-ki, o`qigan 30-40 ta maqoladan faqat bittasini tarjima qila oldingiz. Afsus...

Shu yerga kelganda manga bir fikr kelib qoldi.
Balki yaxshi maqolalarni yig`ishni boshlasak. Kimdur ularni tarjima qilishga yordam berar?

Nima deb o`ylaysiz. Sizda ham shunday bo`ladimi? Agar shunday guruhni topsam, siz ham qo`shilgan bo`larmidingiz?

@DrAlgorithm | #maqola
👍213👎1
Forwarded from UK Hayot | Saidolim
Internet

Mabodo oʻchib qolsa, qayerda ekanini bilib oldik.
😁22👍1
Forwarded from UzGeeks Community
Assalom alaykum
UzGeeks Community 2015-yildan beri faoliyat yuritadi.
Shu muddat davomida ko’plab meetuplar tashkil etildi.
Telegramda guruh va kanallarda minglab yosh mutaxassislar o’z savollariga javob topishdi, ustozlardan bilim va ko’nikmalarni o’rganishdi.

Endi, UzGeeks Communityni yangi bosqichga olib chiqish vaqti keldi.
Shu maqsadda oktabr yoki noyabr oylarida StartUp Day tashkil etish rejalashtirilmoqda. Unda ixtiyoriy UzGeeks Community a’zosi o’z loyihasi bilan qatnashishi mumkin. Meetup tanlov ko’rinishida tashkillashtirilib, g’olib bo’lgan ishtirokchilarga pul mablag’lari, sovg’alar topshiriladi.
Bu meetupni moliyalashtirish maqsadida hamkorlar, homiylar Community tashkilotchilari bilan bog’lanishlari mumkin.
Bundan tashqari UzGeeks Communityni har bir a’zosi ham ushbu meetup’ni hamda umuman UzGeeksni moddiy tomondan qo’llab-quvvatlashi mumkin. Shu maqsadda Tirikchilik.uz platformasida UzGeeks’ning rasmiy sahifasi ochilgan bo’lib, o’sha yerda donate qilish imkoniyati mavjud.
Marhamat, UzGeeks Community’ni yanada rivojlanishida o’z hissangizni qo’shing.

Qo’shimcha takliflar, savollarni rasmiy guruhimizda qoldirishingiz mumkin.

UzGeeks Tirikchilik.uz'da https://tirikchilik.uz/uzgeeks

Hurmat bilan UzGeeks Core Team.

@UzGeeksCommunity
👍8
CTOlar tormoz

CTO lardan biri optimizm (ijobiy baho berish) haqida gaplashganda, oʻzi ishlagan CEOlaridan birining gapini esladi. CEOsi aytar ekan:

Mani vazifam oʻyogʻimni gazga bosish,
Sani vazifang esa, oʻyogʻingni tormozda ushlash, - deb.


Albatta, birdaniga hamma narsani yomonga yoʻymang, hammasining asosi bor.

Tahlilchi odam eng yomon holatni baholay oladi. Eng yomon boʻlganda nima sodir boʻlishini koʻra oladi. Uni oldini olishni oʻylay oladi. Masalaning mohiyati ham shunda. Biror loyiha qilganda, unga harajat qilar ekansiz, eng yomon holatda nimani yutkazishingizni bilishingiz kerak.

Masalan, agar oʻziz tikkan pulga kuysangiz bu muammo emas.
Agar mijoz pulini qaytara olmasangiz, bu fojea.

Shunday ekan doiradan tashqari fikrlashni oʻrganing yoki shunday xodim toping. Risklarni oldindan baholang va sodir boʻlmaslik chorasini koʻrib qoʻying.

Siz sababli mijoz kartasidan pul yoʻqolmasin, tizim oʻchib qolmasin, xizmat turi menyudan yoʻqolib qolmasin. Yer tagida ilon qimirlaganini bilishganidek tizimning ichida nima boʻlayotganini his qiling.

Tormozlar dunyoda koʻp, siz unday emassiz.

@DrAlgorithm #cto
👍101🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Nvidia va bepul AI

Nvidia yangiliklarida biri VSCode uchun beshta bepul neyronlarni ko'rsatdi.

Xatolarni tuzatish, kodni tushuntirish, kod yozish va turli boshqa dasturlarni birlashtirgan ekan.

Agar qizziq bo`lsa:

* NVIDIA AI dan roʻyxatdan oʻtib,
* Modeldan birini tablab, “API kalitini” olamiz.
* CodeGPT plaginini VSCode muharririga o'rnatib,
* Provayder sifatida NVIDIA ni tanlaymiz va ajoyib modellardan foydalanishni boshlasak bo`ladi.

@DrAlgorithm
👍8
Forwarded from Naxalov | AI Blog 🔥
Dunyoning ko'plab muvaffaqiyatli odamlari erta turishadi.

hech qanday moslamalarsiz uyg‘onish!!!
103👍3
Shaffoflik - Transparency

Rahbar sifatida jamoangiz ichida shaffoflikni yoʻlga qoʻying.


Loyihani bajarish vaqti va sifati, muammo kam chiqishi, moliyaviy ziyon boʻlmasligi majburiyatini siz olgansiz.

Shaffoflik orqali siz har bir xodimingiz duch kelgan muammo, kechikish va boshqa sabablardan xabardor boʻlib turasiz. Buni jamoangiz ochiq ayta olishiga oʻrgating.

Oʻzingiz ham toʻgʻri qabul qilishni oʻrganing.


Junior vazifasini qila olmasa yoki kechiksa darrov jazolash yoki moliyaviy qisqartirishga shoshilmang. Ahir siz muammo haqida xabar topdingiz. Agar darxol (shu ondayoq) muammo yasash odatingiz boʻlsa, xodimlaringiz sizga kamchiliklarni aytmay qoʻyadi. "Rosa foyda" boʻlsa kerak-a?

Middle buzib qoʻydi, 1 oylik ishni oʻchirib yubordi. Jazolash emas bu holat (risk) nima uchun hisobga olinmagan va nima uchun bartaraf etish jarayoni ishlab chiqilmagan, shu haqda bosh qotiring.

Maqsadingiz shaffoflik orqali vaʼda qilgab ishingizni vaqtida bajarish boʻlsin.


Jamoa ochiq (shaffof) gaplashib, muammolarni hali kichik vaqtida rahbariga yetkazsa, rahbar ham umumiy ishni toʻgʻri baholay oladi.

CTOning vazifasi shu shaffoflikni jamoada paydo qilish.


@DrAlgorithm #cto
👌9👍5❤‍🔥21🆒1
SPAM

3 May SPAMning tug`ilgan kuni ekan.

Atama shaklida keyinchalik shakllangan bo`lsa ham lekin bitta maktubni ko`pchilikka yuborish (SPAM) usuli kenga tarqalgan.
Ba'zi tarihiy ma'lumotlarni eslab o`tsak:

* 1864: Tish doktori
1864 yilning May oyida Western Union o`zining telegraf tarmoqlari orqali xabarlarni birnecha manzilga bir vaqtda yuborishga imkon beradi.
Birinchi kutilmagan telegram xabar 1864 yil May oyida qayd etilgan. Unda Britaniyaning siyosatchilari tish doktorining reklamasini qabul qilishgan.

* 1978: SPAM atamasining tasodifan paydo bo`lishi
Ro`yxatga olingan ilk SPAM 3 May 1978 yil Gari Tyuer tomonidan ARPANET tarmog‘ida 393 ta foydalanuvchiga yuborilgan Digital Equipment Corp (DEC) kompyuterlarining yangi modeli haqidagi xabar edi.
U vaqtlar xabarlar har bir kishiga alohi yuborilar edi. Lekin sherigi, Karl Gartli, hammaga bittada yuboriladigan email yasaydi. Tarmoq ahli buni salbiy baholaydi, lekin natija ish berib, savdo hajmi oshadi.

* 1994: Green Card SPAM and Spammerlarning ko`payishi
Birinchi yirik tijoriy spam hodisasi 1994 yil 5 Martda, er-xotin advokatlar, Lorens Kanter va Marta Sigel, Usenetda ommaviy xabarlar yuborishidan boshlagan.
Ular immigratsiya qonunchiligi xizmatlarini reklama qilish uchun Usenetdagi ommaviy guruhlarda xabar qoldirishni boshlashadi.
Hamma bu holatni qoralasa ham advokatlar o`z ishlarini "So`z erkinligi" deb baholashadi, raqiblari esa buni "tijoratga qarshi radikallar" deb ataydi.
Eng qizzig`i bu er-xotin "Axborot magistralida qanday qilib boylik orttirish mumkin" (How to Make a Fortune on the Information Superhighway) nomli kitob ham yozishadi.

Yana ko`p boshqa holatlar ham bo`lgan. Qolganini Wiki'dan o`qib olsangiz bo`ladi.

Shunaqa gaplar.

Ha aytgancha. Telegramda "1" kabi xabarlarni hamma gruppada yozadiganlar ham SPAM chi ekande.


P.S. Rasmda do`kondagi konservalardan biri. Ko`rib qolib, darrov bizning spam esga tushgandi. Aslida bu rasmda to`g`ralgan va dudlangan cho`chqa go`shti konservasi.

@DrAlgorithm
👍7
Forwarded from Jakhongir Rakhmonov - IT
“Umid yo’q. Siz xohlagan ishingizni topa olmaysiz. Balki 1000ta joyga topshirsangiz chiqib qolar. Vaqtingizni bekorga sarflayapsiz”

deb Computer Science yo’nalishini o’qib tugatgan bir odam dardini yozibdi.

Bu gaplarga Y Combinator kompaniyasi CEOsining javobini qarang:

Haqiqiy loyihlarda, side projectlarda, open source loyihalarda, shunchaki qiziqish uchun qilinayotgan loyihalarda ishlash bu muammoga davodir.

Computer Science bitiruvchilarining ko’pchiligi hech narsa yasay olmaydilar.

Agar siz nafaqat loyihalar qura olishingizni, balki o’zingiz qiziqqaningiz uchun loyihalar qilganingizni isbotlay olsangiz, imkoniyatlar eshiklari siz uchun ochiladi.


E’tibor beringa. Loyiha, loyiha, loyiha. Qurish, yasash, qiziqish.

Ish topa olmayotganlardan so’rasangiz qilgan ishi CRUDdan uyo’giga o’tmagan. Oddiy web loyihadan uyog’iga o’tmagan.

Dasturchilikdek imkoniyatlari cheksiz kasbni o’rganasizu, o’zingizga qiziq bo’lgan birorta proyekt qilib ko’rmaysizmi? Nima bu hamma yoq CRUD bo’lib yotibdi? Bu hamma yozayotgan blog, internet magazin, yangiliklar sayti hech kimni e’tiborini tortmaydigan bo’lib qolgan. Eng yomon tarafi bularning hammasi uchun deyarli bir xil qobiliyatlar kerak. Qisman farq qiladi holos.

O’yin yozib ko’rmaysizmi? Linux uchun Command-Line loyiha qilib ko’rmaysizmi? Data Engineering qilib ko’rmaysizmi? Bot yozib ko’rmaysizmi? 3D qilib ko’rmaysizmi? Yangi dasturlash tili yozib ko’rmaysizmi? Yangi framework yozib ko’rmaysizmi?

Boshqalardan ajralib turish vaqti keldi.

@jakhonrakhmonov
🔥16👍2
Writerside

Toolboxni ochsam Writeside qoʻshilib qolgan ekan. Ishlatib koʻrdim. Hujjat yozish uchun dastur ishlab chiqishibdi.

MD formatga asoslangan hujjat yozish dasturi haqida oʻylab yurgan edim. Man kutgan narsani qilishibdi. MD va XML ni bir vaqtda yasay olarkan. Webga oʻgirib ham bera olar ekan.

Buni IntelliJni oʻzida qilsa ham boʻladi. Lekin huddi DataGripga oʻxshab alohida boʻlsa, koʻp narsa osonlashadi. Oʻzim ham ancha vaqtgacha Databaseʼni IntelliJʼda ishlatganman. DataGripʼga ancha keyin oʻtganman.

Hullas, gitga ulasa boʻladi, hujjat boʻlimlari alohida filelarda saqlanadi, htmlga oʻgirib bera oladi va FTP orqali chop etsa boʻladi.

Muammo, mobile shaklida yoʻq-de. Mobile uchun yechim qidirvomman. Keep ishlataman, undan yaxshisini hali topmadim. Shunda ham izlanishdaman.

Agar siz ham ishlatib koʻrgan boʻlsangiz, fikrlaringiz bilan boʻlishing. Rahmat

@DrAlgorithm
5👍43
Forwarded from UzGeeks Community
Assalom alaykum!

Bu oygi meetupni Toshkentda qilishga qaror qildik.
Demak, may oyini 25-sanasida Toshkentda UzGeeksning navbatdagi meetupi bo'lib o'tadi.
Uning mavzusi: PHP!

Agar biron taklif, mulohazalar bo'lsa, iltimos, rasmiy guruhimiz @UzGeeksGroup'ga yozib qoldiring!

Hurmat bilan, UzGeeks Events team.

@UzGeeksCommunity
👍8😁4
This media is not supported in your browser
VIEW IN TELEGRAM
Bug necha pul turadi?

Dasturchi bo`lib ishlaganingda senda juda katta mas'uliyat bo`ladi. Ba'zida o`zing ham bilmaysan buni. Kichik hxatoing tufayli katta harajatga tushish mumkin.

Qizziq paradox. Bir tomondan mayda detallarga e'tibor bersak, ko`p vaqt yo`qotamiz va mahsulot chiqishi kechikadi. Ikkinchi tomondan esa, ularga e'tibor bersamak, bir kun kelib qimmatga tushishi mumkin.

Junior va Senior ni farqi ham shunda. Bir xil vaqtda bir xil ish qilishadi. Farq detallarda. Mayda ko`rinmas narsalarda.

Videoda 2018 yil Marsel osmonida uchayotgan samoletlar Rossiya bayrog`ini chizmoqda. (Video)
Albatta, juda kichik xato, o`rinlari adashib qolgan. Lekin natija qimmatga tushdi. Afsus.


@DrAlgorithm
😁6👍31
Forwarded from Sardor og'a | Fikrlar
Bizning muammolarimiz bor. Biror kasb o'rganmoqchi bo'lsak, qo'rquv bilan o'rganamiz. Qo'rquv har taraflama:
- o'rgana olamanmi?
- o'rgansam ish topa olamanmi?
- ishga kirish uchun suhbatdan o'ta olamanmi?
- ishga kirgandan keyin o'sa olamanmi?
- bu ish orqali maqsadlarimga yeta olamanmi?
- tanishlarim ustimda kulishadiku PHPni ham o'rganasanmi deb...
...

Qo'rquv va o'zimizga ishonchsizlik juda kuchli bizda. Doim kasb tanlamoqchi bo'lsak idealini tanlamoqchi bo'lamiz. Faqat shu idealini tanlasamgina o'z maqsadlarimga yeta olaman deb o'ylaymiz. Vaholangki biznesda ham N ta "FAIL" bo'lsa ham shular orasida birortasi "SUCCESS" bo'lishi mumkin.
Kasbda ham shunday, Siz o'zingiz uchun qaysi kasb har taraflama ideal ekanligini boshida bilmaysiz.

Man Rus millatidagilar bilan gaplashib, ularning biz O'zbeklardan asosiy farqi, o'ziga ishonch bor va qo'rquv yo'qligida ekanligini sezdim. Ular biror kasb o'rganishmoqchi bo'lishsa qattiq kirishadi va shuni ustasi bo'lishga harakat qilishadi. Ular o'ziga ishonch kuchli bo'lganligi bilan gap ham berishmaydi kerak bo'lsa. O'z fikrini himoya qiladi.

Masalan:
- Python yoki Nodejs o'rgana olarmikinman? Qiyinmasmi?
- PHP o'rgansam ish topa olamanmi?
- PHP o'rgansam o'sa olamanmi, o'lgan til ekan deyishyaptiyu?
- PHP o'rgansam oylik ham kam deyishyapti, nima qilsam ekan a?
- FAANGga PHPni o'rganib ishga kirib bo'lmas ekanu?! Manam Amazonda ishlasam deyman...
👍11
Bugun interview ga chaqirishdi. Dasturlash sohasida.

Qaysi mavzida suhbat bo`ldi deb o`ylaysiz?
👍12
Forwarded from UNICON SOFT
This media is not supported in your browser
VIEW IN TELEGRAM
Premyera ertaga soat 10:00da, o'tkazib yubormaslik uchun kanalga obuna bo'lib qo'ying

🌐 «Junior» ham dasturchimi? Saidolim Djurayev (CTO, Moneff) bilan dasturchilik va dasturchilar haqida #texnosuhbat

Kanalga obuna bo‘ling
https://www.youtube.com/channel/UC-fYBsOfMBkZMf_D5QctsDg?sub_confirmation=1

Videoni to'liq tomosha qilish
https://youtu.be/c-DNBEUbXQw
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤‍🔥11