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
خدایی وصل کردن llm به پروژه چقدر آسونه این پروژه تستی کمتر از ۱ ساعت بیشترش با جی پی تی نوشتم و بشدت آسون بود. و البته بسته scale پروژه هم داره.
https://github.com/x017/myai



@DevTwitter | <parsa/>
Forwarded from Ninja Learn | نینجا لرن (Mohammad)
خب همونجور که میدونید درمورد GIL یا همون Global Interpreter Lock بحث زیاده 🤯

مشکل ما با GIL چیه؟
اینه که نمیذاره مولتی‌تردینگ واقعی داشته باشیم.
یعنی چی؟
یعنی نمی‌تونیم چندتا تسک رو همزمان روی چندتا ترد اجرا کنیم.
چرا؟
چون GIL میگه:
«در هر لحظه فقط یه ترد حق داره اجرا بشه، بقیه باید وایسن نوبتشون بشه.»

حالا نکته بامزه اینجاست:
اگه بیای چندتا ترد ران کنی، این تردا میان سر GIL دعوا می‌کنن کلی context switching می‌خوره latency میره بالا یه عالمه overhead میاد رو برنامه.
نتیجه؟ مولتی‌تردینگ برای کارای CPU-bound نه تنها کمک نمی‌کنه، بدترم می‌کنه برای همین باید single-thread باشه 😅
(احتمالاً خودتونم وقتی async برای CPU-bound نوشتید دیدید چه وضعیه.)

حالا چرا اصلاً GIL وجود داره؟
سؤال خوبیه 👌
خیلی خلاصه بگم نذاشته پایتون به چوخ بره 😂
چطوری؟
میاد thread safety رو برات تضمین می‌کنه، نمیذاره race condition بیاد وسط و همه چی بترکه.

ولی خب GIL دردسرم کم درست نمیکنه:

نمیذاره مولتی‌تردینگ CPU-bound داشته باشیم.

بعدم بخوای حذفش کنی هزاران لایبری که با درنظر گرفتن gil نوشته شده باید اپدیت بشن :)

و....
کلاً محدودمون می‌کنه.

راه‌حل چیه؟

1. C Extension
یعنی توابع سنگینت رو تو C بنویسی، اونجا اجرا بشه، فقط از پایتون صدا بزنی. اینجوری GIL رو می‌تونی دور بزنی.

2. Multiprocessing
این یکی مطرح ترین راهه. به تعداد core های CPU پروسس بالا میاری. هر پروسس مفسر خودش و در نتیجه GIL خودش رو داره اینجا واقعاً موازی میشه.
ولی اینجا یه توهمه که «ایول مشکل حل شد»…
سخت در اشتباهید 😅
چرا؟
چون:
ـprocess خیلی سنگینه، هر کدوم کلی overhead دارن.

ارتباط بین processها (همون IPC) خودش یه هزینه‌ی جداست.
داده‌ها باید بین processها جابه‌جا بشن (queue، pipe، shared memory و …) که اینم کندی و مصرف حافظه میاره.

گزینه اپشنال شدن گیل هم توی ۳.۱۳ کامل گیل رو حذف نمیکنه میتونیم مولتی پراسسینگ و موازی سازی کنیم ولی خب خودشون هنوز تایید نکرده و ازمایشیه و کلی مشکلات داره.

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

📌 خلاصه: GIL هم ناجیه، هم قاتل. ناجی چون امنیت میده، قاتل چون مولتی‌تردینگ CPU-bound رو ازمون میگیره. ولی خب این مورد توی I/O bound process نیست چون وقتی یه پراسس io ران میشه گیل خاموش میشه و میتونی parallel processing داشته باشی :)

#️⃣ #web #programming

 
🥷🏻 CHANNEL | GROUP
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
This media is not supported in your browser
VIEW IN TELEGRAM
🔶 انیمیشن‌ها در macOS 26 واقعاً یک سطح بالاتر هستند و ویندوز هیچ‌وقت نمی‌تواند به این میزان از روان بودن برسد.

#توییت

@TheRaymondDev
Forwarded from Geek Alerts
بلاخره IOS 26 توسط اپل منتشر شد، بزرگ‌ترین تغییرش طراحی «Liquid Glass» یا شیشه مایعه که همه چیز رو شفاف‌ و شیشه‌ای کرده؛ می‌تونید میزان شفافیتش رو هم کم و زیاد کنید.

ویژگی اختیاری Call Screening که اضافه شده کارش اینه وقتی یه ناشناس زنگ میزنه، ازش اسم و دلیل تماس رو میپرسه و بعد به شما اطلاع میده و میتونید تماس رو جواب بدید، هدفش جلوگیری از تماس‌های اسپم هست.

امکان Hold Assist هم برای وقتی هست که با جایی تماس گرفتید و شمارو پشت خط نگه میدارن، توی این حالت وقتی اپراتور جواب بده گوشی بهتون خبر میده.

برنامه Messages با هدف رقابت با واتساپ و تلگرام امکان انتخاب پس‌زمینه، ایجاد نظرسنجی، پیش‌نمایش عکس‌ها، فیلتر کردن پیامک‌ها و پوشه اسپم رو اضافه کرده. برنامه‌های دیگه هم تغییرات داشتن اما مهم‌ترین تغییرات بعدی برای هوش‌مصنوعی اپل هست که فقط روی نسل جدید دستگاه‌های اپلی (آیفون ۱۵ به بعد) فعال میشن.

ترجمه زنده Live Translation کمک میکنه وقتی پیام جدید میگیرید خودکار به زبان جدید ترجمش کنه، حتی روی تماس صوتی و تصویری هم کار میکنه و فعلا از زبان‌های انگلیسی، فرانسوی، آلمانی، پرتغالی و اسپانیایی پشتیبانی میکنه.

یک هوش بصری هم اضافه کردن که با زدن دکمه پاور و وولوم پایین به صورت همزمان فعال میشه، یه منو جدیده که باهاش هوش‌مصنوعی اپل صفحه گوشی رو تحلیل میکنه، مثلا اگه عکس یه رویداد باشه بهتون پیشنهاد میده این رویداد رو به تقویم خودکار اضافه کنه. [L]

🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Accio
Bushuray has received several updates since its initial release. It's now on v0.1.7 and is available on AUR under the name of bushuray-git (It builds from the main branch)
Feedbacks are appreciated and I'd be happy to hear'em
Forwarded from Geek Alerts
بلاخره IOS 26 توسط اپل منتشر شد، بزرگ‌ترین تغییرش طراحی «Liquid Glass» یا شیشه مایعه که همه چیز رو شفاف‌ و شیشه‌ای کرده؛ می‌تونید میزان شفافیتش رو هم کم و زیاد کنید.

ویژگی اختیاری Call Screening که اضافه شده کارش اینه وقتی یه ناشناس زنگ میزنه، ازش اسم و دلیل تماس رو میپرسه و بعد به شما اطلاع میده و میتونید تماس رو جواب بدید، هدفش جلوگیری از تماس‌های اسپم هست.

امکان Hold Assist هم برای وقتی هست که با جایی تماس گرفتید و شمارو پشت خط نگه میدارن، توی این حالت وقتی اپراتور جواب بده گوشی بهتون خبر میده.

برنامه Messages با هدف رقابت با واتساپ و تلگرام امکان انتخاب پس‌زمینه، ایجاد نظرسنجی، پیش‌نمایش عکس‌ها، فیلتر کردن پیامک‌ها و پوشه اسپم رو اضافه کرده. برنامه‌های دیگه هم تغییرات داشتن اما مهم‌ترین تغییرات بعدی برای هوش‌مصنوعی اپل هست که فقط روی نسل جدید دستگاه‌های اپلی (آیفون ۱۵ به بعد) فعال میشن.

ترجمه زنده Live Translation کمک میکنه وقتی پیام جدید میگیرید خودکار به زبان جدید ترجمش کنه، حتی روی تماس صوتی و تصویری هم کار میکنه و فعلا از زبان‌های انگلیسی، فرانسوی، آلمانی، پرتغالی و اسپانیایی پشتیبانی میکنه.

یک هوش بصری هم اضافه کردن که با زدن دکمه پاور و وولوم پایین به صورت همزمان فعال میشه، یه منو جدیده که باهاش هوش‌مصنوعی اپل صفحه گوشی رو تحلیل میکنه، مثلا اگه عکس یه رویداد باشه بهتون پیشنهاد میده این رویداد رو به تقویم خودکار اضافه کنه. [L]

🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Geek Alerts
Forwarded from Geek Alerts
Forwarded from Linuxor ?
چت جی پی تی لو داده که مردم چه استفاده ای ازش می‌کنن!

برای بخش برنامه نویسی با یه ضرب و تقسیم ساده به عدد 0.315 درصد می‌رسیم؛ با توجه به تعداد یوزر های چت جی پی تی که 800 میلیونه حدود 2.5 میلیون برنامه نویس داریم عددی که خیلی بزرگ به‌حساب میاد.


@Linuxor
Forwarded from Linuxor ?
اگه بگم ترنسفورمر ها به اندازه ترانزیستور ها نقش توی رشد کامپیوتر داشتن دروغ نگفتم؛ راستم نگفتم فقط قافیه داشت گفتم بزار بگم

@Linuxor
یه ابزار خفن به اسم DotNetArch هست که تو چند ثانیه برات یه پروژه .NET با معماری تمیز و آماده می‌سازه، از لایه‌ها و CRUD گرفته تا دیتابیس و کانفیگ. دیپلوی، مایگریشن و حتی Docker رو هم خودش هندل می‌کنه.

https://github.com/moein-rezaee/DotNetArch

@DevTwitter | <Moein Rezaee/>
Audio
اسم این شماره می‌تونست «احمقانه‌ترین چیزی که شنیدم» باشه که مخاطب جلب کنه ولی زندانی‌ها مهمترن! در این شماره از حباب هوش مصنوعی می‌گیم و آپدیت پولدارترین آدم جهان. در مورد سانسور حرف می‌زنیم و می‌بینیم احمقانه‌ترین چیزی که مدیرعامل aws شنیده چیه.

https://youtu.be/qQU4ECS9opE

00:00 - رادیوجادی ۱۹۹ و داستان‌های سفر
04:20 - سورس بیسیک مایکروسافت روی گیت هاب
07:50 - توقف استخدام‌های هوش مصنوعی در متا و بحث حباب ای آی
09:19 - احمقانه‌ترین چیزی که شنیده ام؛ عدم استخدام تازه واردها به خاطر ای آی
16:24 - قرارداد ۳۰۰ میلیاردی اوپن ای آی و اوراکل و پولدارترین آدم دنیا
22:20 - نامه ۵۰۰ امضایی رمزنگاران علیه کنترل چت‌های اتحادیه اروپا
27:50 - نیم نگاهی به ماجراهای نپال با جرقه سانسور شبکه‌های اجتماعی
29:26 - لیک شدن اطلاعات گیج، شرکت پشت فیلترینگ بزرگ چین
30:31 - بخش آخر
32:07 - پیام‌های آخر

#پادکست
Forwarded from ASafaeirad
Forwarded from Abolfazl Devs (ixAbolfazl)
🔸 اگه دوست دارید ریپو های ترند روز گیتهاب (اونایی که در اون روز بیشترین استار رو گرفتن) رو تو یه کانال تلگرام داشته باشید، این کانال هر 6 ساعت ریپازیتوری های ترند اون روز گیتهاب رو میزاره👇

https://t.iss.one/github_trending_daily
Forwarded from Linuxor ?
Forwarded from یه شعر (Poem Bot)
مولانا | دیوان شمس | رباعیات | رباعی شمارهٔ ۱۹۳۲

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

#مولانا | گنجور
📍@iipoem
اگر ترمینال پرسن هستید از اینجا قیمت دلار و بیت کوین رو چک کنید

https://github.com/parvvaresh/PriceScraperCLI


@DevTwitter | <Alireza Parvaresh/>
شاید با protobuf یا msgpack از قبل آشنا باشید. این استاندارد ها هر کدوم یه فرمت باینری برای serialise deserialize دیتا هستن.
اما تنها آپشن ها نیستند، اگر ارسال کننده و دریافت کننده هردو گولنگی باشن میتونید از encoder decoder مخصوص خود گولنگ استفاده کنید که پرفورمنس بالایی داره و استفاده ازش ساده‌ست. اسمش هم هست gob.

https://go.dev/blog/gob