en
Feedback
Programming ∀

Programming ∀

Open in Telegram

Ushbu kanalda IT va Dasturlashga aloqador mavzularda subyektiv fikrlarimni bayon qilaman.

Show more
1 217
Subscribers
No data24 hours
-87 days
-3530 days
Posts Archive
Hali tong otmasdan ishxonaga ketar ekanman O'zbekistonda ekanimni unutib qo'ydim. 1. Havo judayam toza 2. Hammayoq qoprong'u shu sabab loyli rasvo yo'llar va yo'ldagi axlatlar ko'rinmayabti 3. Deyarli hechkim yo'q ko'chada, piyodalar yo'lakchasini yomg'ir yuvib asfalt ham toza bo'lib qolibti yangiday PS: Osmonimiz bulutli :(

Tizimlashtirish masalasida oldin o'ylar edim. Hamma narsani avtomatlashtirsa tizimlashtirsa bo'ladi. Ammo unday emas ekan. Gap nostandartlikda emas. Asosiy masala siz nimani bilmasligingizni ham bilmaysiz. Unknown unknown bu haqida ancha oldin ham aytgan edim. Lekin shu narsa bazi xatolarning asosi :) Har qanday holatda ham yaxshilab analiz qilish kerak va bu overhead emas.

Infolo'lilikga qarshi kurashish tadbirlarida mashxur infolo'lilarni o'zlari chiqishyabti. Zaharni zahar kesadi degan jumlalar bunday holatlarga emas ediku Karl 😃

Muammo. Qiziq bir narsani kuzatdim. Hullas ko'pchilik nima qilishni, qanday loyihalardan tajriba olishni yoki bo'lmasa nima o'rganishni bilmaydi. Buning eng asosiy sabablaridan biri bu insonlar muammolarni o'rganmaydi va etibor qilmaydi. Ushbu holatni birqancha ko'rinishlarda ko'rib chiqsak bo'ladi. 1. Filmlardagidak bo'lmasa ham. Hayotiy misolda juda kambag'al oiladan chiqgan bir bola kambag'allikdan qutilish uchun turli ishlar qiladi va shunga yarasha energiya sarflaydi. Oradan vaqt o'tib o'ziga to'q hayot qura oladi. 2. Aynan biror sohadagi muammoga yechim topadi va oradan vaqtlar o'tib ushbu yechim katta foyda olib keladi. 3. Sog'lig'i yomonligi tufayli qandaydur odatlardan vos kechadi. Qandaydur sabablarini qiladi va oradan vaqtlar o'tib sog'lom insonlar qatorida bo'ladi. Atayin qisqa misollarni yozdim. Lekin etibor qilgan bo'lsangiz barcha misollarda yutuqning natijasi muammoning yechimiga tengdir. Fikrimcha ko'pchilik aynan muammolarga nisbatan qarashni bilmaydi. Lekin katta energiyani yechimga qaratadi. Masalan hamma o'qish kerak deydi. Ammo nima uchun o'qish kerak ? Ishlash kerak deydi. Ammo nega ishlash kerak ? Tartib bo'lish kerak deydi. Ammo nima uchun kerak tartib ? Bu amaliyotlar bu uslublar yechimlar hammasi biror bir muammoga nisbatan actual. Bir muammoning yechimi boshqasiga tog'ri kelmasligi ham mumkin. Mayli siz juda oddiy kompaniyaga arzimagan pulga ishlayotgandirsiz. Tajribangiz kam va yana boshqa turli sabablar bordir. Ammo nima muammoga yechim beryabsiz ? Agar shunday o'zingiz takidlaganday oddiy ishlarni qilib nima muammoga yechim berayotganizni bilmasayz bundan murakkab muammolarga yo'liqmaysiz yoki fail bo'lasiz. 1,2,3 misollarni barchasida fail bo'lishi ham tabiy holat. Buning ham 2 sababi bor. 1. Yetarlicha xarakt bo'lmagani 2. Qadarida shu bor ekani va bu yanayam foydaisi bo'lishi mumkinligi. Ammo bu bahona bo'lmasligi kerak. Agar bir muammoni hal etmoqchi bo'lgan kishi hal etolmay o'lib ketsa ham. Agar muammoning yechimi rostdan ham foydai va yaxshlikga bo'lsa manimcha o'limga ham arziydi bunday yechimga eriishish :)

Ha aytgancha, ko'plab top companylar yana hodimlarni bo'shatishgani haqida ma'lumotdan kegin xozirgi hamkasblarga nisbatan qiziq fikr kelib qoldi. Yana minglab engineerlar ishdan bo'shatildi. Hamma bu haqida gapiryabtiku ammo qancha hodimlar ishga olingani haqida gapirmayabti 😅 Ko'pchilik yangi ishni yil boshida boshlashga xarakat qiladi. Agar sizda hammasi joyida bo'lsa ham yangi ishga yil boshida xarakat qilasiz. Bunga juda primitive sabablardan birini keltiraman. Kompaniyalar yillik planini qilar ekan loyihalarga qarab yana yangi ishchi kuchiga talab bo'ladi. Bu degani hunting yil boshida active bo'ladi. Sababi talab qo'yiladi N ta falonchi kerak deb. Internshiplar ham shunga 2 kvartallik bo'ladi bazi kompaniyalarda... Yana qiziq narsa aytaymi ? Agar siz ishlaydigan kompaniyada yillik bonus degan narsa bo'lsa. Masalan oyligingizni N% qismini yana qo'shib yil yakunlanganida bersa odatda kechiktirishadi atayin. Anashu narsa ham aynan shu sababdan. Yil boshida actual vakansiyalar ko'p bo'ladi. Siz esa o'z mehnat haqqingizni olmay ketolmaysiz oqibatda qolib ketishingiz mumkin yana N muddat. @developer_cody Shunday fikrlar aytudilar :) Qisqasi ishdan bo'shatildi degani falokat emas. Masalaga boshqa nuqtadan ham qarab ko'rish kerak. So'ngi so'z o'laroq quyidagilarni aytaman: Agar siz ish topolmayabtgan bo'lsangiz demak sizdakalar ko'p :) Shunga yarasha xarakat qiling. Sizdakalar soni qancha kam bo'lsa shuncha sizga talab yuqori bo'laveradi. Siz nodejs junior dasturchimisiz ? @nodejs_uz guruhda sizdakalar 80+% bo'lsa kerak :) Shu sababdan oldin ham aytganman technology oriented emas imkon qadar domain oriented koryera qilish kerak. Yana bir misol WebGL da ishlaydigan yoki yaxshi tajribasi bor tanishlarim sanoqli. Shulardan biri @leph0 Lekin JS biladigan tanishlarim juda ham ko'p... Sizdakalar kam bo'lishining sababi uchun 2ta uslubni bilaman. 1. Domain oriented. 2. Expert. Ikkisiyam bitta yo'l :) JS expertlar kam. Masalan Man haliyam ES6 da qolib ketgan bilimlarim... Chunki nodejs dasturchi bo'lish qiziqroq narsalar bor :) Yoki backendan qiziqroq narsalar bor. Albatta hammaning qiziqishlari turlicha. Shu sabab bularni muhokama qilish ham foydasiz foydalisi yaxshilab o'qib, uqib, hayotga tadbiq qilish. PS: Hammayam expert bo'lolmaydi yoki yana nimadirlar deb bahona topadiganlar uchun mahsus Tavsiyalar aynan shunday bo'lishni maqsad qilib xarakat qilayotganlar uchun yozildi !

Shu videoni ko'rib chiqib aynan videodagi keltirilgan narsalardan tushunmaganlaringizni izohlarda qoldirsangiz. Javob berishga xarakat qilaman.

Loyiha uchun loyiha :) Bazida shunday recursive vaziyatga tushib qoladi odam. Masalan siz biror loyiha ustida ishlayotgan bo'lsangiz. Aynan shu mavzuga juda chuqur kirishsangiz dunyodagi bor imkoniyatlar ham kamlik qiladi. Kegin loyihani davom qilish uchun muhit qurasiz. Masalan toolar, qo'shimcha kerakli narsalar. Qiziq tomoni shundaki siz bir loyihani ishga tushirsh uchun ham birqancha loyihalar qilishga majbur bo'lasiz. Sababi mavjud imkoniyatlar sizga kamlik qiladi yoki kengaytirasiz yoki yangicha imkoniyatlarga ega narsalarni ham ishlab chiqasiz. Lekin asosiy maqsaddan chalg'imaslik eng muhimi ekan. Bo'lmasa recursive muammolar bo'lib ketadi. Yani asosiy focus va energiya qo'shimcha narsalarga qaratilib qolishi mumkin. Bu esa eng yomon alomatlardan. Xozirda aynan shunday vaziyatga tushib qoldim. Bir mavzuda ancha tool qidirdim ammo topa olmadim sababi juda tor soha. Manga kerakli narsalar o'xshashlari bor ammo ularni ham ko'p joyini o'zgartirish kerak. Shu sabab tinchgina yangisini qilishga qaror qildim. Kegin esa conceptni o'ylab testcaselar yoza boshlayotgan edim. Uyga kelib 1 kunga reja qilgan narsam o'ylab qarasam haftalarga cho'zilyabti ekan. JS kabi tillar shunga kerak, juda tez qurib tashlaysiz hammasini va bular sizni chalg'itmaydi :) Linux kernel uchun git o'ylab topilgan :) Linus Torvalds esa xozirda 2 ta katta loyihaning avtori :)

Loyiha uchun loyiha :) Bazida shunday recursive vaziyatga tushib qoladi odam. Masalan siz biror loyiha ustida ishlayotgan bo'lsangiz. Aynan shu mavzuga juda chuqur kirishsangiz dunyodagi bor imkoniyatlar ham kamlik qiladi. Kegin loyihani davom qilish uchun muhit qurasiz. Masalan toolar, qo'shimcha kerakli narsalar. Qiziq tomoni shundaki siz bir loyihani ishga tushirsh uchun ham birqancha loyihalar qilishga majbur bo'lasiz. Sababi mavjud imkoniyatlar sizga kamlik qiladi yoki kengaytirasiz yoki yangicha imkoniyatlarga ega narsalarni ham ishlab chiqasiz. Lekin asosiy maqsaddan chalg'imaslik eng muhimi ekan. Bo'lmasa recursive muammolar bo'lib ketadi. Yani asosiy focus va energiya qo'shimcha narsalarga qaratilib qolishi mumkin. Bu esa eng yomon alomatlardan. Xozirda aynan shunday vaziyatga tushib qoldim. Bir mavzuda ancha tool qidirdim ammo topa olmadim sababi juda tor soha. Manga kerakli narsalar o'xshashlari bor ammo ularni ham ko'p joyini o'zgartirish kerak. Shu sabab tinchgina yangisini qilishga qaror qildim. Kegin esa conceptni o'ylab testcaselar yoza boshlayotgan edim. Uyga kelib 1 kunga reja qilgan narsam o'ylab qarasam haftalarga cho'zilyabti ekan. JS kabi tillar shunga kerak, juda tez qurib tashlaysiz hammasini va bular sizni chalg'itmaydi :) Linux kernel uchun git o'ylab topilgan :) Linus Torvalds esa xozirda 2 ta katta loyihaning avtori :)

Loyiha uchun loyiha :) Bazida shunday recursive vaziyatga tushib qoladi odam. Masalan siz biror loyiha ustida ishlayotgan bo'lsangiz. Aynan shu mavzuga juda chuqur kirishsangiz dunyodagi bor imkoniyatlar ham kamlik qiladi. Kegin loyihani davom qilish uchun muhit qurasiz. Masalan toolar, qo'shimcha kerakli narsalar. Qiziq tomoni shundaki siz bir loyihani ishga tushirsh uchun ham birqancha loyihalar qilishga majbur bo'lasiz. Sababi mavjud imkoniyatlar sizga kamlik qiladi yoki kengaytirasiz yoki yangicha imkoniyatlarga ega narsalarni ham ishlab chiqasiz. Lekin asosiy maqsaddan chalg'imaslik eng muhimi ekan. Bo'lmasa recursive muammolar bo'lib ketadi. Yani asosiy focus va energiya qo'shimcha narsalarga qaratilib qolishi mumkin. Bu esa eng yomon alomatlardan. Linux kernel uchun git o'ylab topilgan :) Linus Torvalds esa xozirda 2 ta katta loyihaning avtori :)

Hamma ekologiya haqida yozadi va keyingi changli kunlargacha hechnima o’zgarish yoki sabab qilinmaydi. Keyingi changli kunlarsa esa yana hamma yozadi… Huddi yeqilib jaroxatlangan bolaga o’xshab yeg’lash emas. Kattalardak yarani davosini izlash kerak :). Bizni odatimiz izlaymiz shifodan boshqa hamma narsani izlaymiz. Ayibdor, ayibdor yordamchisi va hamtovoqlari, jabirlanuvchi, 1-bahona, 2-bahona, N-bahona Lekin haqiqatda hechnima o’zgarmaydi 😃

Non offical changelog 1. Toshkent cho'lga aylanishini bilib poytaxtda amma joylar cho'l kabi tasvirlangan. 2. Object detalizationga etibor qilingan 3. Yo'llarga etibor qilingan. Poytaxtda yo'llar tekkis :)

Repost from N/a
Poytaxt 2.0 is coming...

Uyqudan oldin svejiy info o’qish hammagayam emas. Wikida http2 haqidagi page update qilinibti 😃 https://en.m.wikipedia.org/w
Uyqudan oldin svejiy info o’qish hammagayam emas. Wikida http2 haqidagi page update qilinibti 😃 https://en.m.wikipedia.org/wiki/HTTP/2 Haa azizlar oramizda http2 haqida endi eshitayotganlar ham bor 🥲

O’ylab qarasam matematikada faqat arifmetik mavzularda stuck bo’lib qolar ekanman. Algebra va abstractionni tushunish esa birmuncha oson negadir :) Oldin umuman mathni tushunmayman deb o’ylar edim bildimki arifmetikani tushunmas ekanman 😅

Endi shu masala yuzasidan refactoring qilamiz:
class UserIO {
  //...
  async find(name: string): Promise<User | null>

  async find(name: string): Promise<User | UserNotFoundError>
}
Burinchi exampleda nullable value qaytadi. Bu esa yomon dedik. Shu sabab birinchi hayolga kelgan uslub exeption qaytarish :) Birmuncha yaxshiroq uslub. Ammo try/catch ko’payadi. Ho’sh qanday refactor qilish mumkin ?

Spoiler…
Spoiler…