Forwarded from Jakhongir Rakhmonov - IT
Dasturchi uchun eng kerakli ko’nikmalardan biri
To’g’ri Savol So’ray Olish
Bizning sohamizda kerak bo’ladigan narsalar shunchalilk ko’pki, ularni hammasini bilish mumkin emas. Ayniqsa katta loyihalarda yuzlab texnologiyalar ishlatiladi, biznes domainni o’zi ham katta bo’ladi, codebase katta bo’ladi. Bunday loyihalarda birorta ishni bajarish uchun esa siz bilmagan qismlaringizni biladiganlardan bir nechta savol so’raysiz. Faqat bunday loyihalarda emas balki o’rganayotgan paytingizda ham ko’plab savollar so’raysiz boshqalardan. Bu holatlarda sizning maqsadingiz savolingizga tez va aniq javob olish. Buning uchun esa siz birinchi o’rinda savolni to’g’ri so’rashingiz kerak.
To’g’ri savol o’zi qanaqa bo’ladi? To’g’ri savol bu javob berish oson bo’lgan savol. Uning uchun esa quyidagilarni qilishingiz kerak:
Bilganlaringizni ayting. Yani savolingiz quyidagicha formada bo’ladi:
1. Mavzu haqida bilganlaringizni aytasiz.
2. Shu to’g’rimi deb so’raysiz.
Masalan sizning PHP kodingiz nimaga ma’lum bir tarzda ishlayotganini tushunmayapsiz. Savolingiz quyidagicha bo’lishi mumkin: “Meni o’ylashimcha bu narsa quyidagi joyda yozilgan kod sababli shu tarzda ishlashi kerak edi, lekin u sal boshqacharoq o’zini tutyapti. Mening taxminlarim to’g’rimi? To’g’ri bo’lsa nega natija men kutgandan boshqacha bo’lyapti? Nima yetishmayapti?”.Tilni o'zgartir degan javob olasiz.
Javobi fakt bo’lgan savol so’rang. Masalan “SQL joinlar qanday ishlaydi?” degan savol juda keng. Soatlab gaplashsa bo’ladi bu haqida. Bunday savollarni ustozingizdan so’rasangiz bo’ladi lekin ham kasblar uchun kenglik qiladi. Savolingizni aniqlashtiring:
- Ikkta tablelarni JOIN qilishning time complexitysi qanday bo’ladi? O(NM) mi? yoki O(NlogN) + O(MlogM) mi?
- MySQL JOIN qilishdan oldin columnlarni tartiblaydimi?
Bu savollarning javobi fakt va javob berish oson.
O'zingiz birinchi javob topishga harakat qiling. Google qiling. Masalan tepadagi savolni birinchi Googlega berib ko’ring: “Does MySQL sort columns before JOINing?”. Savolingizga aniq javob topa olmasangiz ham savolingizni yaxshiroq shakllantirishga yordam beradi.
Yordam so’rang, yechim emas. “Shu kodni to’g’irlab bering” deyishni o’rniga “Shu kodni yaxshilash uchun menga yo’l ko’rsatib bera olasizmi?” deyish ma’qulroq. Shunda siz savol so’rayotgan odamingizni tez yechim berishga emas, o’z tajribalarini baham ko’rishga undaydi. Sizga tayyor baliq emas, baliq tutishni o’rgatadi.
Xushmuomala va hurmatli bo’ling. Hech kim assholelarga yordam berishni hohlamaydi. Har qanday yordam uchun minnatdorchilik bildiring.
@jakhonrakhmonov
To’g’ri Savol So’ray Olish
Bizning sohamizda kerak bo’ladigan narsalar shunchalilk ko’pki, ularni hammasini bilish mumkin emas. Ayniqsa katta loyihalarda yuzlab texnologiyalar ishlatiladi, biznes domainni o’zi ham katta bo’ladi, codebase katta bo’ladi. Bunday loyihalarda birorta ishni bajarish uchun esa siz bilmagan qismlaringizni biladiganlardan bir nechta savol so’raysiz. Faqat bunday loyihalarda emas balki o’rganayotgan paytingizda ham ko’plab savollar so’raysiz boshqalardan. Bu holatlarda sizning maqsadingiz savolingizga tez va aniq javob olish. Buning uchun esa siz birinchi o’rinda savolni to’g’ri so’rashingiz kerak.
To’g’ri savol o’zi qanaqa bo’ladi? To’g’ri savol bu javob berish oson bo’lgan savol. Uning uchun esa quyidagilarni qilishingiz kerak:
Bilganlaringizni ayting. Yani savolingiz quyidagicha formada bo’ladi:
1. Mavzu haqida bilganlaringizni aytasiz.
2. Shu to’g’rimi deb so’raysiz.
Masalan sizning PHP kodingiz nimaga ma’lum bir tarzda ishlayotganini tushunmayapsiz. Savolingiz quyidagicha bo’lishi mumkin: “Meni o’ylashimcha bu narsa quyidagi joyda yozilgan kod sababli shu tarzda ishlashi kerak edi, lekin u sal boshqacharoq o’zini tutyapti. Mening taxminlarim to’g’rimi? To’g’ri bo’lsa nega natija men kutgandan boshqacha bo’lyapti? Nima yetishmayapti?”.
Javobi fakt bo’lgan savol so’rang. Masalan “SQL joinlar qanday ishlaydi?” degan savol juda keng. Soatlab gaplashsa bo’ladi bu haqida. Bunday savollarni ustozingizdan so’rasangiz bo’ladi lekin ham kasblar uchun kenglik qiladi. Savolingizni aniqlashtiring:
- Ikkta tablelarni JOIN qilishning time complexitysi qanday bo’ladi? O(NM) mi? yoki O(NlogN) + O(MlogM) mi?
- MySQL JOIN qilishdan oldin columnlarni tartiblaydimi?
Bu savollarning javobi fakt va javob berish oson.
O'zingiz birinchi javob topishga harakat qiling. Google qiling. Masalan tepadagi savolni birinchi Googlega berib ko’ring: “Does MySQL sort columns before JOINing?”. Savolingizga aniq javob topa olmasangiz ham savolingizni yaxshiroq shakllantirishga yordam beradi.
Yordam so’rang, yechim emas. “Shu kodni to’g’irlab bering” deyishni o’rniga “Shu kodni yaxshilash uchun menga yo’l ko’rsatib bera olasizmi?” deyish ma’qulroq. Shunda siz savol so’rayotgan odamingizni tez yechim berishga emas, o’z tajribalarini baham ko’rishga undaydi. Sizga tayyor baliq emas, baliq tutishni o’rgatadi.
Xushmuomala va hurmatli bo’ling. Hech kim assholelarga yordam berishni hohlamaydi. Har qanday yordam uchun minnatdorchilik bildiring.
@jakhonrakhmonov
👍24🤣8😁2
Mohirdev’da suhbatimiz bor ekan. Qatnashib qo’yamizmi ? :)
https://t.iss.one/mohirdev/1857
#suhbat
@JoshDeveloper
https://t.iss.one/mohirdev/1857
#suhbat
@JoshDeveloper
👍48🔥7⚡3
Keraksiz “import”larni avtomatik butun loyihadan o'chirish
Hozirgi loyiha kodida(TypeScript’da yozilgan) keraksiz import’lar juda ko’payib ketgan ekan. Ya’ni ishlatilmayotgan.
Butun loyihani boshidan oxirigacha tekshirib, keraksiz importlarni o’chirib chiqadigan narsa rosa qidirdim. ESLint bilan qilinishi kerak edi. Harxil yo’llarini qildim, kutilgan natija bo’lmadi. VSCode o’zida bor bo'lgan imkoniyatlar faqatgina birgina fayl uchun ishlar ekan. (WebStorm'da bor ekan, kommentda aytilishi bo'yicha)
Keyin quyidagi maqolada aytilgan(TSLint ishlatilgan) usulni qilib ko’rdim. (Boshqa tillarda ham bunday narsa bo'lishi kerak)
TS’da yozilgan loyihalar uchun yaxshi ishlaydi. ESLint negadir to’g’ri ishlamadi, kerakli importlarni ham ba’zilarini o’chirib yubordi.
Kimga qiziq bo’lsa mana maqola linki: https://medium.com/bumpware/automatically-remove-all-unused-imports-in-a-typescript-project-b5e8c942cbed
P.s: TSLint “deprecated” bo’lgan. Uni loyihada ishlatmang. Shunchaki hozirgi vaziyat uchun ishlatib, o’chirib tashlasangiz bo’ladi.
#foydali
@JoshDeveloper
Hozirgi loyiha kodida(TypeScript’da yozilgan) keraksiz import’lar juda ko’payib ketgan ekan. Ya’ni ishlatilmayotgan.
Butun loyihani boshidan oxirigacha tekshirib, keraksiz importlarni o’chirib chiqadigan narsa rosa qidirdim. ESLint bilan qilinishi kerak edi. Harxil yo’llarini qildim, kutilgan natija bo’lmadi. VSCode o’zida bor bo'lgan imkoniyatlar faqatgina birgina fayl uchun ishlar ekan. (WebStorm'da bor ekan, kommentda aytilishi bo'yicha)
Keyin quyidagi maqolada aytilgan(TSLint ishlatilgan) usulni qilib ko’rdim. (Boshqa tillarda ham bunday narsa bo'lishi kerak)
TS’da yozilgan loyihalar uchun yaxshi ishlaydi. ESLint negadir to’g’ri ishlamadi, kerakli importlarni ham ba’zilarini o’chirib yubordi.
Kimga qiziq bo’lsa mana maqola linki: https://medium.com/bumpware/automatically-remove-all-unused-imports-in-a-typescript-project-b5e8c942cbed
P.s: TSLint “deprecated” bo’lgan. Uni loyihada ishlatmang. Shunchaki hozirgi vaziyat uchun ishlatib, o’chirib tashlasangiz bo’ladi.
#foydali
@JoshDeveloper
👍28🔥4❤2
Dasturlash bilan qanchadan beri shug’ullanasiz?
Anonymous Poll
36%
0-1 yil
34%
1-2 yil
19%
2-3 yil
7%
3-5 yil
2%
5-7 yil
2%
7+ yil
🔥31👍12🤣8⚡4🫡1
😁100💯17👍5🤣2👀2🫡1
Ba’zi tanishlarim o’z o’g’illarini yoki ukalarini yaxshi dasturchi bo’lishi uchun yelib-yugurib, man bilan bog’lanib, shu o’g’lim(yoki ukam)ga yo’l-yo’riq ko’rsatib tursangiz, savollariga javob berib, deb aytib qolishadi.
Ho’p deyman.
Farzandi(yoki ukasi) keyin yozadi telegramdan(ba’zilari yozmaydi ham)
“O’zingiz haqingizda ozgina aytib bering” desam, yoki biror vazifa bersam, shu bilan yo’q bo’lib ketishadi.
Essiz deyman…
Siz uchun jon kuydirayotganlarni ishonchini ikki karra oqlash uchun ham qattiq harakat qilish kerak emasmi?
#tanqid
@JoshDeveloper
Ho’p deyman.
Farzandi(yoki ukasi) keyin yozadi telegramdan(ba’zilari yozmaydi ham)
“O’zingiz haqingizda ozgina aytib bering” desam, yoki biror vazifa bersam, shu bilan yo’q bo’lib ketishadi.
Essiz deyman…
Siz uchun jon kuydirayotganlarni ishonchini ikki karra oqlash uchun ham qattiq harakat qilish kerak emasmi?
#tanqid
@JoshDeveloper
👍68😢8💯6
Josh*Developer
Ba’zi tanishlarim o’z o’g’illarini yoki ukalarini yaxshi dasturchi bo’lishi uchun yelib-yugurib, man bilan bog’lanib, shu o’g’lim(yoki ukam)ga yo’l-yo’riq ko’rsatib tursangiz, savollariga javob berib, deb aytib qolishadi. Ho’p deyman. Farzandi(yoki ukasi)…
Majburlab “IT”ga tiqish masalasi ham bor…
Ilgari Musulmonlarning maktablarida quyidagicha yozuvlarni yozib qoyishgan ekan(tahminan shunday):
“Bizda qush suzishga, baliq uchishga majburlanmaydi” deya.
Ota-onalar ham xulosa olsa bo’lardi. O’zlariga o’zim aytsam “Qizg’onyapsanmi? Hali ko’rasan…” deb boshlanishi mumkinda 😄
@JoshDeveloper
Ilgari Musulmonlarning maktablarida quyidagicha yozuvlarni yozib qoyishgan ekan(tahminan shunday):
“Bizda qush suzishga, baliq uchishga majburlanmaydi” deya.
Ota-onalar ham xulosa olsa bo’lardi. O’zlariga o’zim aytsam “Qizg’onyapsanmi? Hali ko’rasan…” deb boshlanishi mumkinda 😄
@JoshDeveloper
👍54🔥11💯6😁4⚡2
Qaysi IDE(code editor)ni ishlatasiz?
Anonymous Poll
79%
VS Code
17%
Webstorm
7%
Sublime
1%
Atom
12%
PyCharm
2%
Brackets
1%
Vim
21%
Visual Studio
8%
Boshqa
👍19🤨1
Mana shu muommolar jonga tegdi.
Nahotki bir miyasi ishlagan odam chiqib, yengillik qilmasa xalqqa ? Qaysi rivojlangan davlatda bor bunday qonunlar ?
Link: https://t.iss.one/xushnudbek/20290
#birNarsa
@JoshDeveloper
Nahotki bir miyasi ishlagan odam chiqib, yengillik qilmasa xalqqa ? Qaysi rivojlangan davlatda bor bunday qonunlar ?
Link: https://t.iss.one/xushnudbek/20290
#birNarsa
@JoshDeveloper
😢35👍10🤯4💯2🤨2🔥1
👀17👍11👨💻2😢1
😁20👍5🗿4👏2😐1👀1😨1
Josh*Developer
E’loncha bor edi. Frontint.uz kursi narxlari qimmatladi. Bo’ldi 😅 #eloncha @JoshDeveloper
E’lonchani davomi:
Bo’lib berishga boshlang’ich 30-50% to’lab, bir oy muddatga sotib olsa bo’ladi kursni. Referral orqali pul ishlash imkoniyati ham bor. Bunisi kurs olganlar uchun amal qiladi.
Endi aniq bo’ldi 😅
#eloncha
@JoshDeveloper
Bo’lib berishga boshlang’ich 30-50% to’lab, bir oy muddatga sotib olsa bo’ladi kursni. Referral orqali pul ishlash imkoniyati ham bor. Bunisi kurs olganlar uchun amal qiladi.
Endi aniq bo’ldi 😅
#eloncha
@JoshDeveloper
🔥9👍8😁4🗿1
Bugun taksida, suhbatimiz tahminan shunday kechdi:
Haydovchi: Kasbingiz nima ?
Men: Dasturchiman. Dasturlar yasaymiz.
Oradan biroz vaqt o’tdi:
Haydovchi: Shu telegramimda ikkita akkount borda… Bittasidan ikkinchisiga narsa yuborish kerak. Lekin saxranit qilolmayman birinchi akkountni…
Men: ….. (Savolga tushunmadim)
Haydovchi: Telegramni bilmisizmi?
#joke
@JoshDeveloper
Haydovchi: Kasbingiz nima ?
Men: Dasturchiman. Dasturlar yasaymiz.
Oradan biroz vaqt o’tdi:
Haydovchi: Shu telegramimda ikkita akkount borda… Bittasidan ikkinchisiga narsa yuborish kerak. Lekin saxranit qilolmayman birinchi akkountni…
Men: ….. (Savolga tushunmadim)
Haydovchi: Telegramni bilmisizmi?
#joke
@JoshDeveloper
😁65🤣44👍5😐2🔥1😢1🌚1🤝1
Josh*Developer
Bugun taksida, suhbatimiz tahminan shunday kechdi: Haydovchi: Kasbingiz nima ? Men: Dasturchiman. Dasturlar yasaymiz. Oradan biroz vaqt o’tdi: Haydovchi: Shu telegramimda ikkita akkount borda… Bittasidan ikkinchisiga narsa yuborish kerak. Lekin saxranit…
Bu post birovni ustidan kulish, behurmat qilish uchun yozilmadi.
Avvalo oddiy hazil. Ammo, umumiy ma’noda dasturchi kasbi hamma narsani tuzatib yuradigan kasb emasligiga urg’u berildi. Biz ham nimanidir bilmaymiz. Oddiy narsalarni ham bilmasligimiz mumkin. Bilmasligimizni aytsak esa, ko’pchilik xafa bo’ladi. Yordam berging yo’qmi, dasturchisanku, bilmaysanmi deya.
Xulosa shuki, dasturchiman deb, odamlarni behurmat qilish, biladigan narsangizni bilmayman deyish xato. Shu kabi, dasturchi ekan deb, har narsani biladi deb o’ylash ham xato.
@JoshDeveloper
Avvalo oddiy hazil. Ammo, umumiy ma’noda dasturchi kasbi hamma narsani tuzatib yuradigan kasb emasligiga urg’u berildi. Biz ham nimanidir bilmaymiz. Oddiy narsalarni ham bilmasligimiz mumkin. Bilmasligimizni aytsak esa, ko’pchilik xafa bo’ladi. Yordam berging yo’qmi, dasturchisanku, bilmaysanmi deya.
Xulosa shuki, dasturchiman deb, odamlarni behurmat qilish, biladigan narsangizni bilmayman deyish xato. Shu kabi, dasturchi ekan deb, har narsani biladi deb o’ylash ham xato.
@JoshDeveloper
👍33⚡2💯2
Telegram ham ayniyapti.
Stories qo’shilyapti ekan. Shaxsan menga yoqmadi bu g’oya. Telegramda chalg’ituvchi narsalar avval ancha kam edi. Bu ketishda bilmadim nima baloga aylanadi.
Bo’mapti ☹️.
@JoshDeveloper
Stories qo’shilyapti ekan. Shaxsan menga yoqmadi bu g’oya. Telegramda chalg’ituvchi narsalar avval ancha kam edi. Bu ketishda bilmadim nima baloga aylanadi.
Bo’mapti ☹️.
@JoshDeveloper
🤷♂49👍40💯16💊5👀4🤣3🤝3🤔2🐳1😴1🗿1
“Guess the repo”
Qiziq o’yin ekan-a ? :)
Rasmdagi “PR”lardan, “repo” nomini toping.
#guessTheRepo
@JoshDeveloper
Qiziq o’yin ekan-a ? :)
Rasmdagi “PR”lardan, “repo” nomini toping.
#guessTheRepo
@JoshDeveloper
“Dasturlashni endi boshlaganimda qanday o’rgangan bo’lar edim?” nomli tadbirga bizni taklif qilishibdi.
Boramizmi? 😉
Borishga albatta harakat qilaman Xudo xohlasa. Sizlar ham kelarsizlar :)
@JoshDeveloper
Boramizmi? 😉
@JoshDeveloper
👍41🔥7⚡5🗿2
Josh*Developer
“Dasturlashni endi boshlaganimda qanday o’rgangan bo’lar edim?” nomli tadbirga bizni taklif qilishibdi. Boramizmi? 😉 Borishga albatta harakat qilaman Xudo xohlasa. Sizlar ham kelarsizlar :) @JoshDeveloper
Kanalimda e’lon qilganimdan so’ng, ro’yhatdan o’tish‘ni ochib qo’yishdi 😁️️️️️️
3k odamni qayerga sig’diramiz deb.
#joke
Ro’yhatdan o’tarsizlar :)
@JoshDeveloper
3k odamni qayerga sig’diramiz deb.
#joke
Ro’yhatdan o’tarsizlar :)
@JoshDeveloper
😁21👍6
Forwarded from Sardor Dushamov | PHP - tengi yo'q til!
O'rtoqlar bir fikr kelib qoldi.
Dasturlashni o'rganinglar deb mana ancha bozorni to'ldirib oldik.
Endi AyTi korxona ochish, uni yurgizish, buyurtma olish yoki startuplar qilish haqida ham xuddi shu dasturlashga qilgandek bunga ham bosib reklama, targ'ibot qilish kerakmikin, yo'l-yo'riqlarini o'rgatish kerakmikin, nima deysiz?
"Treningchilar aytayotgan o'z biznesingizni yo'lga qo'ying va pul ishlang" ko'rinishida emas, chuqurroq va batafsil yo'l yo'riqlar.
Dasturlashni o'rganinglar deb mana ancha bozorni to'ldirib oldik.
Endi AyTi korxona ochish, uni yurgizish, buyurtma olish yoki startuplar qilish haqida ham xuddi shu dasturlashga qilgandek bunga ham bosib reklama, targ'ibot qilish kerakmikin, yo'l-yo'riqlarini o'rgatish kerakmikin, nima deysiz?
"Treningchilar aytayotgan o'z biznesingizni yo'lga qo'ying va pul ishlang" ko'rinishida emas, chuqurroq va batafsil yo'l yo'riqlar.
👍121🫡10