Xamidullo Xudoyberdiyev


Гео и язык канала: Узбекистан, Узбекский
Категория: Другое



Гео и язык канала
Узбекистан, Узбекский
Категория
Другое
Статистика
Фильтр публикаций




Репост из: Dr. Algorithm
Juniorlarda ko‘p uchraydigan xatolar
[2-qism]

4. Hujjatlar havola qilinish uchun mavjud.

Yangi dasturlarga kirganlar yoki junior dasturchilarda ajoyib fikr bor. Ular hujjatlarga havolar qilish yoki Googledan narsa qidirishni zaiflik deb bilishadi.

Bizning sohada izlamasdan, yoki bajargan ishingizda biror havo (link) qo‘ymasdan ishlab bo‘ladimi? Bugun yozgan kodingizni ertaga ko‘rsangiz, asabiy bo‘lib o‘tirasiz-ku axir.

Hujjatlarga havolar qiling. Ertaga hamkasbingiz bilan ishlaganda, har yarim soatda oldiga borib, "bu qanaqa edi?", "bunisini nima qilgan edik, eslatvor" deb so‘roqqa tutishgan ko‘ra, bir marta ko‘rsatib berilganida izoh yozib qo‘yish, topgan maqolangiz havolasini ko‘rsatish vaqt tejaydi, ish unumli bo‘ladi.

Tavsiya: Googledan narsa izlashga uyalmang. Foydali manbalarni saqlab qo‘ying. Kodingiz yonida (ReadME) foydalangan havolalar ro‘yxatini yig‘ib yursangiz bo‘ladi.



5. Ishlatadigan ish qurolini bilmaslik.

Barcha dasturchilar, shu jumladan junior dasturchilar, kod yozish uchun IDE (ish quroli)ni ishlatishadi. Ammo uni yaxshi bilmaslik, yoki barcha imkoniyatlaridan to‘g‘ri foydalanmaslik ish unumdorligiga salbiy ta’sir qiladi.

Ish qurolining ba’zi imkoniyatlarini ko‘rib chiqsak:

Debugging (yurib chiqish):
* kod qatorlarida harakatlanish, o‘zgaruvchilar qiymatlarini tekshirish, shartli va shartsiz to‘xtash tugunlarini yasash, o‘zgaruvchilarni kuzatish va stack zanjirini ko‘rish.
* Console.log ni ishlatish hech qachon yetarli emas.

Profiling (resurs monitoringi)
* kompyuter resurslarining asosiy tushunchalaridan xabardor bo‘lish
CPU ko‘p ishlatadigan kodni topish va tuzatish
Xotiradan ko‘p foydalanishni oldini olish (memory leak)

Qurish (Build) jarayoni
* turli build sozlamalarini ishlata olish (Debug, Release versiyalar)
* Turli qurilmalar uchun yasash (web, desktop, mobile)

Sinov ish qurollari (Testing)
* Unit test - qanday qilib ishlatish va hisobot olish
* kodning qaysi qismlari sinovdan o‘tganini aniqlay olish (code coverage)

Kod uslubi (code style)
* Formatting - IDE larda tayyor formatlash imkoniyati bor (andozaga solish), shuni doim ishlatib turish
* korxona kod uslubi (corporate code style) ga moslab andozaga solish (format). Shunga git formatlash bilan to‘lib qolmaydi.

Tavsiya: Ishlatadigan ish qurolingizni yaxshilab o‘rganing. Har hafta 2-3 ta yangi imkoniyatini o‘rganish orqali 1 yilda to‘liq o‘rganib olasiz. Boshqa dasturchilardan ular ishlatadigan ish qurollarini so‘rang.



Bu kabi hayotda ko‘p uchraydigan kamchiliklar doim bo‘ladi. 20-30 yil oldin ham bor edi, hali kelajakda ham ancha vaqt davom etsa kerak. Chunki hammamiz insonmiz.

Ammo, savol berish, xatolar ustida ishlash, yangilikka qiziqish bu kamchiliklar oldimi oladi. Shaxsiy rivojlanishimizga yordam beradi.

Shunday ekan, uyalmay izlaning.



Izoh:
Repo - repository. Version control’da saqlanadigan joy nomi. Siz yozgan kodlaringiz yashaydigan shahar.
Force-push - gitga ma’lumot yuklash vaqtida xatolik yuz berganida, barcha boshqalarning o‘zgarishlarini inkor qilib, sizning kodni gitga yuklash.
SVN - Subversion. git chiqishidan avvalroq muomalada bo‘lgan version control dasturi.
IDE - Integrated Development Environment, kod yozish muhiti.

16.01.2025 London
@DrAlgorithm


Репост из: Dr. Algorithm
Juniorlarda ko‘p uchraydigan xatolar
[1-qism]

Kecha yangi kitob o‘qishni boshlagan edim, muallifi podcast yuritar ekan. Eshitib ko‘rish uchun kirdim. Birinchi eshitib ko‘rgan mavzuyim Juniorlar haqida edi.

Juniorlarda ko‘p uchraydigan xatolar

Bilamiz-ki, ko‘p savollar Juniorlar orasida chiqadi. Middle va seniorlar savollari ancha kam va kam takrorlanadi. Bu yerda junior dasturchilarda uchraydigan xatolarning ba’zilarini keltirib o‘taman.

1. Bir vaqtda ko‘p narsa o‘rganish.

Bir vaqtda bir necha katta texnologiyani o‘rganishni boshlashadi. Python, JavaScript yoki MongoDB kabi texnologiyalarni kimdir ularga kerak degani uchun o‘rganishni boshlashadi. Bu esa salbiy natijalarga olib keladi. Biror tilni yaxshi tushunmaslik, kerak bo‘lmasa ham o‘rganishga vaqt sarflash yoki imkoniyatlarni aralashtirib tushunish va ertaga kerak bo‘lganida qo‘llay olmaslik kabi. Eng yomoni biror loyihani faqat shu aytilgan texnologiyada qilish mumkin deb o‘ylash.

Tavsiya: Bir vaqtda faqat bitta til yoki texnologiyani mukammal o‘rganishga harakat qiling.


Vaqti kelib keyin boshqasiga o‘tib olaverasiz.


2. Version contol’ni tushunmaslik.

Version contol juda ajoyib narsa. U bilan tarixga qaytish mumkin, dasturning turli variantlarini sinab ko‘rish mumkin, bir biriga xalal bermay ishlash mumkin. Gitdan yaxshisi bo‘lmasa kerak, lekin man SVNni yaxshi ko‘rar edim. Agar kimdir hali ham file va zip bilan versiya saqlab yurgan bo‘lsa, uzr siz hali junior darajasiga yaqin ham kelmabsiz.

Bu mavzuda nafaqat juniorlar, balki katta dasturchilar ham xato qilib turishadi. Vaziyatlar ham turlicha. Ba’zilarini keltirib o‘taman.

* Commit qilishni unutish
* Keraksiz filelarni repoga yuklash. Masalan, IDE ishlatadigan sozlama (config)lar, muhit (env) fayllari, vaqtincha va ishga tushuvchi fayllar (build, .class, .so va boshqalar)
* Begona shoxga (branch) kodni yuklash.
* Force-push buyrug‘ini ishlatish 🤯
* Keng tarqalgani, Commit qilib, Push qilmaslik. (Yuklashga tayyorlab, yubormaslik)

Bularni qilmaslik uchun juda ko‘p usullar va qoliplar mavjud. (GitFlow masalan).

Tavsiya: Gitdan foydalanish qoidalari va korxonalar ishlatadigan usullar bilan tanishib qo‘ying. Agar siz ishlayotgan joyda joriy qilinmagan bo‘lsa, kiritishga harakat qiling.



3. Ma’lumotlar shakllarini bilmaslik

Ma’lumotlar bilan ishlaganda ko‘pchilik yosh dasturchilar ma’lumotning xotiradagi shaklini biladi. Integer, String va Array kabi. Hayotda esa ko‘proq CSV, JSon va XML lar bilan ishlashi kerak bo‘ladi.

Ko‘rinishidan juda sodda, ammo bilmaganlar uchun vaqt oladigan narsalar. Bu shakllar mohiyatini yaxshi bilmagan dasturchi ishi tushganida parser (o‘qigich) yasashga harakat qiladi. Vaholanki buning har biri uchun minglab parserlar allaqachon internetda bor.

Bu boradagi ba’zi maslahatlar:

CSV
* Barcha matn qiymatlarni qo‘shtirnoqqa oling.
* UTF-8 kodlashdan foydalaning.

JSON
* JSON va JavaScriptni farqini bilib oling.
* JSON to‘g‘ri bo‘lish tablarini o‘rganing.
* JSON ma’lumotingizni json schema yordamida tekshirishni biling.

XML
* Atributlar va elementlarni tushib oling.
* HTML bilan farqini biling.
* XQuery va XPath yordamida so‘rov yozishni o‘rganing.
* Case sensitive (bosh va kichik harflar bir xil hisoblanishi)ni hisobga oling.
* CData nima ekanini va mohiyatini tushunib oling.

Tavsiya: Fayllar bilan ishlaganda avval u fayl kengaytmasiga mos dasturlar bor ekanini qarab chiqing. Tayyor kutubxonalarni o‘rganib, ishlatib ko‘ring.


davomi bor...

16.01.2025 London
@DrAlgorithm


Видео недоступно для предпросмотра
Смотреть в Telegram
© shakhzodme


Видео недоступно для предпросмотра
Смотреть в Telegram
Ilm olayotgan aka uka birodarlar shuni ko'proq takror qilib yuringlar


Hal qilinishi kerak bo'lgan muammoni:
1. Ko'rmay, ignor qilib o'tib ketsang, u davom etaveradi.
2. Undan qochsang, o'zing ortga ketasan. Oldinga yuraman desang, yana unga duch kelasan.
3. Unga taslim bo'lsang, to'xtaysan. O'smaysan.
4. U bilan yuzlashsang, hal qilib o'tib ketasan. Mahorat va tajriba shakllantirasan. O'sasan.

Qora chiziq - sen.
Qizil chiziq - muammo.


© weareululalbab


Репост из: Vohid Karimov | Hello world
Har bir avlod o'zini texnologiyasi bilan katta bo'lar ekan. Ularga ko'nikgandan keyin odam 40-50 yoshlarda negadir yangi texnologiyani o'rganishi ancha qiyin bo'lar ekan.

Biz yoshlarga oddiy (masalan, Telegramdan rasm jo'natish) bo'lgan narsa bizning ota-onamiz uchun mission impossible dek ko'rinadi. "Men bunga tushunmayman, o'zing qilib ber".

Mening fikrimda, ota-onamizni xayotini osonlashtirish va hozirda bo'layotgan texnologik taraqqiyot bizlarni ulardan uzoqlashtirmasligi uchun, biz ularga basic narsalarni o'rgatishimiz kerak. Xuddi bizni yurishga o'rgatganlari sari, bizlar ularni sabr qilib Telegramda rasm jo'natishga o'rgatishimiz kerak.

Kim biladi, balki vaqti kelib bizning farzandlar ham bizga multiverse'da rasm jo'natishni o'rgatishar. O'sha vaqt kelganda mag'rurlik qilmasdan o'rganishga xarakat qilishimiz kerak. Bilingki, ular bizdan texnologiya borada ancha aqlli bo'lishadi.


Kuchli gap bo`libdi. @jakhonrakhmonov


Репост из: Bek Olimjon
Men yil rejasini qanday tuzishim haqida

Yaqinda bir tanishim aytib qoldi. ”2023 da 3 ta chet davlatiga biznes sayohat qilishni reja qilgan edim, 8 tasiga bordim” deb. O’ylab ko’rsa zo’r natijadek. Ammo…

Kutmagan edi shekilli, men bu ishni maqtanadigan yutuq emasligini, aslida mag’lubiyat ekanligini aytdim.

Yil boshida 3 ta davlatga borishni reja qilgan, ammo 8 taga borgan. Demak noto’g’ri reja qilgan. Bir tomondan o’sha tanishimda 8 ta davlatga borish imkoni bo’lgan va maqsadni past qo’ygan deyish mumkin. Ikkinchi tomondan reja qilinmagan o’sha 5 ta sayohat hayotning boshqa sohalaridagi ishlarni kesilishiga sabab bo’lganligi suhbat davomida aniq bo’ldi. Tanishim eng e’tibor bermagan jihati reja qilinmagan sayohatlar sabab oilasidan kamida 1 oy uzoq bo’lgani edi. Bu tomonini o’ylamappan deb o’zi ham tan oldi keyin.

Reja qilishda va unga amal qilishda ko’pchilik qiynaladi. Shu jumladan men ham reja qilishni to’g’ri tartibga solib olishim uchun bir necha yil vaqt ketgan.

Men yilimni qanday reja qilaman?

Men keyingi yil rejasini yoz o’rtalaridan boshlayman. Unda qilishim kerak bo’lgan katta maqsadlarni yozib boraman. Yil yakuniga borib keyingi yil qilinishi kerak bo’lgan ishlar ro’yhati 100-130 ta bo’ladi. Tahlil qilib ahamiyat jihatidan past bo’lganlarini o’chirib tashlayman. Natijada 70-80 ta qoladi.

Keyin o’sha rejalarni 5 ta asosiy toifalarga bo’lib chiqaman: 1) oila; 2) o’zim; 3) karyera; 4) biznes; 5) ijtimoiy loyihalar. Mana shularni alohida varaqlarga yozaman va devorimga osib qo’yaman. Har bir toifada 15-20 ta atrofida bo’ladi. Har bir toifada nimalar borligini yaqinroqdan kor’sak

1) Oila - oila uchun qo’yilgan maqsadlar ro’yhati. Oila bilan safarlaru, haridlar, maktab va hok…

2) O’zim - ruh+badan+aql o’rtasidagi balansni ushlashga olib boruvchi, hotirjamlikni ta’minlovchi amallar. Unga sport, kitob o’qish, ruhiy yengillik beruvchi ishlar, shaxsiy rivojlanish bo’yicha ishlash, mentorlar, do’stlar bilan aloqalar va hok kiradi.

3) Karyera - keyingi yili qaysi klinikada, kimlar bilan ishlamoqchiman. Nechta maqola chop etmoqchiman. Qaysi konferensiyaga, malaka oshirish kurslariga bormoqchiman/borishim kerak va hok. Nechta bemor ko’rishim, nechta operatsiya qilishim va hok.

4) Biznes - investitsiya, sherikchilik va hok

5) Ijtimoiy loyihalar - maqsadlar ichida eng pastki o’rinda turadi. Bu meni ijtimoiy tarmoqlardagi faoliyatim. O’sha instagram, youtube, telegram va hok. Bular orqali talabalarga yo’llanma berish, bemorlarga maslahat berish, mutaxassislar, talabalar uchun kurslar tashkil etish va hok.

Bu yerda vazn jihatdan har bir toifa bir xil bo’lishiga harakat qilaman. Misol karyera vazn jihatdan oiladan og’ir bo’lmasligi kerak. (Buni alohida ”o’rgimchak to’ri” matriksi ham bor. Bu haqida boshqa safar.)

Xo’p, keyin ana o’sha 70-80 ta ishlarni har oyda qilinishi kerak bo’lgan kichikroq qismlarga bo’lib chiqaman. Aytaylik bir yilda 1200 dollar jamg’arish, demak oyiga 100 dollardan, haftasiga 25 dollardan. Shunday qilib yillik rejani oylik, oylik rejani haftalik va haftalikni kunlik rejaga bo’lib chiqaman. Natijada bir kun qiladigan ishlarim aniq bo’ladi. Bu rejalarimdagi ishlar kech qolyaptimi yoki yo’qligini haftasiga kamida 3 marta tekshiraman.

Yana bir misol men bir yilda 120 km yugurmoqchiman. Demak oyiga 10km bo’lishi kerak. Haftasiga 2,5km. Xullas jarayonni tushundingiz.

Misol uchun meni 2024 qilishim kerak bo’lgan ishlar ro’yhati eng kechi bilan 2023 noyabrdayoq aniq bo’lgan. Misol 2024 davomida qachon, qayerga va necha kunga, nima uchun sayohat qilishim oldindan aniq.

Reja qilishga ko’p vaqt ketishi mumkin, ammo bu meni ko’proq natijalarga erishishimga yordam beradi. Aniq rejalar bo’lishi odam o’z oldidagi mas’uliyatini oshiradi. O’ziga bergan so’zi ustidan chiqishini ta’minlaydi. Boshqa vaqt o’g’rilariga ”yo’q” deb javob bera olish imkoniyatini beradi.

Shu joyda eng muhim qismini aytishim shart.

REJA QILGAN BILAN ISH BITMAYDI, UNI BAJARISH MUHIM.

Rejali ish tuting, unda baraka bor.

Bek Olimjon
24.01.24
Norvegiya


Репост из: Ravshan’s blog
cURL -> HTTPie

curl ishlatadiganlar uchun httpieni ishlatib korishni tavsiya qilaman

https://httpie.io/cli


O‘quvchilarimizdan birlari yo‘l harakati qoidalari bo‘yicha test savollari va variantlari bilan ishlaydigan qulay Telegram bot yaratibdi. Ushbu botdan foydalanib, har kim o‘z bilimlarini mustahkamlashi va yo‘l harakati qoidalarini o‘rganishi mumkin.

Agar sizga kerak bo‘lsa yoki boshqalarga ulashmoqchi bo‘lsangiz, quyidagi havoladan foydalaning:

@yol_xarakati_qoidalari_bot

Bilim olishda yordamchi vositadan foydalanib ko‘ring!


Репост из: Ravshan’s blog
"What is software architecture?" degan savolga berilgan javoblar:

⁃ “Architecture is about the important stuff. Whatever that is.” - Ralph Johnson

⁃ “Software architecture is the set of design decisions that, if made incorrectly, may cause your project to be cancelled.” - Eoin Woods

⁃ The process of defining a structured solution that meets all of the technical and operational requirements

⁃ The set of structures needed to reason about the system, which comprises software elements, relations among them, and properties of both

⁃ Software architecture is a set of characteristics that combine technical and business requirements

Sizningcha qaysi izoh terminni yaxshiroq yoki toliqroq ifodalaydi?

Quotelar "Software architectures for web developers" kitobidan olingan.


Репост из: kamoloff.log
Matvatsa!!!

Hozirgina Forbes 30-dan 30 yoshgacha bo'lgan kishi bilan gaplashdim va juda hayratda qoldim.

U men bilan 30 yoshga to'lgunga qadar qanday qilib Top Tech kompaniyada VP bo'lganini aytib berdi:

1. Ertalab 4:30 uyg'onishi
2. Sovuq dush qabul qilishi
3. Minnatdorchilik jurnali ishlatishi (Gratitude journal)
4. Meditatsiya qilishi
5. Otasi Top Tech kompaniyaning egasi ekanligi

Read: Gratitude journal
Source: Reddit

@kamoloff_log


7 Layers of the OSI Model


Репост из: Aziz Rahimov
Qisqa video ko’raveradi, uzunlariga sabr yetmay qoladi.

Uzun videoga yetmagan sabr, matnga ham yetmaydi.

Matn o’qimagan, kitob o’qimaydi.

Uzun video va kitoblarsiz ilm olinmaydi.

Ilm olmasa, hayotida muammolar to’xtamaydi.

Muammolardan qochish uchun yana qisqa videolar ko’radi…








Репост из: Shukhratbek.dev
Node.js dagi so'nggi ishlash samaradorligi(Performance) yutuqlarini qamrab oladigan mukammal benchmarklar to‘plami yaratilibdi. Node.js 18 va 20, 22-versiyaga qadar bo‘lgan yaxshilanishlar juda katta farq qliar ekan. Ko‘rinib turibdiki, ishlab chiquvchilar jamoasi bu sohada sezilarli darajada ish olib borgan.

https://nodesource.com/blog/State-of-Nodejs-Performance-2024



Показано 20 последних публикаций.