Abduaziz π
527 subscribers
121 photos
17 videos
1 file
93 links
Download Telegram
Redis: xatolik

Odatda docker orqali ishga tushuraman, lekin tizim o'zida "native" o'rnatilganini xohlaydi bu ko'ngil. Har doim tushunarsiz xatolik berardi systemctl(systemd) orqali ishga tushurilganda, sizda ham vujudga kelsa fix:

sudo chown -R redis:redis /var/log/redis
sudo chmod -R u+rwX,g+rwX,u+rx /var/log/redis
sudo chmod +r /etc/redis/redis.conf


Shu skriptni apt orqali o'rnatayotganda nega qo'shib qo'yishmagani qiziq. Redis'ning systemd servisi redis foydalanuvchisi tomonidan ishga tushurilar ekan, shuni biror super foydalanuvchiga o'zgartirib to'g'irlab qo'yish mumkin bo'lsa kerak. Lekin tepadagi yechim xavfsizroq.

#redis #note #error

@AbduazizPy
👍101
Python 3.13

3.13-versiyani avvalgilaridan farqi juda ham katta. Avvalgilari qandaydur "typing"ga oid yangi "fishka"lar bilan quloqga lag'monni ilgan bo'lsa, bu safargisi ancha qattiq(eksperimental yangiliklar). Asosiy yangiliklar:

* Interaktiv interpretator(REPL)ni yaxshilashdi (terminalda python desangiz chiqadigan konsol).
* Free-Threaded rejim. Ya'ni GIL(global interpreter lock)ni o'chirib qo'yish mumkin. Multithreading "scam" deb bo'lmaydi endi.
* "Eksperimental" JIT kompilyatori qo'shil(yap)di.

Xullas, vaqt ajratib nimalar o'zgardi/qo'shildi ekan deb o'qib chiqganingiz ma'qul menimcha.

📕 Havola: https://docs.python.org/3.13/whatsnew/3.13.html

* edit: 1-oktyabr kuni reliz.

@AbduazizPy
👍133🔥21🏆1
Telegram update: verification platform

* https://telegram.org/blog/gifts-verification-platform#verification-platform
* https://core.telegram.org/gateway

SMS verifikatsiyaga alternativ, arzonroq ekan:

Verification via Telegram costs $0.01 per user – greatly reducing operating costs for your service. By comparison, SMS verification can cost up to 50 times more per user.
The Telegram Verification Platform also ensures instant delivery of your messages – unlike SMS, which can take several minutes to arrive and have failure rates as high as 5


Yaxshi yangilik. Avvaldan telegram botlar orqali "passwordless" avtorizatsiyani yo'lga qo'yganlar ham bor lekin. O'zbekistonda har bir telefonga bitta telegram to'g'ri kelishini hisobga olsak juda ham qulay yechim. 42.uz da adashmasam shunday uslub.

Telegram shuni alohida platforma/api darajasiga olib chiqib, "soqqa" qilyapdi. Barakasini bersin.

deb xabar qiladi muxbirimiz.

@AbduazizPy
This media is not supported in your browser
VIEW IN TELEGRAM
👍12🔥21😁1
No More Bare Excepts

https://peps.python.org/pep-0760

try:
risky_operation()
except:
handle_any_error()

Maqsad yuqoridagidek uslubni yo'qotish. Quyidagini "majburiy" qilish:
try:
risky_operation()
except Exception as e:
handle_expected_error(e)

Dasturchi aynan qaysi exceptionni handle qilayotganini bilishi va kodda ko'rsatishi shart. Lekin hamma holatni qamrab oladigan universal handler ham yozib bo'lmaydi, kutilmagan holatlar juda ham ko'p (MemoryError exception'i uchun handler yozganmisiz hech ?)

Bularni hisobga olgan holda, avvaliga bizga ma'lum bo'lgan barcha exceptionlarni handle qilib, keyin qolgan holatlar uchun kod yozib qo'ysak bo'ladi menimcha:
try:
do_stuff()
except SomeExc:
...
except SomeSomeExc:
...
except Exception as exc:
...
finally:
...
else:
...

try/except:pass yozadiganlarga yuboramiz.

* edit-1: The syntax will be fully disallowed in Python 3.17.
* edit-2: PEPni chopishibdi, post scheduled bo'lgan edi.

@AbduazizPy
👍81🍾1
😁7👍42🤯1🍾1
"No hate", shunchaki qiziq.

@AbduazizPy
🤣15👍7😁32😍1
Iloji bo'lsa ishlatmang bunaqa narsalarni.

@AbduazizPy
👍15😁5🔥3💯21🏆1🗿1🆒1
This media is not supported in your browser
VIEW IN TELEGRAM
Uyga kelgandan keyin kampotlarni ichayotgan man:

#hazil

@AbduazizPy
😁23🤣6🗿1🆒1
~ Haqiqat

Ertaga hamma "boshqacha" odam. Afsuski, 1 kunda boshqa odamga o'zgarmaysiz (1 yilda ham). 2 ta "phonk" qo'shiq qo'yilgan reels/shorts ko'rib ham.

Maqsad/reja qilish, yo'l qo'yilgan xatolarni to'g'irlash & sarhisob uchun 1 yil kutish ham shart emas. Kichikroq intervallardan foydalaning (2 hafta yoki 1 oy), xatolarni aniqlash osonroq. 1 yillik sarhisobda xatolaringizni keltirib berishingiz qiyin/noaniq (kontekst: uy/moshin olish haqida emas, shaxsiy rivojlanish haqida). Xatolar ko'zdan qochiriladi, natijada yana o'sha samalyotni o'q yegan joylarini mustahkamlash uchun yopishtirilgan temir panel kabi ahvol.

Maqsad/rejalaringizni ham hech kimga aytmang iloji bo'lsa:
1. Qizig'i yo'q.
2. Bajarish ehtimolingiz kamayadi, miyangiz qildim deb o'ylaydi shu reja/ishni (more: "Positive Fantasy Trap").

Quotes won't work unless you do.


@AbduazizPy
👍19🔥8💯2🤝21🏆1🗿1
Rust: systems programming

Kecha bir postni "share" qilishgan edi, bugun o'qib chiqdim. Post "why rust" degan savolga javob berish uchun motivatsiya bilan boshlanadi.

Xotira boshqaruvi masalasi Python/C++/Rust misollari bilan yoritilgan. "Garbage Collection"(GC)ni zaif tomoni ham qisqa aytib o'tilgan ekan, vaziyatdan foydalanib sizlarga agar ko'rmagan bo'lsangiz ushbu videoni ko'rishni ham aytardim.

Rustni bilmayman, lekin ownership(postda egalik deyilgan) & borrowing mavzulari odamlarni ezishidan xabarim bor. Postda shu kabi va mavzular alohida yoritilgan, diqqat bilan o'qib tushunsa bo'ladi. Rust ekspert emasman, lekin yetarlicha yangilik oldim.

* Rustda yozadiganlar "linked list"larni nega yoqtirmasligini ham tushunasiz.


📖 Postga havola: https://hamirturush.uz/2024-12-29-rust-tizim-dasturlash
📢 Telegram kanal: @hamirturush

@AbduazizPy
👍811🔥1💯1🆒1
This media is not supported in your browser
VIEW IN TELEGRAM
📹 GitHub Issues VS StackOverflow

Yorib qo'yibdi oxirini lekin.

Reference: https://www.youtube.com/watch?v=5WCMI5wuS7U

@AbduazizPy
🤣23👍81🔥1👏1😁1🆒1
Rasmiy integratsiyalar qatorida chiqdi bugun.

edit: yozish esdan chiqibdi, sentry uchun telegram integratsiya. Telegram orqali alertlar. Avval yo'q edi.

@AbduazizPy
👍14👏211🔥1🆒1
⛵️ Dive

Docker image'larni qatlamlari bo'yicha tahlil qilish uchun foydali instrumentga o'xshayapdi, ishlatib ko'rib feedback beramiz izohlarda. Xotira bo'yicha samaradorlikni ham hisoblab berarkan, menimcha u "beta"da hali.

🔗 Havola: https://github.com/wagoodman/dive

@AbduazizPy
👍1811🥰1👏1🏆1
PEP-0765: finally ichidagi return

Quyidagi holat tanishmi?
>>> def bool_return() -> bool:
... try:
... return True
... finally:
... return False
...
>>> bool_return()
False # 🙂‍↔️


Python bo'yicha texnik intervyularda so'raladi, "bu False qaytaradi" degan javob kutiladi. Ammo, True desangiz "finally qanday ishlashini bilmas ekansiz" deyiladi.

Dokumentatsiya bo'yicha qaralganda, exception handlingda finally har qanday holatda eng oxirgi bo'lib bajariladigan blok sanaladi. Shu sababli, undagi return yuqori ustunlikka ega (oxirgi bo'lgani uchun):
The return value of a function is determined by the last return statement executed. Since the finally clause always executes, a return statement executed in the finally clause will always be the last one executed. [1]


Bu holatni qabul qilish men uchun qiyin bo'lgan. Funksiyani chaqiramiz, chaqirilgan funksiya(routine) return orqali o'z vazifasini yakunlaydi, va "return adres" tomon sakraydi(qaytadi) ya'ni avval chaqirilgan joyiga [2]. Fundamental tushuncha, shunday emasmi !? Nega 1-returnning e'tiborsiz qoldirilayotgani g'alati va yoqimsiz. Dokumentatsiyada yozilgani, yoki kimdir aytgani uchun buni shundayligicha qabul qilishimiz kerakmi ... ?

finally bloki "cleanup"(tozalash) ishlarida foydalaniladi deb ta'kidlangan, va sog'lom intelekt uni shu uchun ishlatadi. Yuqoridagiga o'xshash kodlar sababli tushunarsiz xatoliklar keltirib chiqaradi.

Keyinroq bildimki, bu pythondagi nozik mavzulardan biri ekan )

Eng oson yechim, dasturchiga buni yozgani qo'ymaslik & o'rgatish. Linterlar tomonidan bunga qarshi choralar ko'rilgan[3][4][5], interpretator tomonidan esa yo'q. Avvalgi urinishlar rad etilgan [6]. Yaqin o'tmishda bu mavzu qayta ko'tarildi (PEP-0765), va ushbu "xatolik" hal qilindi (deyarli).

Men shunchaki returnga oid holatni ozgina yoritdim, aslida break/continue bilan bog'liq drama ham bor va ular bilan PEP orqali tanishib chiqishingiz mumkin.

Yangi interpretator (3.14dan boshlab), ushbu holat uchun SyntaxWarning generatsiya qila boshlaydi (ogohlantirish, ya'ni kodni to'xtamaydi, sizni xabardor qiladi). Keyingi relizlarda SyntaxError chaqirilishi ta'kidlanmoqda.

Ko'proq

• PEP: https://peps.python.org/pep-0765
• Izlanish: https://github.com/iritkatriel/finally
• Discussion: https://discuss.python.org/t/pep-765-disallow-return-break-continue-that-exit-a-finally-block

@AbduazizPy
👍18🔥5❤‍🔥11👏1🏆1👀1
Uz Python Meetup
Assalomu alaykum, barchaga! Yaqin vaqtlar ichida yangi meetup tashkillashtirmoqchimiz. Shu munosabat bilan quyidagi uch narsa bo'yicha sizlarni fikr va mulohazalaringni bilmoqchi edik: - Meetupda qanday mavzularda suhbat bo'lishini istaysiz? - Meetupda kimlar…
Python bo'yicha meetup tashkillashtirishyapdi ekan.

Fikr bildirishingiz mumkin, iloji boricha python o'ziga ko'proq oid bo'lgani hamda o'ta "general"(umumiy, ya'ni "Python va AI" kabi) bo'lmagani yaxshiroq.

Note (1): eski postdan foydalanishyapdi ekan, muammo yo'q
Note (2): https://t.iss.one/AbduazizPyChat/3659

@AbduazizPy
👍9❤‍🔥11🔥1👏1