Forwarded from Ninja Learn | نینجا لرن
💎 مشکل همزمانی یا همون Concurrency Problem 💎
امروز میخوایم یه موضوع خیلی مهم و جذاب رو با هم موشکافی کنیم:
مشکل همزمانی یا همون Concurrency Problem 🤓 شاید اسمش به گوشتون خورده باشه، ولی اگه دقیقتر بشناسیدش، میفهمید که چرا این موضوع اینقدر تو دنیای برنامهنویسی مهمه.
همزمانی یعنی چی؟ 🤔
اول از همه، بگم که وقتی از همزمانی حرف میزنیم، داریم در مورد اجرای چند تا کار بهصورت همزمان تو یه برنامه صحبت میکنیم. مثلاً فرض کنید یه برنامه دارید که داره همزمان چند تا درخواست کاربر رو مدیریت میکنه، یا داره یه سری عملیاتهای محاسباتی سنگین رو انجام میده. اینجاست که مفهوم همزمانی مطرح میشه. هدف همزمانی اینه که بتونیم از منابع سیستم بهینهتر استفاده کنیم و سرعت اجرای برنامه رو بالا ببریم 🚀
مشکل از کجا شروع میشه؟ 😬
مشکل وقتی پیش میاد که چند تا ترد (Thread) یا پردازش (Process) به یه منبع مشترک دسترسی پیدا میکنن. مثلاً فرض کنید دو تا ترد همزمان دارن یه متغیر رو آپدیت میکنن. اینجاست که ممکنه مقدار نهایی اون متغیر چیزی که انتظار داشتیم نباشه و این یعنی Race Condition 🏁
مثال عملی Race Condition 🛠️
فرض کنید یه اپلیکیشن بانکی دارید که باید موجودی حساب کاربر رو مدیریت کنه. حالا دو تا ترد مختلف میخوان همزمان این موجودی رو آپدیت کنن. مثلاً یه ترد داره پول به حساب اضافه میکنه و ترد دیگه داره از حساب برداشت میکنه. اگه این دو تا ترد همزمان و بدون هماهنگی دقیق اجرا بشن، ممکنه موجودی حساب بهطور نادرست محاسبه بشه 😱 این اتفاق دقیقاً مثالی از Race Condition هست.
راهحلها چی هستن؟ 🔧
خب حالا که مشکل رو فهمیدیم، بیایید ببینیم چجوری میتونیم جلوی این مشکلات رو بگیریم:
1️⃣ Locks (قفلها) 🛡️:
یه راهحل معمول استفاده از قفلهاست. وقتی یه ترد میخواد به یه منبع مشترک دسترسی پیدا کنه، اول اون رو قفل میکنه. اینجوری بقیه تردها باید صبر کنن تا اون ترد کارش رو تموم کنه و قفل رو آزاد کنه. این کار میتونه از بههمریختگی جلوگیری کنه، ولی خودش یه چالش دیگه به نام Deadlock ایجاد میکنه، جایی که دو یا چند ترد منتظر قفلهای همدیگه هستن و هیچکدوم نمیتونن کارشون رو پیش ببرن 😩
2️⃣ Atomic Operations (عملیات اتمی) 💥:
این عملیاتها طوری طراحی شدن که یا کامل انجام میشن یا اصلاً انجام نمیشن. یعنی وسطشون هیچ ترد دیگهای نمیتونه دخالت کنه. مثلاً اضافه کردن یه مقدار به یه متغیر میتونه یه عملیات اتمی باشه.
3️⃣ Synchronization (همگامسازی) ⏰:
با همگامسازی میتونید مطمئن بشید که یه ترد قبل از اینکه ترد دیگه کارش تموم بشه، کاری رو شروع نکنه. این کار معمولاً با استفاده از دستوراتی مثل synchronized در جاوا یا پایتون انجام میشه.
4️⃣ Thread Pools (مجموعه تردها) 🏊:
استفاده از Thread Poolها میتونه به مدیریت بهتر تردها کمک کنه. اینجوری تعداد تردها محدود میشه و از مشکلاتی مثل Overhead جلوگیری میکنید.
مشکلات ناشی از راهحلها 🤯
حالا که از راهحلها گفتیم، یه نکته خیلی مهم رو هم باید اضافه کنم: همه این روشها مشکلات خودشون رو دارن. مثلاً استفاده زیاد از قفلها میتونه کارایی برنامه رو کاهش بده، چون تردها باید منتظر بمونن تا قفل آزاد بشه. از طرف دیگه، اگه قفلها رو درست مدیریت نکنید، ممکنه برنامهتون دچار Deadlock بشه و کلاً قفل بشه 😵
نتیجهگیری 🎯
مشکل همزمانی یه موضوع پیچیده و حساس تو برنامهنویسیه که اگه درست مدیریت نشه، میتونه مشکلات بزرگی رو ایجاد کنه. باید همیشه به این فکر کنید که چطور میتونید از منابع مشترک بهینه استفاده کنید، بدون اینکه برنامهتون دچار مشکلاتی مثل Race Condition یا Deadlock بشه. پس دفعه بعدی که داشتید یه برنامه چندتردی نوشتید، حتماً به این نکات فکر کنید و مطمئن بشید که بهترین راهحل رو انتخاب کردید ✅
مرسی که تا اینجا همراه من بودید، امیدوارم این توضیحات براتون مفید بوده باشه. اگه سوال یا نظری دارید حتماً تو کامنتا بنویسید 😁✌️
@ninja_learn_ir
امروز میخوایم یه موضوع خیلی مهم و جذاب رو با هم موشکافی کنیم:
مشکل همزمانی یا همون Concurrency Problem 🤓 شاید اسمش به گوشتون خورده باشه، ولی اگه دقیقتر بشناسیدش، میفهمید که چرا این موضوع اینقدر تو دنیای برنامهنویسی مهمه.
همزمانی یعنی چی؟ 🤔
اول از همه، بگم که وقتی از همزمانی حرف میزنیم، داریم در مورد اجرای چند تا کار بهصورت همزمان تو یه برنامه صحبت میکنیم. مثلاً فرض کنید یه برنامه دارید که داره همزمان چند تا درخواست کاربر رو مدیریت میکنه، یا داره یه سری عملیاتهای محاسباتی سنگین رو انجام میده. اینجاست که مفهوم همزمانی مطرح میشه. هدف همزمانی اینه که بتونیم از منابع سیستم بهینهتر استفاده کنیم و سرعت اجرای برنامه رو بالا ببریم 🚀
مشکل از کجا شروع میشه؟ 😬
مشکل وقتی پیش میاد که چند تا ترد (Thread) یا پردازش (Process) به یه منبع مشترک دسترسی پیدا میکنن. مثلاً فرض کنید دو تا ترد همزمان دارن یه متغیر رو آپدیت میکنن. اینجاست که ممکنه مقدار نهایی اون متغیر چیزی که انتظار داشتیم نباشه و این یعنی Race Condition 🏁
مثال عملی Race Condition 🛠️
فرض کنید یه اپلیکیشن بانکی دارید که باید موجودی حساب کاربر رو مدیریت کنه. حالا دو تا ترد مختلف میخوان همزمان این موجودی رو آپدیت کنن. مثلاً یه ترد داره پول به حساب اضافه میکنه و ترد دیگه داره از حساب برداشت میکنه. اگه این دو تا ترد همزمان و بدون هماهنگی دقیق اجرا بشن، ممکنه موجودی حساب بهطور نادرست محاسبه بشه 😱 این اتفاق دقیقاً مثالی از Race Condition هست.
راهحلها چی هستن؟ 🔧
خب حالا که مشکل رو فهمیدیم، بیایید ببینیم چجوری میتونیم جلوی این مشکلات رو بگیریم:
1️⃣ Locks (قفلها) 🛡️:
یه راهحل معمول استفاده از قفلهاست. وقتی یه ترد میخواد به یه منبع مشترک دسترسی پیدا کنه، اول اون رو قفل میکنه. اینجوری بقیه تردها باید صبر کنن تا اون ترد کارش رو تموم کنه و قفل رو آزاد کنه. این کار میتونه از بههمریختگی جلوگیری کنه، ولی خودش یه چالش دیگه به نام Deadlock ایجاد میکنه، جایی که دو یا چند ترد منتظر قفلهای همدیگه هستن و هیچکدوم نمیتونن کارشون رو پیش ببرن 😩
2️⃣ Atomic Operations (عملیات اتمی) 💥:
این عملیاتها طوری طراحی شدن که یا کامل انجام میشن یا اصلاً انجام نمیشن. یعنی وسطشون هیچ ترد دیگهای نمیتونه دخالت کنه. مثلاً اضافه کردن یه مقدار به یه متغیر میتونه یه عملیات اتمی باشه.
3️⃣ Synchronization (همگامسازی) ⏰:
با همگامسازی میتونید مطمئن بشید که یه ترد قبل از اینکه ترد دیگه کارش تموم بشه، کاری رو شروع نکنه. این کار معمولاً با استفاده از دستوراتی مثل synchronized در جاوا یا پایتون انجام میشه.
4️⃣ Thread Pools (مجموعه تردها) 🏊:
استفاده از Thread Poolها میتونه به مدیریت بهتر تردها کمک کنه. اینجوری تعداد تردها محدود میشه و از مشکلاتی مثل Overhead جلوگیری میکنید.
مشکلات ناشی از راهحلها 🤯
حالا که از راهحلها گفتیم، یه نکته خیلی مهم رو هم باید اضافه کنم: همه این روشها مشکلات خودشون رو دارن. مثلاً استفاده زیاد از قفلها میتونه کارایی برنامه رو کاهش بده، چون تردها باید منتظر بمونن تا قفل آزاد بشه. از طرف دیگه، اگه قفلها رو درست مدیریت نکنید، ممکنه برنامهتون دچار Deadlock بشه و کلاً قفل بشه 😵
نتیجهگیری 🎯
مشکل همزمانی یه موضوع پیچیده و حساس تو برنامهنویسیه که اگه درست مدیریت نشه، میتونه مشکلات بزرگی رو ایجاد کنه. باید همیشه به این فکر کنید که چطور میتونید از منابع مشترک بهینه استفاده کنید، بدون اینکه برنامهتون دچار مشکلاتی مثل Race Condition یا Deadlock بشه. پس دفعه بعدی که داشتید یه برنامه چندتردی نوشتید، حتماً به این نکات فکر کنید و مطمئن بشید که بهترین راهحل رو انتخاب کردید ✅
#Concurrency #برنامه_نویسی #مشکل_همزمانی #RaceCondition #Deadlock #Synchronization #Threading #programming
YouTube | Instagram | Group
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
امنیت سرویسهای وب با WS-Security در SOAP:
امنیت در دنیای سرویسهای وب یکی از چالشهای اساسی است، بهویژه وقتی صحبت از پیامهای حساس و سیستمهای توزیعشده به میان میآید. در این میان،
WS-Security به عنوان یک استاندارد کلیدی در SOAP Web Services، نقش مهمی در تأمین امنیت پیامها ایفا میکند.
ویژگیهای برجسته WS-Security:
1- احراز هویت: با ارسال اطلاعات هویتی مانند UsernameToken، امنیت هویت کاربر تضمین میشود.
2- تمامیت دادهها: با استفاده از امضای دیجیتال (XML Signature) تضمین میشود که پیام در طول انتقال تغییر نمیکند.
3- محرمانگی: رمزنگاری پیامها (XML Encryption) از افشای اطلاعات جلوگیری میکند.
چرا WS-Security مهم است؟
این پروتکل با ارائه قابلیتهای امنیتی سطح بالا، مناسب برای سیستمهای توزیعشده و انتقال امن پیامها در محیطهای پیچیده است.
@DevTwitter | <Ahmad Esmaili/>
امنیت در دنیای سرویسهای وب یکی از چالشهای اساسی است، بهویژه وقتی صحبت از پیامهای حساس و سیستمهای توزیعشده به میان میآید. در این میان،
WS-Security به عنوان یک استاندارد کلیدی در SOAP Web Services، نقش مهمی در تأمین امنیت پیامها ایفا میکند.
ویژگیهای برجسته WS-Security:
1- احراز هویت: با ارسال اطلاعات هویتی مانند UsernameToken، امنیت هویت کاربر تضمین میشود.
2- تمامیت دادهها: با استفاده از امضای دیجیتال (XML Signature) تضمین میشود که پیام در طول انتقال تغییر نمیکند.
3- محرمانگی: رمزنگاری پیامها (XML Encryption) از افشای اطلاعات جلوگیری میکند.
چرا WS-Security مهم است؟
این پروتکل با ارائه قابلیتهای امنیتی سطح بالا، مناسب برای سیستمهای توزیعشده و انتقال امن پیامها در محیطهای پیچیده است.
@DevTwitter | <Ahmad Esmaili/>
Forwarded from Agora (Alireza Azadi)
امروز خیلی اتفاقی فهمیدم که پادکست دایجست بعد از بیشتر از دوسال دوباره شروع کرده به اپیزود دادن. درواقع ۳ ماهی حدودا میگذره از این شروع مجدد و تا الان هم ۳ اپیزود جدید منتشر کردن.
اگر شما مخاطب دایجست بودین، حتماً این خبر، خبر خوبیه براتون. اگر تا حالا دایجست رو نشنیدین، و بخوام براتون معرفی کنم، خیلی خلاصه ماجراش اینه که فرشاد محمودی در دایجست میاد و یک طیف وسیعی از مطالب رو به زبان ساده و هضم شده (همون طور که اسم پادکست دایجسته) برای شنونده تعریف میکنه. وقتی حرف از متنوع بودن موضوعات میزنم، داریم از طیفی میگیم که یک سمتش جنگه تا سرطان یه سر دیگهش از شرکتهای هرمیه تا برکسیت.
اگر شما هم علاقهمندیهای متنوع دارید، دایجست حتماً براتون جالب خواهد بود. خیلی خوبه که بهش سر بزنید.
دربارهی پادکست.
اگر شما مخاطب دایجست بودین، حتماً این خبر، خبر خوبیه براتون. اگر تا حالا دایجست رو نشنیدین، و بخوام براتون معرفی کنم، خیلی خلاصه ماجراش اینه که فرشاد محمودی در دایجست میاد و یک طیف وسیعی از مطالب رو به زبان ساده و هضم شده (همون طور که اسم پادکست دایجسته) برای شنونده تعریف میکنه. وقتی حرف از متنوع بودن موضوعات میزنم، داریم از طیفی میگیم که یک سمتش جنگه تا سرطان یه سر دیگهش از شرکتهای هرمیه تا برکسیت.
اگر شما هم علاقهمندیهای متنوع دارید، دایجست حتماً براتون جالب خواهد بود. خیلی خوبه که بهش سر بزنید.
دربارهی پادکست.
d.castbox.fm
Best free podcast app for Apple iOS and Android | Let words move you
Millions of podcasts for all topics. Listen to the best free podcast on Android, Apple iOS, Amazon Alexa, Google Home, Carplay, Android Auto, PC. Create...
Forwarded from LearnPOV | لرن پی او وی
به مناسبت روز پدر میتونید ریاکشن ندید! 😂
.
.
.
ولی حتما بخونید چون خیلی کوتاه و خلاصه ORM رو معرفی و بررسی کردیم 😁✅
.
.
.
Forwarded from متخصص وردپرس | پوینا
اگر چنین پیامی دریافت کردید
دقت کنید کلا تمامی otp ها این مشکل رو دارن و باید ورود با ادمین رو با otp غیر فعال کنید
این روزا این پیام رو برای همه سایتا میفرستن و پول میگیرن
@poinair پوینا
دقت کنید کلا تمامی otp ها این مشکل رو دارن و باید ورود با ادمین رو با otp غیر فعال کنید
این روزا این پیام رو برای همه سایتا میفرستن و پول میگیرن
@poinair پوینا
Forwarded from LearnPOV | لرن پی او وی
💎 آشنایی با ORMها، چی هستد و به چه کاری میان 💎
کلمه ORM و یا همون Object-Relational Mapping ابزاریه که به شما این امکان رو میده تا با استفاده از زبان های برنامهنویسی شیگرا، به راحتی با دیتابیس کار بکنید.
✅ مزایای ORMها
➊ کاهش کد نویسی
➋ افزایش خوانایی کد
➌ قابلیتهای جابجایی
➍ مدیریت خودکار ریلیشنها
❌ معایب ORMها
➊ عملکرد کمتر
➋ پیشرفته بودن برای مبتدیان
➌ محدودیتهای عملکردی
💯 بهترین ORM ها برای Node.js
1. Sequelize
2. TypeORM
کلمه ORM و یا همون Object-Relational Mapping ابزاریه که به شما این امکان رو میده تا با استفاده از زبان های برنامهنویسی شیگرا، به راحتی با دیتابیس کار بکنید.
یعنی دیگه نیازی نیست خودتون به صورت دستی به نوشتن کوئریهای پیچیده با sql خام بپردازید و میتونید تمرکز بیشتری رو روی منطق برنامهنویسی داشته باشید 💥
✅ مزایای ORMها
➊ کاهش کد نویسی
با استفاده از ORM، نیاز به نوشتن کد SQL کاهش پیدا میکنه و عملیات دیتابیس به صورت خودکار انجام میشه
➋ افزایش خوانایی کد
کد ORM بیشتر به زبان برنامهنویسی شما نزدیکه و فهم اون سادهتره.
➌ قابلیتهای جابجایی
با ORM میتونید به سادگی از یک دیتابیس به یک دیتابیس دیگه منتقل شد.
➍ مدیریت خودکار ریلیشنها
با ORM ها مدیریت روابط ( ریلیشنها ) بین جداول مختلف خیلی ساده تر میشه
❌ معایب ORMها
➊ عملکرد کمتر
برای برخی از عملیاتهای پیچیده مثل گذارش گیری ها ممکنه کارایی کمتری نسبت به نوشتن کد SQL خالص داشته باشن.
➋ پیشرفته بودن برای مبتدیان
درک کامل عملکرد ORM و چگونگی کارکرد اون میتونه برای برخی از دولوپرهای تازهکار سخت تر باشه.
➌ محدودیتهای عملکردی
برای سناریوهایی با نیازهای خاص و پیچیده، ممکنه ORM همه نیازهای مارو برآورده نکنه.
💯 بهترین ORM ها برای Node.js
1. Sequelize
یک ORM قدرتمند برای Node.js و دیتابیس های SQL با پشتیبانی از تعریف مدل، روابط پیچیده، و Migration.
2. TypeORM
به شخصه typeorm رو برای NestJS توصیه میکنم چون فوقالعاده مناسب برای TypeScript هستش که از database های SQL و NoSQL پشتیبانی میکنه.3. Mongoose
این یکی برای MongoDB بهکار میره و درواقع ODM هستش که با Schemaها، Middleware و قابلیت Validation، مدیریت دیتای NoSQL رو براتون اسون تر میکنه.4. Prisma
یک ORM مدرن و TypeScript-friendly برای دیتابیس های SQL با تمرکز بر سرعت، Type-Safty کوئریها.
#️⃣ #lazyloading #javanoscript
🫶 𝗖𝗛𝗔𝗡𝗡𝗘𝗟 | 𝗚𝗥𝗢𝗨𝗣
Forwarded from Code Module | کد ماژول (Mahan-Heydari)
Clerk، ابزاری کارآمد و ساده برای احراز هویت 😎
Clerk یک پلتفرم فوقالعادهست که تمام پیچیدگیهای مربوط به احراز هویت و مدیریت کاربران رو براتون هندل میکنه و دیگه نیازی نیست درگیر ساخت فرمهای پیچیده، مدیریت توکنها، احراز هویت دو مرحلهای و... باشید.
⚡️ سادگی و با چند خط کد، یه سیستم احراز هویت امن و مدرن رو به اپلیکیشنتون اضافه کنید.
‼️ چرا Clerk برای برنامهنویسها عالیه؟
✅ سرعت و سهولت یکپارچهسازی: با کتابخانههای آماده برای فریمورکها و زبانهای برنامهنویسی محبوب، خیلی سریع میتونید Clerk رو به پروژتون اضافه کنید.
✅ امنیت بالا: دیگه نگران آسیبپذیریهای امنیتی مربوط به احراز هویت نباشید. با رعایت بهروزترین استانداردهای امنیتی، خیالتون رو راحت میکنه.
✅ رابط کاربری قابل کاستومایز : ظاهر صفحات ورود و ثبتنام رو مطابق با برند و طراحی اپلیکیشنتون شخصیسازی کنید.
✅ پشتیبانی از روشهای مختلف احراز هویت: ورود با ایمیل، شماره تلفن، حسابهای شبکههای اجتماعی و...
✅ مدیریت آسان کاربران: داشبورد کاربری ساده و قدرتمند برای مدیریت کاربران و تنظیمات مربوط به اونها.
✅ صرفهجویی در زمان و هزینه: با استفاده از Clerk دیگه نیازی به صرف زمان و منابع برای توسعه و نگهداری سیستم احراز هویت اختصاصی ندارید.
اگر به دنبال یک راهحل حرفهای و کارآمد برای مدیریت احراز هویت کاربران میگردید، Clerk قطعاً گزینه خوبی هست، برای یادگیری این ابزار میتونید به داکیومنتش مراجعه کنید.
Document🌕
#authentication #clerk
@CodeModule
Clerk یک پلتفرم فوقالعادهست که تمام پیچیدگیهای مربوط به احراز هویت و مدیریت کاربران رو براتون هندل میکنه و دیگه نیازی نیست درگیر ساخت فرمهای پیچیده، مدیریت توکنها، احراز هویت دو مرحلهای و... باشید.
اگر به دنبال یک راهحل حرفهای و کارآمد برای مدیریت احراز هویت کاربران میگردید، Clerk قطعاً گزینه خوبی هست، برای یادگیری این ابزار میتونید به داکیومنتش مراجعه کنید.
Document
#authentication #clerk
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Syntax | سینتکس (𝙰𝚖𝚒𝚛𝚑𝚘𝚜𝚜𝚎𝚒𝚗)
Django_in_Production_Expert_tips,_strategies,_and_essential_frameworksفارسی.pdf
37.7 MB
درود خدمت رفقای سینتکسی
بنا به درخواست شما دوستان عزیز از منابع برای یادگیری مبتدی تا پیشرفته django و django api , ترجمه فارسی این کتاب :
django in production ...
در چنل قرار گرفت.
# توجه:
کتاب توسط گوگل ترنسلیت به فارسی ترجمه شده و چون برای استفاده شخصی بوده ممکنه از مرتب کردن ترجمه قسمت های ساده و بسیار پایه, شاید در برخی موارد خودداری شده باشه!(فکر نکنم در جایی از اینترنت بصورت pdf بتونین پیدا کنین چون خودم پیدا نکردم)❌🙄
بهتون توصیه میشه درکنار این ترجمه برای قسمت هایی که ترجمه نشدن کتاب اصلی رو هم داشته باشین تا دچار سردگمی نشین..
قسمت های اصلی و مهم کتاب ترجمه شدن!
در صورت رضایتتون دو کتاب دیگه :
django for api's و django for professionals
هم تو چنل قرار میدم.
امیدوارم مفید واقع باشه🙏🏻
#django #book
@Syntax_fa
بنا به درخواست شما دوستان عزیز از منابع برای یادگیری مبتدی تا پیشرفته django و django api , ترجمه فارسی این کتاب :
django in production ...
در چنل قرار گرفت.
# توجه:
کتاب توسط گوگل ترنسلیت به فارسی ترجمه شده و چون برای استفاده شخصی بوده ممکنه از مرتب کردن ترجمه قسمت های ساده و بسیار پایه, شاید در برخی موارد خودداری شده باشه!(فکر نکنم در جایی از اینترنت بصورت pdf بتونین پیدا کنین چون خودم پیدا نکردم)❌🙄
بهتون توصیه میشه درکنار این ترجمه برای قسمت هایی که ترجمه نشدن کتاب اصلی رو هم داشته باشین تا دچار سردگمی نشین..
قسمت های اصلی و مهم کتاب ترجمه شدن!
در صورت رضایتتون دو کتاب دیگه :
django for api's و django for professionals
هم تو چنل قرار میدم.
امیدوارم مفید واقع باشه🙏🏻
#django #book
@Syntax_fa
Forwarded from Syntax | سینتکس (𝙰𝚖𝚒𝚛𝚑𝚘𝚜𝚜𝚎𝚒𝚗)
دوستان این کتاب دارای مطالبی هست که توی منابع فارسی پیدا نمیشه..
حتی اگر جنگو رو فول هستین بازم نیم نگاهی بهش بندازید🔥
@Syntax_fa
حتی اگر جنگو رو فول هستین بازم نیم نگاهی بهش بندازید🔥
@Syntax_fa
Forwarded from Linuxor ?
یه نفر اومده منابعی که برای ماشین لرنینگ و هوش مصنوعی خونده رو جمع آوری کرده یه مجموعه خوب ساخته :
ml-resources.vercel.app
@Linuxor ~ flyme2_mars
ml-resources.vercel.app
@Linuxor ~ flyme2_mars
Forwarded from Accio
You can play doom on PDF!
https://doompdf.pages.dev/doom.pdf
Quoted from the repo:
The PDF file format supports Javanoscript with its own separate standard library. Modern browsers (Chromium, Firefox) implement this as part of their PDF engines ... C code can be compiled to run within a PDF using and old version of Emnoscripten that targets asm.js
https://doompdf.pages.dev/doom.pdf
Quoted from the repo:
The PDF file format supports Javanoscript with its own separate standard library. Modern browsers (Chromium, Firefox) implement this as part of their PDF engines ... C code can be compiled to run within a PDF using and old version of Emnoscripten that targets asm.js
Forwarded from Golden Code (@lix)
پیشنهاد میکنم یه گوشه کنار داشته باشیدش که لازمتون میشه
(برگ تقلب SQL - JOIN)
#SQL
@GoldenCodeir
https://x.com/denicmarko/status/1876955314009858322?t=xSdqa7O7oRbJeF0AlfSuSA&s=35
(برگ تقلب SQL - JOIN)
#SQL
@GoldenCodeir
https://x.com/denicmarko/status/1876955314009858322?t=xSdqa7O7oRbJeF0AlfSuSA&s=35
❤2
Forwarded from a pessimistic researcher (Kc)
"Beware of bugs in the above code; I have only proved it correct, not tried it."
به نظرم همین طعنهی آقای Donald Knuth میتونه لازم و کافی باشه جهت ساپورت کردن این نکته که روشهای Formal Verification که Statefull هستند (به قولی semantics-driven) و یا مبتنی بر Static Analysis هستند (به قولی Syntax-driven) اصلا مناسب برنامههایی که با یک real programming language نوشته میشن نیستن. بهترین راه، اجرا کردن برنامه است و روشهای مبتنی بر اون مثل Stateless Model Checking چرا که اگر باگی در برنامه وجود داشته باشه قطعا در runtime بهش میرسیم. این جمله آخر رو دوبار بخون چون من راجع به testing و fuzzing صحبت نمیکنم.
به نظرم همین طعنهی آقای Donald Knuth میتونه لازم و کافی باشه جهت ساپورت کردن این نکته که روشهای Formal Verification که Statefull هستند (به قولی semantics-driven) و یا مبتنی بر Static Analysis هستند (به قولی Syntax-driven) اصلا مناسب برنامههایی که با یک real programming language نوشته میشن نیستن. بهترین راه، اجرا کردن برنامه است و روشهای مبتنی بر اون مثل Stateless Model Checking چرا که اگر باگی در برنامه وجود داشته باشه قطعا در runtime بهش میرسیم. این جمله آخر رو دوبار بخون چون من راجع به testing و fuzzing صحبت نمیکنم.
Forwarded from a pessimistic researcher (Kc)
از اصحاب کسی پرسید که Stateless Model Checking چیست؟ و ما برایتان پستهایی نوشتیم مثل:
"از زاربروکن تا کایزرسلاترن : Stateless Model Checking"
"Software Verification is Our Quest"
"Fuzzing for free! Except you, concurrency!"
و حتی این، تا برایتان پندی باشد. باشد که مطالب کانال را دنبال کنید :)
"از زاربروکن تا کایزرسلاترن : Stateless Model Checking"
"Software Verification is Our Quest"
"Fuzzing for free! Except you, concurrency!"
و حتی این، تا برایتان پندی باشد. باشد که مطالب کانال را دنبال کنید :)
Forwarded from a pessimistic researcher (Kc)
از اصحاب کسی پرسید که Stateless Model Checking چیست؟ و ما برایتان پستهایی نوشتیم مثل:
"از زاربروکن تا کایزرسلاترن : Stateless Model Checking"
"Software Verification is Our Quest"
"Software Verification is Our Business"
"Fuzzing for free! Except you, concurrency!"
و حتی این، تا برایتان پندی باشد. باشد که مطالب کانال را دنبال کنید :)
"از زاربروکن تا کایزرسلاترن : Stateless Model Checking"
"Software Verification is Our Quest"
"Software Verification is Our Business"
"Fuzzing for free! Except you, concurrency!"
و حتی این، تا برایتان پندی باشد. باشد که مطالب کانال را دنبال کنید :)
Forwarded from Geek Alerts
قرار هست یه تب جداگانه AI به واتساپ اضافه بشه در کنار ویجت AI تا دسترسی به Meta AI آسونتر بشه.
اینا توی یه نسخه آزمایشی اندروید یعنی ۲.۲۵.۱.۲۷ دیده شده و فعلا معلوم نیست کی به نسخه اصلی اضافه میشه.
نتیجه احتمالا اینه که Meta AI میتونه تو بازه زمانی کمی تعداد کاربران خودش رو به این روش میلیاردی کنه.
wabetainfo
@geekalerts
اینا توی یه نسخه آزمایشی اندروید یعنی ۲.۲۵.۱.۲۷ دیده شده و فعلا معلوم نیست کی به نسخه اصلی اضافه میشه.
نتیجه احتمالا اینه که Meta AI میتونه تو بازه زمانی کمی تعداد کاربران خودش رو به این روش میلیاردی کنه.
wabetainfo
@geekalerts
Forwarded from Geek Alerts
ادوبی سرویس Adobe Firefly Bulk Create رو معرفی کرده که میشه باهاش تا ۱۰ هزار عکس رو همزمان با AI ویرایش کرد.
کارهایی مثل تغییر سایز عکسها یا تغییر پس زمینه و ... رو انجام میده.
احتمالا برای کسایی که حجم زیادی عکس برای ادیت دارن میتونه مفید باشه و خروجی انبوه بگیرن.
ادوبی یه سری API جدید هم برای Firefly Services معرفی کرده که به زودی در دسترس قرار میگیرن مثل دوبله و همگامسازی لبها یا آواتارهای دیجیتال و ...
https://firefly.adobe.com/
theverge
@geekalerts
کارهایی مثل تغییر سایز عکسها یا تغییر پس زمینه و ... رو انجام میده.
احتمالا برای کسایی که حجم زیادی عکس برای ادیت دارن میتونه مفید باشه و خروجی انبوه بگیرن.
ادوبی یه سری API جدید هم برای Firefly Services معرفی کرده که به زودی در دسترس قرار میگیرن مثل دوبله و همگامسازی لبها یا آواتارهای دیجیتال و ...
https://firefly.adobe.com/
theverge
@geekalerts
Forwarded from Geek Alerts
چین داره بررسی میکنه اگه نتونن جلوی ممنوعیت تیکتاکرو توی آمریکا بگیرن در مورد فروشش صحبت کنن و حتی به گزینههایی مثل ایلان ماسک فکر کردن.
البته ByteDance همیشه میگه هیچ ارتباطی با حکومت چین ندارن و معلوم نیست جلساتی که چین میذاره و داره تصمیم میگیره با اطلاع ByteDance هست یا بدون اطلاع اونها.
میگن چین روی کار اومدن ترامپ رو یه چالش برای خودش میبینه و تصمیم داره با فروش تیکتاک به آمریکا درهای توافق رو با آمریکا باز کنه.
البته خیلی هم راهی نداره چون بخش بزرگ کاربرهای این برنامه توی غرب هستن و اگه آمریکا ممنوعش کنه به صورت دومینو تو بقیه کشورهای غربی هم ممنوع میشه.
ولی اصل این اتفاق نشون میده چین تصمیم داره دوران دوری از تنش رو دنبال کنه.
bloomberg
@geekalerts
البته ByteDance همیشه میگه هیچ ارتباطی با حکومت چین ندارن و معلوم نیست جلساتی که چین میذاره و داره تصمیم میگیره با اطلاع ByteDance هست یا بدون اطلاع اونها.
میگن چین روی کار اومدن ترامپ رو یه چالش برای خودش میبینه و تصمیم داره با فروش تیکتاک به آمریکا درهای توافق رو با آمریکا باز کنه.
البته خیلی هم راهی نداره چون بخش بزرگ کاربرهای این برنامه توی غرب هستن و اگه آمریکا ممنوعش کنه به صورت دومینو تو بقیه کشورهای غربی هم ممنوع میشه.
ولی اصل این اتفاق نشون میده چین تصمیم داره دوران دوری از تنش رو دنبال کنه.
bloomberg
@geekalerts
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 گوگل در حال حذف حساب و اپلیکیشن توسعهدهندگان ایرانی است؛ چون برای ما ایرانیها، امکان احراز هویت وجود ندارد.
@TheRaymondDev
@TheRaymondDev
زومیت
تحریمهای تلخ گوگل برای ایرانیها؛ حالا نوبت توسعهدهندگان برنامههای اندروید است
گوگل در حال حذف حساب و اپلیکیشن توسعهدهندگان ایرانی است؛ چون برای ما ایرانیها، امکان احراز هویت وجود ندارد.