Forwarded from a pessimistic researcher (Kc)
"Just run the goddamn code" - P.3
——————————————————
1. Weaver
با زبان Scala نوشته شده و برای برنامههای همروند Scala ساخته شده. فقط رندوم تستینگ داره و مدل چکینگ نمیکنه. distributed سیستم رو هم ساپورت نمیکنه. روی مموری مدلهای مختلف هم ناتوانه
2. Loom
با rust نوشته شده و طبیعتا برای برنامههای rust هم کار میکنه. اینم تستینگداره ولی یکمی بهنیهتره الگوریتمش ولی بازم مدل چکر نیست ( اگر چه که یک اثبات نصفه و نیمهی completeness داره). distributed سیستم رو ساپورت نمیکنه. مموری مدلی که ساپورت میکنه C11 هستش و باقی رو ساپورت نمیکنه
3. Shuttle
اینم عین قبلیه فقط استراتژی تستش بیخیال اون completeness نصفه و نیمه شده و تمرکز بیشترش روی تسته. راجع به مموری مدلهایی هم که ساپورت میکنه اطلاعی ندارم :)
4. Jepsen
این با زبان Closure نوشته شده و برای برنامههای Distributed ای هست که با این زبان نوشته میشن. طبیعتا برنامههای concurrent رو ساپورت نمیکنه. اینم فقط رندوم تستینگ داره. اینم بگم که نمیدونم چه communication model ها رو ساپورت میکنه :) ولی کلا عشق منه و چیزی رو در من مدتهاست که روشن کرده!
5. Nidhugg
این با زبان C و برای برنامههای concurrent ای که با Pthread نوشته میشن ساخته شده. برخلاف قبلیا این مدل چکره و مموری مدلهای مختلفی رو ساپورت میکنه مثل SC, TSO, PSO, POWER and ARM. سیستمهای توزیعی رو ساپورت نمیکنه و رندوم تستینگ هم نداره.
6. Concuerror
این با زبان Erlang نوشته شده و برای همون برنامهها هم کار میکنه. اینم مدل چکره مثل قبلی ولی مموری مدلهای مختلف رو ساپورت نمیکنه. distributed systems رو هم همینطور. اینم خیلی عشقه و خیلی دوستش دارم.
7. TraceForge
اینو استاد راهنمای من ساخته و همکاراش توی aws. با rust نوشتن و برای برنامههای distributed ای که با این زبان نوشته میشن توسعه یافته. برنامههای concurrent رو ساپورت نمیکنه. مدل چکره و تستینگ نداره. communication model های مختلفی رو ساپورت میکنه. احتمالا به زودی روی این کار کنم و ساپورت concurrent programs و مدل چکینگ و تستینگ رو هم بهش اضافه کنم
8. GenMC
این یه مدل چکره معروفه که با C و Cpp نوشته شده و هدفش وریفای کردن برنامههای مالتیترد زبان C هستنش. رندوم تستینگ نداره و distributed سیستمها رو هم ساپورت نمیکنه. ولی تمام مموری مدلها رو تفریبا ساپورت میکنه
9. Lincheck
این با Kotlin نوشته شده که برای رندوم تست برنامههای همروند کاتلین عه. میگن مدل چکر هم دارن ولی زر میزنن. مموری مدل هم ندارن کلا. distributed system هم ساپورت نمیکنن. کلا چیز چرتیه به نظرم :) ولی سر و صدا زیاد کرده
10. Coyote
این با C-sharp نوشته شده و برای تست برنامههای همروند نوشته شده با همین زبان به کار میره. مموری مدل خاصی رو ساپورت نمیکنه و مدل چکینگ هم نداره. distributed systems رو هم ساپورت نمیکنه.
11. Fray
اینم با جاوا نوشته شده و برای تست برنامههای همروند جاواست. مدل چکر نداره. distributed سیستمها رو ساپورت نمیکنه. مموری مدل خاصی رو هم دنبال نمی کنه.
12. JMC
این با Java نوشته شده و کار این حقیر و دوستان بنده هستش. این ابزار هم مدل چکینگ میکنه هم رندوم تستینگ. هم concurrent رو ساپورت میکنه هم distributed system ها رو. مموری مدل هم SC رو ساپورت میکنه و communication model هم async. توسعه دادن استراتژی براش کار بسیار راحتیه. الگوریتم مدل چکینگ این ابزار data non-determinism رو هم ساپورت میکنه که هیچکدوم از مدلچکرای بالایی ساپورت نمیکنن. نسخهی کامل این ابزار توی برنچ old-main هستش و برنچ main ورژن refactor شدهی پروژه رو داره که هنوز کامل نشده.
——————————————————
1. Weaver
با زبان Scala نوشته شده و برای برنامههای همروند Scala ساخته شده. فقط رندوم تستینگ داره و مدل چکینگ نمیکنه. distributed سیستم رو هم ساپورت نمیکنه. روی مموری مدلهای مختلف هم ناتوانه
2. Loom
با rust نوشته شده و طبیعتا برای برنامههای rust هم کار میکنه. اینم تستینگداره ولی یکمی بهنیهتره الگوریتمش ولی بازم مدل چکر نیست ( اگر چه که یک اثبات نصفه و نیمهی completeness داره). distributed سیستم رو ساپورت نمیکنه. مموری مدلی که ساپورت میکنه C11 هستش و باقی رو ساپورت نمیکنه
3. Shuttle
اینم عین قبلیه فقط استراتژی تستش بیخیال اون completeness نصفه و نیمه شده و تمرکز بیشترش روی تسته. راجع به مموری مدلهایی هم که ساپورت میکنه اطلاعی ندارم :)
4. Jepsen
این با زبان Closure نوشته شده و برای برنامههای Distributed ای هست که با این زبان نوشته میشن. طبیعتا برنامههای concurrent رو ساپورت نمیکنه. اینم فقط رندوم تستینگ داره. اینم بگم که نمیدونم چه communication model ها رو ساپورت میکنه :) ولی کلا عشق منه و چیزی رو در من مدتهاست که روشن کرده!
5. Nidhugg
این با زبان C و برای برنامههای concurrent ای که با Pthread نوشته میشن ساخته شده. برخلاف قبلیا این مدل چکره و مموری مدلهای مختلفی رو ساپورت میکنه مثل SC, TSO, PSO, POWER and ARM. سیستمهای توزیعی رو ساپورت نمیکنه و رندوم تستینگ هم نداره.
6. Concuerror
این با زبان Erlang نوشته شده و برای همون برنامهها هم کار میکنه. اینم مدل چکره مثل قبلی ولی مموری مدلهای مختلف رو ساپورت نمیکنه. distributed systems رو هم همینطور. اینم خیلی عشقه و خیلی دوستش دارم.
7. TraceForge
اینو استاد راهنمای من ساخته و همکاراش توی aws. با rust نوشتن و برای برنامههای distributed ای که با این زبان نوشته میشن توسعه یافته. برنامههای concurrent رو ساپورت نمیکنه. مدل چکره و تستینگ نداره. communication model های مختلفی رو ساپورت میکنه. احتمالا به زودی روی این کار کنم و ساپورت concurrent programs و مدل چکینگ و تستینگ رو هم بهش اضافه کنم
8. GenMC
این یه مدل چکره معروفه که با C و Cpp نوشته شده و هدفش وریفای کردن برنامههای مالتیترد زبان C هستنش. رندوم تستینگ نداره و distributed سیستمها رو هم ساپورت نمیکنه. ولی تمام مموری مدلها رو تفریبا ساپورت میکنه
9. Lincheck
این با Kotlin نوشته شده که برای رندوم تست برنامههای همروند کاتلین عه. میگن مدل چکر هم دارن ولی زر میزنن. مموری مدل هم ندارن کلا. distributed system هم ساپورت نمیکنن. کلا چیز چرتیه به نظرم :) ولی سر و صدا زیاد کرده
10. Coyote
این با C-sharp نوشته شده و برای تست برنامههای همروند نوشته شده با همین زبان به کار میره. مموری مدل خاصی رو ساپورت نمیکنه و مدل چکینگ هم نداره. distributed systems رو هم ساپورت نمیکنه.
11. Fray
اینم با جاوا نوشته شده و برای تست برنامههای همروند جاواست. مدل چکر نداره. distributed سیستمها رو ساپورت نمیکنه. مموری مدل خاصی رو هم دنبال نمی کنه.
12. JMC
این با Java نوشته شده و کار این حقیر و دوستان بنده هستش. این ابزار هم مدل چکینگ میکنه هم رندوم تستینگ. هم concurrent رو ساپورت میکنه هم distributed system ها رو. مموری مدل هم SC رو ساپورت میکنه و communication model هم async. توسعه دادن استراتژی براش کار بسیار راحتیه. الگوریتم مدل چکینگ این ابزار data non-determinism رو هم ساپورت میکنه که هیچکدوم از مدلچکرای بالایی ساپورت نمیکنن. نسخهی کامل این ابزار توی برنچ old-main هستش و برنچ main ورژن refactor شدهی پروژه رو داره که هنوز کامل نشده.
GitHub
GitHub - typelevel/weaver-test: A test framework that runs everything in parallel.
A test framework that runs everything in parallel. - GitHub - typelevel/weaver-test: A test framework that runs everything in parallel.
Forwarded from a pessimistic researcher (Kc)
همه اینا رو نوشتم که بگم اگر دوست داشته باشید، من میتونم کمکتون کنم برای زبان محبوبتون یه ابزار شروع کنید بسازید شبیه به اینا. به طور خاص توی نوشتن مدل چکرش و اگر علاقهمند بودید بهم بگید خوشحال میشم کمکتون کنم.
به نظرم کاتلین و Go مستعد ترن برای ساخت یه ابزار درست حسابی براشون.
همین دیگه خسته نباشید
به نظرم کاتلین و Go مستعد ترن برای ساخت یه ابزار درست حسابی براشون.
همین دیگه خسته نباشید
Forwarded from Agora (Alireza)
Tea scum
و سختی آب قبل و بعد از تصفیه با فیلتر (اونی که بیشتره آبیه که با فیلتر تصفیه شده)
و سختی آب قبل و بعد از تصفیه با فیلتر (اونی که بیشتره آبیه که با فیلتر تصفیه شده)
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 کسانی که میگویند اگر کارِ فکر کردن را به هوش مصنوعی بسپارید دارید از آن اشتباه استفاده میکنید، خودشان در اشتباه اند. این موضوع شبیه این است که وقتی میخواهید وزن کم کنید، دائم روی میز تان شکلات بگذارید؛ بالاخره یک روز وسوسه میشوید و میخورید. با هوش مصنوعی هم همین است: اگر بگذارید خودش برایتان متن را کامل کند یا به جای شما بنویسد، دیر یا زود عادت میکنید و دیگر کمتر انتقادی فکر می کنید. دلیلش هم این است که انسان ذاتاً موجودی تنبل است. پس بهتر است به جای جنگیدن با این ذات، آن را بپذیرید.
#توییت
@TheRaymondDev
#توییت
@TheRaymondDev
Forwarded from Agora (Alireza)
اطلاعات بدرد نخور نصف شبی
اقا واقعا چایی که با آب با سختی پایین درست میشه تفاوتش با آبی که توی این پارچهای تصفیه (که مفتشون واقعا گرونه) تصفیه میشن زمین تا آسمونه.
من مدتهاست عشق این رو داشتم که ببینم این ماجرا پارچهای تصفیه چیه و عملکردشون چطوره و برای این که فیلترهای مختلف رو تست کنم، دو سال پیش رفتم یه TDS meter گرفتم و افتادم به جون اینا و فیلترهای مختلف رو خروجیشون رو تست میکردم. نکتهی مهم اینه که TDS همهی ماجرا نیست ولی واسه کنجکاوی من و ابزاری هم که داشتم همین کافی بود.
من از بین فیلترهای معروف تا امروز BWT و Philips رو تست کردم (جزئیات هرکدوم رو میخوام بعدا مفصل بذارم برای همین الان فقط اسم برند میگم) و خروجی اینا اصلا چیزی نبود که انتظار داشتم. بماند که میزان سختی خروجی آب اصلا ثابت نبود، چیزی که واسم عجیب بود این بود که توی مواردی حتی سختی آب بیشتر هم میشد (البته بعضی از این فیلترها مثل فیلتر منیزیم BWT خودشون یه سری املاح به آب اضافه میکنند و همین میتونی سختی آب رو افزایش بده) سری آخر که فیلتر فلیپس رو تست کردم، یک بار سختی آب رو کم کرده بود و از ۲۴۰ آورده بود روی ۱۸۰. ولی بارهای دیگه یا همونقدر بود یا حتی بیشتر. و بهطبع این آزمایش ها رو چند بار در شرایط تا حد امکان یکسان تست کردم. BWT باز نتیجهی بهتری میداد هرچند که اون هم باز همچنان روی ۲۰۰ بود و ۲۰۰ سختی زیادیه بهنسبت.
نکتهی اذیت کنندهی ماجرا دو تا چیز بود:
۱- من آبجوش رو توی فلاسک استیل نگه میدارم. و بعد از چند روز (بین ۱۰ تا ۱۵ روز) جرم آب رو توی چاییم احساس میکردم و خب میدیدم که ته فلاسک رسوب های ریز جمع شده. تمیز کردن فلاسک و کتری برقی با یک چیز اسیدی مثل سرکه یا آب لیمو واقعا حوصله میخواست. و همین حس کردن رسوب توی دهن موقع چای خوردن واقعا واسم اذیت کننده بود.
۲- چایی که دم میکردم روش لکههای روغنی میبست. من نمیدونستم چیه که خب از مرجع و منبع علم نوشیدنی و غذا و یار گرمابه و گلستانم، پیمان پرسیدم و اون مثل همیشه یک وویس چندده دقیقهای داد که ماجرا رو بهم توضیح بده چیه. اگر دوست داشتید پیمان چند وویس مفصل (حدود نیمساعت) داره فقط راجعبه علم پشت چای و دم کردنش و بهداشتش. میتونم اونو حالا با ادیت یا بدون ادیت بذارم اینجا :). خلاصهش اینه که سختی آب باعث این ماجرا میشه. درواقع کلسیم و منزیم آب با پلی فنولهای چای یک کمپلکسی رو درست میکنه که به شکل لایههای نازک چربی روی آب میان (بهش tea scum هم میگن) و رنگ چای رو هم تیره میکنه.
خلاصه اینا خیلی واسم اذیت کننده بود و گفتم مقاومت رو بذارم کنار برم سراغ آبهای بستهبندی و معدنی. علت مقاومتم این بود که آوردن باکسهای آب و مدیریت بطریهای خالیش واقعا خودشون گرفتاریه. به هر صورت، امروز رفتم دو باکس آب معدنی گرفتم. رفتم سراغ Sant’Anna چون میخواستم که ببینم اگر سختی رو خیلی پایین بیاریم خروجی چطور میشه و نتیجه واقعا شگفتانگیز بود. سختی این آب رو که اندازهگیری کردم تشتکم پرید. TDS meter عدد ۱۵ رو نشون میداد. من تا حالا آب کارخونهای با این درجه سختی ندیده بودم. و امشب باهاش چایی دم کردیم و خب نتیجه واقعا عالی بود. چایی خوشرنگ، شفاف، سبک و خوش طعم. حتی single-blind test انجام دادیم :)) دوستمون امشب اومده بود خونمون و خب خیلی وقتها اینجا چایی خورده. امشب بدون این که بدونه ما از آبمعدنی استفاده کردیم به حرف اومد که چایی چقدر خوب شده. البته بعد تموم شدن اینا میریم سراغ یک آب با سختی بالاتر چون هرچقدر که سختی آب کمتر باشه طعمش بیشتر به تلخی میره و مهم تر از اون این که املاح کم خودش بالانس الکترولیت بدن رو بهم میزنه و همین خودش مصیبتیه. احتمالا بریم سراغ برند Levissima که سختی آبش حدود ۸۰ه.
پینوشت: فرصت نشد از چای امشب عکس بگیرم. یعنی وقتی من رسیدم بالاسرش دیگه مهلت نداشتم برای ریختن واسه خودم. سریع دو تا لیوانم رو سر کشیدم.
اقا واقعا چایی که با آب با سختی پایین درست میشه تفاوتش با آبی که توی این پارچهای تصفیه (که مفتشون واقعا گرونه) تصفیه میشن زمین تا آسمونه.
من مدتهاست عشق این رو داشتم که ببینم این ماجرا پارچهای تصفیه چیه و عملکردشون چطوره و برای این که فیلترهای مختلف رو تست کنم، دو سال پیش رفتم یه TDS meter گرفتم و افتادم به جون اینا و فیلترهای مختلف رو خروجیشون رو تست میکردم. نکتهی مهم اینه که TDS همهی ماجرا نیست ولی واسه کنجکاوی من و ابزاری هم که داشتم همین کافی بود.
من از بین فیلترهای معروف تا امروز BWT و Philips رو تست کردم (جزئیات هرکدوم رو میخوام بعدا مفصل بذارم برای همین الان فقط اسم برند میگم) و خروجی اینا اصلا چیزی نبود که انتظار داشتم. بماند که میزان سختی خروجی آب اصلا ثابت نبود، چیزی که واسم عجیب بود این بود که توی مواردی حتی سختی آب بیشتر هم میشد (البته بعضی از این فیلترها مثل فیلتر منیزیم BWT خودشون یه سری املاح به آب اضافه میکنند و همین میتونی سختی آب رو افزایش بده) سری آخر که فیلتر فلیپس رو تست کردم، یک بار سختی آب رو کم کرده بود و از ۲۴۰ آورده بود روی ۱۸۰. ولی بارهای دیگه یا همونقدر بود یا حتی بیشتر. و بهطبع این آزمایش ها رو چند بار در شرایط تا حد امکان یکسان تست کردم. BWT باز نتیجهی بهتری میداد هرچند که اون هم باز همچنان روی ۲۰۰ بود و ۲۰۰ سختی زیادیه بهنسبت.
نکتهی اذیت کنندهی ماجرا دو تا چیز بود:
۱- من آبجوش رو توی فلاسک استیل نگه میدارم. و بعد از چند روز (بین ۱۰ تا ۱۵ روز) جرم آب رو توی چاییم احساس میکردم و خب میدیدم که ته فلاسک رسوب های ریز جمع شده. تمیز کردن فلاسک و کتری برقی با یک چیز اسیدی مثل سرکه یا آب لیمو واقعا حوصله میخواست. و همین حس کردن رسوب توی دهن موقع چای خوردن واقعا واسم اذیت کننده بود.
۲- چایی که دم میکردم روش لکههای روغنی میبست. من نمیدونستم چیه که خب از مرجع و منبع علم نوشیدنی و غذا و یار گرمابه و گلستانم، پیمان پرسیدم و اون مثل همیشه یک وویس چندده دقیقهای داد که ماجرا رو بهم توضیح بده چیه. اگر دوست داشتید پیمان چند وویس مفصل (حدود نیمساعت) داره فقط راجعبه علم پشت چای و دم کردنش و بهداشتش. میتونم اونو حالا با ادیت یا بدون ادیت بذارم اینجا :). خلاصهش اینه که سختی آب باعث این ماجرا میشه. درواقع کلسیم و منزیم آب با پلی فنولهای چای یک کمپلکسی رو درست میکنه که به شکل لایههای نازک چربی روی آب میان (بهش tea scum هم میگن) و رنگ چای رو هم تیره میکنه.
خلاصه اینا خیلی واسم اذیت کننده بود و گفتم مقاومت رو بذارم کنار برم سراغ آبهای بستهبندی و معدنی. علت مقاومتم این بود که آوردن باکسهای آب و مدیریت بطریهای خالیش واقعا خودشون گرفتاریه. به هر صورت، امروز رفتم دو باکس آب معدنی گرفتم. رفتم سراغ Sant’Anna چون میخواستم که ببینم اگر سختی رو خیلی پایین بیاریم خروجی چطور میشه و نتیجه واقعا شگفتانگیز بود. سختی این آب رو که اندازهگیری کردم تشتکم پرید. TDS meter عدد ۱۵ رو نشون میداد. من تا حالا آب کارخونهای با این درجه سختی ندیده بودم. و امشب باهاش چایی دم کردیم و خب نتیجه واقعا عالی بود. چایی خوشرنگ، شفاف، سبک و خوش طعم. حتی single-blind test انجام دادیم :)) دوستمون امشب اومده بود خونمون و خب خیلی وقتها اینجا چایی خورده. امشب بدون این که بدونه ما از آبمعدنی استفاده کردیم به حرف اومد که چایی چقدر خوب شده. البته بعد تموم شدن اینا میریم سراغ یک آب با سختی بالاتر چون هرچقدر که سختی آب کمتر باشه طعمش بیشتر به تلخی میره و مهم تر از اون این که املاح کم خودش بالانس الکترولیت بدن رو بهم میزنه و همین خودش مصیبتیه. احتمالا بریم سراغ برند Levissima که سختی آبش حدود ۸۰ه.
پینوشت: فرصت نشد از چای امشب عکس بگیرم. یعنی وقتی من رسیدم بالاسرش دیگه مهلت نداشتم برای ریختن واسه خودم. سریع دو تا لیوانم رو سر کشیدم.
Forwarded from جامعهٔ فارسی زبان کیدیای
اگر با پایانه کنسول در کیدیای کار میکنید و میخواهید به سرورهای راه دور وصل بشید، افزونه SSH Manager در کنسول حسابی به کارتون میاد.
این افزونه که توی KDE Gear 21.08 معرفی شد، اتصال به سرورها رو سادهتر از همیشه کرده. کافیه لیست سرورهاتون رو توش ذخیره کنید و با یک کلیک وصل شید.
برای استفاده، کنسول رو باز کنید و از منوی افزونهها گزینه SSH Manager رو فعال کنید و یا کلیدهای ترکیبی CTRL + Shift + F2 را فشار بدهید.
یک پنل سمت چپ باز میشه. اگه پرونده .ssh/config دارید، با دکمه Import همه سرورها رو وارد کنید. برای اضافه کردن سرور جدید، روی دکمه + کلیک کنید و اطلاعاتی مثل آدرس سرور، پورت، نام کاربری و کلید خصوصی رو وارد کنید. حالا با یه کلیک به هر سرور وصل میشید. حتی میتونید یک میانبر تعریف کنید که با فشردن اون مستقیم به اون سرور وصل بشید.
🔗 https://konsole.kde.org
💬 t.iss.one/kde_fa_chat
@kde_fa
این افزونه که توی KDE Gear 21.08 معرفی شد، اتصال به سرورها رو سادهتر از همیشه کرده. کافیه لیست سرورهاتون رو توش ذخیره کنید و با یک کلیک وصل شید.
برای استفاده، کنسول رو باز کنید و از منوی افزونهها گزینه SSH Manager رو فعال کنید و یا کلیدهای ترکیبی CTRL + Shift + F2 را فشار بدهید.
یک پنل سمت چپ باز میشه. اگه پرونده .ssh/config دارید، با دکمه Import همه سرورها رو وارد کنید. برای اضافه کردن سرور جدید، روی دکمه + کلیک کنید و اطلاعاتی مثل آدرس سرور، پورت، نام کاربری و کلید خصوصی رو وارد کنید. حالا با یه کلیک به هر سرور وصل میشید. حتی میتونید یک میانبر تعریف کنید که با فشردن اون مستقیم به اون سرور وصل بشید.
🔗 https://konsole.kde.org
💬 t.iss.one/kde_fa_chat
@kde_fa
Forwarded from Linuxor ?