Coding Lovers
2.02K subscribers
189 photos
16 videos
19 files
231 links
:همه شبکه های اجتماعی یکجا 🌐
Zil.ink/codinglovers

📌 تبلیغات:
@CodingLoversAds

:گروه 🍻
@CodingLovers_GP

:حرفی سخنی 🧑‍💻
@Amir_OfficiaI

:ثبت نمونه کار 🪄
@CodingLovers_result
Download Telegram
Forwarded from BotNews
Bot API 9.0

Announcing the largest Bot API update of 2025 (so far 😈)

🏪 Telegram Business 2.0
Bots can now fully customize the branding of Business Accounts – managing their name, username, bio and profile pictures.
Introduced support for managing Paid Gifts 🎁, including conversions, transfers and upgrades.
• Bots can now check ⭐️ Telegram Star balances and transfer Stars from managed businesses.
Bots can now easily mark Business messages as read or delete them.
• Added extensive support for managing stories on Business accounts – featuring photos, videos and interactive elements like links, locations, reactions, weather info and even Gifts.
• All stories posted by bots can also be edited or deleted.
Introduced granular Business permissions, giving users even finer control over connected bots.

🗃️ Mini App Storage
Mini Apps can now store data locally on the user's device.
Sensitive tokens can be safely persisted in a specialized secure storage.

🎁 Telegram Gifts
Introduced support for unique Gifts – with detailed model, symbol and backdrop info.
Bots can also check which Gift types are accepted by users and chats.

⭐️ Paid Messages
Bots can now track how many Stars users paid to send a message.
• This includes out-of-the-box support for paid messages in both groups and business accounts.

⭐️ Telegram Premium
Bots can now gift a Telegram Premium subscription paid in Stars.

And more, see the full changelog for details:

https://core.telegram.org/bots/api-changelog#april-11-2025
Please open Telegram to view this post
VIEW IN TELEGRAM
BotNews
Bots can now fully customize the branding of Business Accounts – managing their name, username, bio and profile pictures.
یعنی به جای یوزربات، از این به بعد با بات هم میشه ساعت روی اسم گذاشت؟ 😂
😁10👍2🤣2
میخوام فردا درباره یچیزی پست بزارم
با یک سوال شروع میکنم

بنظرتون ممکنه یک آرایه از میلیارد ها آیتم داشته باشیم، ولی هیچ مموریی استفاده نشده باشه ؟!

پ.ن: داخل پایتون که اصلا نمیشه، به پایتون فکر نکنین
👍8
Coding Lovers
میخوام فردا درباره یچیزی پست بزارم با یک سوال شروع میکنم بنظرتون ممکنه یک آرایه از میلیارد ها آیتم داشته باشیم، ولی هیچ مموریی استفاده نشده باشه ؟! پ.ن: داخل پایتون که اصلا نمیشه، به پایتون فکر نکنین
اینقدر استقبال شد خواستم الان بزارم 😂❤️

🔥 ساختار ZST در Rust
برخلاف تمام زبان ها، راست ساختاری داره به اسم Zero Sized Type.
یعنی تایپی که هیچ حافظه ای نمیگیره!

راست تمام مرز هارا جابجا میکند😂💣

به این شکل تعریف میشه:
struct Empty;

این تایپ هیچ حافظه ای نمیگیره! حتی اگه ازش میلیارد ها بار داخل آرایه استفاده کنیم، هیچ حافظه ای نمیگیره.

زبان Rust گارانتی میکند که ZSTها را بدون مصرف حافظه مدیریت می‌کند.

چجوری این اتفاق میوفته؟ 🤔
این موضوع کمی ضد شهود به نظر می‌رسد، اما جواب آن به طراحی هوشمندانه کامپایلر Rust برمی‌گردد.

وقتی می‌گوییم ZST حافظه مصرف نمی‌کند، یعنی هیچ بایت حافظه‌ای در مموری برای آن رزرو نمی‌شود.

let x = Empty;

در این کد متغیر x وجود دارد (از نظر معنایی در کد)، اما هیچ جایی در حافظه برای آن اختصاص داده نمی‌شود.

پس اطلاعاتش کجاست؟ 😐
کامپایلر Rust به‌صورت استاتیک (در زمان کامپایل) متوجه می‌شود که این یک ZST است و:
- هر جا به متغیر x اشاره شود، مستقیماً مقداری خالی را جایگزین می‌کند. ( مقدار () )
- حتی اگر ادرس مموری از آن گرفته شود، کامپایلر یک آدرس سمبلیک (غیرواقعی) می‌سازد، اما در باینری نهایی، این آدرس به هیچ حافظه فیزیکی اشاره نمی‌کند.

let v: Vec<Empty> = vec![Empty; 1_000_000];

- این آرایه Vec، یک میلیون آیتم دارد، اما:
- هیچ حافظه‌ای برای عناصرش مصرف نشده
- فقط ساختار مدیریتی Vec (مثل طول و ظرفیت) حافظه مصرف می‌کند.

پ.ن: درکش یکم سخته ولی خیلی جالبه
مثل تخیل کردن میمونه. تخیل کردنِ چیزی که وجود نداره 🤔😂

🔥 @CodingLovers_OFF
🔥101👍1
Coding Lovers
اینقدر استقبال شد خواستم الان بزارم 😂❤️ 🔥 ساختار ZST در Rust برخلاف تمام زبان ها، راست ساختاری داره به اسم Zero Sized Type. یعنی تایپی که هیچ حافظه ای نمیگیره! راست تمام مرز هارا جابجا میکند😂💣 به این شکل تعریف میشه: struct Empty; این تایپ هیچ حافظه ای نمیگیره!…
میتونید Enumیی را داخل پایتون تصور کنید که هیچ مموریی مصرف نمیکنه؟
دقیقا ZST ها داخل Rust همین قابلیت رو دارن. میتونیم با این قابلیت Enum هایی بسازیم که هیچ مموری مصرف نمیکنند.

enum Enum {
Variant1,
Variant2,
}

این Enum هرجایی استفاده بشه هیچ مموری مصرف نمیکنه و اینجوری بشدت توی بهینه سازی کمک میکنه ...

البته این تنها کاربردش نیست، کلی کاربرد دیگه داره که در این مُقال نمیگنجه
👍7
Telegram is sending out a notification so that Telegram bots that use external payments, even in TON, should immediately switch to Telegram Stars, as this violates Apple App Review Guidelines 4.7 and 3.1.1.
تاحالا از docker یا kubernetes استفاده کردین داخل پروژه هاتون؟
👎28👍14
داشتم دنبال یه ادیتور سبک تر و راحت تر از vscode میگشتم؛ برخوردم به یه ادیتور تازه به اسم Zed

سازنده های Atom دارن طراحی‌ش میکنن. هنوز کامل نشده و درواقع نسخه preview دادن بیرون.

نکته جالب ماجرا اینه که کاملا از صفره صفر دارن با Rust مینویسن بدون هیچ فریم وورک خارجی!!!

1️⃣ کل فریم وورک رابط گرافیکی‌شون رو خودشون با Rust به اسم gpui ساختن ( منظورم چیزی شبیه به pyqt )
2️⃣ مثل vscode از اکستنشن های مختلف ( ساخت خودشون ) استفاده میکنه
3️⃣ سرعت‌ش بشدت بشدت بالاست
4️⃣ محیطی بین vim و vscode رو داره
5️⃣ هوش مصنوعیش همه جا کمکت میکنه

💔 متاسفانه هنوز کامل نیست و پر از باگه، اما بشدت بهش امیدوارم که بشه بهترین ادیتور ... چون حتی دنبال ساخت هوش مصنوعی‌عه مخصوص ادیتورشون هستن

https://zed.dev
12🔥5🤣2
توی بحث همزمانی در پایتون، تاحالا دنبال چیزی سریع تر و بهینه تر از asyncio گشتین؟
بنظرتون هستش؟
Coding Lovers
توی بحث همزمانی در پایتون، تاحالا دنبال چیزی سریع تر و بهینه تر از asyncio گشتین؟ بنظرتون هستش؟
کتابخانه greenlet
این کتابخونه که با C برای پایتون نوشته شده، امکان اجرای همزمان چند تابع را به ما میدهد که برخلاف threading از مکانیزم cooperative multitasking استفاده میکند.

🤔 یعنی چی خب نفهمیدم!
خلاصه یعنی اینکه کاملا مشابه asyncio با تسک کار میکنه و از امثال threading استفاده نمیکنه.

💣 فرق های مهم آن با asyncio و threading:
- مموری بیشتری از asyncio مصرف میکنه ( تقریبا ۲۰ کیلوبایت در برابر ۵ کیلوبایت )
- بشدت بشدت سریع تر از asyncio عمل میکنه ( ۱۰ برابر )
- برخلاف بقیه، مموری جداگانه ای برای تسک ها اختصاص نمیده
- نیاز به async و await نداره
- خیلی سخت تر هستش :/

😵‍💫 چرا میگم بهینه تره؟
۱۰ برابر سریعتر از asyncio عمل میکنه و در عین حال برای پروژه هایی که از اول async طراحی نشدن خیلی کارآمد هستش

🤝 الان یعنی بریم سراغ greenlet ؟
نه لزوماً. هروقت:
- سرعت پروژت برات مهمه
- قراره کار های همزمان زیادی انجام بدی
- نمیتونی پروژت رو async بنویسی
- تنبل نیستی

جای threading بیا از greenlet استفاده کن ...
وگرنه همون asyncio کفایت میکنه

نمونه کد:
from greenlet import greenlet

def test1():
print(12)
gr2.switch()
print(34)

def test2():
print(56)
gr1.switch()
print(78)

gr1 = greenlet(test1)
gr2 = greenlet(test2)
gr1.switch()

# 12
# 56
# 34


پ.ن: یچی بین asyncio و threading رو فرض کن؛ مثل asyncio سبک و سریع، ولی در عین حال مثل threading به کلمات async و await نیاز نداره

@CodingLovers_OFF 🔥
7👍2
خب گیتهاب قابلیت سرچ خودشو با هوش مصنوعی کوپایلت ( گیتهاب کوپایلت ) ترکیب کرد
و بخش بد ماجرا، کوپایلت برای ایرانیا هنوز هم تحریمه

اپدیت: دوستان گیتهاب منتظر اعتراض بنده بود؛ از تحریم نصفه و نیمه درومدیم ولی هنوز داخل vscode کار نمیکنه
🤣15👍51
🐍 ترفند پایتون
یچیزی که خیالتون انجام میدین، خواستم یه یادآوری از شکل های دیگش بکنم ...

وقتی یه لیستی داری و میخوای مقداری بهش اضافه کنی


مبتدی:
array = list(range(100))
result = []

for i in array:
result.append(i/2)


بهتر:
array = list(range(100))
result = []

result.extend((i/2) for i in array)


بهترتر:
array = list(range(100))
result = []

result.extend(
map(lambda x: x/2, array)
)



🔥 @CodingLovers_OFF
👍12🤣52👎1
سلام چطورید داداشای کدینگ لاورزی 👋

این روزا دارم روی یه پروژه نقشه و مسیریابی کار میکنم
مبدا و مقصد و مسیریابی و ردیابی و اینجور چیزها...
یه چیزی مثل بلد ولی ساده تر

به نظرم موضوع جالبی برای ضبط ویدیو میاد
نظرتون چیه ببینیم با پایتون چه کارهایی توی این زمینه میشه کرد؟
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23🔥21
🤔 خروجی چی میشه؟

@CodingLovers_OFF
Please open Telegram to view this post
VIEW IN TELEGRAM
Coding Lovers
🤔 خروجی چی میشه؟ @CodingLovers_OFF
خروجی کد بالا ؟
Anonymous Quiz
14%
1
25%
2
13%
5
47%
3
😎 توی این ویدیو با مهم ترین فانکشن های ماژول random آشنا میشید که یکی از پرکاربرد ترین ماژول های بیلت این پایتون هست.

این ویدیو رو از دست ندین ✌️🤠
🎥 https://youtu.be/Sr0r11LV7W4


😎 @CodingLovers_OFF
Please open Telegram to view this post
VIEW IN TELEGRAM
👍73
میم عالیی بود😂
🤣14👍2😁1
پرفورمنس پارامتر های پایتون
یچیزی توی پایتون کشف کردم
برگای خود سازنده های پایتون هم فکر کنم بریزه

def func(a, b, c, d, e, f, g, h, i):
pass


# Test 1
func(1, 1, 1, 1, 1, 1, 1 ,1 ,1)

# Test 2
func(a=1, b=1, c=1, d=1, e=1, f=1, g=1, h=1, i=1)

طبق بنچمارک، سرعت تست اول حداقل ۵۰۰ میلی ثانیه سرعتتر از تست دوم هستش 😐😂
یعنی درواقع اگه اسم پارامتر هارو مشخص کنید، سرعت صدا شدن یک فانکشن خیلی کاهش پیدا میکنه!

شماهم امتحان کنید با timeit و نتیجه رو بگید ...

همچین چیزی کاملا منطقیه، ولی نه ۵۰۰ میلی ثانیه اختلاف!
👍9🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
واقعا چه دنیای زیبایی داره میشه
نمایش لپتاپ جدید تاشو هواوی با سیستم عامل کاملا اختصاصی

یکی که ازینا برام بخره پیوی
🔥10👍21
گوگل داره موتور جستجو خودش رو به طور کامل با AI ترکیب میکنه. ( برای آمریکا فعال شده )
به این صورت کار میکنه وقتی سوالی میپرسید، به سوال های کوچیک تری تقسیم میکنه تا بهترین منابع رو پیدا کنه.

اصلا خوشحال نشید، درحالت عادی گوگل هرمنبعی که ازش خوشش نمیومد، اکثر منابع سیاسی، اکثر اخبار ها، و مواردی که با علایق اون بالایی ها جور در نمیومد رو فیلتر میکرد. الان که AI اومده، رسما به هرچیزی که اونا بخوان محدودیم ...

منبع
@CodingLovers_OFF 🔥
👍17🤣3