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
Forwarded from Python Hints
#Quick
یکی از دلایل خوب استفاده از containar اینه که آپدیت ورژن‌ها ساده‌تر باشه!

پروژه‌ای رو داشتم که هنوز از Postgres 12 استفاده می‌کرد؛ ۱۴ نوامبر ۲۰۲۴ پشتیبانی این نسخه تموم شده (سرچ کردم حفظ نیستم).
بعد بنده خدا مدیر شرکت می‌خواست optimization بزنه که مشکلاتش کمتر بشه، همین که ابزارهایی که استفاده می‌کردند رو آپدیت کردم و البته معماری سیستم رو کمی بهتر (مثلاً برای دسترسی به یک سری سرویس‌های داخلی چون نتونسته بودند کانفیگ کنند، درخواست‌ها رو از اینترنت رد می‌کردند که خودش باعث میشه latency زیاد بشه) بیش از ۷۰-۸۰٪ مشکلاتشون حل شد.
بخصوص میزان مصرف منابع!

خلاصه که، اون ایمیج لعنتی رو هر‌ از گاهی یک آپدیت بزنید. از کانتینرها برای همین استفاده می‌کنیم.
در سیستم‌های توزیع‌شده همیشه یه نگرانی اساسی وجود داره:
اگر یکی از سرویس‌ها بی‌صدا از کار بیفته، بقیه چطور متوجه می‌شن؟
اینجاست که Heartbeat Pattern وارد عمل میشه
یه سیگنال ساده و دوره‌ای که تضمین می‌کنه سیستم بفهمه هر جزء هنوز زنده‌ست یا نه.

کجا استفاده میشه؟
توی Load Balancerها برای تشخیص سرورهای سالم
توی Kubernetes (liveness و readiness probes)
توی دیتابیس‌های توزیع‌شده مثل Cassandra یا MongoDB
من توی مقاله‌ی جدیدم در Medium، این الگو رو توضیح دادم — از تعریف و کاربردها تا چالش‌ها و یه نمونه پیاده‌سازی با Go.

متن کامل مقاله:
https://medium.com/@a.mousavi/understanding-the-heartbeat-pattern-in-distributed-systems-5d2264bbfda6

سورس کد کامل:
https://github.com/arash-mosavi/go-test-heartbeat-pattern

@DevTwitter | <Arash Mousavi/>
Forwarded from Geek Alerts
خبر خوب، پیام‌رسان سیگنال به صورت کامل پست کوانتوم شد. یعنی پیام‌های شما در آینده هم قابل رمزگشایی نیست، قبلا فقط شروع مکالمه پست کوانتوم بود ولی بعد از شروع به رمزنگاری کلاسیک (ECDH) وابسته بود.

الان با SPQR یک لایه مقاوم کوانتومی به کل ارتباط اضافه میشه. توضیح دادن که اگه دستگاه شما پشتیبانی کنه و برنامه سیگنال شما آپدیت باشه به مرور برای شما این ویژگی فعال میشه.

همچنین خوبه بدونید واتساپ از پروتکل سیگنال برای ارتباط استفاده میکنه، (که تیم سیگنال اجرای درست و امنیتش رو تایید کرده) این یعنی ویژگی‌های امنیتی که سیگنال میگیره (مثل این SPQR) خودکار به واتساپ هم بعدا اضافه میشن. منتظر باشید ماه‌های آینده واتساپ هم پست کوانتوم میشه. [L]

🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from یه شعر (Poem Bot)
مولانا | دیوان شمس | رباعیات | رباعی شمارهٔ ۱۹۵۸

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

#مولانا | گنجور
📍@iipoem
Forwarded from Linuxor ?
یه چیزی برای گولنگ پیدا کردم طلاست، پیدا کردن منابع برای گولنگ کار راحتی نیست و منابع کمی نسبت به بقیه زبانا در دسترسه اینجا اومدن لیستی از کتاب های مفید برای یادگیری گولنگ رو جمع کردن از مبتدی بگیر تا پیشرفته و برنامه نویسی بکند وب:

github.com/dariubs/GoBooks

نکته خوبش اینه برای هر کتاب یه پاراگراف توضیح هم نوشته که قبلش ببینید براتون مفیده یا نه

@Linuxor
Forwarded from Accio
Finally, It's here. AI models literally plot to blackmail and murder employees when given the chance in order to survive:

Youtube Video

Original paper
Forwarded from جادی | Jadi
نیما دوست قدیمی منه و آدم با سوادی در حوزه فلسفه و ادبیات است. گفتم این دوره اش رو اینجا بذارم شاید دوره و کانالش برای افرادی جالب باشه.
Forwarded from هزارتو
وقتی قصه آغاز می‌شود

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



@hezaartoomag
کامپایلرهای درجا (JIT Compilers) در JVM چگونه پرفورمنس برنامه‌ها را بهبود می‌دهند؟
می‌دونیم که برنامه‌های نوشته شده با جاوا، ابتدا به بایت‌کد (bytecode) کامپایل میشن و JVM بایت‌کدها رو به‌صورت مفسری اجرا می‌کنه. این فرآیند نسبت به این که کدهای جاوا مستقیم به زبان ماشین کامپایل و اجرا بشن کندتره اما وجود همین مکانیزمه که جاوا رو کراس‌پلتفرم می‌کنه.
برای حل این مساله، دو کامپایلر درجا به نام‌های C1 و C2 در JVM وجود دارن. وظیفه این کامپایلرها به‌طور خلاصه اینه که قسمت‌هایی از برنامه که بیشتر از میزان مشخصی اجرا میشن (اصطلاحا نقاط داغ) رو به زبان ماشین کامپایل می‌کنن تا اون قسمت‌ها دیگه به‌صورت مفسری اجرا نشن. کدهای ماشینی که این کامپایلرها تولید می‌کنن در محلی از حافظه به نام Code Cache ذخیره میشه.
واحد کامپایل برای کامپایلرهای درجا، متده. تعداد دفعاتی که یه متد اجرا میشه توسط JVM ذخیره میشه و وقتی این تعداد از میزان مشخصی بالاتر بره، کامپایلرهای درجا وارد عمل میشن.
نحوه عملکرد این دو کامپایلر به‌طور خلاصه به این صورته:
۱- متد به‌صورت پیش‌فرض، مفسری اجرا میشه.
۲- وقتی تعداد دفعات اجرای متد از مقدار خاصی بیشتر بشه، کامپایلر C1 اون متد رو به زبان ماشین کامپایل می‌کنه. همچنین C1 دستورهایی رو در متد کامپایل شده قرار میده تا اطلاعاتی رو درباره جزئیات عملکرد متد در طول اجرای برنامه جمع‌آوری کنن (پروفایلینگ). این اطلاعات بعدا توسط C2 استفاده میشن.
۳- اگر متد همچنان زیاد اجرا بشه یعنی واقعا متد پرکاربرد و اصطلاحا داغیه. اینجا C2 وارد عمل میشه و متد رو دوباره به کد ماشین کامپایل می‌کنه. اما این بار C2 از اطلاعاتی که از اجرای متد در طول برنامه جمع‌آوری شده (با استفاده از دستورایی که C1 به متد اضافه کرده بود) استفاده می‌کنه و با این اطلاعات میتونه بهینه‌ترین و سریع‌ترین کد ماشین ممکن رو تولید کنه.
پس ممکنه متدی که کم اجرا میشه هیچوقت به کد ماشین کامپایل نشه. یا متدی با C1 کامپایل بشه اما به اندازه‌ای زیاد اجرا نشه که C2 کامپایلش کنه. این که دقیقا بعد از چندبار اجرای یه متد این دوتا کامپایلر وارد عمل بشن قابل تنظیمه اما مقادیر پیش‌فرضی که دارن احتمالا برای اکثر برنامه‌ها مناسبه و نیازی به تغییرشون نیست.

@DevTwitter | <Mostafa Nasiri/>
Forwarded from Linuxor ?
خبر های خوبی برای هکرا توی راهه ...

توی 12 ماه گذشته، برنامه‌های باگ بانتی HackerOne به‌طور کلی 81 میلیون دلار پرداخت کردن که افزایشی 13 درصدی نسبت به سال گذشته داشته. تنها 10 برنامه برتر سهمی برابر با 21.6 میلیون دلار داشتن.


هکر وان (پلتفرمی که به هکرا بابت پیدا کردن باگ پول میده) گزارش رسمی خودشو منتشر کرده و جدول هزینه هایی که بابت باگ ها می‌داده رو منتشر کرده. این جدول میانگین پرداخت ها توی صنایع مختلفه اگه خواستید وارد باگ بانتی بشید کمک می‌کنه تصمیم بهتری بگیرید.


@Linuxor
Forwarded from SUT Ad
سال ۹۵ بود...
یه کانال کوچیک زدیم برای اینکه با چندتا از رفقای شریفی، خاطرات و روزمرگی‌های دانشجویی‌مونو با چاشنی طنز بنویسیم. نمی‌دونستیم یه روز می‌تونه تبدیل بشه به یکی از بزرگ‌ترین کانال‌های دانشجویی تلگرام!

🔸 اسمش رو هم گذاشتیم:
👉 🔥  SUT Twitter

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

اگر تو هم دوست داری مطالب بامزه دانشجویی بخونی به جمعمون بیا: 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Linuxor ?
جدیدا کار با داده های سنگین خیلی ترند شده و مسلما بازار کار خوبی هم براش ایجاد شده، ولی مسیر ورود بهش و یادگیریش یکم گنگه
اینجا یه دوره رایگان 9 هفته ای همراه با تمرین داره برگزار کنندش یه سری افراد رندوم توی کشور های مختلفه که بسیار مناسب برای مهندسای نرم افزاره (فقط چیزای ابتدایی مثل پایتون و SQL و... رو باید یکم بدونید) هم ویدیو توی یوتیوب میزارن هم آموزش عملی می‌دن.

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


github.com/DataTalksClub/data-engineering-zoomcamp

@Linuxor
گیت‌هاب نسخه سه بعدی و قابل چاپ رابرداک رو برای چاپ توی پرینتر سه بعدی به صورت متن باز و رایگان گذاشته:
https://github.com/martinwoodward/octoprints

@DevTwitter | <Mohsen Shabanian/>
Forwarded from Linuxor ?
می‌دونستین بنیاد لینوکس یه پلتفرم داره به اسم Hyperledger Fabric؟ این پلتفرم به سازمان‌ها امکان می‌ده که شبکه‌های بلاک‌چین خصوصی و مجاز بسازن که امن، مقیاس‌پذیر و قابل سفارشی‌سازی باشه.

برای مثال، Walmart باهاش تونست زنجیره تأمین مواد غذایی‌شو شفاف کنه. با این سیستم، هر محصول از مزرعه تا فروشگاه قابل ردیابی شد و اگر مشکلی مثل آلودگی یا فساد وجود داشت، محل دقیق منبع محصول در عرض چند ثانیه شناسایی می‌شد. قبل از استفاده از بلاک‌چین، این فرآیند ممکن بود روزها طول بکشه و هزینه و ریسک زیادی داشت، اما با Fabric، هم سرعت بالا رفت و هم اعتماد به اطلاعات تامین‌کنندگان و محصولات زیاد شد.

برای شروع یادگیری و استفاده از Hyperledger Fabric، می‌تونید از منابع رسمی و نمونه‌های آماده این پلتفرم استفاده کنید. اول راه مستندات رسمی Fabric رو بخونید تا با معماری، اجزا و مفاهیم پایه‌ای مثل Peer، Orderer، Chaincode و Channel آشنا بشید. بعدش می‌تونید با نمونه‌های کد های زیر تمرین کنید و یه شبکه بلاک‌چین ساده بسازید، قرارداد هوشمند بنویسید و تراکنش‌ها رو اجرا کنید.

github.com/hyperledger/fabric-samples

@Linuxor
Forwarded from Linuxor ?
Media is too big
VIEW IN TELEGRAM
تست نوشتن یکی از مهم‌ترین بخش‌های توسعه وب‌سایت و نرم‌افزاره و یکی از معروف‌ترین ابزارها برای وب Playwright هستش که باهاش تست های خودکار برای مرورگر می‌تونید بنویسید زبان‌های برنامه‌نویسی مختلف مثل JavaScript، Python و C#، ساپورت می‌کنه باهاش می‌تونید تست‌های end-to-end بنویسید تست‌های چندصفحه‌ای و حتی سناریوهای همزمان رو به راحتی اجرا کرد. اگه آشنایی با تست نوشتن ندارید این ویدیوی معرفیش رو ببینید و ببینید چطوری به سادگی تست ها نوشته می‌شن و اجرا می‌شن هوش مصنوعی هم داره و خطا هاتون رو فیکس می‌کنه چیز معروفیه اکثرا ازش استفاده می‌کنن و حتی امکان ریکورد کردن زنده هم داره و به صورت زنده هرجایی از صفحه وب کلیک کنید کدش رو براتون می‌نویسه. (ویدیو رو کامل ببینید)

@Linuxor
Forwarded from Linuxor ?
تاحالا به این فکر کردین که چرا هکرا نمی‌آن و یه چیزی برای شبیه سازی حمملاتشون به صورت داکری بسازن که بقیه بتونن با یه کامند اجراش کنن ؟

این کارو کردن و اسمش vulhub هستش اینجارو کلون کنید روی سیستمتون و هر فولدرش یه آسیب پذیری معروف (با فلان CVE) وجود داره فقط کافیه مثل عکس بالا برید توش و بعدش با داکر کامپوز با یه کامند بالا بیارینش و روی دامین و سایت آسیب پذیر یا لوکالتون تستش کنید

برای نصبش صفحه اصلی ریپو رو بخونید :
github.com/vulhub/vulhub

@Linuxor
Qwen dropped smaller (competitive) VLM - competitive to GPT-5 Mini

> 30B A3B MoE
> Reasoning and non-reasoning
> 256K context (can go up to 1M)
> Multilingual (32 languages)

https://huggingface.co/Qwen/Qwen3-VL-30B-A3B-Instruct

@DevTwitter | <Vaibhav (VB) Srivastav/>
مبحث جذاب و پر کاربرد Accessor در لاراول

فرض کنید، قصد دارید یکسری از دیتا هارو قبل از اینکه به دست کاربر برسه، شامل تغییراتی بشه به عنوان مثال میخوایید عکس هارو لینک دار کنید، به راحتی میتونید اینکارو با accessor ها در مدل مربوطه انجام بدین

به شدت شبیه cast ها هستن ولی یک تفاوت جزئی اما مهم دارن، اونم اینه که از cast ها معمولا برای تغییر دیتا تایپ مورد نظر استفاده میشه

حالا چه مزیت هایی برای شما داره؟؟! اینکه دیگه نیاز نیست در بیزینیس لاجیک خودتون دیتا رو map و یا حتی transform کنید که باعث میشه کد بیس اصلی مرتب و تمیز تر باشه

نکته : accessor ها تا حدودی سنگین هستن، پس عملیات های پیچیده رو به هیچ عنوان در این متد ها قرار ندین


@DevTwitter | <Mojtaba Zaferani/>
Forwarded from Meitix
چرا کافکا سریعه؟

یکی از حقه‌های اصلیش بهش می‌گن zero copy. معمولا وقتی یه برنامه بخواد داده‌ای رو از دیسک بفرسته رو شبکه، چند بار بی‌خود کپی می‌شه بین بافرهای مختلف: یه بار از دیسک به حافظه، یه بار از حافظه به فضای کاربر، یه بار از اون‌جا به بافر سوکت، بعد تازه می‌ره بیرون. یعنی انگار یه بسته رو هی از یه دست به یه دست دیگه می‌دی تا آخر برسه دست پستچی.
کافکا میگه نه، این همه کار برای چیه؟ از یه ترفند کرنل لینوکس به اسم sendfile استفاده کرد. اون باعث می‌شه داده مستقیم از دیسک بره توی سوکت شبکه، بدون اینکه وسط راه تو حافظه‌ی برنامه کپی بشه. اینجوری CPU کمتر درگیر می‌شه، حافظه کمتر مصرف می‌شه، و کل جریان سریع‌تر تموم می‌شه.

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