Forwarded from DevTwitter | توییت برنامه نویسی
در گیتهاب Typescript به محبوبترین زبان برنامهنویسی تبدیل شده و از پایتون جلو زده!
@DevTwitter | <Masoud Majidi/>
@DevTwitter | <Masoud Majidi/>
Forwarded from GamerTux
آینده گیمینگ: چرا لینوکس داره میدرخشه؟
@GamerTuxChat
@GamerTux
تو این ویدیو راجب آینده گیمینگ تو لینوکس ابزارهای مورد نیاز و مشکلات احتمالی صحبت میکنیم.YouTube | PeerTube
@GamerTuxChat
@GamerTux
Forwarded from DevTwitter | توییت برنامه نویسی
اپلیکیشن ریموت دسکتاپ اوپن سورس، به عنوان جایگزین TeamViewer و AnyDesk
https://github.com/rustdesk/rustdesk
@DevTwitter | <Mohammad/>
https://github.com/rustdesk/rustdesk
@DevTwitter | <Mohammad/>
Forwarded from Meitix
توی Go وقتی از map استفاده میکنیم، پشتش خبری از یه آرایه ساده نیست که بیاد کل دادهها رو بگرده تا کلیدتو پیدا کنه. ماجرا خیلی هوشمندتر از این حرفاست. Go برای map از ساختار hash map استفاده میکنه، یعنی هر کلید اول میره توی یه تابع هش و یه عدد خاص ازش درمیاد. اون عدد مشخص میکنه داده باید تو کدوم “bucket” یا همون سطل ذخیره بشه.
هر map یه عالمه از این bucket داره و هر bucket خودش چند تا key و value نگه میداره. وقتی مینویسی m["name"]، Go نمیاد کل map رو بگرده، فقط هش کلید رو حساب میکنه، میره سراغ bucket مربوطه و تو همون چند تا دادهی داخلش دنبال مقدار میگرده. معمولا بدترین حالتش اینه که بین کمتر از ۸ تا مقدار بگرده، پس خیلی سریع تموم میشه.
اگه چند تا کلید هش مشابه بدن، میرن تو یه bucket و اگه اون پر بشه، یه bucket اضافه (overflow) ساخته میشه. ولی حتی اونموقع هم lookup زمانش تقریبا O(1) میمونه، چون این زنجیرهی bucketها معمولا خیلی کوتاهه. Go وقتی حس میکنه برخوردها زیاد شدن، خودش map رو بزرگتر میکنه و دادهها رو دوباره پخش میکنه تا سرعت ثابت بمونه.
هر map یه عالمه از این bucket داره و هر bucket خودش چند تا key و value نگه میداره. وقتی مینویسی m["name"]، Go نمیاد کل map رو بگرده، فقط هش کلید رو حساب میکنه، میره سراغ bucket مربوطه و تو همون چند تا دادهی داخلش دنبال مقدار میگرده. معمولا بدترین حالتش اینه که بین کمتر از ۸ تا مقدار بگرده، پس خیلی سریع تموم میشه.
اگه چند تا کلید هش مشابه بدن، میرن تو یه bucket و اگه اون پر بشه، یه bucket اضافه (overflow) ساخته میشه. ولی حتی اونموقع هم lookup زمانش تقریبا O(1) میمونه، چون این زنجیرهی bucketها معمولا خیلی کوتاهه. Go وقتی حس میکنه برخوردها زیاد شدن، خودش map رو بزرگتر میکنه و دادهها رو دوباره پخش میکنه تا سرعت ثابت بمونه.
Forwarded from DevTwitter | توییت برنامه نویسی
درود، امیدوارم حالتون خوب باشه
یه پکیج جدید داخل NPM توسعه دادم به اسم script-connector و خوشحال میشم یه نگاه بندازین
npmjs.com/package/script-connector
github.com/Tariux/Node-Script-Connector
اگر تا حالا به این فکر کردین که بشه اسکریپت های زبان های دیگه رو از طریق JavaScript اجرا کرد، این پکیج دقیقا برای همینه. Script Connector یه ابزار سبک و دقیق با معماری تمیزه که بدون هیچ بخش اضافهای طراحی شده تا سریع، قابل اعتماد و کاملا قابل تنظیم باشه.
میتونین همه چیز رو طبق نیاز خودتون پیکربندی کنین، و از اون طرف متریک های دقیقی از تمام بخش های در حال اجرا دریافت کنین.
یه تیکه کد ساده از نحوه استفادش: (در نظر بگیرید کانفیگ های خیلی بیشتری از این داخل پکیج موجوده)
اگر خواستین نمونه کامل تر یا داکیومنتش رو ببینین، خوشحال میشم گیتهاب رو چک کنین.
@DevTwitter | <madman/>
یه پکیج جدید داخل NPM توسعه دادم به اسم script-connector و خوشحال میشم یه نگاه بندازین
npmjs.com/package/script-connector
github.com/Tariux/Node-Script-Connector
اگر تا حالا به این فکر کردین که بشه اسکریپت های زبان های دیگه رو از طریق JavaScript اجرا کرد، این پکیج دقیقا برای همینه. Script Connector یه ابزار سبک و دقیق با معماری تمیزه که بدون هیچ بخش اضافهای طراحی شده تا سریع، قابل اعتماد و کاملا قابل تنظیم باشه.
میتونین همه چیز رو طبق نیاز خودتون پیکربندی کنین، و از اون طرف متریک های دقیقی از تمام بخش های در حال اجرا دریافت کنین.
یه تیکه کد ساده از نحوه استفادش: (در نظر بگیرید کانفیگ های خیلی بیشتری از این داخل پکیج موجوده)
const { ScriptConnector } = require('script-connector');
const connector = new ScriptConnector({
scripts: {
math: './scripts/math.py',
}
});
connector.api.math.add(10, 5);اگر خواستین نمونه کامل تر یا داکیومنتش رو ببینین، خوشحال میشم گیتهاب رو چک کنین.
@DevTwitter | <madman/>
Forwarded from BenDev
هنگام برنامه نویسی شدیدا
Antonio Vivaldi
رو توصیه میکنم اصلا تمرکزم دوبرابر میشه . خیلی خوبه.
@BenDevelop
Antonio Vivaldi
رو توصیه میکنم اصلا تمرکزم دوبرابر میشه . خیلی خوبه.
@BenDevelop
Forwarded from Byteforge / بایــت فورج 🛸
فرض کن یه رستوران بزرگ داری
توی آشپزخونهات کلی آشپز (Container) داری، هرکدوم یه بخش خاص از غذا رو درست میکنن
Kubernetes مثل مدیر رستورانه. خودش تصمیم میگیره چند تا آشپز لازم داری، کی یکی اضافه بشه یا اگه یکی خسته شد یا رفت، یکی دیگه جاش بیاد. اگه یه آشپز مریض شد یا سوختگی گرفت ( یعنی یه کانتینر کرش کرد)، Kubernetes سریع یه آشپز جدید (Pod جدید) جای اون میفرسته تا کار متوقف نشه.
اگه jاتفاقی مشتریها زیاد شدن (یعنی ترافیک زیاد شد)، Kubernetes خودش میگه
اگه شب شد و مشتریا رفتن، میگه
تازه Kubernetes حتی بلده اگه برق یه آشپزخونه رفت (یعنی یه Node از کار افتاد)، آشپزها رو بفرسته تو یه آشپزخونه دیگه که هنوز برق داره (یعنی تو یه Node سالم).
توی آشپزخونهات کلی آشپز (Container) داری، هرکدوم یه بخش خاص از غذا رو درست میکنن
Kubernetes مثل مدیر رستورانه. خودش تصمیم میگیره چند تا آشپز لازم داری، کی یکی اضافه بشه یا اگه یکی خسته شد یا رفت، یکی دیگه جاش بیاد. اگه یه آشپز مریض شد یا سوختگی گرفت ( یعنی یه کانتینر کرش کرد)، Kubernetes سریع یه آشپز جدید (Pod جدید) جای اون میفرسته تا کار متوقف نشه.
اگه jاتفاقی مشتریها زیاد شدن (یعنی ترافیک زیاد شد)، Kubernetes خودش میگه
«خب بچهها! باید آشپزخونهمون رو بزرگتر کنیم!»
و چند تا آشپز (Pod) دیگه اضافه میکنه.
اگه شب شد و مشتریا رفتن، میگه
«اوکی، الان لازم نیست ۱۰ تا آشپز کار کنن، ۳ تا کافیه.»
و خودش بقیه رو میفرسته خونه تا منابع هدر نره.
تازه Kubernetes حتی بلده اگه برق یه آشپزخونه رفت (یعنی یه Node از کار افتاد)، آشپزها رو بفرسته تو یه آشپزخونه دیگه که هنوز برق داره (یعنی تو یه Node سالم).
#DevOps
#cluster
#kubernetes
#byteforge
@byteforge_chan 🛸
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 به نظر می رسد انویدیا عملاً بازار چین را از دست داده و چین وارد عصر استقلال فناوری در حوزه هوش مصنوعی شده است.
چین پس از سالها تحریم آمریکا علیه فروش تراشه های هوش مصنوعی انویدیا، با توسعه تراشه های بومی توسط Huawei و SMIC به خودکفایی رسیده است. تراشه های جدید چینی عملکردی نزدیک به محصولات انویدیا دارند و همین باعث شد پکن دیگر به واردات تراشه های آمریکایی نیازی نداشته باشد. در نتیجه، وقتی دولت ترامپ تلاش کرد فروش تراشه های انویدیا را در مذاکرات با چین مطرح کند، شی جینپینگ آن را رد کرد.
#خبر
#توییت
@TheRaymondDev
چین پس از سالها تحریم آمریکا علیه فروش تراشه های هوش مصنوعی انویدیا، با توسعه تراشه های بومی توسط Huawei و SMIC به خودکفایی رسیده است. تراشه های جدید چینی عملکردی نزدیک به محصولات انویدیا دارند و همین باعث شد پکن دیگر به واردات تراشه های آمریکایی نیازی نداشته باشد. در نتیجه، وقتی دولت ترامپ تلاش کرد فروش تراشه های انویدیا را در مذاکرات با چین مطرح کند، شی جینپینگ آن را رد کرد.
#خبر
#توییت
@TheRaymondDev
X (formerly Twitter)
Megatron (@Megatron_ron) on X
NEW:
🇨🇳🇺🇲 China already has a replacement for Nvidia's AI chips and is not interested in them anymore - Reuters
Back in 2022, the US banned Nvidia from selling its powerful AI chips to China.
So Nvidia made a light version called the H20, which was weak…
🇨🇳🇺🇲 China already has a replacement for Nvidia's AI chips and is not interested in them anymore - Reuters
Back in 2022, the US banned Nvidia from selling its powerful AI chips to China.
So Nvidia made a light version called the H20, which was weak…
Forwarded from محتوای آزاد سهراب (Sohrab)
فردا ارائهی با موضوع ساختار سیستمعامل گنو توی دانشگاه دارم که به صورت عملی قراره یک توزیع مینیمال گنو/لینوکس رو با در کنار هم گذاشتن BusyBox و کرنل لینوکس بسازم.
مراحل انجام این رو توی بلاگم بعد از ارائه مکتوب میکنم و اگر هم بتونم ارائه رو ضبط میکنم و انتشار میدم.
@SohrabContents
مراحل انجام این رو توی بلاگم بعد از ارائه مکتوب میکنم و اگر هم بتونم ارائه رو ضبط میکنم و انتشار میدم.
@SohrabContents
Forwarded from محتوای آزاد سهراب (Sohrab)
اگر دنبال یک خبرنامه ایمیلی مفید در زمینه گنو/لینوکس، دواپس و ... هستید توی خبرنامه سایت sysxplore ثبتنام کنید. روزانه محتوای مفید خوبی میفرسته.
https://sysxplore.com/
@SohrabContents
https://sysxplore.com/
@SohrabContents
Forwarded from Golden Code (@lix)
تا حالا پیش اومده بخوای یه قابلیت یا یه گزارش فقط برای درصد کمی از کاربران فعال باشه؟
لاراول یه ابزار باحال برای این کار داره: Lottery
مثال:
تست ویژگی جدیده سایتمون فقط برای ۵٪ کاربران
فرض کن میخوای یه قابلیت جدید (مثلا طراحی تازهی داشبورد) رو فقط برای ۵٪ از کاربرها فعال کنی تا عملکردش رو بسنجی 👇🏾
حالا فقط ۵٪ کاربران این داشبورد جدید رو میبینن 🔥
بدون نیاز به feature flag سیستم یا تنظیمات پیچیده.
📌 کاربردهای دیگه ی Lottery در لاراول
مانیتورینگه سبک:
گرفتن لاگ کامل SQL در درصدی از ریکوئستها
تست A/B برای UX
اجرای وظایف سنگین فقط در بخشی از ریکوئست ها (مثلا آنالیز رفتار کاربر)
این Lottery از نسخهی 9.19 به بعد اضافه شده و توی اپهای پر ترافیک کمک میکنه بدون کاهش سرعت، رفتار سیستم رو هوشمندانه بررسی کنی.
#Laravel #Laravel_tip #لاراول
@GoldenCodeir 🔥
(بهمنبع و مثالش دقت کنید 👇🏾)
https://x.com/wendell_adriel/status/1978788530139635982?t=Hc2oNzGolFfMitfwrxC2zA&s=35
لاراول یه ابزار باحال برای این کار داره: Lottery
مثال:
تست ویژگی جدیده سایتمون فقط برای ۵٪ کاربران
فرض کن میخوای یه قابلیت جدید (مثلا طراحی تازهی داشبورد) رو فقط برای ۵٪ از کاربرها فعال کنی تا عملکردش رو بسنجی 👇🏾
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Lottery;
Lottery::odds(1, 20) // یعنی 5% احتمال
->winner(function () {
session(['new_dashboard' => true]);
})
->loser(function () {
session(['new_dashboard' => false]);
})
->choose();
حالا فقط ۵٪ کاربران این داشبورد جدید رو میبینن 🔥
بدون نیاز به feature flag سیستم یا تنظیمات پیچیده.
📌 کاربردهای دیگه ی Lottery در لاراول
مانیتورینگه سبک:
گرفتن لاگ کامل SQL در درصدی از ریکوئستها
تست A/B برای UX
اجرای وظایف سنگین فقط در بخشی از ریکوئست ها (مثلا آنالیز رفتار کاربر)
این Lottery از نسخهی 9.19 به بعد اضافه شده و توی اپهای پر ترافیک کمک میکنه بدون کاهش سرعت، رفتار سیستم رو هوشمندانه بررسی کنی.
#Laravel #Laravel_tip #لاراول
@GoldenCodeir 🔥
(بهمنبع و مثالش دقت کنید 👇🏾)
https://x.com/wendell_adriel/status/1978788530139635982?t=Hc2oNzGolFfMitfwrxC2zA&s=35
X (formerly Twitter)
Wendell Adriel (@wendell_adriel) on X
Laravel Tip 🚀
Did you know about the Lottery helper from Laravel? It's great for executing a piece of code only for a percentage of calls/requests.
In the example, we capture full SQL logs for 0.2% of requests, this can be used to spot N+1s and slow endpoints…
Did you know about the Lottery helper from Laravel? It's great for executing a piece of code only for a percentage of calls/requests.
In the example, we capture full SQL logs for 0.2% of requests, this can be used to spot N+1s and slow endpoints…
Forwarded from DevTwitter | توییت برنامه نویسی
یبار داشتم با TRPC ی اپ میساختم ولی نتونستم فایل آپلود اوکی کنم پس با Express ی سرویس هلپر ساختم که بتونه با اپ ارتباط بگیره و فایل آپلود اوکی کنه.
https://github.com/Afrachin/upload-helper
@DevTwitter | <Amirparsa Baghdadi/>
https://github.com/Afrachin/upload-helper
@DevTwitter | <Amirparsa Baghdadi/>
Forwarded from Linuxor ?
کوییز تجربی: به نظرتون وقتی دااریم جیمیل ارسال میکنیم بعد از ارسال فورا روی undo یا cancel sending کلیک کنیم چه اتفاقی اون پشت میافته؟
Anonymous Quiz
20%
ایمیل اصلا ارسال نشده توی مرورگر هستش در واقع اون یه تاخیر مصنوعیه.
14%
به کسی که ایمیل ارسال کردیم یه پکت EMAIL_UNDO ارسال میشه و کلاینت اون باید ایمیل رو حذف کنه.
45%
ایمیل توی سرور های جیمیل توی یه صف نگهداری میشه و بعد از اعمال تاخیر ارسال میشه تا فرصت Undo باشخ
20%
یه مرد هیچ وقت ایمیلی که ارسال کرده رو پس نیمیگیره فوقش یه ایمیل دیگه میفرسته مینویسه: اصلاحیه...