دستور 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
یه نفر تجربه 2 ساله خودش از استفاده از Rust رو نوشته، اگه میخواین تازه Rust یاد بگیرین خیلی جلوتون میندازه
borretti.me/article/two-years-of-rust
@Linuxor
borretti.me/article/two-years-of-rust
@Linuxor
👍76🔥8❤7
اکثر برنامه نویس ها همیشه حواسشون به بروت فورس هست یعنی میآن و تعداد دفعات اشتباه رو ذخیره میکنن و به یه نحوی مثلا بلاک کردن اکانت و ... جلوشو میگیرن
ولی اصلا حواسشون به Password Spraying نیست، اسپری کردن پسورد یعنی بر خلاف اینکه هکر روی یه یوزر پسورد های زیادی تست کنه یه پسورد رو روی یوزر های زیادی تست میکنه و مشکل لیمیت هم دیگه نداره (اگه لیمیت ساده گذاشته باشین)
مثلا فرض کنید شما یه پیام رسان دارین و من میام کد یه بار مصرف 78921 رو روی همه شماره ها تست میکنم اگه حواستون به لیمیشن مثلا ایپی من نباشه من به راحتی وارد یه اکانت میشم چون بلخره یکبار سرور 78921 رو تولید میکنه
@Linuxor
ولی اصلا حواسشون به Password Spraying نیست، اسپری کردن پسورد یعنی بر خلاف اینکه هکر روی یه یوزر پسورد های زیادی تست کنه یه پسورد رو روی یوزر های زیادی تست میکنه و مشکل لیمیت هم دیگه نداره (اگه لیمیت ساده گذاشته باشین)
مثلا فرض کنید شما یه پیام رسان دارین و من میام کد یه بار مصرف 78921 رو روی همه شماره ها تست میکنم اگه حواستون به لیمیشن مثلا ایپی من نباشه من به راحتی وارد یه اکانت میشم چون بلخره یکبار سرور 78921 رو تولید میکنه
@Linuxor
👍256🔥13👎12❤3
یه برنامه نوشته بودم که میرفت چند میلیون پست از یه وبلاگ رو میخوند و میزان بازدید پست هارو توی دیتابیسم ذخیره میکرد
انقدر تعداد پست ها زیاد بود که هر چرخه دو سه روز طول میکشید و دیتا هام زیاد بهروز و قابل اعتماد نبودن.
اومدم یه پارامتر جدید تعریف کردم و میزان تغییر بازدید پست رو هم در نظر گرفتم اینطوری پست های پر تغییر بیشتر چک میشن و الان مثل برق چند ساعته دیتابیسم آپدیت میشه.
جالب اینجاست مشابه این ایده رو 20 سال پیش گوگل داده و اسمش Crawl Frequency هست.
@Linuxor
انقدر تعداد پست ها زیاد بود که هر چرخه دو سه روز طول میکشید و دیتا هام زیاد بهروز و قابل اعتماد نبودن.
اومدم یه پارامتر جدید تعریف کردم و میزان تغییر بازدید پست رو هم در نظر گرفتم اینطوری پست های پر تغییر بیشتر چک میشن و الان مثل برق چند ساعته دیتابیسم آپدیت میشه.
جالب اینجاست مشابه این ایده رو 20 سال پیش گوگل داده و اسمش Crawl Frequency هست.
@Linuxor
👍158❤12🔥7🤣6
توی مدل های هوش مصنوعی مثلا ChatGPT هر متن به توکن هایی شکسته میشه و بعد پردازش میشه اکثرا فکر میکنن هر کلمه یه توکنه ولی ممکنه هر کلمه بیشتر از یه توکن باشه، با وبسایت زیر میتونین تعداد توکن های یه متن رو بدست بیارین
tiktokenizer.vercel.app
@Linuxor
tiktokenizer.vercel.app
@Linuxor
👍81❤3🔥3🤣1