Leetcodeda har kuni aktiv masala yechadiganlarga biror oy Codeforcesga o'tib ko'rishni tavsiya qilaman. U yoqdagi masalalar "ko'ngilni kengroq qilib" o'ylashga majburlaydi ))
👍39😁11👎1
Q:
Speaking objectively, OOPni qanday yomon taraflari bor?
A:
Declarative OOPga hech qanday e'tirozim yo'q. Masalan, mashhur "Object Thinking" g'oyasini to'liq support qilaman.
Tepada aytilgan "cho'loq OOP" allaqachon to'liq imperative bo'lib ulgurgan va paradigmlarga xos idealogiya yetishmaydigan OOP. G'oya qolib implementatsiya detallariga yopishib olganmiz. O'sha implementatsiya esa authorning "kayfiyatiga bog'liq". Zarur bo'lib qolganida paradigmning naq belidan ketmon bilan soladigan featurelarni ham bemalol qo'shaverishgan. Static methodlar, DTO va umuman, public attributelar bunga yaqqol misol.
Va menimcha eng katta muammo "it works like in real world" ideasida. Dasturda objectlar orqali real world sifatida simulate qilish yaxshi idea sifatida qaralsa-da, bu juda inefficient (design patternlar bunga yaqqol misol). Ayniqsa, real worlddan building blocks sifatida nimalarni olishga hamma rozi bo'ladigan ilmiy asos bo'lmasa. Plus, Stepanov aytganidek, hamma narsa ham object emas. Masalan, algorithmni object yoki object behaviour sifatida qarashning o'zi antipattern. Boshida modularity orqali dasturchining ishini osonlashtirishni maqsad qilgan OOP imperative style, shared state va single responsibility prinspi orqasidan kirib kelgan "shallow class"lar (va shuning orqasidan paydo bo'lgan design patternlar) sabab naborot, dasturchi kod yozish davomida hayolida turishi kerak bo'lgan componentlar sonini absurd darajada oshirib yubordi.
Qisqasi, menimcha OOPda avval boshidan yaxshi ilmiy asos bo'lganida balki u hozirgidan ko'ra ancha consistent bo'lardi. Shunchaki shaxsiy qarashlar asosida qo'shilgan ba'zi g'oyalar sabab OOPning o'zida yetarlicha contradiction topish mumkin va odatda javob "it depends"ga borib taqaladi.
P.S. Tepada objective javob so'ralgan bo'lsa-da, ba'zi shaxsiy fikrlarim ham qo'shilib qolgan.
P.S.2. Buni 1-2 kun oldin Vohid akaning kanalida comment sifatida yozgandim. Hozir Ahmad akaning postini ko'rib share qilib qo'yay dedim. O'lganning ustiga tepgan degandek ))
Speaking objectively, OOPni qanday yomon taraflari bor?
A:
Declarative OOPga hech qanday e'tirozim yo'q. Masalan, mashhur "Object Thinking" g'oyasini to'liq support qilaman.
Tepada aytilgan "cho'loq OOP" allaqachon to'liq imperative bo'lib ulgurgan va paradigmlarga xos idealogiya yetishmaydigan OOP. G'oya qolib implementatsiya detallariga yopishib olganmiz. O'sha implementatsiya esa authorning "kayfiyatiga bog'liq". Zarur bo'lib qolganida paradigmning naq belidan ketmon bilan soladigan featurelarni ham bemalol qo'shaverishgan. Static methodlar, DTO va umuman, public attributelar bunga yaqqol misol.
Va menimcha eng katta muammo "it works like in real world" ideasida. Dasturda objectlar orqali real world sifatida simulate qilish yaxshi idea sifatida qaralsa-da, bu juda inefficient (design patternlar bunga yaqqol misol). Ayniqsa, real worlddan building blocks sifatida nimalarni olishga hamma rozi bo'ladigan ilmiy asos bo'lmasa. Plus, Stepanov aytganidek, hamma narsa ham object emas. Masalan, algorithmni object yoki object behaviour sifatida qarashning o'zi antipattern. Boshida modularity orqali dasturchining ishini osonlashtirishni maqsad qilgan OOP imperative style, shared state va single responsibility prinspi orqasidan kirib kelgan "shallow class"lar (va shuning orqasidan paydo bo'lgan design patternlar) sabab naborot, dasturchi kod yozish davomida hayolida turishi kerak bo'lgan componentlar sonini absurd darajada oshirib yubordi.
Qisqasi, menimcha OOPda avval boshidan yaxshi ilmiy asos bo'lganida balki u hozirgidan ko'ra ancha consistent bo'lardi. Shunchaki shaxsiy qarashlar asosida qo'shilgan ba'zi g'oyalar sabab OOPning o'zida yetarlicha contradiction topish mumkin va odatda javob "it depends"ga borib taqaladi.
P.S. Tepada objective javob so'ralgan bo'lsa-da, ba'zi shaxsiy fikrlarim ham qo'shilib qolgan.
P.S.2. Buni 1-2 kun oldin Vohid akaning kanalida comment sifatida yozgandim. Hozir Ahmad akaning postini ko'rib share qilib qo'yay dedim. O'lganning ustiga tepgan degandek ))
👍12😁2🤯1
Mustahkam sistema qurishning eng asosiy talablaridan biri uning asosini to'g'ri tanlash. Ilmiy sohada esa bu odatda eng oddiy va "hamma biladigan" tushunchalarni to'g'ri tasvirlay olishga taqqoslanadi. Xo'sh, bu qanchalik qiyin?
Keling, eng oddiy tushunchalardan boshlaymiz. Tasavvur qiling, sivilizatsiyadan 10 ming yil orqada qolib ketgan do'stingizga (bunaqa do'st hammada bor😂) bir amallab sanashni o'rgatdingiz. Endi u natural sonlar nimaligini biladi. Lekin u hali sonlarni taqqoslash (katta, kichik yoki teng) nimaligini bilmaydi. Sizning vazifangiz "to'rt uchdan katta" degani nimani bildirishini haligi barmoqlari orqali sanashni o'rgangan do'stingizga tushuntirib berish. Xo'sh, buni qanday qilgan bo'lardingiz?
Keling, eng oddiy tushunchalardan boshlaymiz. Tasavvur qiling, sivilizatsiyadan 10 ming yil orqada qolib ketgan do'stingizga (bunaqa do'st hammada bor😂) bir amallab sanashni o'rgatdingiz. Endi u natural sonlar nimaligini biladi. Lekin u hali sonlarni taqqoslash (katta, kichik yoki teng) nimaligini bilmaydi. Sizning vazifangiz "to'rt uchdan katta" degani nimani bildirishini haligi barmoqlari orqali sanashni o'rgangan do'stingizga tushuntirib berish. Xo'sh, buni qanday qilgan bo'lardingiz?
👍6👎2
Leetcodedagi "Valid Parentheses" masalasini ko'pchilik ko'rgan va yechgan bo'lsa kerak. Klassik yechimda stackdan foydalaniladi: input string bo'ylab yurib agar belgi "opening bracket" bo'lsa u stackka qo'shiladi; "closing bracket" bo'lsa stackdan belgi pop qilinib hozirgi belgi bilan pair ekani tekshiriladi. Agar birorta pair to'g'ri chiqmasa yoki input string bo'ylab yurib chiqish tugaganidan keyin ham stackda belgilar qolib ketsa parentheses invalid bo'ladi.
Bu yechimni bilishingiz mumkin, lekin u nega to'g'riligini ko'rsatib bera olasizmi? Buning uchun tepadagi yechim:
a) birorta valid inputga invalid deb natija chiqarmasligini;
b) birorta invalid input uchun valid deb natija chiqarmasligini isbotlash kerak bo'ladi.
Isbotingizni commentda qoldirishingiz mumkin.
Bu yechimni bilishingiz mumkin, lekin u nega to'g'riligini ko'rsatib bera olasizmi? Buning uchun tepadagi yechim:
a) birorta valid inputga invalid deb natija chiqarmasligini;
b) birorta invalid input uchun valid deb natija chiqarmasligini isbotlash kerak bo'ladi.
Isbotingizni commentda qoldirishingiz mumkin.
👍13
Yaqinda hozirgi ish joyimdan bo'shayman va shu sabab yangi ish joyi izlayapman. LinkedIndan ko'ra shu yerda e'lon qilganim foydaliroq ekan menimcha (3-4 oydan beri LinkedIndan aktiv foydalanmayapman).
Ideal holatda product-oriented kompaniyada, backend yoki low-level development bo'yicha ishlamoqchiman (lekin menda hozircha low-level bo'yicha experience yo'q). Agar ish yetarlicha qiziq bo'lsa hybrid yoki remote full time ishlashim mumkin. Onsite bo'lsa faqat part time ishlay olaman.
P.S. Sharing is caring 🙂
Ideal holatda product-oriented kompaniyada, backend yoki low-level development bo'yicha ishlamoqchiman (lekin menda hozircha low-level bo'yicha experience yo'q). Agar ish yetarlicha qiziq bo'lsa hybrid yoki remote full time ishlashim mumkin. Onsite bo'lsa faqat part time ishlay olaman.
P.S. Sharing is caring 🙂
👍51
Men "Dasturchilar AI sabab ishini yo'qotmaydi" deganda mana shunga o'xshash tashqaridan oddiy ko'rinadigan, aslida ko'plab olim va muhandislarning yillab mehnati ketgan ishlar bilan shug'ullanadigan, sohada yangilik qiladigan dasturchilarni nazarda tutaman.
https://www.youtube.com/watch?v=SO83KQuuZvg
https://www.youtube.com/watch?v=SO83KQuuZvg
YouTube
Coding Adventure: Rendering Text
This... is text! Let's figure out how to draw it.
Starring: Bézier curves and (oh so many) floating point problems.
Support my work (and get early access to new videos and source code) on Patreon or Nebula
* Patreon: https://www.patreon.com/SebastianLague…
Starring: Bézier curves and (oh so many) floating point problems.
Support my work (and get early access to new videos and source code) on Patreon or Nebula
* Patreon: https://www.patreon.com/SebastianLague…
👍20
Forwarded from Dr. Algorithm
Ertaga 2 ta zo`r tadbir bor:
1. UzGeeks DevOps meetup
2. Job&Edu fest 2024
Afsus bora olmas ekanman.
Lekin aniq bilaman, siz kutmagan korxona qatnashadi.
@DrAlgorithm
1. UzGeeks DevOps meetup
2. Job&Edu fest 2024
Afsus bora olmas ekanman.
Lekin aniq bilaman, siz kutmagan korxona qatnashadi.
@DrAlgorithm
Telegram
UzGeeks Community
Assalom alaykum!!!
UzGeeks'da uzoq kutilgan DevOps kuni!
📆 20-aprel shanba kuni Toshkent shahri Raqamli texnologiyalar vazirligi binosida "UzGeeks April2024 DevOps Day Meetup" bo'lib o'tadi.
📚 Meetup quyidagi bo'limlardan tashkil topgan:
1️⃣. “Kichik va…
UzGeeks'da uzoq kutilgan DevOps kuni!
📆 20-aprel shanba kuni Toshkent shahri Raqamli texnologiyalar vazirligi binosida "UzGeeks April2024 DevOps Day Meetup" bo'lib o'tadi.
📚 Meetup quyidagi bo'limlardan tashkil topgan:
1️⃣. “Kichik va…
😁3👍1
Forwarded from Dark Voyage (Orzklv)
Goodbye Hashipcorp! You've been quite a good company who brought many good things to the table. Now IBM has acquired you, prolly you won't do amazing things like you've used to anymore. 🥲
https://www.hashicorp.com/blog/hashicorp-joins-ibm
https://www.hashicorp.com/blog/hashicorp-joins-ibm
😢3
Engineering Notes
Aytgancha, yaqinda Hussein Nasser Udemyda Operating Systems bo'yicha kurs chiqaradi. Kursni yozish boshlangandan beri o'tgan vaqt va chiqqan teaserlarga qaraganda zo'r kurs bo'lsa kerak. Shu kurs chiqsa kanalda 3-4 kishiga gift qilishni o'ylab turibman. Stay…
Okamgilani yengi kursi chiqibdi bugun. "Oddushi" tavsuyu:
https://www.udemy.com/course/fundamentals-of-operating-systems/?fbclid=PAZXh0bgNhZW0CMTEAAaYIhNW2afu7-YbpVje24nPufDIBFK7JUDxHs0wMOPRF82v1F0IaqtgOXvo_aem_Af7GO0NhLzfaeagEFVhgcCaR6RmrMwR3tjIDeKEhKeqXGG4Z93dHCr_y5n0HDJ2zBTSV3FQqAlOuRf5ZJBa-lJtn&couponCode=KERNEL
P.S. Kursni sovg'a qilish bo'yicha haliroq xabar qilaman.
https://www.udemy.com/course/fundamentals-of-operating-systems/?fbclid=PAZXh0bgNhZW0CMTEAAaYIhNW2afu7-YbpVje24nPufDIBFK7JUDxHs0wMOPRF82v1F0IaqtgOXvo_aem_Af7GO0NhLzfaeagEFVhgcCaR6RmrMwR3tjIDeKEhKeqXGG4Z93dHCr_y5n0HDJ2zBTSV3FQqAlOuRf5ZJBa-lJtn&couponCode=KERNEL
P.S. Kursni sovg'a qilish bo'yicha haliroq xabar qilaman.
Udemy
Fundamentals of Operating Systems
Build efficient software by understanding how the OS kernel works
👍17😁2🍾2
Nisbiylik nazariyasi va qora tuynuklar haqida men shu vaqtgacha ko'rgan deyarli hamma materiallar yoki men tushunmaydigan darajada murakkab, yoki menga qiziq emas darajada sodda bo'lgan. Mana bu video esa juda yoqdi:
https://youtu.be/6akmv1bsz1M?si=HJkVwi0XIAWzFKRn
https://youtu.be/6akmv1bsz1M?si=HJkVwi0XIAWzFKRn
YouTube
Something Strange Happens When You Follow Einstein's Math
Einstein was wrong about black holes, what else? Use code veritasium at the link below to get an exclusive 60% off an annual Incogni plan: https://incogni.com/veritasium
A massive thank you to Prof. Geraint F. Lewis and Prof. Juan Maldacena for their expertise…
A massive thank you to Prof. Geraint F. Lewis and Prof. Juan Maldacena for their expertise…
👍10
Forwarded from Kei Lambda | Stash
A Brief Guide to A Few Algebraic Structures.html
3.1 MB
A Brief Guide to A Few Algebraic Structures
https://argumatronic.com/posts/2019-06-21-algebra-cheatsheet.html
https://argumatronic.com/posts/2019-06-21-algebra-cheatsheet.html
👍3
Things only Apple can do
P.S. Yes, I'm downloading a black hole ))
P.S. Yes, I'm downloading a black hole ))
👍12
Bilsangiz, dangasalikning ham 2 xil turi bor: "prosto yoqmadi" dangasalik va "ishim osonlashadi" dangasalik. Numbering (yoki indexing) 1 emas 0 dan boshlanishi 1-tur dangasalik deb o'ylardim. Yo'q, 2-tur ekan: shu orqali kodning orasida bir dunyo (avval men tasavvur qilganimdan aaancha ko'p) faqat chalg'itadigan "-1" yozishdan qutilingan ekan. Kudos BCPL ))