Forwarded from کانال مهرداد لینوکس
✅ قدرتمند و ساده مثل API Blueprint
زبان طراحی و توضیح (description language) ساده API Blueprint یک زبان سطح بالا برای APIهای وبه که با استفاده از قالب Markdown نوشته میشه. این زبان برای طراحی اولیه (design-first) API، مستندسازی، نمونهسازی، و تست API استفاده میشه.
✨هدفش اینه که:
🔹زبان ساده و قابل فهمی داشته باشه؛
🔸تعامل و همکاری بین تیمها، توسعهدهندگان و
🔹حتی مشتریان رو تسهیل کنه؛
🔸با ابزارهای مختلف سازگار باشه؛
سطح پست : #متوسط
#برنامه_نویسی
#programming
@MehrdadLinuxchannel
زبان طراحی و توضیح (description language) ساده API Blueprint یک زبان سطح بالا برای APIهای وبه که با استفاده از قالب Markdown نوشته میشه. این زبان برای طراحی اولیه (design-first) API، مستندسازی، نمونهسازی، و تست API استفاده میشه.
✨هدفش اینه که:
🔹زبان ساده و قابل فهمی داشته باشه؛
🔸تعامل و همکاری بین تیمها، توسعهدهندگان و
🔹حتی مشتریان رو تسهیل کنه؛
🔸با ابزارهای مختلف سازگار باشه؛
ا گرچه Swagger / OpenAPI استاندارد غالب اند
اگر دنبال جایگزین سبکتر و سادهتر برای Swagger اید
اگر خوانایی برای افراد غیرتکنیکی براتون خیلی مهمه API Blueprint
را بررسی کنید
سطح پست : #متوسط
#برنامه_نویسی
#programming
@MehrdadLinuxchannel
Forwarded from IRCF | اینترنت آزاد برای همه
نسخه ۳.۲ از #فیلترشکن رایگان #oblivionDesktop برای ویندوز، لینوکس و مکاواس در دسترس قرار گرفت.
بروزرسانی هسته مسکپلاس به نسخه ۲.۸، رفع مشکل اجرای آپدیتر در ویندوز، رفع برخیاز خطاهای برنامه، رفع مشکل عدم نمایش وضعیت اتصال در برخی از ارائهدهندگان اینترنت (هنگام استفاده از testUrl پیشفرض) و ...، از جمله تغییرات ایننسخه هستند.
🚀 github.com/bepass-org/oblivion-desktop/releases
💡 درحال حاضر متد اتصال مسک با اندپوینت سفارشی و همینطور سایر متدها با اندپوینت IPv6 روی برخی از سرویسدهندهها کار میکنن، اما برای عبور کامل از محدودیتها منتظر بروزرسانی هسته وارپپلاس هستیم.
🔍 ircf.space/software
@ircfspace
بروزرسانی هسته مسکپلاس به نسخه ۲.۸، رفع مشکل اجرای آپدیتر در ویندوز، رفع برخیاز خطاهای برنامه، رفع مشکل عدم نمایش وضعیت اتصال در برخی از ارائهدهندگان اینترنت (هنگام استفاده از testUrl پیشفرض) و ...، از جمله تغییرات ایننسخه هستند.
🚀 github.com/bepass-org/oblivion-desktop/releases
💡 درحال حاضر متد اتصال مسک با اندپوینت سفارشی و همینطور سایر متدها با اندپوینت IPv6 روی برخی از سرویسدهندهها کار میکنن، اما برای عبور کامل از محدودیتها منتظر بروزرسانی هسته وارپپلاس هستیم.
🔍 ircf.space/software
@ircfspace
Forwarded from DevTwitter | توییت برنامه نویسی
نسخه Firefox 143 هم اومد!
- پیشنمایش دوربین وقتی سایت درخواست دسترسی میکنه
- گزینه برای حفظ یا حذف دانلودها در حالت Private
- محافظت بیشتر در برابر fingerprinting
- تغییرات جدید CSS و بهبود UI در Android و Windows
@DevTwitter | <MehrdadLinux/>
- پیشنمایش دوربین وقتی سایت درخواست دسترسی میکنه
- گزینه برای حفظ یا حذف دانلودها در حالت Private
- محافظت بیشتر در برابر fingerprinting
- تغییرات جدید CSS و بهبود UI در Android و Windows
@DevTwitter | <MehrdadLinux/>
Forwarded from a pessimistic researcher (Kc)
اکانت من توی توییتر اینه :
https://x.com/Mh_khoshechin
منتهی باهاش توی توییتر فارسی نیستم و تا حدی آکادمیک نگهش داشتم
یه اکانت دیگه دارم که سعی میکنم با اون توی توییتر فارسی هم باشم
https://x.com/pessimistic_kc
https://x.com/Mh_khoshechin
منتهی باهاش توی توییتر فارسی نیستم و تا حدی آکادمیک نگهش داشتم
یه اکانت دیگه دارم که سعی میکنم با اون توی توییتر فارسی هم باشم
https://x.com/pessimistic_kc
X (formerly Twitter)
Mohammad Hossein Khoshechin (@Mh_khoshechin) on X
PhD student @ MPI-SWS Interested in Formal Verification / Distributed Systems / Concurrency Theory / @[email protected]
Forwarded from Namatek media
This media is not supported in your browser
VIEW IN TELEGRAM
به مناسبت روز برنامهنویس🧑💻👩💻
از همه کدنویسانی که تلاششان دلیل پیشرفت جامعه در بسیاری از زمینهها و واقعی شدن خیلی از رویاها بوده، تشکر میکنیم.🫶
روزتون مبارک خلاقهایِ دوست داشتنی💚
تخفیفهای هیجانانگیز بستههای دپارتمان کامپیوتر
+
کد هدیه 400 تومانی: prg400
فقط برای امروز⏳
برای مشاهده تخفیف ها اینجا کلیک کنید👇🏼
🔗 https://nmtk.ir/teleac
🌱 نماتک، اولین رسانه تصویری مهارتی کشور 🌱
❇️مشاوره رایگان و پشتیبانی:
🌐 www.namatek.com
☎️ 021-78581111
@Namatek_Media
از همه کدنویسانی که تلاششان دلیل پیشرفت جامعه در بسیاری از زمینهها و واقعی شدن خیلی از رویاها بوده، تشکر میکنیم.🫶
روزتون مبارک خلاقهایِ دوست داشتنی💚
تخفیفهای هیجانانگیز بستههای دپارتمان کامپیوتر
+
کد هدیه 400 تومانی: prg400
فقط برای امروز⏳
برای مشاهده تخفیف ها اینجا کلیک کنید👇🏼
🔗 https://nmtk.ir/teleac
🌱 نماتک، اولین رسانه تصویری مهارتی کشور 🌱
❇️مشاوره رایگان و پشتیبانی:
🌐 www.namatek.com
☎️ 021-78581111
@Namatek_Media
Forwarded from Gopher Academy
🔵 عنوان مقاله
Google Releases Genkit Go 1.0
🟢 خلاصه مقاله:
گوگل نسخهٔ ۱.۰ Genkit Go، فریمورک متنباز خود برای توسعهٔ هوش مصنوعی با زبان Go را منتشر کرده است. این نسخه تولیدی و پایدار اعلام شده و همراه با مجموعهای از ابزارهای مکمل ویژهٔ توسعهدهندگان Go ارائه میشود. Genkit Go برای ساخت برنامههای مبتنی بر مدلهای زبانی بزرگ طراحی شده و به مدلهای گوگل محدود نیست. همچنین یک آموزش مقدماتی برای شروع کار در دسترس است.
🟣لینک مقاله:
https://golangweekly.com/link/174076/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Google Releases Genkit Go 1.0
🟢 خلاصه مقاله:
گوگل نسخهٔ ۱.۰ Genkit Go، فریمورک متنباز خود برای توسعهٔ هوش مصنوعی با زبان Go را منتشر کرده است. این نسخه تولیدی و پایدار اعلام شده و همراه با مجموعهای از ابزارهای مکمل ویژهٔ توسعهدهندگان Go ارائه میشود. Genkit Go برای ساخت برنامههای مبتنی بر مدلهای زبانی بزرگ طراحی شده و به مدلهای گوگل محدود نیست. همچنین یک آموزش مقدماتی برای شروع کار در دسترس است.
🟣لینک مقاله:
https://golangweekly.com/link/174076/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Googleblog
Google for Developers Blog - News about Web, Mobile, AI and Cloud
Genkit Go 1.0 is released! Build production-ready AI apps with Go's speed & reliability using this open-source framework.
Forwarded from DevTwitter | توییت برنامه نویسی
این پروژه یه ابزار ساده برای تست و مقایسه آپتیمایزرهای PyTorch روی توابع ریاضی دوبعدیه. میتونید ببینید هر آپتیمایزر چطور مسیر بهینهسازی رو طی میکنه و نتایجش رو با بقیه مقایسه کنید.
سورسکد پروژه:
https://github.com/AidinHamedi/Optimizer-Benchmark
@DevTwitter | <Fastnovel/>
سورسکد پروژه:
https://github.com/AidinHamedi/Optimizer-Benchmark
@DevTwitter | <Fastnovel/>
Forwarded from Frontend with Erfun👨🏻💻 (Erfun Ghodoosi)
یه خبر خیلی خوب براتون دارم بچه ها
Forwarded from Frontend with Erfun👨🏻💻 (Erfun Ghodoosi)
فوتبالی فرانت اند کارآموز میخواد😁
Forwarded from Frontend with Erfun👨🏻💻 (Erfun Ghodoosi)
و احتمالا شما بچه های چنل شانس خیلی بالایی داشته باشید
Forwarded from Frontend with Erfun👨🏻💻 (Erfun Ghodoosi)
به زودی اطلاعات بیشتر رو براتون میذارم
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
⭐️سه کتاب مرجع فارسی کامل برای شروع و یادگیری سیستم عامل:
🔹سه کتاب زیر به ساده ترین شکل ممکن و البته باجزئیات بیشتر منتشرکردم که هم برای تدریس مناسب هستند و هم برای یادگیری خودخوان.
🔹کتاب 1 . مبانی سیستم عامل
در 15 فصل به بررسی مفاهیم اساسی وموردنیاز برای شروع و یادگیری سیستم عامل پرداخته شده است.این کتاب پیش نیاز خوبی برای اکثر دوره های کامپیوترو IT خواهد بود.
🔸313 صفحه تماما رنگی فرمت pdf
🔸 کتاب1 به همراه فهرست کامل کتاب
————————————————-
🔹کتاب 2- مفاهیم سیستم عامل
این کتاب در12 فصل ترجمه کامل و بازنویسی شده سیستم عاملهای مدرن، آخرین ویرایش از اقای Andrew S. Tanenbaum (اندرو تننبام) است.
🔸810صفحه تماما رنگی فرمت pdf
🔸 کتاب2 به همراه فهرست کامل کتاب
——————————————
🔹کتاب 3- معماری سیستم عامل
این کتاب در 15 فصل ترجمه کامل و بازنویسی شده معماری سیستم عاملها نوشته
اقای Abraham Silberschatz (آبراهام سیلبرشاتز) است. این کتاب به عنوان مرجع جامع، اصول اساسی و مفاهیم پیشرفته سیستمعاملهای کامپیوتری است.
🔸530صفحه تماما رنگی فرمت pdf
🔸 کتاب3 به همراه فهرست کامل کتاب
دریافت کتاب:
https://learninghive.ir
🔹سه کتاب زیر به ساده ترین شکل ممکن و البته باجزئیات بیشتر منتشرکردم که هم برای تدریس مناسب هستند و هم برای یادگیری خودخوان.
🔹کتاب 1 . مبانی سیستم عامل
در 15 فصل به بررسی مفاهیم اساسی وموردنیاز برای شروع و یادگیری سیستم عامل پرداخته شده است.این کتاب پیش نیاز خوبی برای اکثر دوره های کامپیوترو IT خواهد بود.
🔸313 صفحه تماما رنگی فرمت pdf
🔸 کتاب1 به همراه فهرست کامل کتاب
————————————————-
🔹کتاب 2- مفاهیم سیستم عامل
این کتاب در12 فصل ترجمه کامل و بازنویسی شده سیستم عاملهای مدرن، آخرین ویرایش از اقای Andrew S. Tanenbaum (اندرو تننبام) است.
🔸810صفحه تماما رنگی فرمت pdf
🔸 کتاب2 به همراه فهرست کامل کتاب
——————————————
🔹کتاب 3- معماری سیستم عامل
این کتاب در 15 فصل ترجمه کامل و بازنویسی شده معماری سیستم عاملها نوشته
اقای Abraham Silberschatz (آبراهام سیلبرشاتز) است. این کتاب به عنوان مرجع جامع، اصول اساسی و مفاهیم پیشرفته سیستمعاملهای کامپیوتری است.
🔸530صفحه تماما رنگی فرمت pdf
🔸 کتاب3 به همراه فهرست کامل کتاب
دریافت کتاب:
https://learninghive.ir
Forwarded from DevTwitter | توییت برنامه نویسی
خیلی وقت بود میشنیدم که
پرامپت عادی بدرد مدل های زبانی نمی خوره
و وقتی یه پرامپت توصیفی به هر زبانی بهش بدی می تونه برداشت خودش رو داشته باشه ازش
برای همین بهترین راه برای اینکه منظورت رو دقیق بهش بگی استفاده از JSON Prompting.
منم اومدم ساخت چنین پرامپتی رو راحت تر کردم.
بخش ایده ای که توی ذهنت داری رو میگی، اونم برات یه JSON Prompt حاضر می کنه تا با خرج توکن کمتر به ایده ات برسی.
https://jsony.vercel.app/
@DevTwitter | <SoroushMB/>
پرامپت عادی بدرد مدل های زبانی نمی خوره
و وقتی یه پرامپت توصیفی به هر زبانی بهش بدی می تونه برداشت خودش رو داشته باشه ازش
برای همین بهترین راه برای اینکه منظورت رو دقیق بهش بگی استفاده از JSON Prompting.
منم اومدم ساخت چنین پرامپتی رو راحت تر کردم.
بخش ایده ای که توی ذهنت داری رو میگی، اونم برات یه JSON Prompt حاضر می کنه تا با خرج توکن کمتر به ایده ات برسی.
https://jsony.vercel.app/
@DevTwitter | <SoroushMB/>
Forwarded from جامعهٔ فارسی زبان کیدیای (Moein)
📱 KDE Connect – پلی بین میزکار و موبایل
اگر از کیدیای پلاسما استفاده میکنید، احتمالاً میخواید که میزکار و گوشیتون به هم وصل باشن. اینجاست که KDE Connect وارد میشه: یک ابزار قدرتمند و متنباز که گوشی و کامپیوتر شما رو یکپارچه میکنه.
ویژگیها و امکانات Kde Connect:
اشتراکگذاری پروندهها: پروندهها رو بدون کابل و مستقیم بین گوشی و میزکار منتقل کنید.
اعلانها روی میزکار: پیامها، تماسها و اعلانهای گوشی روی رایانهی نمایش داده میشن.
کنترل پخش موسیقی و صدا: آهنگها و پخشکنندهی رسانهی میزکار رو با گوشی کنترل کنید.
کنترل از راه دور: گوشی رو تبدیل به ماوس، صفحهکلید یا صفحهای لمسی کنید.
Copy & Paste مشترک: متنها و پیوندها رو بین گوشی و میزکار کپی و پیست کنید.
پشتیبانی از چند دستگاه: میتونید چند گوشی یا تبلت رو همزمان وصل کنید.
به علاوهی کلی امکانات دیگه.
در این جا هم بخوانید: https://kdeconnect.kde.org/
#چیزهای_کیدیای
@kde_fa
اگر از کیدیای پلاسما استفاده میکنید، احتمالاً میخواید که میزکار و گوشیتون به هم وصل باشن. اینجاست که KDE Connect وارد میشه: یک ابزار قدرتمند و متنباز که گوشی و کامپیوتر شما رو یکپارچه میکنه.
ویژگیها و امکانات Kde Connect:
اشتراکگذاری پروندهها: پروندهها رو بدون کابل و مستقیم بین گوشی و میزکار منتقل کنید.
اعلانها روی میزکار: پیامها، تماسها و اعلانهای گوشی روی رایانهی نمایش داده میشن.
کنترل پخش موسیقی و صدا: آهنگها و پخشکنندهی رسانهی میزکار رو با گوشی کنترل کنید.
کنترل از راه دور: گوشی رو تبدیل به ماوس، صفحهکلید یا صفحهای لمسی کنید.
Copy & Paste مشترک: متنها و پیوندها رو بین گوشی و میزکار کپی و پیست کنید.
پشتیبانی از چند دستگاه: میتونید چند گوشی یا تبلت رو همزمان وصل کنید.
به علاوهی کلی امکانات دیگه.
در این جا هم بخوانید: https://kdeconnect.kde.org/
#چیزهای_کیدیای
@kde_fa
Forwarded from Python Hints
#توضیح
خیلی وقتا بهم میگن؛ این چیزایی که میگی و تأکید میکنی روش برای کسی که تازه شروع کرده یا داره شروع میکنه خوب نیست، دست انداز میشه دلزده میشه و ....
اولاً من اینارو برای بچههای سطح بالاتر میگم؛ برای تازهکار شنیدنش خوبه ولی لزومی نداره روز اول بره سراغ این موارد.
ولی خب
یک مثال ساده میزنم همه درک کنند؛ زبان انگلیسی خوندن بچههای کوچیک رو دیدید ؟ زیر ۸ سال رو منظورم هست.
اگر سر کلاساشون نشسته باشید، هیچوقت درس دادن گرامر انگلیسی رو نمیبینید! گرامر جزو موارد سخت هست، چیز سخت دلزده میکنه بچه رو
ولی
این دلیل نمیشه معلم گرامر اشتباه استفاده کنه؛ توی طول آموزش بچه گرامر نخونده اصلا ولی موقع صحبت کردن از گرامر درست استفاده میکنه، حتی بعد چند ترم بدون خوندن گرامر پترن گرامر اشتباه رو هم یاد گرفته و اگر جلوش اشتباه بگی بهت میخنده
تست کنید 👆
داستان گیر دادن من هم همین هست؛ کسی که آموزش میده لزومی نداره تمام موارد و جزئیات رو به یک تازهکار بگه اما همین که توی آموزشش اشتباه نگه و از حالات درست استفاده کنه باعث میشه ذهن نیرویی که تربیت میکنه آماده باشه.
در نهایت:
همونطوری که خروجی همهی کلاسهای آموزش زبان انگلیسی، مترجمهای برتر ادبیات کلاسیک انگلیسی نیست و حتی ممکنه فقط
ازش در بیاد؛ قرار هم نیست خروجی همه شاگردهای شما
خلاصه؛ اگر حتی مقدمات یک چیزی رو درس میدی، باید اصول و قواعد رو رعایت کنی وگرنه خیانت داری میکنی
خیلی وقتا بهم میگن؛ این چیزایی که میگی و تأکید میکنی روش برای کسی که تازه شروع کرده یا داره شروع میکنه خوب نیست، دست انداز میشه دلزده میشه و ....
اولاً من اینارو برای بچههای سطح بالاتر میگم؛ برای تازهکار شنیدنش خوبه ولی لزومی نداره روز اول بره سراغ این موارد.
ولی خب
یک مثال ساده میزنم همه درک کنند؛ زبان انگلیسی خوندن بچههای کوچیک رو دیدید ؟ زیر ۸ سال رو منظورم هست.
اگر سر کلاساشون نشسته باشید، هیچوقت درس دادن گرامر انگلیسی رو نمیبینید! گرامر جزو موارد سخت هست، چیز سخت دلزده میکنه بچه رو
ولی
این دلیل نمیشه معلم گرامر اشتباه استفاده کنه؛ توی طول آموزش بچه گرامر نخونده اصلا ولی موقع صحبت کردن از گرامر درست استفاده میکنه، حتی بعد چند ترم بدون خوندن گرامر پترن گرامر اشتباه رو هم یاد گرفته و اگر جلوش اشتباه بگی بهت میخنده
تست کنید 👆
داستان گیر دادن من هم همین هست؛ کسی که آموزش میده لزومی نداره تمام موارد و جزئیات رو به یک تازهکار بگه اما همین که توی آموزشش اشتباه نگه و از حالات درست استفاده کنه باعث میشه ذهن نیرویی که تربیت میکنه آماده باشه.
در نهایت:
همونطوری که خروجی همهی کلاسهای آموزش زبان انگلیسی، مترجمهای برتر ادبیات کلاسیک انگلیسی نیست و حتی ممکنه فقط
I am a blackboard ازش در بیاد؛ قرار هم نیست خروجی همه شاگردهای شما
Dennis Ritchie باشه، اتفاقاً خیلیهاشون قراره خیلی زود متوجه بشوند اصلا علاقهای به برنامهنویسی ندارند فقط لایک شدن پستای اینستاگرامشون و ویدئو دادن توی یوتیوب براشون مهمهخلاصه؛ اگر حتی مقدمات یک چیزی رو درس میدی، باید اصول و قواعد رو رعایت کنی وگرنه خیانت داری میکنی
Forwarded from Gopher Academy
🔵 عنوان مقاله
Observability in Go: What Real Engineers Are Saying in 2025
🟢 خلاصه مقاله:
این مقاله با مرور دیدگاههای عملی مهندسان در سال ۲۰۲۵ و آنچه در Golang Weekly برجسته شده، نشان میدهد رویکرد غالب در مشاهدهپذیری Go بر سه ستون لاگ، متریک و تریس است و پروفایلینگ پیوسته بهطور فزایندهای به آن اضافه میشود. OpenTelemetry زبان مشترک تیمها برای ابزاردهی و مسیر داده است و با الگوی context در Go برای همبستگی تریسها بهخوبی همراه میشود؛ در کنار آن، ابزارهای بومی مانند pprof و runtime/trace برای دید عمیق سطح پایین بهکار میروند.
چالشهای واقعی بیشتر عملیاند: کنترل هزینه و کاردینالیتی، انتخاب نمونهبرداری که سیگنال را حفظ کند، و تعیین نگهداشت داده متناسب با چرخه رخدادها. تیمها بر لاگ ساختیافته، همبستگی سازگار میان تریس و متریک، و تعداد کمی SLO و سیگنال کلیدی باکیفیت تأکید دارند و برای بارهای ناهمگام و صفها توجه ویژه به انتشار context میگذارند. همچنین تجربه توسعهدهنده (قابلیت بازتولید محلی، آزمونهای CI برای رگرسیون تلِمتری و آزمایش بار پیشتولید) اهمیت بالایی دارد.
از نظر کارایی، با پیکربندی محتاطانه و نمونهبرداری، سربار SDKها و صادرکنندهها قابل مدیریت است، اما باید در هر بارکاری سنجیده شود. متریکهای زماناجرای Go و پروفایلها برای رصد فشار GC، تخصیصها و قفلها حیاتیاند و برخی تیمها برای کاهش نقاط کور از eBPF و پروفایلینگ پیوسته بهره میبرند.
جمعبندی رویکردی عملگراست: از تریسپذیری و چند متریک حیاتی شروع کنید، مسیرهای بحرانی کسبوکار را ابزاردهی کنید، شناسههای همبستگی را سراسری کنید، از ابتدا برای نگهداشت و هزینه بودجه بگذارید و تدریجی بهبود دهید. هدف پوشش کامل نیست؛ هدف درک سریع و قابل اتکا در زمان رخدادهای واقعی است.
🟣لینک مقاله:
https://golangweekly.com/link/173651/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Observability in Go: What Real Engineers Are Saying in 2025
🟢 خلاصه مقاله:
این مقاله با مرور دیدگاههای عملی مهندسان در سال ۲۰۲۵ و آنچه در Golang Weekly برجسته شده، نشان میدهد رویکرد غالب در مشاهدهپذیری Go بر سه ستون لاگ، متریک و تریس است و پروفایلینگ پیوسته بهطور فزایندهای به آن اضافه میشود. OpenTelemetry زبان مشترک تیمها برای ابزاردهی و مسیر داده است و با الگوی context در Go برای همبستگی تریسها بهخوبی همراه میشود؛ در کنار آن، ابزارهای بومی مانند pprof و runtime/trace برای دید عمیق سطح پایین بهکار میروند.
چالشهای واقعی بیشتر عملیاند: کنترل هزینه و کاردینالیتی، انتخاب نمونهبرداری که سیگنال را حفظ کند، و تعیین نگهداشت داده متناسب با چرخه رخدادها. تیمها بر لاگ ساختیافته، همبستگی سازگار میان تریس و متریک، و تعداد کمی SLO و سیگنال کلیدی باکیفیت تأکید دارند و برای بارهای ناهمگام و صفها توجه ویژه به انتشار context میگذارند. همچنین تجربه توسعهدهنده (قابلیت بازتولید محلی، آزمونهای CI برای رگرسیون تلِمتری و آزمایش بار پیشتولید) اهمیت بالایی دارد.
از نظر کارایی، با پیکربندی محتاطانه و نمونهبرداری، سربار SDKها و صادرکنندهها قابل مدیریت است، اما باید در هر بارکاری سنجیده شود. متریکهای زماناجرای Go و پروفایلها برای رصد فشار GC، تخصیصها و قفلها حیاتیاند و برخی تیمها برای کاهش نقاط کور از eBPF و پروفایلینگ پیوسته بهره میبرند.
جمعبندی رویکردی عملگراست: از تریسپذیری و چند متریک حیاتی شروع کنید، مسیرهای بحرانی کسبوکار را ابزاردهی کنید، شناسههای همبستگی را سراسری کنید، از ابتدا برای نگهداشت و هزینه بودجه بگذارید و تدریجی بهبود دهید. هدف پوشش کامل نیست؛ هدف درک سریع و قابل اتکا در زمان رخدادهای واقعی است.
🟣لینک مقاله:
https://golangweekly.com/link/173651/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Quesma
Observability in Go: What Real Engineers Are Saying in 2025 - Quesma Blog
Learn how Go practitioners ship telemetry in 2025 – what works, what hurts, and the tools, workflows, and guardrails they rely on for metrics, traces, and logs.
Forwarded from DevTwitter | توییت برنامه نویسی
خدایی وصل کردن llm به پروژه چقدر آسونه این پروژه تستی کمتر از ۱ ساعت بیشترش با جی پی تی نوشتم و بشدت آسون بود. و البته بسته scale پروژه هم داره.
https://github.com/x017/myai
@DevTwitter | <parsa/>
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 داشته باشی :)
➖➖➖➖➖➖➖➖➖➖
مشکل ما با 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 Laravel News
Building a Flexible Reporting System with Laravel Collections and Scopes https://laravel-news.com/building-a-flexible-reporting-system-with-laravel-collections-and-scopes
Laravel News
Building a Flexible Reporting System with Laravel Collections and Scopes - Laravel News
You've built custom collections and query scopes, but your reporting logic is still scattered across controllers, API endpoints, and commands. The same business insights get calculated differently in each place, making maintenance difficult and increasing…