Hozir ko'rdim, leetcode daily challenge bugun ham backtrackingga oid ekan. Kechagi problemga bir-ikkita o'zgarish kiritib submit qilaversak ham bo'ladi.
👍12
AI yaqin kelajakda dasturchilarning ishini to'liq tortib oladimi?
Qisqa javob: Yo'q.
Uzunroq javob: Hozirgina aytdim-ku yo'q deb.
Qisqa javob: Yo'q.
Uzunroq javob: Hozirgina aytdim-ku yo'q deb.
😁31👍2
Aytgancha, ertaga JSchilar meetup qilishayapti ekan. Razvedkaga boramiz.
😁27🍾7👎1
O'tgan hafta ishda va mocklarni qo'shib hisoblaganda 5 ta interview o'tkazdim. Barchasi backend yo'nalishida, middle daraja uchun.
Deyarli barchada bir umumiy muammo kuzatdim. Dasturlashdagi g'oya, muammoga yondoshuv o'ta texnik. Ayniqsa OOP va umuman, paradigmlar borasida bu ancha sezildi. OOP haqidagi deyarli barcha savollarga o'ta texnik javoblar oldim. Implementatsiya bor, g'oya yo'q. Xuddiki tana bor, lekin unda jon yo'q.
Nimadir xato. Yoki men bu mavzularda ancha injiqman yoki boshqa muammo bor.
Deyarli barchada bir umumiy muammo kuzatdim. Dasturlashdagi g'oya, muammoga yondoshuv o'ta texnik. Ayniqsa OOP va umuman, paradigmlar borasida bu ancha sezildi. OOP haqidagi deyarli barcha savollarga o'ta texnik javoblar oldim. Implementatsiya bor, g'oya yo'q. Xuddiki tana bor, lekin unda jon yo'q.
Nimadir xato. Yoki men bu mavzularda ancha injiqman yoki boshqa muammo bor.
😁16👍4
Cantor's diagonalization argumentiga yaxshi tushuna olmayapman. Shu haqida ma'lumot biladigan va ba'zi savollarimga javob topishga yordam bermoqchi bo'lgan biror kishi bo'lsa DM yoki commentga yozishingizni iltimos qilaman. Kunning yarmini bir savolga javob izlashga sarfladim. Endi ertaga davom etamiz.
P.S. Bu post dasturlash emas, matematika haqida.
P.S. Bu post dasturlash emas, matematika haqida.
Wikipedia
Cantor's diagonal argument
Cantor's diagonal argument (among various similar names) is a mathematical proof that there are infinite sets which cannot be put into one-to-one correspondence with the infinite set of natural numbers – informally, that there are sets which in some sense…
👍3
Tajribali dasturchilarga savol.
Deylik, siz qurayotgan tizimda dunyo bo'ylab keng ishlatiladigan open-source dasturlardan (PostgreSQL, Redis, Celery, ...) foydalanilgan va tez-tez o'sha dasturlardagi buglarga duch kelayapsiz (oxirgi 6 oyda kamida 3-4 marta). Buglar aynan open-sourde dasturlarda, siz yozgan kodda emas.
Bu nima sababdan bo'lishi mumkin?
Deylik, siz qurayotgan tizimda dunyo bo'ylab keng ishlatiladigan open-source dasturlardan (PostgreSQL, Redis, Celery, ...) foydalanilgan va tez-tez o'sha dasturlardagi buglarga duch kelayapsiz (oxirgi 6 oyda kamida 3-4 marta). Buglar aynan open-sourde dasturlarda, siz yozgan kodda emas.
Bu nima sababdan bo'lishi mumkin?
😁14🍾1
Va nihoyat Dropbox storage tizimidagi qilgan o'zgarishlari haqidagi maqolani o'qib chiqdim. Shu vaqtgacha ko'p dasturchilar bu haqida gapirgan bo'lsa-da, maqolani to'liq o'qib chiqishga vaqtim bo'lmayotgan edi.
Maqolada meni qiziqtirgan ba'zi detallar kiritilmagan ekan, lekin asosiy g'oyani ko'rib "wow" dedim. Bizga hali bunday muammolar bilan ishlashga ancha bor ekan ))
Hali o'qimagan bo'lsangiz maqolaga link qoldiraman:
https://dropbox.tech/infrastructure/increasing-magic-pocket-write-throughput-by-removing-our-ssd-cache-disks
Maqolada meni qiziqtirgan ba'zi detallar kiritilmagan ekan, lekin asosiy g'oyani ko'rib "wow" dedim. Bizga hali bunday muammolar bilan ishlashga ancha bor ekan ))
Hali o'qimagan bo'lsangiz maqolaga link qoldiraman:
https://dropbox.tech/infrastructure/increasing-magic-pocket-write-throughput-by-removing-our-ssd-cache-disks
👍6
Instance method
Instance methodlar (ya'ni aynan obyektga biriktirilgan methodlar) OOPning fundamental g'oyalaridan biri. Aynan ular ma'lumot saqlangan jonsiz strukturani jonli obyektga aylantirishda asosiy omil.
Xo'sh, Java, Python kabi VM instruksiyalarga kompilyatsiya bo'ladigan tillarda method obyektga qanday bog'langan? Axir VM protsedural, u OOP nimaligini bilmaydi-ku?
Ko'plab detallarni tushirib qoldirib, o'ta sodda qaraydigan bo'lsak, instance method xuddi oddiy funksiya kabi ishlaydi. Faqat qo'shimcha yana bitta argument – obyektning o'zini oladi.
Masalan, "mashina" obyektida "signal chal" degan method bo'lsa, compiler methodni obyektga emas, obyektni methodga kiritadi. Ya'ni mashinangizning "signal chal" degan methodini ishlatish uchun "mashina signalini chal" degan funksiyaga mashinangizni argument sifatida berish kerak bo'ladi. Mana bu yerda kod orqali ko'rsatilgan.
Obyektni argument sifatida o'tkazish esa explicit (ochiq) yoki implicit (yopiq) ko'rinishda bo'lishi mumkin. Masalan, Pythonda self argumenti methodga nolinchi argument sifatida ochiq tarzda o'tkazilsa, Java yoki PHPda this argumenti avtomatik tarzda "parda ortida" o'tkaziladi, ya'ni buni siz qilishingiz shart emas.
Oxirgi muammo qoldi – static methodlarni instance methodlardan farqlash. Sababi obyekt faqat instance methodlarga o'tishi kerak. Buning uchun ko'plab tillar static keywordini ishlatsa, Python @staticmethod dekoratorini ishlatadi.
@boboshersnotes
Instance methodlar (ya'ni aynan obyektga biriktirilgan methodlar) OOPning fundamental g'oyalaridan biri. Aynan ular ma'lumot saqlangan jonsiz strukturani jonli obyektga aylantirishda asosiy omil.
Xo'sh, Java, Python kabi VM instruksiyalarga kompilyatsiya bo'ladigan tillarda method obyektga qanday bog'langan? Axir VM protsedural, u OOP nimaligini bilmaydi-ku?
Ko'plab detallarni tushirib qoldirib, o'ta sodda qaraydigan bo'lsak, instance method xuddi oddiy funksiya kabi ishlaydi. Faqat qo'shimcha yana bitta argument – obyektning o'zini oladi.
Masalan, "mashina" obyektida "signal chal" degan method bo'lsa, compiler methodni obyektga emas, obyektni methodga kiritadi. Ya'ni mashinangizning "signal chal" degan methodini ishlatish uchun "mashina signalini chal" degan funksiyaga mashinangizni argument sifatida berish kerak bo'ladi. Mana bu yerda kod orqali ko'rsatilgan.
Obyektni argument sifatida o'tkazish esa explicit (ochiq) yoki implicit (yopiq) ko'rinishda bo'lishi mumkin. Masalan, Pythonda self argumenti methodga nolinchi argument sifatida ochiq tarzda o'tkazilsa, Java yoki PHPda this argumenti avtomatik tarzda "parda ortida" o'tkaziladi, ya'ni buni siz qilishingiz shart emas.
Oxirgi muammo qoldi – static methodlarni instance methodlardan farqlash. Sababi obyekt faqat instance methodlarga o'tishi kerak. Buning uchun ko'plab tillar static keywordini ishlatsa, Python @staticmethod dekoratorini ishlatadi.
@boboshersnotes
Telegram
Engineering Notes
Meme explained
👍15🍾2
Forwarded from Bobosher Musurmonov
#py
print(id([]))
print(id([1, 2]))
print (id([]) == id([1, 2]))
Forwarded from Hops
Engineering Notes
#py print(id([])) print(id([1, 2])) print (id([]) == id([1, 2]))
Natija
140232335251200
140232335298688
True
😁14🍾3👍1😢1
Forwarded from Vohid Karimov (Vohid Karimov)
O'zim ham shunday maktablarni birida o'qiganim va universitetda ham toza Computer Science o'qimaganim tufayli ko'p Math va Computer Science bilimlarni o'zim online resurslardan o'rganaman. Bugun silar bilan o'zimga yoqqan resurslar bilan ulashaman. Kettik:
1. The essence of calculus: YouTube
2. Linear algebra: MIT Website
3. Discrete math: YouTube
4. Probability and combinatorics: Coursera
5. Introduction to Algorithms: MIT Website
6. Operating systems: Archive
7. Networking: Khan Academy Website
Yana, quyidagi YouTube kanallar va GitHub repolarni tavsiya qilaman:
1. 3Blue1Brown
2. Eddie Woo
3. Khan Academy
4. MIT OpenCourseWare
5. BrilliantOrg
6. Coding Interview University
7. Awesome courses
Siz ham o'zingizga yoqgan resurslarni ulashing!
1. The essence of calculus: YouTube
2. Linear algebra: MIT Website
3. Discrete math: YouTube
4. Probability and combinatorics: Coursera
5. Introduction to Algorithms: MIT Website
6. Operating systems: Archive
7. Networking: Khan Academy Website
Yana, quyidagi YouTube kanallar va GitHub repolarni tavsiya qilaman:
1. 3Blue1Brown
2. Eddie Woo
3. Khan Academy
4. MIT OpenCourseWare
5. BrilliantOrg
6. Coding Interview University
7. Awesome courses
Siz ham o'zingizga yoqgan resurslarni ulashing!
👍15
Linux file system haqida batafsilroq ma'lumot berilgan yaxshi resurslar bilsangiz commentda qoldiring, iltimos.
Dasturlash sohasida bir-biridan qiziq terminlar ko'p.
Bugun shulardan yana bittasi haqida o'rgandim – Just a Bunch Of Disks (JBOD).
P.S. PHP ham aslida "Hypertext Preprocessor" emas, "Personal Home Page" ning qisqartmasi.
Bugun shulardan yana bittasi haqida o'rgandim – Just a Bunch Of Disks (JBOD).
P.S. PHP ham aslida "Hypertext Preprocessor" emas, "Personal Home Page" ning qisqartmasi.
👍10😁7
Matematik va dasturchi sifatida men juda hurmat qiladigan inson – Muhammadxon aka Najimov o'z sohasida blog yuritishni boshlabdilar. Ko'pchilikka foydali bo'ladi deb o'ylayman: @leph0
P.S. Kanal logosi top.
P.S. Kanal logosi top.
👍6😁3
Universitetda ancha qiziq o'tgan semestr tugay deb qoldi.
Ayniqsa Nand2Tetris loyihasidan foydalanilgan computer science kursi men uchun qiziq bo'ldi. Basic nand logic gatedan foydalanib qadamma-qadam butun boshli general-purpose (umumiy maqsadli) komputer qurish va o'sha komputer uchun avval assembler, keyin VM, OS va nihoyat yuqori darajali dasturlash tili ishlab chiqish jarayonini ko'rib chiqdik. Albatta juda soddalashtirilgan holatda.
Oxirgi haftada o'sha tildan foydalanib har xil kichkina dasturlar yaratib ko'rdik. Nand2Tetris loyihasida Tetris o'yini yozib ko'rsatilgan. Keyin professor qiziq savol berib qoldi: Bir semestr davomida nand'dan foydalanib Tetris qura oldik. Xo'sh, agar teskarisini, ya'ni Tetrisdan foydalanib nand gate qursakchi?
Umuman olganda, har qanday tabiiy yoki sun'iy olam o'z qonunlari asosida ma'lumot saqlaydi va modifikatsiya qiladi, shu jumladan Tetris o'yini ham. Demak agar bizga kerakli axborot saqlash shakli va modifikatsion operatsiyalarni o'sha olamning qoidalaridan foydalanib yoza olsak, teoritik jihatdan o'sha olamni komputer sifatida ishlata olish imkoniyati tug'iladi.
Bizga Tetris o'yini olamining qoidalari asosida ma'lumotni raqamli ko'rinishda saqlash va shu ma'lumot ustida ba'zi mantiqiy amallarni bajarish imkoniyatini beradigan qoidalar to'plamini berildi. Shu jumladan nand gateni ham tasvirlash imkoni tug'ildi. Qolgani yana o'sha klassik usulda soddaroq komponentlarning kombinatsiyasidan murakkabroq mexanizmlar qurish. Natijada Tetris o'yini olamida ishlaydigan general-purpose computer qura olamiz. Xo'sh, endi unga qanday dastur yozamiz? Albatta Tetris😂
Qisqasi, oddiy komputerda ishlayotgan Tetris o'yinining ichida qurilgan komputerga Tetris o'yinini yozib chiqishibdi. Ko'rib jinni bo'layozdim.
Ayniqsa Nand2Tetris loyihasidan foydalanilgan computer science kursi men uchun qiziq bo'ldi. Basic nand logic gatedan foydalanib qadamma-qadam butun boshli general-purpose (umumiy maqsadli) komputer qurish va o'sha komputer uchun avval assembler, keyin VM, OS va nihoyat yuqori darajali dasturlash tili ishlab chiqish jarayonini ko'rib chiqdik. Albatta juda soddalashtirilgan holatda.
Oxirgi haftada o'sha tildan foydalanib har xil kichkina dasturlar yaratib ko'rdik. Nand2Tetris loyihasida Tetris o'yini yozib ko'rsatilgan. Keyin professor qiziq savol berib qoldi: Bir semestr davomida nand'dan foydalanib Tetris qura oldik. Xo'sh, agar teskarisini, ya'ni Tetrisdan foydalanib nand gate qursakchi?
Umuman olganda, har qanday tabiiy yoki sun'iy olam o'z qonunlari asosida ma'lumot saqlaydi va modifikatsiya qiladi, shu jumladan Tetris o'yini ham. Demak agar bizga kerakli axborot saqlash shakli va modifikatsion operatsiyalarni o'sha olamning qoidalaridan foydalanib yoza olsak, teoritik jihatdan o'sha olamni komputer sifatida ishlata olish imkoniyati tug'iladi.
Bizga Tetris o'yini olamining qoidalari asosida ma'lumotni raqamli ko'rinishda saqlash va shu ma'lumot ustida ba'zi mantiqiy amallarni bajarish imkoniyatini beradigan qoidalar to'plamini berildi. Shu jumladan nand gateni ham tasvirlash imkoni tug'ildi. Qolgani yana o'sha klassik usulda soddaroq komponentlarning kombinatsiyasidan murakkabroq mexanizmlar qurish. Natijada Tetris o'yini olamida ishlaydigan general-purpose computer qura olamiz. Xo'sh, endi unga qanday dastur yozamiz? Albatta Tetris😂
Qisqasi, oddiy komputerda ishlayotgan Tetris o'yinining ichida qurilgan komputerga Tetris o'yinini yozib chiqishibdi. Ko'rib jinni bo'layozdim.
😁15👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Dasturlash sohasidan kelib chiqib gif'ga nom beramiz.
😁35👍4