en
Feedback
Engineering Notes

Engineering Notes

Open in Telegram

Kanalda asosan backend engineeringga oid postlar yozib boriladi. Ba'zi postlarda xatoliklar bor. Postlar foydali bo’lgan bo’lsa adminni duo qilib qo’ying. Rahmat. Contact: @Bobosher_Musurmonov LinkedIn: https://www.linkedin.com/in/bobosher-musurmonov

Show more
2 575
Subscribers
No data24 hours
+37 days
+1830 days
Posts Archive
SEND + MORE ------ MONEY Tushungan tushundi ))

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?

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.

What is the output of the code above?
What is the output of the code above?

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.

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. Xuddiki tana bor, lekin unda jon yo'q. Nimadir xato. Yoki men bu mavzularda ancha injiqman yoki boshqa muammo bor.

Aytgancha, ertaga JSchilar meetup qilishayapti ekan. Razvedkaga boramiz.

AI yaqin kelajakda dasturchilarning ishini to'liq tortib oladimi? Qisqa javob: Yo'q. Uzunroq javob: Hozirgina aytdim-ku yo'q deb.

AI yaqin kelajakda dasturchilarning ishini to'liq tortib oladimi? Qisqa javob: Yo'q. Uzunroq javob: Hozirgina aytdim-ku yo'q deb.

Hozir ko'rdim, leetcode daily challenge bugun ham backtrackingga oid ekan. Kechagi problemga bir-ikkita o'zgarish kiritib submit qilaversak ham bo'ladi. Spoiler: Haliroq C3 haqida gaplashamiz.

Leetcodeda bugungi daily challangeni O(n) time, O(k) space complexityda yechdim. Biladiganlar "fisht" deb yuboringlar, shuni O(1) space complexityda yechish mumkinmi?

Mana bu savol xuddi language grammarga o'xshash ekan. Yaqinda universitetda shu haqida o'rgangandik. Baribir 40 minut ketdi. https://leetcode.com/problems/valid-number/

Birinchi marta Leetcodeda hard darajadagi masalani yarim soatdan kam vaqtda yechdim. Menimcha bu masala harddan ko'ra ko'proq mediumga tortadi. Link: https://leetcode.com/problems/reverse-nodes-in-k-group/

Ertalabdan (USda deyarli yarim tun) production serverimizda muammo chiqqan. Yarim soat loglar bilan kodni yonma-yon analiz qilib aniqladim-ki, bug biz yozgan kodda emas, biz background tasklar uchun ishlatadigan open-source software – Celeryda ekan. Umuman olganda, bu birinchi marta Celery bilan bog'liq muammoga duch kelishim emas. Mana bu va ishdan tashqari yana bir nechta vaziyatlarda ham Celery pand bergandi. Umuman olganda, ko'p vazifalarni qoyillatib bajarsa-da, ba'zi eng oddiy vazifalarni bajarishda oqsaydi. P.S. Menimcha Celeryga contribute qilib undagi buglarni fix qilishdan ko'ra yangi soddaroq alternativ yozib chiqish osonroq bo'lsa kerak. @boboshersnotes

Mana bu kod error chiqaradi. Bunga sabab esa Python Method Resolution Order(MRO)ni aniqlash uchun ishlatadigan algorithm – C3 Linearization. C3 Linearization algorithmining vazifasi biror classning hamma ancestor(ajdod)larini ma'lum qonuniyat asosida chiziqli tartiblash (bu orqali method overriding/overloading hal qilinadi). Bu algorithm biroz murakkab bo'lsa-da, u monolith xususiyatini saqlab qola oladi. Bundan oldin ishlatilgan "Depth-first, left to right" (Python 2.2 gacha ishlatilgan) algorithmi tuzilishi jihatdan juda sodda bo'lsa-da, u monotonic emas edi (ya'ni multiple inheritance vaqtida order almashib ketishi mumkin edi). C3 ning qanday ishlashi haqida esa hali yana gaplashamiz. @boboshersnotes

What is the output of the following code?
What is the output of the following code?

What is the output of the following code?
What is the output of the following code?

Instance methodlar boshqa tillarda qanday implement qilingan? Biladiganlar commentda qisqacha ma'lumot bersangiz xursand bo'lardim.

Meme explained
Meme explained