Dev Perfects – Telegram
Dev Perfects
41 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://news.1rj.ru/str/dev_perfects/455


ارتباط:
https://news.1rj.ru/str/HidenChat_Bot?start=936082426
Download Telegram
خب متأسفانه شرایطش محیا نشد که لایو بگیرم، اینترنتم پایدار نیست.

در روز های آتی این کار رو انجام میدم با اینترنت پایدار تر.

@SohrabContents
Forwarded from Geek Alerts
برنامه ticktick که تقویم و مدیریت کارهای روزانه رو ارائه میده به صورت رسمی تقویم پارسی رو اضافه کرده و حالا میتونید توی نسخه موبایل و دسکتاپ به بخش Additional Calendar برید و تقویم persian رو انتخاب کنید.
اگه اشتراک پریمیوم تهیه کنید میتوند تیکت پشتیبانی هم ارسال کنید و اگر تونستید درخواست کنید زبان فارسی و فونت دلخواه رو هم اضافه کنن.
ظاهرا تیکت‌ها براشون خیلی اهمیت داره و با دقت خوبی بهشون جواب میدن.
https://ticktick.com/download
@geekalerts
Forwarded from Python Hints
#موقت

۱- مشکلات دیگه از یوتیوب (اگر برای شما هم کند شده نگران نباشید طبیعی هست)

Temporary difficulties with YouTube

YouTube is slow. We are doing everything possible to return to normal speed! Use a VPN to speed up your loading times.



۲- روی کانفیگ nvim که گذاشتم بیشترین درخواست برای اضافه شدن javanoscript بوده.
چون زیاد سوال شده :
نمی‌دونم کی فرصت بشه ولی توی اولین زمان اضافه می‌کنم و روی یک برنچ جدا میذارم.
Forwarded from Python Hints
#Quick

داشتم پروژه django شرکت رو می‌خوندم یک مشکل داریم سر بعضی endpointها و برخی تسک‌ها
اولین کاری کردم این بوده که یک سری دیتا تست با faker بهش دادم مثه loadtest ولی بدون ابزار و بعد هم profiling گرفتم و ذخیره کردم.
چیز جالبی که دیدم؛ پروژه موقع کار کردن با redis به مشکل میخورد.
ولی redis منابعش بیشتر از حد مورد نیازش بود.

حجم دیتاهای تست رو کم کردم و مشکل حل شد؛ توی چندتا تست مختلف که زدم دیدم مسئله و مشگل از سمت پیکج redis هست توی پایتون و راهکار ساده
Forwarded from Python Hints
#Quick

داشتم پروژه django شرکت رو می‌خوندم یک مشکل داریم سر بعضی endpointها و برخی تسک‌ها.
اولین کاری کردم این بوده که یک سری دیتا تست با faker بهش دادم مثه loadtest ولی بدون ابزار و بعد هم profiling گرفتم و ذخیره کردم.
چیز جالبی که دیدم؛ پروژه موقع کار کردن با redis به مشکل میخورد.
ولی redis منابعش بیشتر از حد مورد نیازش بود.

حجم دیتاهای تست رو کم کردم و مشکل حل شد؛ توی چندتا تست مختلف که زدم دیدم مسئله و مشگل از سمت پیکج redis هست توی پایتون و راهکار ساده رو هم خود redis داده (هرچند من برعکس بهش رسیدم)

$ pip install "redis[hiredis]"


بجای اینکه برای parse کردن دیتا از python استفاده کنه وقتی hiredis رو نصب کنید از C استفاده می‌کنه (بنچمارکاش هم توی گیت‌هاب hiredis هست ببینید)

مشکل خیلی ساده حل شد؛ ولی برای این حل ساده خیلی زمان و درک profiling لازم بود.

اهمیت profiling
Forwarded from 🎄 یک برنامه نویس تنبل (  MΞ)
🔶 ماشین گزارش شفافیت تلگرام با آدرس زیر به شما میگه براساس ای‌پی شما و/یا شماره تلفن شما چه تعداد درخواست از طرف دولت دریافت کرده و چه تعداد کاربر بابت اون درخواست اطلاعاتشان به دولت داده شده. اگر در ایران هستید خوبه حتمن آزمایش کنید.

https://news.1rj.ru/str/transparency

@TheRaymondDev
Forwarded from Geek Alerts
ممکنه خیلی از ماها در گوگل کلندر نیز نیاز به استفاده از تقویم شمسی داشته باشیم،‌ مدت زیادیه که گوگل این ویژگی رو به کلندرش اضافه کرده و می‌تونید ازش استفاده کنید. وارد تنظیمات می‌شید و Persian Calendar رو به عنوان Alternate Calendar اضافه می‌کنید.

https://calendar.google.com
hadi @geekalerts
Forwarded from Syntax | سینتکس (Daimon)
این Swap Memory خبیث چیه و چرا بهتره غیرفعالش کنیم؟

در سیستم‌عامل‌های لینوکسی (و سایر سیستم‌های مشابه)، Swap Memory به عنوان یک حافظه‌ی مجازی مورد استفاده قرار می‌گیرد. وقتی رم (RAM) سیستم پر می‌شود، سیستم از بخشی از فضای دیسک (HDD یا SSD) به عنوان حافظه‌ی موقت استفاده می‌کند. این فضای موقت همان Swap است. اگرچه این ویژگی در مواقع خاص مفید است، اما در برخی موارد می‌تواند مشکلاتی ایجاد کند که به همین دلیل به Swap Memory خبیث مشهور شده است.

چرا Swap Memory مشکل‌ساز می‌شود؟


1. کندی عملکرد سیستم
وقتی سیستم به جای رم از Swap استفاده می‌کند، سرعت به شدت کاهش می‌یابد. دلیل این امر این است که هارد دیسک یا SSD به مراتب کندتر از رم است. به همین دلیل، اجرای برنامه‌ها و پردازش‌ها به شدت کند می‌شود.

2. افزایش فشار بر هارد دیسک یا SSD
استفاده مداوم از Swap باعث فشار زیاد بر دیسک می‌شود. در مورد SSD، این موضوع می‌تواند عمر دیسک را به شدت کاهش دهد.

3. مدیریت نامناسب حافظه
در برخی موارد، سیستم به جای آزاد کردن رم‌های غیرضروری به Swap منتقل می‌شود. این موضوع می‌تواند باعث شود که حتی وقتی رم کافی دارید، سیستم همچنان کند عمل کند.

آیا باید Swap Memory را غیرفعال کنیم؟


در سیستم‌هایی که رم کافی دارند (مثلاً 12 گیگابایت یا بیشتر)، معمولاً نیازی به Swap نیست و می‌توان آن را غیرفعال کرد. با این کار، سیستم مجبور می‌شود مدیریت حافظه را بهینه‌تر انجام دهد و از منابع رم به شکل بهتری استفاده کند.

اما اگر سیستم شما رم محدودی دارد (مثلاً کمتر از 12 گیگابایت)، غیرفعال کردن Swap می‌تواند باعث کرش برنامه‌ها در صورت پر شدن رم شود. در این حالت، باید با احتیاط عمل کنید.

چطور Swap Memory را غیرفعال کنیم؟


برای غیرفعال کردن Swap Memory در سیستم‌های لینوکسی، می‌توانید مراحل زیر را دنبال کنید:

1. بررسی وضعیت فعلی Swap
ابتدا بررسی کنید که آیا Swap فعال است یا خیر:

swapon --show

اگر خروجی نمایش داده شود، یعنی Swap فعال است.

2. غیرفعال کردن موقتی Swap

برای غیرفعال کردن موقتی Swap (تا زمان بوت بعدی):

sudo swapoff -a

این دستور تمام Swapهای فعال را غیرفعال می‌کند.

3. غیرفعال کردن دائمی Swap

برای غیرفعال کردن دائمی، باید Swap را از فایل تنظیمات سیستم حذف کنید. مراحل زیر را انجام دهید:

- فایل /etc/fstab را ویرایش کنید:

sudo nano /etc/fstab

- خط مربوط به Swap را پیدا کنید. معمولاً چیزی شبیه به این است:

/swapfile none swap sw 0 0

- آن خط را کامنت کنید (با اضافه کردن # در ابتدای خط) یا حذف کنید:

#/swapfile none swap sw 0 0

- فایل را ذخیره کنید و خارج شوید.

در نهایت پس از ریبوت، بررسی کنید که دیگر Swap فعال نیست:

swapon --show


#swap_memory

@Syntax_fa
اگه میخوای بیشتر در مورد انواع ایندکس های دیتابیس بدونی پیشنهاد میکنم این سری آموزش ویدیویی از PlanetScale رو ببین.

دیدن ش دید عمیق تری بهت میده که بهتر از ایندکس ها استفاده کنی.

لیست موضوعاتی که پوشش داده
Introduction to indexes
B+ trees
Primary keys
Secondary keys
Primary key data types
Where to add indexes
Index selectivity
Prefix indexes
Composite indexes
Covering indexes
Functional indexes
Indexing JSON columns
Indexing for wildcard searches
Fulltext indexes
Invisible indexes
Duplicate indexes
Foreign keys

https://planetscale.com/learn/courses/mysql-for-developers/indexes/introduction-to-indexes

How do Database Indexes Work?
https://planetscale.com/blog/how-do-database-indexes-work

@DevTwitter | <Hossein Nazari/>
چرا ما Monolith رو به Microservices ترجیح دادیم؟

(و چرا این تصمیم باعث شد تیم فنی ما سریع‌تر و کارآمدتر کار کنه)

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

اما… ما تصمیم گرفتیم Monolith بمونیم!
و این تصمیم درست‌ترین انتخاب برای تیم و محصول ماست.

چرا؟

چون میکروسرویس‌ها همیشه جواب درست نیستن.
خیلی از تیم‌ها فقط به‌خاطر ترند بودن، بدون دلیل منطقی مهاجرت می‌کنن.

ما ۳ فاکتور مهم رو بررسی کردیم و دیدیم که Monolith برای ما بهتره:

۱. سرعت توسعه:
در مراحل اولیه‌ی محصول، تغییرات زیادی داریم.
اضافه کردن فیچرها در یک کدبیس یکپارچه خیلی سریع‌تر و ساده‌تر از هماهنگی بین چندین سرویس جداست.

۲. هزینه‌ی مدیریت:
میکروسرویس‌ها زیرساخت پیچیده‌ای می‌خوان و این تمرکز رو از روی دولوپ میبره روی نگهداشت و پایداری سیستم.
از Service Discovery گرفته تا Logging، Monitoring و DevOps.
برای یه استارتاپ، پیچیدگی بی‌دلیل یعنی اتلاف زمان و منابع.

۳. نیاز واقعی به مقیاس‌پذیری:
میکروسرویس‌ها زمانی می‌درخشند که هزاران ریکوئست در ثانیه داشته باشید.
ما هنوز به اون مرحله نرسیدیم! پس چرا خودمون رو درگیر چالش‌هایی کنیم که هنوز وجود ندارن؟ سری که درد نمیکنه رو...

آیا هیچ‌وقت به Microservices مهاجرت می‌کنیم؟

احتمالاً بله، اما وقتی که نیازش رو حس کنیم، نه زودتر.
فعلاً یه Monolith تمیز، ماژولار و سازماندهی‌شده، سریع‌ترین و کارآمدترین راه‌حل برای ماست.

نکته: اگر فقط به‌خاطر “ترند بودن” به سمت Microservices می‌رید،
احتمالاً دارید کار خودتون رو سخت‌تر می‌کنید.

@DevTwitter | <Joseph Yas/>
بحث memory leak پیش اومد که تو پایتون چجوری هندل میشه و ایا توی پایتون مموری لیک داریم؟ و...

یه مقاله پیدا کردم که اینو خیلی خوب توضیح داده هم درمورد stack memory گفته هم درمورد Heap memory (البته کامل نگفته درحد نیاز برای درک مطلب)
پیشنهاد میدم حتما بخونیدش.

🔗 برای دیدن مقاله کلیک کن

#⃣ #reference



🥷 CHANNEL | GROUP
Forwarded from Gopher Academy
🔵 عنوان مقاله
Rust vs Go in 2025

🟢 خلاصه مقاله:
مقاله‌ بررسی به‌روزی در مورد موضوعی است که جان به طور مکرر به آن پرداخته، و به همان نتیجه همیشگی می‌رسد: ارزش دانستن هر دو زبان وجود دارد. اگرچه ممکن است محتوای دقیق مقاله‌ای نامشخص باشد، اما پیام کلی و قدرت استدلال در مورد اهمیت دوزبانگی آشکار است. جان در این مقاله به این نکته تأکید می‌کند که دانستن دو زبان فواید متعددی دارد، مانند افزایش دسترسی به فرصت‌های شغلی، بهبود توانایی‌های فکری و ارتباطی، و درک بهتر فرهنگ‌های مختلف. این مقاله تأکید می‌کند که با وجود تکرار موضوع، اهمیت آن هرگز کهنه نمی‌شود و همواره معتبر و قابل توجه است.

🟣لینک مقاله:
https://golangweekly.com/link/163976/web


👑 @gopher_academy
چرا ما Monolith رو به Microservices ترجیح دادیم؟

(و چرا این تصمیم باعث شد تیم فنی ما سریع‌تر و کارآمدتر کار کنه)

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

اما… ما تصمیم گرفتیم Monolith بمونیم!
و این تصمیم درست‌ترین انتخاب برای تیم و محصول ماست.

چرا؟

چون میکروسرویس‌ها همیشه جواب درست نیستن.
خیلی از تیم‌ها فقط به‌خاطر ترند بودن، بدون دلیل منطقی مهاجرت می‌کنن.

ما ۳ فاکتور مهم رو بررسی کردیم و دیدیم که Monolith برای ما بهتره:

۱. سرعت توسعه:
در مراحل اولیه‌ی محصول، تغییرات زیادی داریم.
اضافه کردن فیچرها در یک کدبیس یکپارچه خیلی سریع‌تر و ساده‌تر از هماهنگی بین چندین سرویس جداست.

۲. هزینه‌ی مدیریت:
میکروسرویس‌ها زیرساخت پیچیده‌ای می‌خوان و این تمرکز رو از روی دولوپ میبره روی نگهداشت و پایداری سیستم.
از Service Discovery گرفته تا Logging، Monitoring و DevOps.
برای یه استارتاپ، پیچیدگی بی‌دلیل یعنی اتلاف زمان و منابع.

۳. نیاز واقعی به مقیاس‌پذیری:
میکروسرویس‌ها زمانی می‌درخشند که هزاران ریکوئست در ثانیه داشته باشید.
ما هنوز به اون مرحله نرسیدیم! پس چرا خودمون رو درگیر چالش‌هایی کنیم که هنوز وجود ندارن؟ سری که درد نمیکنه رو...

آیا هیچ‌وقت به Microservices مهاجرت می‌کنیم؟

احتمالاً بله، اما وقتی که نیازش رو حس کنیم، نه زودتر.
فعلاً یه Monolith تمیز، ماژولار و سازماندهی‌شده، سریع‌ترین و کارآمدترین راه‌حل برای ماست.

نکته: اگر فقط به‌خاطر “ترند بودن” به سمت Microservices می‌رید،
احتمالاً دارید کار خودتون رو سخت‌تر می‌کنید.

@DevTwitter | <Joseph Yas/>
Forwarded from code2 - تکنولوژی و فناوری (Mahdi Taleghani)
میلاد امیرالمومنین علی علیه السلام و روز پدر بر شما مبارک 🌺🌹
با Webtop دسترسی لحظه ای به Alpine, Ubuntu, Fedora, و Arch همراه با full desktop environments

🔥ساده فقط روی مرورگر 😎 بدون نیاز به نصب 🤩

💠 فقط کافیه lscr.io/linuxserver/webtop:latest را pull کنید و روی http://yourhost:3000 استفاده کنید

🗓 با Tagهای مناسب میتوانید به توزیع های مختلف لینوکس دسترسی داشته باشید
🗓 پیشفرض که tag با مقدار latest توزیع XFCE Alpine است

لیست Tag ها
⚠️اخطار امنیتی :
در صورتی که اطلاعات فنی ندارید این توزیع را روی اینترنت با دسترسی آزاد رها نکنید.

❤️ ممنون از حمایت هاتون 💐🌺
#linux #Devops
روز مرد رو به همه مردای این سرزمین
هرکی که با غیرت و تلاش مردونه دنبال هدفاش رفت 💪

هرکی که مثل کوه پشت خانوادش وایستاد و کم نذاشت 🏔️

هرکی که ارزش لحظه‌هاشو دونست و وقتش رو هدر نداد...

تبریک می‌گم.

مردونگی به مذکر بودن نیست؛ روز مرد رو به همه‌ی اونایی که اینجور مردونگی رو زندگی می‌کنن، تبریک می‌گم. 💎

با عشق از طرف کولی کد | @coolycode ❤️
Forwarded from Syntax | سینتکس (𝙰𝚖𝚒𝚛𝚑𝚘𝚜𝚜𝚎𝚒𝚗)
درود خدمت رفقای سینتکسی

بنا به درخواست شما دوستان عزیز از منابع برای یادگیری مبتدی تا پیشرفته django و django api , ترجمه فارسی این سه کتاب :
django for professionals
django in production
django for api's
در چنل قرار گرفت.

# توجه:
کتاب ها توسط گوگل ترنسلیت به فارسی ترجمه شده و چون برای استفاده شخصی بوده از مرتب کردن ترجمه قسمت های ساده و بسیار پایه, شاید در برخی موارد خودداری شده باشه!(در جایی از اینترنت پیدا نمیشه)
بهتون توصیه میشه درکنار این ترجمه ها برای قسمت هایی که ترجمه نشدن کتاب اصلی رو هم داشته باشین تا دچار سردگمی نشین..
قسمت های اصلی و مهم کتاب ترجمه شدن!
امیدوارم مفید واقع باشه🙏🏻
This media is not supported in your browser
VIEW IN TELEGRAM
من چند روزی بود که سر اجرای یه پروژه GitHub گیر کرده بودم که هیچ جوری نمیتونستم از ساختارش دید بگیرم.
بعد چند شب بیخوابی امروز یه ابزار خفن پیدا کردم که واقعاً خیلی کاربردیه. لینکشو پایین میزارم :)

پوینتش اینه که دیگه لازم نیست وقتتون رو برای تبدیل دستی ریپازیتوری هدر بدین. فقط کافیه تو آدرس گیتهاب، "hub" رو با "ingest" عوض کنید و بلافاصله یه متن مرتب و کامل دریافت کنید که می‌تونید مستقیماً به GPT بدید. مث آب خوردن :)
امکاناتش؟
- نمایش کامل ساختار دایرکتوری پروژه
- یه خلاصه کوتاه و مفید از پروژه
- کل کدها و محتوا به صورت متنی آماده برای استفاده در GPT
اکستنشن کروم و .. بقیه چیزارو هم داره.
https://github.com/cyclotruc/gitingest

@DevTwitter | <Ali Mikaeili/>
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 به گزارش تک کرانچ, پس از تعطیلی قریب الوقوع TikTok در 19 ژانویه به دلیل مالکیت آن در ایالات متحده (مگر اینکه دیوان عالی مداخله کند)، به نظر می رسد یک برنامه چینی دیگر توجه ها را به خود جلب کرده است. کاربران آمریکایی به برنامه ویدیویی کوتاه چینی Xiaohongshu (معروف به RedNote در انگلیسی) هجوم می آورند. این برنامه امروز به رتبه 1 برنامه های رایگان در اپ استور ایالات متحده رسیده است و همچنین برترین برنامه شبکه اجتماعی در تمام برنامه های رایگان آیفون است.

پ.ن: جالب است که کاربران آمریکایی به شبکه اجتماعی خودشون اعتماد ندارند و به شبکه اجتماعی چینی مهاجرت می کند!

@TheRaymondDev
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 در رابطه با این خبر یه مشکل اساسی که ما داریم که آزادی بیان در شبکه اجتماعی هست.

دو نوع آزادی بیان داریم : آزادی بیان شرقی و آزادی بیان غربی

در آزادی بیان شرقی
مثلا تیک تاک خبرهای مربوط به خاورمیانه به خوبی منتشر می شود و سانسور نمی شود (البته مطمئن نیستم) و حتی در جنگ روسیه و اوکراین همین طور
در آزادی بیان غربی
مثلا اینستاگرام و فیس بوک یا ایکس خبرهای مربوط به خاورمیانه به شدت سانسور میشه و از انتشار اطلاعات آن جلوگیری میشه و در جنگ اوکراین و روسیه هم آزادی انتشار چنین محتوایی دارند.

خب این نوع آزادی بیان ها به شدت تناقص میاره و اینجاست که کاربران برای اینکه بدونن که در دنیا چه اتفاقی می افته و خبرها رو پیگیری کنه در انتخاب شبکه اجتماعی بین بد و بدتر هستند.

@TheRaymondDev
#PHP

‏شروع کردم به یادگیری PHP. قبلا علاقه ای به یادگیریش نداشتم. چون معتقد بودم باید روی یه چیزی متمرکز شد و از این شاخه به اون شاخه نپرید. اما الآن به این نتیجه رسیدم که با پشتیبانی گسترده ای که بین سرویس دهنده ها از php میشه، منطقی نیست که با python در زمینه وب کار کرد

@DevTwitter | <‌v@hid.h@mas/>