یه چیزی هست برای سلنیوم به اسم Selenium Base
اینا اومدن هرچی که برای وب اتومیشن با Selenium نیاز هست رو یه جا جمع کردن
مثلا واسه رد شدن از کلافلر یه مکانیزمی ساختن Chrome Devtools Protocol Mode که میتونید فعالش کنید و باتتون شبیه آدمیزاد بشه و رد بشید
github.com/seleniumbase/SeleniumBase
@Linuxor ~ teal33t
اینا اومدن هرچی که برای وب اتومیشن با Selenium نیاز هست رو یه جا جمع کردن
مثلا واسه رد شدن از کلافلر یه مکانیزمی ساختن Chrome Devtools Protocol Mode که میتونید فعالش کنید و باتتون شبیه آدمیزاد بشه و رد بشید
github.com/seleniumbase/SeleniumBase
@Linuxor ~ teal33t
👍96🔥12🤣7❤1
قدیما روی گوشی ها یه قابلیتی بود به اسم FM Transmitter یا که باهاش میتونستی روی موج رادیویی آهنگ پخش کنی، و با یه دستگاه دیگه مثلا داخل ماشین روی همون موج گوشش بدی، البته خیلی زود این قابلیت جمع شد چون پخش روی موج های رادیویی توی اکثر کشورا غیرقانونیه و نیاز به مجوز داره و ممکنه اختلال ایجاد بشه.
@Linuxor
@Linuxor
👍155🔥10👎4❤2
This media is not supported in your browser
VIEW IN TELEGRAM
از اون ویدیوهایی که دوست دارین، توی این ویدیو میبینین چطوری میشه پرید وسط یه برنامه که پشت در حال اجراست و چیز هایی که چاپ میکنه یا stdout اونو دید
@Linuxor
@Linuxor
👍100❤12🤣7🔥3
یه اشتباهی که برنامه نویس ها میکنن اینه که برای چک کردن تغییر یه فایل میآن و یه حلقه مینویسن و توش هر لحظه فایلو چکش میکنن در صورتی که لینوکس یه ویژگی داره به اسم inotify و میتونین ازش درخواست کنید که تغییرات فایل رو بهتون اطلاع بده
توی بیشتر زبانهای برنامهنویسی میشه بهراحتی از inotify استفاده کرد و میشه علاوه بر تغییر فایل وقتی که حذف، جابجا، تغییر مجوز یا فایل توسط کسی خونده شد رو از طریق سیستم عامل دریافت کرد.
@Linuxor
توی بیشتر زبانهای برنامهنویسی میشه بهراحتی از inotify استفاده کرد و میشه علاوه بر تغییر فایل وقتی که حذف، جابجا، تغییر مجوز یا فایل توسط کسی خونده شد رو از طریق سیستم عامل دریافت کرد.
@Linuxor
👍143❤2
اومدن سوالای المپیاد ریاضی امسال آمریکا رو بلافاصله بعد آزمون دادن به LLM هایی که reasoning دارن و کل اثبات رو چک کردن. نتیجه این شده که همهشون کمتر از 5% نمره رو تونستن بگیرن. این نشون میده که نمرههای خیلی خوب این مدلا تو تستای دیگه؛ احتمالا بخاطر اینه که سوالای شبیهش تو دیتای ترین وجود داشته یا اینکه با اثبات و منطق اشتباه صرفا تونستن جواب آخرو درست دربیارن. (مقاله)
@Linuxor ~ mohammadsh377
@Linuxor ~ mohammadsh377
👍192🤣22🔥3❤1👎1
با این لایبری جاوا اسکریپت میتونین انیمیشن های حرفه ای درست کنید، صفحه اول سایتش یه انیمیشن جالب گذاشته شده که با اسکرول کردن از زوایای مختلف دیده میشه
animejs.com
@Linuxor
animejs.com
@Linuxor
👍80🔥31👎4❤1
سیستمهای توزیعشده برای مقیاسپذیری، تحمل خطا و دسترسی بالا حیاتیان، ولی چالشهایی مثل مدیریت وضعیت، خرابی و ارتباط دارن.
الگوهایی مثل Ambassador، Circuit Breaker، CQRS، Sharding، Sidecar، Pub/Sub، Leader Election و Event Sourcing راهحلن.
این مقاله همهشو ساده توضیح داده:
newsletter.systemdesigncodex.com/p/8-must-know-distributed-system-design
@Linuxor
الگوهایی مثل Ambassador، Circuit Breaker، CQRS، Sharding، Sidecar، Pub/Sub، Leader Election و Event Sourcing راهحلن.
این مقاله همهشو ساده توضیح داده:
newsletter.systemdesigncodex.com/p/8-must-know-distributed-system-design
@Linuxor
👍53🔥6❤3👎1
خیلیا سوال براشون پیش اومده که چرا await باید حتما داخل تابع async باشه چرا توی تابع های عادی کار نمیکنه؟
علتش اینه که باید تابع حتما قابلیت pause و resume داشته باشه و تابع های sync این قابلیت رو ندارن و فقط توابع async این قابلیتو دارن در واقع وقتی دارید await رو صدا میزنید تابعی که توش هست رو دارید puase میکنید و تا زمانی که نتیجه await نیاد resume نمیشه.
@Linuxor
علتش اینه که باید تابع حتما قابلیت pause و resume داشته باشه و تابع های sync این قابلیت رو ندارن و فقط توابع async این قابلیتو دارن در واقع وقتی دارید await رو صدا میزنید تابعی که توش هست رو دارید puase میکنید و تا زمانی که نتیجه await نیاد resume نمیشه.
@Linuxor
👍154🔥7
دستور source چیکار میکنه؟
Anonymous Quiz
49%
محتویات یه فایل اسکریپت رو توی شل جاری (نه شل جدید) اجرا میکنه
22%
جایگزین دستور export هست و متغییر های enviorment رو به صورت محیطی تعریف میکنه
11%
سورس کد یه برنامه اجرایی رو در صورت وجود از ریپازیتوری دانلود میکنه
18%
چنین دستوری وجود ندارد
👍66🤣16👎2❤1
سایت چت جی پی تی برای Sign کردن توکن های کاربرا از رمزنگاری نامتقارن RSA استفاده میکنه حالا شاید براتون سوال باشه که بقیه سایت ها چرا دارن از HS256 استفاده میکنن ولی بعضی سایتا از الگوریتم کند تر RS256 ؟
یکی از مهم دلایلش اینه که مقیاس پذیر تره یعنی اینکه چندین سرور با کلید های عمومی خودشون میتونن لاگین بودن شما رو وریفای کنن.
حالا جالب تر اینجاست که اگه شما هکر خفنی باشید و به یکی از کلید های عمومی سرور ها دسترسی پیدا کنید بازم براشون هیچ خطری ندارید چون کلید های عمومی فقط میتونن وریفای کنن!
یه پارامتر جالب دیگه که وجود داره kid هستش یعنی Key ID و هر کلید رو شاید احتمالا با Key Rotation دارن وریفای میکنن زمانی که شما از چندین کلید برای امضا کردن توکنها استفاده میکنید (مثلاً برای امنیت بیشتر یا به دلایل دیگه)، فیلد kid میتونه مشخص کنه که کدوم کلید برای امضا کردن هر توکن استفاده شده و در واقع به صورت دوره ای کلید خصوصی و عمومی تغییر میکنه یعنی اگه حتی کلید خصوصی هم لو بره بازم زیاد براشون خطری نداره!
البته پیاده سازی RS256 نسبت به HS256 یکم دشوار تره.
@Linuxor
یکی از مهم دلایلش اینه که مقیاس پذیر تره یعنی اینکه چندین سرور با کلید های عمومی خودشون میتونن لاگین بودن شما رو وریفای کنن.
حالا جالب تر اینجاست که اگه شما هکر خفنی باشید و به یکی از کلید های عمومی سرور ها دسترسی پیدا کنید بازم براشون هیچ خطری ندارید چون کلید های عمومی فقط میتونن وریفای کنن!
یه پارامتر جالب دیگه که وجود داره kid هستش یعنی Key ID و هر کلید رو شاید احتمالا با Key Rotation دارن وریفای میکنن زمانی که شما از چندین کلید برای امضا کردن توکنها استفاده میکنید (مثلاً برای امنیت بیشتر یا به دلایل دیگه)، فیلد kid میتونه مشخص کنه که کدوم کلید برای امضا کردن هر توکن استفاده شده و در واقع به صورت دوره ای کلید خصوصی و عمومی تغییر میکنه یعنی اگه حتی کلید خصوصی هم لو بره بازم زیاد براشون خطری نداره!
البته پیاده سازی RS256 نسبت به HS256 یکم دشوار تره.
@Linuxor
👍114🔥6
برنامه نویس ها برای اینکه XSS نخورن میآن و CSP هایی تنظیم میکنن که از اسکریپت های خارجی جلوگیری کنه ولی با خیال خوش inline-style رو باز میزارن و اصلا بهش توجهی نمیکنن
ولی حواستون باشه توی کد های CSS هم میشه کد جاوا اسکریپت ران کرد مثلا :
background-image: url("javanoscript:alert('XSS')")
@Linuxor
ولی حواستون باشه توی کد های CSS هم میشه کد جاوا اسکریپت ران کرد مثلا :
background-image: url("javanoscript:alert('XSS')")
@Linuxor
👍119🔥12❤5👎4