Engineering Notes @boboshersnotes Channel on Telegram

Engineering Notes

@boboshersnotes


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

Engineering Notes (Uzbek)

Salom, tezlikcha yangiliklar paydo bo'lgan Telegram kanaliga xush kelibsiz! "Engineering Notes" kanali @boboshersnotes nomi ostida faoliyat yuritadi. Kanalda asosan backend engineeringga oid postlar joylashadi. Agar ba'zilari xatoliklar olsa ham, foydali bo'lgan postlarga adminlarga xabardor bo'lib, ona duolarizni qo'yishingiz mumkin. Kanalda foydali ma'lumotlar, maslahatlar va so'nggi yangiliklar oqib, professional darajada o'sishga yordam beradi

Kanal haqida ko'proq ma'lumot olish uchun @Bobosher_Musurmonov bilan bog'lanishingiz mumkin. U yordam berishga tayyor. Agar sizga backend engineering sohasida yuksak saviyadagi ma'lumotlar kerak bo'lsa, shu kanal sizning yordamingiz bo'lishi mumkin. Bo'lgan istagan joyda, vaqtingizda istalgan vaqtda kanalga qo'shiling va eng so'nggi ma'lumotlardan xabardor bo'lib turing. Sizni kutib olishimizni umid qilamiz! Rahmat.

Engineering Notes

29 Jan, 18:09


Ba'zi sabablar bilan anchadan beri aynan dasturlashga oid biror narsa o'rganishga vaqt ajrata olmayotgandim. Va nihoyat bugun 2-3 soat o'tirib o'rganishga vaqt topa oldim:

1. CPython 3.13'dagi yangiliklarni chuqurroq o'rganib chiqishga harakat qildim. Bundan tashqari community forum/discussionlardagi oxirgi yangiliklarga qarab chiqdim. Memory management/garbage collectiondagi o'zgarishlar va ayniqsa JIT compilerga adaptatsiya ancha yaxshi ketayotgani yoqdi. Shu endi type systemniyam sal odam bashara qilib, data modelni sal yengillashtirishsa pythonam yaxshigina til bo'lib qolarkan o'zi.

2. Rust type systemni chuqurroq o'rganish bahonasida type theory va automata theory bo'yicha ba'zi yangi narsalar o'rgandim. Bundan tashqari men oldin tushunmagan ba'zi string typelarni yaxshiroq o'rganib, implementatsiyasiga qiziqib ko'rdim.

3. Kubernetes bo'yicha zanglab qolgan umumiy bilimlarimni sal yangilab oldim. Oxirgi kunlarda ishimning asosiy qismi k8s bilan bog'liq bo'layapti, shuning uchun bu yaxshi vaqt investitsiyasi bo'ldi deb o'ylayman.

Engineering Notes

28 Jan, 16:13


https://youtu.be/2Hn3djsWvnY

Engineering Notes

25 Jan, 13:26


Zaryadkaga qo'yib ishlatsangiz ham noutbuk zaryadi kamayib ketadigan vaziyat bo'lganmi hech?
Menda bo'lgan, qemuda 2 ta parallel emulation qilganimda ))

Engineering Notes

22 Jan, 08:29


Internet ishlab bo'lmaydigan darajada rasvo ishlayapti.

Engineering Notes

15 Jan, 18:25


https://www.youtube.com/watch?v=SMCRQj9Hbx8

Engineering Notes

15 Jan, 14:34


MX Master 3S'ni taxminan 2 hafta ishlatdim va menga yoqmagan ba'zi jihatlari:

1. MacOS bilan integratsiya sifati past. Ayniqsa scrollerlar juda inconsistent va magic mouse yoki trackpadga qaraganda juda notekis. Bilishimcha Apple buni ataylab qiladi.

2. Thumb button bilan combo gesturelar o'rganishga noqulay ekan.

3. Build quality kutganimdan biroz yomonroq ekan.

P.S. Lekin back/forward buttonlar juda kerakli va qulay ekan ishlatishga.

Engineering Notes

15 Jan, 14:24


Bir aka bilan suhbatda (kimligini ayta olmayman) low code/no code uchun g'irt o'zbekcha termin aytib qoldi – "yengil-yelpi dasturlash"😂

Engineering Notes

14 Jan, 09:26


MacOS 15 ga update qilishimdan oldin laptopim full batteryda normal workloadda 6-7 soatga yetardi, hozir 3-4 soatda tugab qolayapti. Yana kimdadir shu muammo chiqmadimi?

Engineering Notes

13 Jan, 08:18


Post uzunroq ammo ham kulgili va ham achinarli gaplar yozilgan.

Bilmaganlar uchun: Man bir kompaniyada texnik suhbat oluvchi hodim sifatida ham ishliman. Asosan texnik o'qituvchilarni suhbat qilaman.

Man bilan suhbat muvaffaqiyatli yoki aksincha bo'lsa ham, odatda uzoq davom etmaydi. Nega? Chunki to'gridan to'gri kod yozamiz. Yani birinchi savolning o'zidayoq siz kod yozib berishingiz kerak. Bu bilan u javoblarni yodlab olgani yoki GPT kabilar bilan tayyorlanganini o'ylab o'tirmayman. Chunki tajribali odam shartta yozadi qo'yadi.

Sizlarga har xil keyslarni aytmoqchiman:

O'sish uchun dars bermoqchiman deyishadi. Ok, o'sarsiz ammo o'quvchilarni kim o'stiradi?

---

Suhbatda mani eng chorasiz qoldiradigan, ya'ni nima deyishimni bilmay qoladigan bir vaziyat bor. Nomzod noto'gri javoblar beradi. Biroz sukut saqlab "Azgina hajonlanvomman" deydi. Kimdir bilsa etsin. Man shu payt nima qila olaman?
"Ha bu o'zi zo'r mutaxasis, jovoblani biladi, shunchaki hozir hayajonda" deb muvaffaqiyatli o'tkazishim kerakmi? Yana savolim bor: "Hayajonlanmang" desam hayajoni to'xtaydimi?

---

Masalan JS bo'yicha bo'lsa va man setTimeout ni yozib bering desamu u nimaligini bilsa ammo yozilishida xato qilsa buni kamchilik deb bilmayman. Ammo nimaligini bilmasa yoki qanday ishlashini bilmasa bu yomon.

Endi savol aslida setTimeout bir funkisya xolos, shuni bilmaslik yoki esidan chiqarish yomonmi deyishingiz mumkin.
Javob: Albatta yomon. Nega? Chunki JavaScript muhitida timeouts deb alohida ajratilgan mavzu hisoblanadi. Timeoutlar oddiy kodlardan biroz boshqacha ishlaydi va buni o'zini hurmat qilgan JS dasturchi ablatta bilishi kerak. Unutsangiz ham unuting ok. Chunki hozirgi zamonda ish paytida bilmasangiz ham qiynalmaysiz, shartta google qilasiz yoki GPT kabilardan so'risiz. Ammo darsda o'quvchingiz sizdan so'rayapti. Nima deysiz? Google dan qaraberasmi? Nima uni o'zi qlomidimi? Umuman sizga nega pul to'lashi kerak?

---

Ishga (dasturchi sifatida) topshirasiz u yerga kira olmay birdan dars bergingiz kelib qoladi... Bizga qarab "Shu tajribam bularga bo'laveradi" degan fikrdamisiz yoki? Aslida biz qattiqroq suhbat qilishimiz kerak. Nega? Tasavvur qiling siz dasturchi bo'lib ishga topshiryapsiz, intervyudan amallab o'tdingiz. Yani kamchiliklaringiz bor. Ishlaysiz ishlaysiz va qayerdadir muammo chiqarasiz. Albatta bu juda tabiiy jarayon va it's ok. Bugun bo'lmasa ertaga yoki undan keyin to'girlanadi, bahonada siz tajriba orttiryapsiz. Endi tasavvur qiling siz ta'lim dargohida ishlamoqchisiz. U yerdan ham amallab o'tdingiz. Yuzlab yoshlar "Poytaxtda o'qiman" degan umid bilan viloyatlardan kelishadi, kvartira, yeb ichish, kurs to'lovlari, boshqa harajat vahokazolar haqida o'ylab ko'ring. Mayli deydi va o'qidi. Ammo shox soxta bo'lib chiqsachi?

Yani dasturchilikda chiqadigan muammodan ko'ra o'qitvchilikda chiqadigan muammo ancha jiddiy.

O'quvchi: Ustoz bu nima?
O'qituvchi: Bilmadim ishlatib ko'rmagamman.

Shu yerda haligi o'quvchini tasavvurlari o'zgarib ketti...

Bilmaslik ayb emas albatta, lekin shaxsan sohaga doir va bilishi shart bo'lgan mavzulardan savol bersam ham javob ololmayapman.

---

Framework yoki Lib ishlatasiz. Ajoyib, qarshiligim yo'q. Muhimi siz qaysi qiyin ishni oson yo'l bilan hal qilish haqida o'ylab birortasini tanlagansiz. Yani ularsiz ham ishlay olasiz, nu zachem? tayyor tool bor-ku deysiz. Bu to'gri fikr. Ammo ularsiz hech narsa qila olmaydigan odamlar ham chiqayapti. Yana eslataman, menga chiqdimi tamom u dars bermoqchi bo'lgan odam bo'ladi.

Asab kerak ekan. Bilasizmi shunaqalar odatda nima deyishadi? Bu ishlatilmidi-ku. Bu ish-la-til-midi-ku. Javobni qarang. Ha uni siz ishlatmassiz yoki sizning doirangizdigilar ishlatishmas, lekin bu o'sha mavzuni bilmasligingizga bahona bo'lolmaydi. Har holda dasr bermoqchisiz.

---

Engineering Notes

07 Jan, 15:50


Pythondagi yangi generic typing (PEP695) asabimga tegishni boshladi. I mean, syntaxni o'zi zo'r, lekin pythonda shu syntaxga arziydigan type system yo'q.

Engineering Notes

07 Jan, 14:43


https://www.youtube.com/watch?v=Hgw_RlCaIds

Engineering Notes

04 Jan, 11:44


Communityda beminnat yordamlari va maslahatlari bilan tanilgan ustozimiz, do'stimiz, hamkasbimiz Shukrullo aka avtohalokatga uchrab olamdan o'tibdilar. Alloh gunohlarini mag'firat qilib, joylarini jannatdan qilsin.

Inna lillahi va inna ilayhi roji'un.

Engineering Notes

26 Dec, 20:46


Va nihoyat Ghostty chiqdi, shuncha kutganga arziydi deb umid qilamiz ))

Engineering Notes

26 Dec, 17:43


Va nihoyat yangi o'yinchoqlar to'liq yetib keldi.

Engineering Notes

26 Dec, 13:05


Pythonda ba'zi narsalar keraksiz darajada overcomplicate qilingan. Menimcha shulardan biri object attribute lookup. Property (getter method), getattr, getattribute, dict, slots, data/non-data descriptors va yana men bilmaydigan boshqalari. To'g'ri bular bilan har xil qiziq ishlar qilsa bo'ladi, lekin bularning hammasi default attribute lookupni murakkablashtirishga arzirmikan?

Engineering Notes

25 Dec, 17:46


Omadim kelib bu yil Vohid akaning AoC leaderboardida 1-o'ringa chiqib qoldim.

Kimgadir qiziq bo'lsa yechimlarimga link:
https://github.com/bobosherm/aoc2024

P.S. Faqat kodimni ko'rgandan keyin clean code, birnarsa-birnarsa degan gap-so'z bo'lmasin kommentariyada. Ustozning aytganini qil, qilganini qilma degan gap bor ))

Engineering Notes

24 Dec, 18:07


Bugun men kunlik ishlatadigan servislarning kamida 70 foizi yoki umuman ishlamayapti yoki juda sekin va nostabil ishlayapti.

O'zbekistondan ketishga sabablar borgan sari ko'payayapti.

Engineering Notes

24 Dec, 07:41


AoCda hozircha eng yoqqan savollar day 17 part 2 (machine instruction) bilan day 24 part 2 (logic circuit) bo'lib turibdi. Bugungi part 2 ni fully automate qilishga harakat qilib ko'p vaqt sarflab yubordim, oxiri helper toollar bilan qo'lda topishga to'g'ri keldi baribir.

Engineering Notes

23 Dec, 11:50


Keyin oxirgi 1 haftada QUIC yaxshi ishlamayapti, juda sekin yoki umuman fail bo'layapti (ayniqsa Youtubeda ko'p sezilayapti). Bu faqat mendami yoki qolganlardayammi?

QUIC bilan TLS 1.3 ni to'liq bloklashmoqchi degan uzun quloq gaplar ham yuribdi. O'zi shundog'am UDP zo'rg'a ishlab turibdi, TLS 1.3 niyam bloklashsa Xitoydan farqimiz qolmaydi, lekin nega bloklashi mumkinligiga birorta mantiqiy sabab topa olmayapman.

Engineering Notes

23 Dec, 11:35


Agar kun bo'yi fast.com'ga kirib o'tiraman desanglar Sarkorni tavsiya qilaman, interneti juda tez. Kichkina kamchiligi – boshqa birorta sayt bu tezlikda ishlamaydi.

Engineering Notes

22 Dec, 08:09


Python core skillarim ancha zanglab qopti, bir mock interviewdan o'tvoradigan joyi👀.

Engineering Notes

18 Dec, 11:16


Bir internal toolning ikkita tightly coupled componentlaridan biri Pythonda, ikkinchisi Javada yozilgan ekan. Vaqtim bo'lishi bilan legacy code refactoring deb unisiniyam Pythonga o'tkazib qo'yaman😂.

Engineering Notes

17 Dec, 10:34


Bugun ishining asosiy qismi regex yozish bo'lgan hamkasbim bilan gaplashib qoldik. Impression: 🤯

Engineering Notes

13 Dec, 06:27


Thank you, AoC🙂.
(skill issue)

Engineering Notes

12 Dec, 18:59


Sarkor servis sifatiyam, tech supportiyam molxonadan farqi yo'q ekan.

Engineering Notes

10 Dec, 15:06


Ish joying bergan corporate VPNga ulanish uchun boshqa VPN ishlatayapsanmi, demak O'zbekistondasan.

Engineering Notes

10 Dec, 05:40


Bugun AoCda boshida part 1 shartini noto'g'ri tushunib yechim yozgan ekanman. To'g'rilab part 2 ga o'tsam boyagi yechim so'ralgan ekan ))

P.S. Faqat men emas ekanman.

Engineering Notes

07 Dec, 05:18


Daliy AoCni yechdik, endi bemalol DevFestga boraversak bo'ladi ))

Engineering Notes

06 Dec, 14:20


Menga bir narsa qiziq. Tushunishimcha bu notification hammaga emas faqat bir guruh customerlarga yoki undan ham yomon senariyda faqat Sardor og'aga kelgan. Agar shunday bo'lsa payme engineerlari ochiqchasiga PII(Personally Identifiable Information)dan foydalanib troll qilayaptimi?

Engineering Notes

06 Dec, 14:18


Sen haliyam Paymeda ekansan demak Paymedan biz ketamiz!

O'chirvorish arafasidaman)

Engineering Notes

06 Dec, 14:10


1 soat sarflab ko'rishga arziydigan video, yangi tandirdan uzilgan:

https://www.youtube.com/watch?v=kOkfC5fLfgE

Engineering Notes

06 Dec, 09:45


Rego Datalogdan ilhomlangan ekan. Bilmadim, lekin menga generic JavaScript libraryga o'xshab tuyildi, faqat sal declarative ))

Engineering Notes

04 Dec, 19:12


Knowledge of the day: Zobrist hashing

Engineering Notes

03 Dec, 19:06


GDGdayam 1-2 ta talkdan tashqari hammasi AI haqida ekan (AIdagi yangiliklar, qanday ishlashi haqida emas, asosan qanday ishlatish haqida). Kun bo'yi networking qilamiz shekilli ))

Engineering Notes

01 Dec, 11:51


AoCda kimlar qiziqroq challange qilayapti? Har kuni har xil tilda yechish yoki shunga o'xshash.

Engineering Notes

29 Nov, 18:51


Yaqinda internal servicelar haqida bir dunyo metrics qaytaradigan REST servisimiz turgan podlardan OOM alert kelishni boshladi. Avval 1 marta, 1 haftadan keyin yana 1 marta, 3-4 kundan keyin yana... . Memory usage pattern oldingi haftaga nisbatan biroz oshgan, lekin e'tiborni tortadigan hech narsa yo'q. Anomal usage patternlarni topadigan detectorlar ham hech narsani ko'rmagan. Xullas, bittada ko'zga ko'rinadigan hech narsa yo'q.

Salkam 1 kun vaqt sarflab va nihoyat topdim bugni. Xullas, 2 oycha oldin bu endpointlarni ishlatadigan consumer (boshqa team tomonidan ishlab chiqilgan automation tool) talabi bilan bir endpointdagi query parameter default qiymati truedan falsega o'zgartirilgan. Lekin bu o'zgarish to'liq dokumentatsiya qilinmagan va natijada boshqa consumerlar bundan xabarsiz qolgan. Bu long running requestlarga, bunaqa load uchun mo'ljallanmagan workerlar esa memory leakka sabab bo'lgan. Boshida kichkinagina memory leak sekin-sekin kattalashib, endi OOMga sabab bo'layapti ekan.

Xulosa: 1 qator kod yozsangiz ham to'liq document qiling.

P.S. Oy tugasinchi ko'ramiz bu servis oldingi oylarga nisbatan qancha ko'p harajat qilibdi ))

Engineering Notes

28 Nov, 04:01


Operatsion tizim shunaqa narsaki qariganing sayin uning stabilligiga o'rganib qolasan. Masalan menga har qanday linux based distro bilan ishlash umuman muammo emas. Arch, fedora, gentoo...

Muammo shundaki sen unga kun tartibingdagi asosiy vaqtingni sarflab qo'ymasliging lozim.

Chiroyli themelar, turlicha desktop enviromentlarni yoshlik, o'rganish davrida sinash bu ok, ammo sening asosiy ishing kutadigan vaziyat bo'lsa luchshe bunga ovora bo'lib vaqt sarflamagan maqul.

Aslida linuxning hammasi bir go'r, odatda ularni bir biridan build system va paket menejerlari farqlantiradi. Ammo asosiy nuqta ham shunda.

Masalan fedora ishlatayotganimda men uchun eng noqulay bo'lgan vaziyat bu x264 codec, telegram binary update bo'lishi, klaviatura va mishka uchun custom eventlar ulashimda /dev/input nostabilligi, window protocol va remi paketlar kabi holatlar. Archda minimallik yoqadi ammo 3 kun otpusk olib os tayyorlar bu uje banalno.

Debian based distrolarda esa odatda juda ko'p narsalarni tezkor va muammosiz topishing mumkin (build in tayyor ham) Bu ishni tezroq amalga oshirishga yordam beradi.

Gnu/Linuxni bu istalgancha sozlash mumkin bo'lgan operatsion tizim. Ammo yosh o'tgan sari bunga umr qisqalik qilishini tushunib yetasan. Yoki juda sozlash yoqsa, eksperimentlarga qiziqsang bunaqa ish uchun BSD aslida yaxshiroq variant ekanini tushunib yetasan (uyer bu borada haqiqiy jinnixona). Ammo ikkala holatdayam qachondir zerikasan va sen uchun birinchi install qilganda tezroq va to'laqonli run bo'la oladigan narsaga yopishishni boshlaysan.

Masalan fedora uchun x264 paketni qaytadan moslash, yetmay qolgan biror driverni yozish men uchun qiyin emas. Shunchaki bu endi menga kayf bermaydi. Undan boshqa tuzukroq muammoga yopishish ancha foydali (masalan yaqinda dsi protokoldagi ekran uchun 0dan kernel driver yozishga to'g'ri kelgandi)

Serverlar masalasidayam xuddi shunday. Sen arch linuxga butun boshli phpni qaytadan build qilayotgan vaqtinga debianda Sury degan aka phpni hamma modulini chiroyli qilib yig'ib qo'ygan.

Yosh va imkon bo'lsa eksperimentlar qiling, katta bo'lib muammo ortsa bu energiyani yaxshisi boshqa joyga sarflang.

@yetimdasturchi

Engineering Notes

27 Nov, 08:41


Hullas, bilasizmi Enterprise software qanaqa bo'lishini ? Ho'sh sizni tassavuringizda bu qanaqa bo'lishi kerak, Albatta Javada, OOP va patternalr asosidami ?

Hullas hechqanaqa trollinglar va yana boshqa narsalarsiz shunchaki o'zingiz baho bering. Fikrimcha tasavur qilgan Enterprise software manashu.

O'zingiz ko'ring va baho bering, sizni direction qaysi tomonga ketayotgani haqida tassavur beradi.

https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition

Engineering Notes

25 Nov, 13:47


When you switch from Pylint to Ruff:

Engineering Notes

24 Nov, 08:53


#py
print(0.1 + 0.2 == 0.3)
a = float(10 ** 16)
print(a == a + 1)


Bir qarashda bitta muammoning ikki xil ko'rinishiga o'xshashi mumkin, lekin bittasi boshqasiga qaraganda ancha fundamentalroq muammo.

Engineering Notes

20 Nov, 15:17


https://bsky.app/profile/tinche.bsky.social/post/3lbf4qmpkwz2y

Using Any was one thing, but Any | None... My man wanted to be extra safe😂

Engineering Notes

19 Nov, 11:07


ICPC Respublika bosqichida tushgan savollar. Mabodo kimgadir qiziq bo'lsa.

Engineering Notes

16 Nov, 13:02


Introduction to segment trees that doesn't bite you:
https://www.hackerearth.com/practice/notes/segment-tree-and-lazy-propagation/

Engineering Notes

15 Nov, 21:00


🥲

Engineering Notes

13 Nov, 16:00


You either die a hero or live long enough to see yourself become the villain ))

Engineering Notes

13 Nov, 11:47


GCP naming their services:
Cloud Functions, Datastore, Cloud DNS, Cloud Trace, Identity Platform ... 🙂👌

AWS naming their services:
Lambda, DynameDB, Route53, X-Ray, Cognito, ...😈🗣

Engineering Notes

13 Nov, 11:01


Kecha codebaseda katta refactoring qilgandim, taxminan 20+ file change. Oxirida alohida commitlarga bo'lib chiqayotganda (shunaqa qilish so'ralgandi) bitta change hech qaysi commitga kirmay qolib ketibdi. Refactoring bo'lgani uchun build pipelinedagi testlardan o'tib ketgan ekan, lekin bugun runtime sensorlar tutib olibdi. Tepadagi memeni eslab rosa kulishdik ))

Engineering Notes

12 Nov, 14:24


Tepadagi post bo'yicha.

Shunday qilish mumkinmi? Albatta mumkin, umuman olganda bir qancha account ochib ishlatishga hech qanday qonuniy cheklov yo'q.

Lekin shunday qilish to'g'rimi? Absolyutno yo'q, bu ochiqchasiga muallifning mehnatiga tupurish.

Free trialning ma'nosi "ozgina vaqt tekinga ishlatib ko'r, yoqsa olasan yoqmasa yo'q" degani, "ozgina ishlatib ko'r, ertaga boshqa kiyimda kelib yana ozgina ishlatib ko'r" emas. Free trial taklif qilinishiga sabab ko'pchilik o'zi umuman bilmaydigan yoki oldin ishlatib ko'rmagan mahsulot/servisni srazu katta pulga sotib olmaydi, ozgina vaqt tekinga foydalanib ko'rib keyin qaror qilishi klientning cho'ntagi uchun ham biznesning reytingi uchun ham foydali.

Yana bir gap, hech qaysi platformada "bir kishi bir marta free trial ishlatishi mumkin" degan qoida alohida yozilmagan. Bunday deb yozishning o'zi kulgili, sababi free trialning tepadagi ma'nosi bo'yicha bir kishiga faqat bir marta berilishi ochiqchasiga ko'rinib turibdi. Qolgani insof, vijdonning hududi va bu har kimning o'zining ishi.

Xullas, O'zbekistonda xizmat ko'rsatish madaniyati haqida ko'p noliymizku-ya, lekin menimcha iste'molchilik madaniyati bizda aslida kattaroq muammo.

Engineering Notes

12 Nov, 11:58


Shunda to'g'ri tushungan bo'lsam kitobni "piratski"sini o'qish xato lekin millionta accountda free tier ishlatish to'g'rimi?

Engineering Notes

10 Nov, 16:27


Bo'ldi, bugunga yetadi. Hammaga rahmat.

Engineering Notes

10 Nov, 16:23


Q:
C++ devga uylangan yaxshimi yoki Payhon?

A:
PHPchiga uylanmasangiz bo'ldi ))

Engineering Notes

10 Nov, 16:18


Q:
Shogird olasizmi

A:
Yo'q, hali o'zim shogirdman ))

Engineering Notes

10 Nov, 16:15


Q:
Kompaniyada PHP foydalanilyotgan bo'lsa-yu, lekin boshqa tilga o'tish niyati bo'lsa qaysi tilga o'tishni maslahat bergan bo'lar edingiz?

To'g'ri qolish yaxshi variant, lekin, o'tish uchun qaysi biri yaxshi. Backend uchun qaysi tilni kelajagi porloq, Rustdan boshqa ))

A:
Specific javob berish uchun context kam savolda. Lekin umuman olganda Java, .NET, Python, Go, NodeJS hammasi yaxshi variantlar.

Engineering Notes

10 Nov, 16:09


Q:
Nima deb oʻylisiz yaqin 2 yil ichida dasturlashda nimalar oʻzgaradi, nima kirib kelib, nimalar chiqib ketadi

A:
Nima chiqib ketishini bilmayman, lekin millionta yangi JS library kirib keladi ))

Engineering Notes

10 Nov, 16:07


Q:
Pythonchilaga ish chiqmayapti. Odam ruxan siqilib qolyapti. Project qilgisi ham kelmay qolyapti. Sizda shunday bolganmi hech. Qanday maslahat bera olasiz

A:
Siqilmang, rizqingiz aynan bitta til yoki yo'nalishga bog'lanib qolmagan.

Engineering Notes

10 Nov, 15:58


Q:
Assalomu alaykum
Hozirda discrete math o'qiyapman, matem tarafimni ko'tarish uchun. MITning Mathematics for Computer Science kursini tanladim. Buni tugatgach keyingi steplar qanday bo'lgani yaxshi deb o'ylaysiz? Foundations uchun, chunki o'zimga ko'proq fundamental bilimlar yoqadi, frameworklar abstraksiyasi bilan cheklanib qolmoqchi emasman. Shu sabab discretedan boshlagandim. Oldindan rahmat

A:
Shaxsiyga yozsangiz specificroq javob izlab ko'ramiz.

Engineering Notes

10 Nov, 15:55


Q:
"startup qilaman" deb Steve Jobsga o'xshagisi kelib yuradigan dasturchilarga bir nima deb qo'ying bro. Ko'rsam asabim buzuladi doim.

A:
Omadini bersin ))

Engineering Notes

10 Nov, 15:53


Q:
Dasturchi uchun universitet qanchalik muhim, tajribadan kelib chiqib aytsangiz please)

A: Yaxshi universitetda o'qish juda katta foyda beradi. Lekin ular ham miyani ochib ichiga solib qo'ymaydi ))

Engineering Notes

10 Nov, 15:51


Q:
ICPCda qaysi jamoadasiz. Qaysi universitetda o'qiysiz

A: B-Force, NewUU.

Engineering Notes

10 Nov, 15:49


Q:
Assalomu alaykum Bobosher yaxshimisiz
Matematikadan qobiliyatingiz tugʻmami yoki koʼp oʼqib shakllantirgan misiz ?

A:
1. Matematikani yaxshi bilmayman.
2. Dadam matematik.

Engineering Notes

10 Nov, 15:48


Q:
DSA uchun til rol o'ynaydimi? C++ da o'rganilsa kuchli fundament bo'ladimi

A:
Aynan CP yo'nalishida yaxshi mutaxassis bo'lishni maqsad qilmagan bo'lsangiz deyarli shartmas. Men C++ni bilmayman, demak yaxshi CPer emasman ))

Engineering Notes

10 Nov, 15:44


Q:
Leetcodedan ko'ra Codeforces yaxshiroqmi?

A:
Bilmadim, lekin menga ko'proq codeforces yoqadi. Leetcodedagi aksariyat savollar aynan bitta algo/ds atrofiga qurilgan bo'ladi, natijada o'ylaydigan, analiz qiladigan joyi nisbatan kamroq: yechimni bilasiz yoki bilmaysiz. Codeforcesda ijod qilsangiz bo'ladi ))

Engineering Notes

10 Nov, 15:41


Q:
Magistratura qilnoqchimisiz? Agar ha bolsa qaysi davlatda?

A:
Hali qaror qilmadim. Lekin o'qisam katta ehtimol Yevropada.

Engineering Notes

10 Nov, 15:39


Q:
Dasturlashga qanday kirib kelgansiz.
self study orqali o'rganganmisiz yoki biror ustoz yordamida.

A:
Asosan ochiq manbaalardan, lekin communitydagi 3-4 kishini rosa boshini og'ritganman.

Engineering Notes

10 Nov, 15:31


Q:
ICPCga tayyorgarlik qanday ketayapti?

A:
Juda sust.

Engineering Notes

10 Nov, 15:27


Q:
chuqurroq darsliklar chiqarish niyatda bormi?

A:
Hozircha vaqt yo'q. Universitet tugasa keyin ko'ramiz.

Engineering Notes

10 Nov, 15:25


Q:
Nega OOP trash?

A:
To'g'ri ishlatilsa trashmas ))

Engineering Notes

10 Nov, 15:23


Q:
Oylik qancha? :)

A:
Shukr, tirikchilikka yetib turibdi ))

Engineering Notes

10 Nov, 15:21


Q:
hozir qayerda ishlavossiz, agar sir bo'masa? va sizni asosiy stack'ingiz Pythonmi?

A:
EPAMda, systems engineering/toolingga yaqinroq yo'nalishda. Asosan Go va Python, keyin million xil markdown language + clickops ))

Engineering Notes

08 Nov, 17:30


Aytgancha, uyda "Clean code" kitobi chang bosib yotibdi (balki yaxshi kitobdir, lekin menga yoqmadi). Oldingi safar biror kitobga almashaman degandim variant chiqmadi. Bu safar tekinga bervoraman ))

Agar bu kitob sizga kerak bo'lsa va Toshkentda bo'lsangiz commentga yozing, ertaga bir kishini tanlab olaman.

Engineering Notes

08 Nov, 16:43


Filosofiyadagi hali yechilmagan aksariyat savollarning yechimi topilmaganiga sabab ularni formalizatsiya qilish qiyinligida. Aks holda matematika bu savollarga allaqachon javob topgan bo'lardi.

Engineering Notes

04 Nov, 19:23


Idea keldi. JSda yangi library yozib beradigan library yozvorish kerak.

Engineering Notes

04 Nov, 19:14


Toxic Rust developer bilan C developer suhbatidan:

— Bu Rust deganlaring juda g'alati narsa ekan, ichgan odam yozgan tilga o'xshaydi, tushunish qiyin.
— Skill issue.
— Aytgancha, o'zing nega C'dan Rustga o'tib ketding?
— C'da xavfsiz, bugsiz kod yozish qiyin.
— Skill issue.

Engineering Notes

01 Nov, 19:23


Me: *watches a couple of videos about mechanical keyboards on Youtube*

Youtube: THIS GUY IS GONNA BUY AT LEAST 10 KEYBOARDS!

Instagram: Somebody said a mechanical keyboard?👀

AliExpress: Here are the cheapest mechanical keyboards, I promise they are original.

Ad on a random tech forum: Hey, maybe a new keyboard can fix your bug?

Engineering Notes

31 Oct, 19:49


Bizda ko'pchilik dasturchilardan maqsadini so'rasang juda katta qismida yoki oxiri borib FAANGda ishlash yoki o'zining outsource kompaniyasini ochib biznes qilish bo'lib chiqadi. G'alati holat. Bo'ldimi, shumi dasturlash? Bu bilan men FAANGga kirish yoki kompaniya ochish oson demoqchi emasman (ikkalasigayam hali menga aaancha bor), lekin ma'lum bir kompaniyada ishlashni kar'eraga maqsad qilib olish g'alatimasmi?

Engineering Notes

30 Oct, 16:57


Veritasiumning kechagi videosi zo'r chiqibdi.

https://www.youtube.com/watch?v=Q10_srZ-pbs

Engineering Notes

29 Oct, 07:55


O'rtog'lar bir narsani tushuninglar, linked list data structureni uni reverse qilish uchun o'ylab topishmagan ))

Engineering Notes

24 Oct, 07:28


Oxirgi vaqtlarda ko'p narsani dark modedan light modega qaytarib ishlatayapman. Yosh o'tayapti shekilli.

Engineering Notes

22 Oct, 17:41


Qiziq, nega O'zbekistondagi ko'p IT kompaniyalar OFB, KDBga o'xshash customer supportga tupurib qo'ygan, bitta mobile appni eplab yoza olmaydigan banklar bilan ishlaydi?

Engineering Notes

20 Oct, 15:00


Bugun ICPC saralashda kimlar qatnashdi?
Eng zo'r savol qaysi bo'ldi?

Engineering Notes

17 Oct, 09:33


Anchadan beri mechanical keyboardga o'tishni mo'ljallab yuribman. Magic keyboardga o'rganib qolganim uchun low profile mechanical keyboardlarni qarab ko'rayapman. Yaqinda Keychron K3 Maxni test qilib ko'rdim. Build quality kutganimdan ancha past ekan. Typing experience ham unchalik yoqmadi (brown switch bilan). Xullas, olmadim.

Engineering Notes

17 Oct, 07:04


Microsoftning Teams, Outlookka o'xshagan productlarining rostdan sifati pastmi yoki oldin ishlatmaganim uchun menga shunday tuyulayaptimi?

Engineering Notes

11 Oct, 14:29


Team leadim:
"Ochig'ini aytsam, xato qilmaydigan, boshqalardan yordam so'ramasdan o'zining ishini doim qoyillatib bajaradigan engineerlardan qo'rqaman. Ular yoki o'ta aqlli nerd bo'ladi, yoki necha yildan beri komfort zonasidan chiqmay bitta ishni qayta-qayta qilib yurgan bo'ladi*. Ikkinchisi bo'lishi ehtimoli juda katta."

*Umuman olganda, komfort zonada qolish har doim ham yomon emas. Faqat bu bizning hozirgi jamoada zararga ishlaydi.

Engineering Notes

09 Oct, 13:01


https://www.youtube.com/watch?v=f8CXG7dS-D0

Engineering Notes

06 Oct, 16:21


Knowledge of the day:
Fast finite field implementations, Barrett reduction, Montgomery multiplication

Engineering Notes

06 Oct, 15:22


Aytgancha, bu yil ICPCda qatnashayotganlar bormi?
Tayyorgarlik qanday ketayapti?

Engineering Notes

06 Oct, 14:40


Davomi

3. Engineerga vazifa emas, muammo bering. Tayyor yechimni implement qilish oson, yechimni va ayniqsa yaxshi yechimni topish qiyin. Agar manager yoki team lead sifatida engineerlarga "A tildagi B frameworkda C arxitekturada web server yoz, databaseda X, Y, Z tablelar bo'lsin" shaklidagi vazifa berayotgan bo'lsangiz unda birinchidan siz engineerlardan to'liq foydalanmayapsiz, ikkinchidan siz o'ylagan yechim optimal bo'lmasligi mumkin. Yaxshisi, "bizda A muammo bor, shuni hal qilish uchun bizga B imkoniyatga ega yangi servis kerak" deb muammoni o'rtaga tashlang. Shunda bir qancha alternativ yechimlarni ko'rib, hamma tomondan analiz qilib, eng yaxshi yaxshi yechimni tanlash imkoni bo'ladi. Lekin odatda call davomida yaxshi yechim o'ylab topish ko'p vaqt va ma'lum bir sohada chuqur bilim talab qilishi mumkin. Bunday holatda bir kishiga muammoni chuqur o'rganish va potensial yechimlar ustida ishlash vazifa qilib beriladi (yechimni implement qilish emas) va keyin berilgan yechimlarni butun jamoa bilan analiz qilib, qaror qabul qilishingiz mumkin. Implement qilish shundan keyingina boshlanadi.

4. Djangochi emas, engineer bo'ling. Bugun application serverda, ertaga databaseda, indinga networkingdagi muammoni hal qilishingizga to'g'ri kelishi mumkin. Albatta ishga kirishdan oldin bularning hammasini chuqur o'rgana olmaysiz, shuning uchun "T shaped" engineer bo'lishga harakat qiling. Ya'ni bilimingiz T harfidagiga o'xshab biror tor sohada chuqur bo'lishi bilan birga boshqa ko'plab sohalardan ham ma'lum darajada xabardor bo'lishingiz siz uchun ancha foydali, shunda zarur bo'lganida boshqa bir sohani chuqurroq o'rganishingiz oson bo'ladi (ya'ni T ni π ga aylantirish oson bo'ladi). Menimcha lokal bozordagi eng katta muammolardan biri ko'p sohalarni yuzaki biladigan lekin birortasini chuqur tushunmaydigan (– shaped) yoki bir tor sohani chuqur biladigan lekin boshqa sohalarni umuman tushunmaydigan (I shaped) engineerlar. Bundan tashqari bir narsani chuqurroq o'rganib olib, keyin hamma joyga shuni tiqishtiradigan (L shaped) engineerlar ham odatda jamoaga foydadan ko'proq zarar keltiradi, ToDo app qilish uchun ham microservice quradiganlar bunga misol.

5. Qilgan har bir ishingizni va o'ylagan har bir yechimingizni yozib boring. Projectda to'g'ridan-to'g'ri sizga bog'liq narsalar minimal bo'lishi kerak, yechimlar va g'oyalar ham shular qatorida. Ertaga siz ishdan ketsangiz ham yozgan narsalaringiz turadi. Bu kelajakda boshqalarning vaqtini isrof qilmaslik uchun qilishingiz mumkin bo'lgan eng yaxshi narsalardan biri. Bundan tashqari menga o'xshab xotirangiz yomonroq bo'lsa 1 hafta oldin tugata olmagan ishingizga qaytganingizda oldingi safar nima qilganingiz/qilmoqchi bo'lganingizni yozib qo'yganingiz uchun o'zingizga o'zingiz rahmat aytasiz.

@boboshersnotes

Engineering Notes

06 Oct, 14:39


Hozirgi ish joyimga kirganimga 2 oy bo'ldi. Yangi jamoada texnik bilimlardan tashqari "work culture" tomondan ham ko'p narsa o'rganayapman. Quyida shaxsiy fikrimcha bizda ham kengroq adaptatsiya qilishga arziydigan ba'zi qoidalar. E'tibor qilsangiz bularning hammasi oddiy narsalar, lekin negadir ba'zilar shularga ham amal qilmaydi.

1. Sizning vaqtingiz qimmat, boshqalarniki undan ham qimmat. Hamkasbingizning ishi sizga bog'liq bo'lsa iloji boricha tezroq bajarib bering yoki eng kamida qachon qilib bera olishingzni ayting. Schedule qilingan call/meetinglarga vaqtida qatnashing, biror sabab bilan kech qolsangiz yoki qatnasha olmasangiz qolganlarni bu haqida iloji boricha ertaroq ogohlantiring. Managerlar va team leadlar uchun: callga faqat kerakli odamlarni chaqiring va iloji boricha tezroq tugating. Daily standupda jamoadagi faqat 1 kishiga aloqador task ustida gaplashish uchun butun jamoani 1 soat ushlab turmang.

2. Vaqt qimmat, fokus undan ham qimmat. Fokusning 2 ta asosiy dushmani bor, shulardan iloji boricha qochishga harakat qiling:
a) Context switch, ya'ni bir vazifadan boshqasiga o'tish. Masalan, fokus bilan ishlayotgan jamoadoshingizga "hey, tezda mana bu narsani qilib bera olasanmi, 5 minut vaqt ketadi" desangiz u ishning o'zini qilishga 5 minut vaqt ketishi mumkin, lekin jamoadoshingiz yana o'zining ishiga qaytib avvalgidek fokus qilishiga yana kamida 10-15 minut ketadi.
b) Unpredictibility, ya'ni oldindan rejalashtirilmagan ishlar. Masalan, jamoadoshingiz yoki qo'l ostingizdagi ishchini oldindan ogohlantirmasdan "hey, hozir 10 minutlik qisqa callga qatnasha olasanmi" desangiz u callga kirib nima bo'layotganini tushunib olgunicha va calldan keyin oldingi qilayotgan ishiga qaytgunicha ancha vaqt o'tadi. Lekin call oldindan belgilangan bo'lsa u ma'lum darajada tayyor bo'ladi va context switch ancha oson kechadi.

Davomi keyingi postda

@boboshersnotes

Engineering Notes

28 Sep, 15:42


Sololearnni eslaydiganlar bormi?
Dasturlash bo'yicha savollarni yechib birga-bir "jang" qilsa bo'lardi.

Python communitydagi tanishlar anchadan beri shuning o'zbekchasi – Tandir ustida ishlashayapti. Foydali va juda qiziq dastur, o'zim ham anchadan beri test qilishda qatnashib turaman. Bundan tashqari o'ynash uchun savol yuborib, pul mukofotiga ega bo'lishingiz mumkin. App Store/Play Storeda "Tandir" deb izlasangiz chiqadi, Telegram kanaliyam bor. Anaqqisa, tavsuyu.

Engineering Notes

28 Sep, 15:20


Oldinlari neovimni mechanical keyboard bilan ishlatish kerak deyishsa ishonmasdim ))

P.S. Keyboard tavsiya qilinglar.

Engineering Notes

28 Sep, 07:18


my.mehnat.uz'da o'zim ishlamagan joyda 10 kunlik mehnat shartnomasi qo'shilib qolibdi. Kompaniya direktori bilan gaplashib ko'rsam qanaqadir "yoshlarni ish bilan ta'minlash" dasturi doirasida 70 kishi uning kompaniyasiga majburiy biriktirilgani, hozir hammasini qaytadan bo'shatib chiqayotganini aytdi. Ro'yxat "tepadan" kelib, avtomatik mehnat shartnomasi tuzilgani (mening imzoimsiz), ro'yxatdagi odamlarni o'zi ham tanimasligini aytayapti. Davlat idoralari fuqarolar shaxsiy ma'lumotlari bilan xohlagancha o'yin qilayapti. Molxona.

Engineering Notes

24 Sep, 11:40


Bir saytda botlarga qarshi testda 7-8 ta son berib, drag&drop qilib sort qilish so'ralar ekan. Ataylab quicksort qilib berdim ))

Engineering Notes

17 Sep, 10:14


HashMap haqida maqola yozdim

Uning ortidagi nazariya va zamonaviy dasturlash tillaridagi implementatsiyalari haqida batafsil o’qishingiz mumkin.

Link: https://asadullo.com/blog/hashing/

@solvemproblr

Engineering Notes

15 Sep, 16:55


Tez-tez kerak bo'lib turadigan tool ekan ))

https://github.com/nvbn/thefuck

Engineering Notes

15 Sep, 14:17


Hozircha Itermda qolayapman. Ghostty open source bo'lsa birato'la Ghosttyga o'taman.

Engineering Notes

14 Sep, 16:43


— Bu loyihamiz O'zbekistondagi birinchi X turdagi loyiha.
— Shoshmang, bizda uje bor Y, Z alternativlarchi? Sizlarniki uje birinchimas shekilli?
— Ukam, aqllilik qvossammi...?

Inspired by a real story

Engineering Notes

13 Sep, 10:13


https://www.youtube.com/watch?v=CFPcgCz-I2I

Meetupga bora olmaganlar bo'lsa endi videoda ko'rishingiz mumkin.