خیلیا سوال براشون پیش اومده که چرا 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
شاید براتون سوال باشه این Index ها چیکار میکنن روی دیتابیس ؟
توی MySQL و تقریبا بقیه دیتابیس ها پنج نوع index داریم :
که اولیش و معروف ترینش Primary هست که کلید اصلی جدول هست و نمیتونه NULL یا تکراری باشه و فقط یدونه توی هر جدولی وجود داره
دومیش Index هست که برای سریع تر کردن جستجو استفاده میشه و میتونه SELECT، WHERE، ORDER BY و JOIN رو بهینه سازی کنه
سومیش Unique هست که همون Index عه ولی نمیتونه مقدار تکراری داشته باشه
چهارمیش SPATIAL هستش که فقط روی ستونهایی از نوع Spatial (مثل GEOMETRY, POINT, POLYGON) استفاده میشه.
و اخری که خیلی هم پر کاربرده FULLTEXT هست که برای جستجوی متنی توی ستونهای CHAR, VARCHAR, یا TEXT استفاده میشه و حتی میتونه تا یه حدی زبان طبیعی NLS رو بفهمه و حتی منطق بولی هم میفهمه مثلا میتونین بگین چه چیزی توی متن باشه و چه چیزی نباشه
البته نحوه سرچش متفاوته و بجای LIKE و = از MATCH استفاده میکنه
@Linuxor
توی MySQL و تقریبا بقیه دیتابیس ها پنج نوع index داریم :
که اولیش و معروف ترینش Primary هست که کلید اصلی جدول هست و نمیتونه NULL یا تکراری باشه و فقط یدونه توی هر جدولی وجود داره
دومیش Index هست که برای سریع تر کردن جستجو استفاده میشه و میتونه SELECT، WHERE، ORDER BY و JOIN رو بهینه سازی کنه
سومیش Unique هست که همون Index عه ولی نمیتونه مقدار تکراری داشته باشه
چهارمیش SPATIAL هستش که فقط روی ستونهایی از نوع Spatial (مثل GEOMETRY, POINT, POLYGON) استفاده میشه.
و اخری که خیلی هم پر کاربرده FULLTEXT هست که برای جستجوی متنی توی ستونهای CHAR, VARCHAR, یا TEXT استفاده میشه و حتی میتونه تا یه حدی زبان طبیعی NLS رو بفهمه و حتی منطق بولی هم میفهمه مثلا میتونین بگین چه چیزی توی متن باشه و چه چیزی نباشه
البته نحوه سرچش متفاوته و بجای LIKE و = از MATCH استفاده میکنه
@Linuxor
❤72👍46🔥4
این دوره گوگل رو از دست ندید. یه دوره برای Prompt نویسی که کمکتون میکنه
-مثل حرفهایها انجام بدید
- برای وظایف تکراری پرامپت بنویسید
- برای تحلیل داده دستورات رو بنویسید
حسنش هم اینه که از پایه آموزش میده و به زبان ساده تدریس میشه.
grow.google/prompting-essentials/
@Linuxor ~ samanfaegh
-مثل حرفهایها انجام بدید
- برای وظایف تکراری پرامپت بنویسید
- برای تحلیل داده دستورات رو بنویسید
حسنش هم اینه که از پایه آموزش میده و به زبان ساده تدریس میشه.
grow.google/prompting-essentials/
@Linuxor ~ samanfaegh
2👍78❤10
This media is not supported in your browser
VIEW IN TELEGRAM
این ریپو رو یه نفر درست کرده که بیش از 150 تا notebooks آموزشی داره راجع به استفاده از لایبرری Transformers برای انواع اپلیکیشن ها و روی انواع دیتا مثل PDF و تصویر و ویدیو
هر کدوم از این notebooks های آموزشی کلی چیز راجع به مدلها و معماری های مختلف یاد میده :
github.com/NielsRogge/Transformers-Tutorials
@Linuxor ~ MehdiAllahyari
هر کدوم از این notebooks های آموزشی کلی چیز راجع به مدلها و معماری های مختلف یاد میده :
github.com/NielsRogge/Transformers-Tutorials
@Linuxor ~ MehdiAllahyari
👍51❤6
اگه تازه سایت میخواین بیارین بالا با این سایت میتونین آنالیزش کنید و بهتون میگه چیکار کنید که سرعت لودش بره بالا، این سایت مال خود گوگله :
pagespeed.web.dev
@Linuxor
pagespeed.web.dev
@Linuxor
👍89🤣15🔥4