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
آیا سیستمت را در چند سال اخیر خریدی؟احتمالا x86-64-v3 پشتیبانی میشه

🚀 بریم برای سرعت بیشترو بهینه تر بودن
حالا Ubuntu 25.10 با پشتیبانی از معماری x86-64-v3 منتشر شد!

اگر سیستمت (نسل Haswell به بعد)، احتمالاً CPU تو از x86-64-v3 پشتیبانی می‌کنه نسل جدیدی از معماری x86-64 که برای پردازنده‌های مدرن طراحی شده.

🧠 چی فرق کرده؟
پشتیبانی از دستورهای جدید CPU مثل AVX2، BMI1/BMI2 و FMA
اجرای سریع‌تر برنامه‌های سنگین (فشرده‌سازی، رمزنگاری، شبیه‌سازی، یادگیری ماشین و غیره)
بهینه‌سازی مخصوص سخت‌افزار جدید بدون از کار انداختن نسخه‌های قدیمی

💡 چطور بفهمی سیستم‌ت آماده‌ست؟
ld.so --help | grep v3

اگر دیدی:
x86-64-v3 (supported, searched)

یعنی اوکی😎

🧩 در Ubuntu 25.10 بخشی از بسته‌های آرشیو «main» برای این معماری بازسازی شده‌اند (حدود ۲۰۰۰)
در نسخه‌های بعدی (مثل 26.04 LTS) همه‌ی بسته‌ها با بهینه‌سازی کامل منتشر می‌شن.

🔧 برای فعال‌سازی (⚠️ اختیاری ریسک عدم پایداری):
echo 'APT::Architecture-Variants "amd64v3";' | sudo tee /etc/apt/apt.conf.d/99enable-amd64v3
sudo apt update && sudo apt upgrade

@MehrdadLinuxchannel
منبع
Forwarded from Gopher Academy
🔵 عنوان مقاله
Fantasy: Build Flexible AI Agents with Go

🟢 خلاصه مقاله:
با تمرکز بر ساخت ایجنت‌های هوش مصنوعی انعطاف‌پذیر در Go، ابزار Fantasy از سوی Charm معرفی شده است. این ابزار یکی از اجزای اصلی پشت Crush است، اما می‌توان آن را به‌صورت مستقل برای ساخت ایجنت‌های مجهز به ابزار در Go به‌کار گرفت. هدف Fantasy ارائه رویکردی ماژولار و قابل ترکیب است تا توسعه‌دهندگان بتوانند رفتار ایجنت را سفارشی کنند، ابزارها و سرویس‌ها را متصل کنند و در عین حال در چارچوب کاری Go باقی بمانند.

#Go #Golang #AI #AIAgents #Charm #Crush #DevTools #AgentFramework

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


👑 @gopher_academy
Funny PHP

یک کار بامزه ، چه طور بالا و پایین شدن داده ها رو به موسیقی تبدیل کنیم ؟

Convert price trends into audio sequences: detect increasing, decreasing, and flat price ranges, then generate a single MP3 summary using corresponding sound clips.

$prices = [100, 102, 105, 105, 105, 104, 102, 101, 101, 103, 104];
$dates = ['2025-10-20','2025-10-21','2025-10-22','2025-10-23','2025-10-24','2025-10-25','2025-10-26','2025-10-27','2025-10-28','2025-10-29','2025-10-30'];

// Detect ranges
$ranges = PriceTrend::findDataRanges($prices, $dates, 2);

// Generate audio summary
AudioGenerator::joinRangeAudio($ranges, __DIR__ . '/../output.mp3');


https://github.com/saeedvir/price-trend-audio-visualizer/

@DevTwitter | <Saeed/>
Forwarded from GitHub Trending Daily
🔥 New GitHub Trending Repositories 🔥

Found 8 new trending repositories:

1. chef by get-convex
📝 The only AI app builder that knows backend
💻 TypeScript | 2,542 | 🌟 Today: 61
🔗 Link

2. docs by suitenumerique
📝 A collaborative note taking, wiki and documentation platform that scales. Built with Django and Reac...
💻 Python | 14,100 | 🌟 Today: 26
🔗 Link

3. Deep-Live-Cam by hacksider
📝 real time face swap and one-click video deepfake with only a single image
💻 Python | 74,575 | 🌟 Today: 225
🔗 Link

4. copilot-cli by github
📝 GitHub Copilot CLI brings the power of Copilot coding agent directly to your terminal.
💻 Star | 4,393 | 🌟 Today: 61
🔗 Link

5. ruoyi-vue-pro by YunaiV
📝 🔥 官方推荐 🔥 RuoYi-Vue 全新 Pro 版本,优化重构所有功能。基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 微信小程...
💻 Java | 33,844 | 🌟 Today: 27
🔗 Link

6. xiaomusic by hanxi
📝 使用小爱音箱播放音乐,音乐使用 yt-dlp 下载。
💻 Python | 6,444 | 🌟 Today: 197
🔗 Link

7. lingo.dev by lingodotdev
📝 Lingo.dev - open-source, AI-powered i18n toolkit for instant localization with LLMs. Bring your ow...
💻 TypeScript | 3,915 | 🌟 Today: 100
🔗 Link

8. computer-science by ossu
📝 🎓 Path to a free self-taught education in Computer Science!
💻 HTML | 196,593 | 🌟 Today: 235
🔗 Link


🔘 @github_trending_daily
کانفیگ و پیاده‌سازی Web Push Notification بدون Firebase

* از اونجایی که داخل ایران نمی‌تونیم از سرویس‌هایی مثل Firebase Cloud Messaging (FCM) استفاده کنیم، تصمیم گرفتم خودم سیستم Web Push Notification رو پیاده‌سازی کنم!

* در سمت کلاینت (Next.js) از یک Service Worker استفاده کردم تا نوتیف‌ها حتی زمانی که تب بسته هستش هم نمایش داده بشه.
کاربر کافیه اپ رو به Home Screen اضافه کنه و بعد از اولین ورود، مجوز ارسال نوتیفیکیشن رو تأیید کنه؛
در این مرحله، مرورگر به‌صورت خودکار یک subscription اختصاصی تولید می‌کنه که شامل endpoint، public key و auth token هست و به سرور ارسال میشه.

* در سمت بک‌اند (Node.js + Express) از پکیج web-push استفاده کردم تا با کلیدهای VAPID نوتیف‌ها رو به‌صورت مستقیم و امن برای مرورگر کاربران ارسال کنم.
هر endpoint به‌صورت یکتا در دیتابیس ذخیره می‌شه و سرور می‌تونه به تمام کاربران یا فقط به یک کاربر خاص نوتیف بفرسته

ویژگی‌ها:

ارسال نوتیف زنده و امن با کلیدهای VAPID
مدیریت subscribe / unsubscribe کاربران
پشتیبانی کامل از PWA و Service Worker
قابل تنظیم برای آیکون، عنوان و لینک دلخواه
مستقل از Firebase و بدون محدودیت

میتونید نسبت به کانفیگ پروژتون setup کنید

* خب شاید بپرسید اگه کاربر آفلاین باشه چی می‌شه…
خیلی ساده بخوام بگم وقتی کاربر آفلاین باشه و شما بخواید براش پوش نوتیفیکیشن بفرستید، Push Service مثل گوگل یا مرورگر، پیام رو می‌ذاره تو صف (queue) و وقتی کاربر دوباره آنلاین شد، نوتیفیکیشن روی صفحه‌ش ظاهر می‌شه.

demo: https://sadegh-nextjs-push-notification.liara.run/
برای تست، اپ رو به صفحه اصلی اضافه کنید و دسترسی رو اکسپت کنید و از فرمی که داخل اپ هستش نوتیف ارسال کنید

repo: https://github.com/sadegh1379/push-notification

@DevTwitter | <Sadegh Akbari/>
در گیت‌هاب Typescript به محبوب‌ترین زبان برنامه‌نویسی تبدیل شده و از پایتون جلو زده!

@DevTwitter | <Masoud Majidi/>
Forwarded from GamerTux
آینده گیمینگ: چرا لینوکس داره میدرخشه؟

تو این ویدیو راجب آینده گیمینگ تو لینوکس ابزارهای مورد نیاز و مشکلات احتمالی صحبت می‌کنیم.
YouTube | PeerTube

@GamerTuxChat
@GamerTux
اپلیکیشن ریموت دسکتاپ اوپن سورس، به عنوان جایگزین TeamViewer و AnyDesk

https://github.com/rustdesk/rustdesk

@DevTwitter | <Mohammad/>
Forwarded from Meitix
توی Go وقتی از map استفاده می‌کنیم، پشتش خبری از یه آرایه ساده نیست که بیاد کل داده‌ها رو بگرده تا کلیدتو پیدا کنه. ماجرا خیلی هوشمندتر از این حرفاست. Go برای map از ساختار hash map استفاده می‌کنه، یعنی هر کلید اول می‌ره توی یه تابع هش و یه عدد خاص ازش درمیاد. اون عدد مشخص می‌کنه داده باید تو کدوم “bucket” یا همون سطل ذخیره بشه.

هر map یه عالمه از این bucket داره و هر bucket خودش چند تا key و value نگه می‌داره. وقتی می‌نویسی m["name"]، Go نمیاد کل map رو بگرده، فقط هش کلید رو حساب می‌کنه، می‌ره سراغ bucket مربوطه و تو همون چند تا داده‌ی داخلش دنبال مقدار می‌گرده. معمولا بدترین حالتش اینه که بین کمتر از ۸ تا مقدار بگرده، پس خیلی سریع تموم می‌شه.

اگه چند تا کلید هش مشابه بدن، می‌رن تو یه bucket و اگه اون پر بشه، یه bucket اضافه (overflow) ساخته می‌شه. ولی حتی اون‌موقع هم lookup زمانش تقریبا O(1) می‌مونه، چون این زنجیره‌ی bucketها معمولا خیلی کوتاهه. Go وقتی حس می‌کنه برخوردها زیاد شدن، خودش map رو بزرگ‌تر می‌کنه و داده‌ها رو دوباره پخش می‌کنه تا سرعت ثابت بمونه.
Forwarded from یه شعر (Poem Bot)
مولانا | دیوان شمس | رباعیات | رباعی شمارهٔ ۱۶۹۸

ای آنکه طبیب دردهای مایی
این درد ز حد رفت چه میفرمایی
والله اگر هزار معجون داری
من جان نبرم تا تو رخی ننمایی

#مولانا | گنجور
📍@iipoem
درود، امیدوارم حالتون خوب باشه
یه پکیج جدید داخل NPM توسعه دادم به اسم script-connector و خوشحال میشم یه نگاه بندازین

npmjs.com/package/script-connector
github.com/Tariux/Node-Script-Connector

اگر تا حالا به این فکر کردین که بشه اسکریپت های زبان های دیگه رو از طریق JavaScript اجرا کرد، این پکیج دقیقا برای همینه. Script Connector یه ابزار سبک و دقیق با معماری تمیزه که بدون هیچ بخش اضافه‌ای طراحی شده تا سریع، قابل اعتماد و کاملا قابل تنظیم باشه.
می‌تونین همه چیز رو طبق نیاز خودتون پیکربندی کنین، و از اون طرف متریک های دقیقی از تمام بخش های در حال اجرا دریافت کنین.

یه تیکه کد ساده از نحوه استفادش: (در نظر بگیرید کانفیگ های خیلی بیشتری از این داخل پکیج موجوده)

const { ScriptConnector } = require('script-connector');

const connector = new ScriptConnector({
scripts: {
math: './scripts/math.py',
}
});

connector.api.math.add(10, 5);


اگر خواستین نمونه کامل تر یا داکیومنتش رو ببینین، خوشحال میشم گیتهاب رو چک کنین.

@DevTwitter | <madman/>
Forwarded from ‌BenDev
هنگام برنامه نویسی شدیدا
Antonio Vivaldi
رو توصیه می‌کنم اصلا تمرکزم دوبرابر می‌شه . خیلی خوبه.


@BenDevelop
فرض کن یه رستوران بزرگ داری

توی آشپزخونه‌ات کلی آشپز (Container) داری، هرکدوم یه بخش خاص از غذا رو درست میکنن

‏Kubernetes مثل مدیر رستورانه. خودش تصمیم میگیره چند تا آشپز لازم داری، کی یکی اضافه بشه یا اگه یکی خسته شد یا رفت، یکی دیگه جاش بیاد. اگه یه آشپز مریض شد یا سوختگی گرفت ( یعنی یه کانتینر کرش کرد)، Kubernetes سریع یه آشپز جدید (Pod جدید) جای اون میفرسته تا کار متوقف نشه.

اگه jاتفاقی مشتری‌ها زیاد شدن (یعنی ترافیک زیاد شد)، Kubernetes خودش میگه
«خب بچه‌ها! باید آشپزخونه‌مون رو بزرگ‌تر کنیم!»
و چند تا آشپز (Pod) دیگه اضافه میکنه.


اگه شب شد و مشتریا رفتن، میگه

«اوکی، الان لازم نیست ۱۰ تا آشپز کار کنن، ۳ تا کافیه.»
و خودش بقیه رو میفرسته خونه تا منابع هدر نره.



تازه Kubernetes حتی بلده اگه برق یه آشپزخونه رفت (یعنی یه Node از کار افتاد)، آشپزها رو بفرسته تو یه آشپزخونه دیگه که هنوز برق داره (یعنی تو یه Node سالم).



#DevOps
#cluster
#kubernetes
#byteforge
@byteforge_chan 🛸
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 به نظر می رسد انویدیا عملاً بازار چین را از دست داده و چین وارد عصر استقلال فناوری در حوزه هوش مصنوعی شده است.

چین پس از سال‌ها تحریم آمریکا علیه فروش تراشه ‌های هوش مصنوعی انویدیا، با توسعه تراشه ‌های بومی توسط Huawei و SMIC به خودکفایی رسیده است. تراشه ‌های جدید چینی عملکردی نزدیک به محصولات انویدیا دارند و همین باعث شد پکن دیگر به واردات تراشه ‌های آمریکایی نیازی نداشته باشد. در نتیجه، وقتی دولت ترامپ تلاش کرد فروش تراشه ‌های انویدیا را در مذاکرات با چین مطرح کند، شی جین‌پینگ آن را رد کرد.

#خبر
#توییت

@TheRaymondDev
Forwarded from محتوای آزاد سهراب (Sohrab)
فردا ارائه‌ی با موضوع ساختار سیستم‌عامل گنو توی دانشگاه دارم که به صورت عملی قراره یک توزیع مینیمال گنو/لینوکس رو با در کنار هم گذاشتن BusyBox و کرنل لینوکس بسازم.


مراحل انجام این رو توی بلاگم بعد از ارائه مکتوب می‌کنم و اگر هم بتونم ارائه رو ضبط می‌کنم و انتشار میدم.


@SohrabContents
Forwarded from محتوای آزاد سهراب (Sohrab)
اگر دنبال یک خبرنامه ایمیلی مفید در زمینه گنو/لینوکس، دواپس و ... هستید توی خبرنامه سایت sysxplore ثبت‌نام کنید. روزانه محتوای مفید خوبی می‌فرسته.

https://sysxplore.com/


@SohrabContents
Forwarded from Golden Code (@lix)
تا حالا پیش اومده بخوای یه قابلیت یا یه گزارش فقط برای درصد کمی از کاربران فعال باشه؟
لاراول یه ابزار باحال برای این کار داره: Lottery

مثال:
تست ویژگی جدیده سایتمون فقط برای ۵٪ کاربران

فرض کن میخوای یه قابلیت جدید (مثلا طراحی تازه‌ی داشبورد) رو فقط برای ۵٪ از کاربرها فعال کنی تا عملکردش رو بسنجی 👇🏾
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Lottery;

Lottery::odds(1, 20) // یعنی 5% احتمال
->winner(function () {
session(['new_dashboard' => true]);
})
->loser(function () {
session(['new_dashboard' => false]);
})
->choose();

حالا فقط ۵٪ کاربران این داشبورد جدید رو می‌بینن 🔥
بدون نیاز به feature flag سیستم یا تنظیمات پیچیده.

📌 کاربردهای دیگه ی Lottery در لاراول

مانیتورینگه سبک:
گرفتن لاگ کامل SQL در درصدی از ریکوئستها

تست A/B برای UX

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

این Lottery از نسخه‌ی 9.19 به بعد اضافه شده و توی اپ‌های پر ترافیک کمک میکنه بدون کاهش سرعت، رفتار سیستم رو هوشمندانه بررسی کنی.

#Laravel #Laravel_tip‌ #لاراول

@GoldenCodeir 🔥

(به‌منبع و مثالش دقت کنید 👇🏾)
https://x.com/wendell_adriel/status/1978788530139635982?t=Hc2oNzGolFfMitfwrxC2zA&s=35