Python Hints
Python tips and tricks The Good, Bad and the Ugly توی این کانال فقط قرار هست در مورد core python صحبت کنیم. این کانال یک بلاگ شخصی هست و پیرامون نظرات و چیزهایی که توی بیش از ۱۰ سال کد زدن یاد گرفتم (فقط برای کمک به دوستان تازهکار) Admin: @Abbasi_ai
Больше📈 Аналитический обзор Telegram-канала Python Hints
Канал Python Hints (@pyhints) языкового сегмента Фарси является активным участником. Сейчас сообщество объединяет 10 042 подписчиков, занимая 11 791 место в категории Технологии и приложения и 30 933 место в регионе Иран.
📊 Показатели аудитории и динамика
С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 10 042 подписчиков.
Согласно последним данным от 03 сентября, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило 187, а за последние 24 часа — 8, при этом общий охват остаётся высоким.
- Статус верификации: Не верифицирован
- Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 23.34%. В первые 24 часа после публикации контент обычно набирает 13.61% реакций от общего числа подписчиков.
- Охват публикаций: В среднем каждый пост получает 2 344 просмотров. В течение первых суток публикация набирает 1 367 просмотров.
- Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 28.
- Тематические интересы: Контент сосредоточен на ключевых темах, таких как ᴘʀᴏxʏ, کانفیگ, مورد, shift, ابزار.
📝 Описание и контентная политика
Автор описывает ресурс как площадку для выражения субъективного мнения:
“Python tips and tricks
The Good, Bad and the Ugly
توی این کانال فقط قرار هست در مورد core python صحبت کنیم.
این کانال یک بلاگ شخصی هست و پیرامون نظرات و چیزهایی که توی بیش از ۱۰ سال کد زدن یاد گرفتم (فقط برای کمک به دوستان تازهکار)
Admin: @Abbasi...”
Благодаря высокой частоте обновлений (последние данные получены 04 сентября, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
opensource هم دروغ شاخ دار نگید. تابلوئه و سریعا هم لو میره!Postgres18 خیلی علاقمند شدم بخاطر اضافه کردن Async هرچند هنوز نتونستم کامل تستش کنم)
نشستم ویدئو رو دیدم؛ ویدئو 56K بازدید داشته 4.7K لایک و 642 تا کامنت که همه هم مثبت بوده
من تموم کامنتهارو چک نکردم ولی خیلیهاش نظر مثبت هست.
جالبی قضیه اینجاس هیچکس متوجه تفاوت توی نحوه بنچمارک گیری نشده یعنی واقعا ؟
چیزی هم که ادعا میکنه که SpacetimeDB میتونه نقش سرور رو هم بازی کنه؛ از Postgres15 من یادم هست که دارند این کار رو بصورت جدی انجام میدند ملت باهاش.
پس داستان چیه ؟ عدد سازی .
اومدم روی گیتهاب issue بسازم و بگم که تکنینک مقایسه درست نیست که دیدم یک نفر دیگه اینکار رو کرده.
توی ویدئو اول دقیقه 10 به بعد رو ببینید؛ تمام تستهایی که انجام میده
client + server + db
هست؛ ولی وقتی به دیتابیس خودشون میرسه.
client + db
هست بعد از بررسی گیتهاب حتی متوجه شدم برای همه کلاینت روی typescript هست ولی برای خودشون روی Rust نوشته شده با خوندن بیشتر اوضاع بدتر هم شد. علاوه بر اینکه پروتوکلهای متفاوتی استفاده شده و ...
تمام فلگهای optimization مربوط به کلاینت Rust رو که برای بنچمارک خودشون فقط استفاده میکنند تا ماکزیمم بالا بردند.
هیچ چیزی جز یک عددسازی بزرگ به ذهنم نمیرسه.
حالا شخصی که روی Github به این موضوع اشاره کرده بود اومده یک ویدئو هم براش ساخته (داشتم میگشتم ببینم کسی دیگه هم فهمیده این موضوع رو یا نه ویدئو رو پیدا کردم)
توی این ویدئو نشون میده که SpacetimeDB حتی با تمام optimization هایی که انجام داده توی شرایط برابر به Postgresql با کانفیگ دیفالت هم نمیرسه
Video on Youtube
پینوشت: خواستم بگم مثل این دوستی که ویدئو SpacetimeDB رو برای من فرستاد شما تو تله نبوفتید.RHCE = RedHat Certified Engineerچه روزهایی؛ یادم میاد مدرسه آیلتس کار و خوندن برای آزمون لینوکس رو ...
vpn دوستان معرفی کردند؛ بسیار هم توسط اشخاص دیگه توی اینستاگرام و ... داره معرفی میشه.
داستان اینجوری هست که شما برنامه رو روی اپاستور یا پلیاستور دانلود میکنی؛ بعد وارد یک ربات تلگرامی به اسم برنامه میشی و یک کد بهت میده
با این کد ۶ ماه اکانت پرمیوم رایگان میگیری.
اما:
بسیار بسیار اینکار خطرناک هست؛ دلایلش
۱- وقتی با یک ربات کار میکنید توی تلگرام اون ربات میتونه تمام اطلاعات اکانت شمارو بگیره (عکس، آیدی، کد یونیک و ...)
۲- ربات به شما یک کد اختصاصی میده برای اینکه اکانت شما ۶ ماه دسترسی رایگان بگیره و خب فکر میکنم خودتون فهمیدید که با این کد شمارو شناسایی میکنه توی اپلیکیشن
پس تا اینجا میدونه، شما کی هستید و کجاها میرید با vpn خودتون.
۳- فرض کنیم این vpn داخلی و سهمیهای هم باشه؛ توی اپلیکیشن دیتاهای مربوط به گوشی شمارو بصورت دیفالت میگیره
Device model, model number, ....
که خب بعضی از اینها دقیقاً برای شناسایی گوشی شما هست مثل یوزرنیم تلگرام که یونیک هست اینم همونطوری هست.
۴- بصورت پیشفرض کل اپلیکیشنها رو vpn میکنه و دیتاهای diagnostic, analytic برای خودش میفرسته که یعنی هرچیزی که دلش خواست.
دیدید وقتی سیمکارت دیگری رو توی گوشی میندازید پیام میاد گوشی با این شماره رجیستر نشده یا برای این فرد نیست ؟
حالا همه اینارو بذاریم کنار هم :
۱- من از vpn میفهمم شما کجاها میری با چه پترنی (چقدر آپلود و چقدر دانلود داری) توی چه ساعتهایی
۲- اکانت تلگرامت رو هم که برای ۶ ماه رایگان بهم دادی؛ از اون هم میتونم کلی چیز پیدا کنم.
مثلاً یوزر نیم مشابه روی توییتر و ...
یا از عکس شما چیزای بیشتر
یا از کانالی که به اکانت وصل هست و ...
۳- مدل نامبر و .... گوشی رو هم که بر میدارم و اگر به دیتابیس ثبت گوشی هم دسترسی داشته باشم؛ دقیقاً میدونم کی هستی.
شماره موبایل، کد ملی و .... همه در میاد.
خلاصه خیلی خیلی مراقب باشید،
پنیر مفت تو تله موشه
این کانالای تک اینستاگرام هم ۹۸٪ یک بچه که ۴ تا اصطلاح یادگرفته نشسته بدون هیچ درکی ...شر پشت هم میبافه.
البته اینجا ۹۸-۹۹٪ حرفهای هستید خودتون و متوجه مشکل شدید ولی لطفاً به باقی هم اطلاع بدید که حداقل حواسشون باشه.
کپی این مطلب حتی بدون ذکر منبع هم آزاد هست.backups اشتباه توی تصویر اومده؛ شخصا یک اسکریپت دارم که اگر فایل بکاپی داخل این پوشه بود موقع راهاندازی اولیه postgresql اون رو هم restore کنه که خب اینجا هم اومد. چیز مهمی نیست؛ شخصا برای راحتی تیم توسعه اینکار رو میکنم (تصمیم شخصی هست)
شاید بشه گفت compose.yml ربطی به اینجا نداره ولی این مورد رو گذاشتم که بگم توی سال 2026 خواهشا بدون داکر پروژه دست کسی ندید پوشه docker هم برای نگهداری تنظیمات؛ Dockerfileها و اسکریپت و ... هست
تغییر مهم بعدی justfile هست که بنظرم یکی از تصمیمات خیلی خوب بوده؛ مدت طولانی هست که توی پروژهها just رو با make جایگزین کردم هم کارهای بیشتری باهاش میشه کرد (یادتون باشه make یک builder هست خیلی برای کاری که ما باهاش میکردیم ساخته نشده بود) هم خیلی سریع و راحت هست.
درمورد sample.env این مورد شامل تمام تنظیماتی هست که compose.yml بهش نیاز داره؛ مثلا TAG ها چی باشه؛ port ها چطوری تعریف بشه؛ سایز و تعداد log ها چطور. خلاصه هرچیزی که میتونه درطول زمان ثابت نباشه اینجاس که بچههای DevOps بر اساس اون env. رو میسازند.
یک پوشه هم دارم به اسم envs که شامل env فایلهای هر container میشه؛ که همهی environment variable ها وارد همهی container ها نشه؛ داخل این هم به اسم هر بخش پروژه یا کانتینر یک sample وجود داره.
پوشه doc هم تغییراتی داشته اینبار؛ plan رو بهش اضافه کردیم که یک مورد تیمی هست راجب اینکه پروژه چطوری پیش بره اول چه چیزایی کد زده بشه بعدش چه چیزهایی و ...
این پوشه نسخه اولیه داره و دائم آپدیت میشه
حتما هم داخل
.dockerignore
اضافه میشه که توی تصویر بالا این فایل هم جا افتاده (پروژه جدید هست)
اما مهمترین و بهترین چیزی که توی document نویسی اضافه شده فایل adr هست (راجب adr توی RandRng قبلی گفته بودم) ولی بطور خلاصه هر داکیومنت داخل پوشه adr توضیح میده چرا تیم تصمیم به استفاده از یک ابزار خاص کرده؛ ما یک قدم هم جلوتر رفتیم البته:
اگر بین ۲ نقر یا چندنفر توی پروژه اختلاف نظر پیش بیاد که یک کاری رو چطوری انجام بدیم یا با چه ابزاری انجام بدیم؛ یکی از اون افراد شروع میکنه راجب مزایا و معایب ابزار مدنظر خودش ADR نوشتن و میفرسته روی گیتهاب بعدش یک نفر از گروه مخالف راجب روش یا ابزار خودش داکیومنت رو آپدیت میکنه.
درنهایت من بعنوان reviewer اضافه میشم و شرایط و توضیحات هر دوتا گروه رو میخونم؛ یک مقایسه نهایی و آپدیت تصمیم؛ هم پروسه و دلیل تصمیم داکیومنت میشه و هم از بحثها و جلسههای بی سر و ته جلوگیری میشه و توی کمترین زمان و با کمترین درگیری هم حرف همه شنیده شده و تیم تصمیم گرفته.
این مورد آخر رو بچههای تیم خودم خیلی خیلی دوسش دارند؛ بخصوص junior, mid ها چون قبلا برای این تصمیمات فقط senior ها توی جلسه میشستند.RandRng گفتم که خیلی وقت هست که ساختار پروژههام نسبت به پست قبلی عوض شده اونم به لطف ابزارهایی که تبدیل به استاندارد شدند.
مثلا؛ دیگه از requirements خیلی خیلی کم استفاده میکنیم؛ به لطف uv این مسئله برامون خیلی راحتتر شده بخصوص اینکه سرعت خیلی خوبی هم داره.
یا مثلا دیگه از editorconfig تقریبا میشه گفت استفاده نمیکنم؛ اینبار به لطف ruff و البته بازم uv خود ابزار ruff اکثر دیفالتهای استاندارد رو داره و چون uv با pyproject.toml کار میکنه باقی ابزارها مثل mypy , ... هم داخل همین مورد قابل کانفیگ هست و تقریبا با همینا میشه کل نیازمندی رو برطرف کرد.
(دلیل اینکه pyproject.toml رو توی تصویر نمیبینید اینه که uv بصورت خودکار ایجادش میکنه)
مثل قبل pre-commit-config.yaml رو همچنان داریمش؛ تقریبا همه هم باهاش خوشحالند برای همین اصلا به اینکه عوضش کنم فکر نکردم.
معمولا python-version رو انیجا نگه نمیدارم بخصوص اینکه این مورد هم توسط uv ایجاد میشه ولی چون دیدم بعضیها حذفش میکنند (نمیدونم چرا) گذاشتم باشه.
ادامه پست بعدی...RandRng گفتم که خیلی وقت هست که ساختار پروژههام نسبت به پست قبلی عوض شده اونم به لطف ابزارهایی که تبدیل به استاندارد شدند.
مثلا؛ دیگه از requirements خیلی خیلی کم استفاده میکنیم؛ به لطف uv این مسئله برامون خیلی راحتتر شده بخصوص اینکه سرعت خیلی خوبی هم داره.
یا مثلا دیگه از editorconfig تقریبا میشه گفت استفاده نمیکنم؛ اینبار به لطف ruff و البته بازم uv خود ابزار ruff اکثر دیفالتهای استاندارد رو داره و چون uv با pyproject.toml کار میکنه باقی ابزارها مثل mypy , ... هم داخل همین مورد قابل کانفیگ هست و تقریبا با همینا میشه کل نیازمندی رو برطرف کرد.
(دلیل اینکه pyproject.toml رو توی تصویر نمیبینید اینه که uv بصورت خودکار ایجادش میکنه)
مثل قبل pre-commit-config.yaml رو همچنان داریمش؛ تقریبا همه هم باهاش خوشحالند برای همین اصلا به اینکه عوضش کنم فکر نکردم.
معمولا python-version رو انیجا نگه نمیدارم بخصوص اینکه این مورد هم توسط uv ایجاد میشه ولی چون دیدم بعضیها حذفش میکنند (نمیدونم چرا) گذاشتم باشه.
شاید بشه گمهمتر از تخصص؛ انسانیت داشتن هست.
Last seen a month agoهستند توی چتهام کم نیست. امیدوارم فقط اینترنت نداشته باشند؛ یا اینکه تصمیم گرفته باشند چندوقتی آنلاین نشند. هر فکر دیگری، دیوانهام میکند 🖤💔🖤
dns رو تست کنید:
149.112.112.112برای من روی باقی موارد نتیجه نمیده. دلیلش هم اینه که نتیجه متفاوتی نسبت به باقی برای resolve داد و هم udp هم tcp رو جواب داد.
