Forwarded from Gopher Academy
🔵 عنوان مقاله
OpenTelemetry: A Guide to Observability with Go
🟢 خلاصه مقاله:
با توجه به درخواست شما و با توجه به اینکه متنی برای مقاله ارائه نشده است، نمیتوانم خلاصهای از محتوا ارائه دهم. با این حال، اگر اطلاعات بیشتر یا متن مقاله را ارائه دهید، خوشحال میشوم که خلاصهای دقیق و جامع برای شما تهیه کنم. از اینکه مقاله شامل معرفی جامعی با نمونههای برنامههای کد متنوع است، میتوان فرض کرد که ممکن است درباره مباحث برنامهنویسی یا یک زبان برنامهنویسی خاص باشد. امیدوارم متن کاملتری در اختیار من قرار دهید تا بتوانم کمک بهتری به شما ارائه دهم.
🟣لینک مقاله:
https://golangweekly.com/link/165661/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
OpenTelemetry: A Guide to Observability with Go
🟢 خلاصه مقاله:
با توجه به درخواست شما و با توجه به اینکه متنی برای مقاله ارائه نشده است، نمیتوانم خلاصهای از محتوا ارائه دهم. با این حال، اگر اطلاعات بیشتر یا متن مقاله را ارائه دهید، خوشحال میشوم که خلاصهای دقیق و جامع برای شما تهیه کنم. از اینکه مقاله شامل معرفی جامعی با نمونههای برنامههای کد متنوع است، میتوان فرض کرد که ممکن است درباره مباحث برنامهنویسی یا یک زبان برنامهنویسی خاص باشد. امیدوارم متن کاملتری در اختیار من قرار دهید تا بتوانم کمک بهتری به شما ارائه دهم.
🟣لینک مقاله:
https://golangweekly.com/link/165661/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Luca Cavallin
OpenTelemetry: A Guide to Observability with Go | Blog
Modern applications are often complex, distributed systems. Debugging them is not fun: you have to follow requests across services, logs get lost, and metrics are often hard to correlate. It's like looking for a needle in a haystack - except the haystack…
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
قطعا هممون اسم فریم ورک یا کتابخانه هایی مثل React.js, Vue و یا Angular رو شنیدیم و حتی باهاشون کار کردیم
خب این فریم ورک ها توسط یک تیم یا شرکت ساخته شده اند و کدهای پیچیده و سنگینی برای اجرا شدن دارند و برای یادگیریشون هم نیاز به دیدن دوره های چندین ساعته داریم!
اما من در طی یکسال گذشته قسمتی از وقتم رو صرف ساختن یک کتابخانه ای کردم که منطق آن با الگو برداری از فریم ورک های بزرگی مثل React.js و Next.js نوشته شده و به علت حجم کم و بهینه کدی که برای اجرا شدن نیاز داره(نزدیک به ۲۰۰ خط)، بسیار بسیار سریع هستش.
توی چندتا پروژه اخیری که داشتم هم تستش کردم و این پروژه ها با این کتابخانه نوشته شده اند، در نهایت چند وقت پیش روی npm پکیج اش رو publish کردم و در هفته اول نزدیک به ۱۷۰۰ بار دانلود شد!
اسم این کتابخانه لومینا هستش و یک Full-Stack SPA Maker هست!
یعنی همزمان هم بک اند(به صورت api) و هم فرانت اند و اتصالات به دیتابیس رو میتوانید داخل این پکیج کدنویسی کنید، و حتی از میدل ور ها هم پشتیبانی میکنه!
خیلی قابلیت های دیگه هم داره که همگی داخل داکیومنتش نوشته شده.
دوستان تاجایی که من میدونم این اولین کتابخانه spa ایرانی هستش، پس اگر استفاده کردید و دوستش داشتید ممنون میشم با دادن ستاره و فورک کردن در گیت هاب از لومینا حمایت کنید.
دستور نصب با npm:
https://www.npmjs.com/package/create-lumina
https://github.com/kiarashAlizadeh/create-lumina
@DevTwitter | <Kiarash Alidazadeh/>
خب این فریم ورک ها توسط یک تیم یا شرکت ساخته شده اند و کدهای پیچیده و سنگینی برای اجرا شدن دارند و برای یادگیریشون هم نیاز به دیدن دوره های چندین ساعته داریم!
اما من در طی یکسال گذشته قسمتی از وقتم رو صرف ساختن یک کتابخانه ای کردم که منطق آن با الگو برداری از فریم ورک های بزرگی مثل React.js و Next.js نوشته شده و به علت حجم کم و بهینه کدی که برای اجرا شدن نیاز داره(نزدیک به ۲۰۰ خط)، بسیار بسیار سریع هستش.
توی چندتا پروژه اخیری که داشتم هم تستش کردم و این پروژه ها با این کتابخانه نوشته شده اند، در نهایت چند وقت پیش روی npm پکیج اش رو publish کردم و در هفته اول نزدیک به ۱۷۰۰ بار دانلود شد!
اسم این کتابخانه لومینا هستش و یک Full-Stack SPA Maker هست!
یعنی همزمان هم بک اند(به صورت api) و هم فرانت اند و اتصالات به دیتابیس رو میتوانید داخل این پکیج کدنویسی کنید، و حتی از میدل ور ها هم پشتیبانی میکنه!
خیلی قابلیت های دیگه هم داره که همگی داخل داکیومنتش نوشته شده.
دوستان تاجایی که من میدونم این اولین کتابخانه spa ایرانی هستش، پس اگر استفاده کردید و دوستش داشتید ممنون میشم با دادن ستاره و فورک کردن در گیت هاب از لومینا حمایت کنید.
دستور نصب با npm:
npx create-lumina@latest my-lumina
https://www.npmjs.com/package/create-lumina
https://github.com/kiarashAlizadeh/create-lumina
@DevTwitter | <Kiarash Alidazadeh/>
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 وبسایت اداره DOGE ایلان ماسک بهشدت ناامن است
طبق گزارش 404 Media، وبسایت DOGE ظاهراً بهجای سرورهای دولتی روی Cloudflare Pages ساخته شده است. پس از بررسی معماری سایت و نقاط پایانی API، یکی از محققان توانست پایگاه دادهای را که شامل آمار کارمندان دولتی بود، پیدا کند. آنها تغییراتی در ورودیهای پایگاه داده ایجاد کردند که در وبسایت DOGE منعکس شد.
#خبر
@TheRaymondDev
طبق گزارش 404 Media، وبسایت DOGE ظاهراً بهجای سرورهای دولتی روی Cloudflare Pages ساخته شده است. پس از بررسی معماری سایت و نقاط پایانی API، یکی از محققان توانست پایگاه دادهای را که شامل آمار کارمندان دولتی بود، پیدا کند. آنها تغییراتی در ورودیهای پایگاه داده ایجاد کردند که در وبسایت DOGE منعکس شد.
#خبر
@TheRaymondDev
404 Media
Anyone Can Push Updates to the DOGE.gov Website
"THESE 'EXPERTS' LEFT THEIR DATABASE OPEN."
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
اگر توی پروژه React js و یا Next js از کتابخانه framer motion استفاده میکنید این پست میتونه براتون خیلی مفید باشه!
سایت aceternity UI با استفاده از framer motion کلی انیمیشن های خفن و کاربری توی زمینه و قسمت های مختلف توسعه دادن که میتونید ببینید و اگر دوست داشتید کدش رو مستقیم کپی و استفاده کنید.
پیشنهاد میکنم حتما به سایتش سر بزنید!!!
https://ui.aceternity.com
@DevTwitter | <Mohammad Reza Moradi/>
سایت aceternity UI با استفاده از framer motion کلی انیمیشن های خفن و کاربری توی زمینه و قسمت های مختلف توسعه دادن که میتونید ببینید و اگر دوست داشتید کدش رو مستقیم کپی و استفاده کنید.
پیشنهاد میکنم حتما به سایتش سر بزنید!!!
https://ui.aceternity.com
@DevTwitter | <Mohammad Reza Moradi/>
Forwarded from Linuxor ?
به این نمودار ها میگن Word Cloud که برای نشون دادن فراوانی کلمات توی متن استفاده میشه، که یه دید کلی از متن بهتون میده
برای ساختش میتونید از این ریپو استفاده کنید :
https://github.com/amueller/word_cloud
با ریپوی زیر هم نسخه اصلاح شده فارسیشو میتونید استفاده کنید :
https://github.com/mehotkhan/persian-word-cloud
@Linuxor
برای ساختش میتونید از این ریپو استفاده کنید :
https://github.com/amueller/word_cloud
با ریپوی زیر هم نسخه اصلاح شده فارسیشو میتونید استفاده کنید :
https://github.com/mehotkhan/persian-word-cloud
@Linuxor
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 دیپ سیک قصد دارد تراشه اختصاصی برای هوش مصنوعی بسازد!
طبق گزارش دیجیتایمز، دیپسیک کمپین استخدام بزرگی را آغاز کرده و در حال استخدام کارشناسان نیمهرسانا برای رهبری پروژهی ساخت تراشهی اختصاصی است.
#خبر
@TheRaymondDev
طبق گزارش دیجیتایمز، دیپسیک کمپین استخدام بزرگی را آغاز کرده و در حال استخدام کارشناسان نیمهرسانا برای رهبری پروژهی ساخت تراشهی اختصاصی است.
#خبر
@TheRaymondDev
DIGITIMES
DeepSeek reportedly exploring in-house chip development
Chinese AI company DeepSeek has initiated a major recruitment drive for semiconductor design talent, signaling potential plans to develop its proprietary processors, according to industry sources in China.
😁1
Forwarded from سید فرندز / برنامه نویسی / هک و امنیت / تکنولوژی (M.KH)
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
چند وقت پیش با یکی از دوستام که برنامه نویس یه فروشگاه اینترنتی بزرگه، حرف میزدم. سایتشون یه وردپرس سنگین بود که ترافیکش از یه حدی که رد شد، شروع کرد به کند شدن و داون شدنهای پشت سر هم. مشکل چی بود؟ مثل همیشه، MySQL به گلوگاه تبدیل شده بود.
یه دوستی بهشون گفته بود که راهش واضحه، Read/Write Splitting. دیتابیس رو Replica بزنید، Readها رو بفرستید روی Replica و Writeها روی Primary، فشار کم میشه، مشکل حله!
من خندیدم گفتم: این روی کاغذ جواب میده، ولی توی یه فروشگاه واقعی به درد نمیخوره. فرض کن یه مشتری یه محصول رو میخره، ولی چون Replica هنوز Sync نشده، توی صفحه محصول هنوز موجود نشون داده میشه. بعد یکی دیگه میاد، خرید میکنه، و یهویی دوتا سفارش برای یه محصولی که فقط یکی ازش مونده ثبت میشه. حالا میخای چیکار کنی؟
پرسید پس چیکار کنیم؟
سه تا راه به ذهنم میرسید برای بهینه کردن.
اول کوئری های سنگین مثل لود محصولات رو redis cache کن، دیتابیس یکم نفس بکشه
دوم شاردینگ رو امتحان کن. جدول های ووکامرس رو روی یه دیتابیس دیگه ببر ببین فرقی میکنه یا نه
۳ اینکه چرا سبد خرید کاربرات رو توی دیتابیس نگه میداری؟ ببرشون روی ردیس
نمیدونم مشکلشون برطرف شد یا نه
ولی تجربه ثابت کرده وردپرس بالای دوهزار تا پست، دردسرش بیشتره تا منفعتش.
همین که بیزینستون بزرگ شد، به مهاجرت از وردپرس اقدام کنید,
@DevTwitter | <Mohammad Haquqatkhah/>
یه دوستی بهشون گفته بود که راهش واضحه، Read/Write Splitting. دیتابیس رو Replica بزنید، Readها رو بفرستید روی Replica و Writeها روی Primary، فشار کم میشه، مشکل حله!
من خندیدم گفتم: این روی کاغذ جواب میده، ولی توی یه فروشگاه واقعی به درد نمیخوره. فرض کن یه مشتری یه محصول رو میخره، ولی چون Replica هنوز Sync نشده، توی صفحه محصول هنوز موجود نشون داده میشه. بعد یکی دیگه میاد، خرید میکنه، و یهویی دوتا سفارش برای یه محصولی که فقط یکی ازش مونده ثبت میشه. حالا میخای چیکار کنی؟
پرسید پس چیکار کنیم؟
سه تا راه به ذهنم میرسید برای بهینه کردن.
اول کوئری های سنگین مثل لود محصولات رو redis cache کن، دیتابیس یکم نفس بکشه
دوم شاردینگ رو امتحان کن. جدول های ووکامرس رو روی یه دیتابیس دیگه ببر ببین فرقی میکنه یا نه
۳ اینکه چرا سبد خرید کاربرات رو توی دیتابیس نگه میداری؟ ببرشون روی ردیس
نمیدونم مشکلشون برطرف شد یا نه
ولی تجربه ثابت کرده وردپرس بالای دوهزار تا پست، دردسرش بیشتره تا منفعتش.
همین که بیزینستون بزرگ شد، به مهاجرت از وردپرس اقدام کنید,
@DevTwitter | <Mohammad Haquqatkhah/>
Forwarded from Ninja Learn | نینجا لرن
خب خب خب پشت صحنه دکوریتورها در پایتون: چه اتفاقی پشت پرده میافته؟ 🚀
تو پست قبلی یه نگاه کلی به دکوریتورها داشتیم و دیدیم چقدر میتونن کاربردی باشن. ولی بیاین یه کم عمیقتر بشیم و ببینیم وقتی یه دکوریتور روی تابع یا کلاس اعمال میشه، دقیقاً چه اتفاقی پشت صحنه رخ میده؟ حتی قبل از اینکه کد اجرا بشه.
1⃣ پایتون چطوری کد رو اجرا میکنه؟ 📜
قبل از اینکه بریم سراغ دکوریتورها، یه نکته مهم:
پایتون یه زبان مفسریه، یعنی خطبهخط کد رو اجرا میکنه. ولی قبل از اجرا، اول کد رو به بایتکد تبدیل میکنه و بعد اون رو میفرسته برای ماشین مجازی پایتون (PVM).
تو این فرآیند، هر تابع و کلاس یه آبجکت جداگانه توی حافظه میشه و همینجاست که دکوریتورها وارد عمل میشن 🚀
2⃣ دکوریتورها دقیقاً چیکار میکنن؟ 🔧
1⃣ وقتی @ میذاریم، واقعاً چی میشه؟
وقتی یه تابع رو با @my_decorator دکوریت میکنیم، پایتون پشت صحنه این کارو انجام میده:
میشه این:
یعنی تابع اصلی ساخته میشه، بعد به دکوریتور داده میشه و خروجی دکوریتور جایگزین تابع اصلی میشه. این اتفاق در لحظه تعریف تابع رخ میده، نه وقتی تابع اجرا میشه
2⃣ ترتیب اجرا چطوریه؟
وقتی دکوریتور روی تابع اعمال میشه:
پس، از این به بعد هر وقت تابع رو صدا بزنید، در واقع دارید خروجی دکوریتور رو اجرا میکنید، نه تابع اصلی رو
3⃣ چه بلایی سر تابع میاد؟ 🔍
1⃣ تابع اصلی تبدیل میشه به...
هر تابع تو پایتون یه آبجکته، پس دکوریتورها میتونن روش تغییرات زیادی بدن:
قبل از اجرا یه کار انجام بدن (مثلاً لاگ بگیرن).
تابع اصلی رو اجرا کنن.
بعد از اجرا هم یه کار دیگه انجام بدن (مثلاً خروجی رو دستکاری کنن).
یا حتی یه چیز کاملاً جدید برگردونن
در نتیجه، اسم تابع دیگه به اون چیزی که اول تعریف کردید اشاره نمیکنه، بلکه به خروجی دکوریتور اشاره داره.
2⃣ مشکل متادیتا و راهحل functools.wraps
یه مشکل اینه که دکوریتور باعث میشه اطلاعات تابع (مثل نام، توضیحات و...) از بین بره. برای حل این مشکل، باید از functools.wraps استفاده کنیم:
اینطوری، متادیتای تابع اصلی حفظ میشه وdoc __doc__ دسترسی داشت. 😎
3⃣ دکوریتورهای پشت سر هم (Chaining Decorators)
اگه چندتا دکوریتور رو روی یه تابع بذاریم، ترتیبش مهمه. به این مثال دقت کن:
اول decorator_b اجرا میشه و خروجیش میره تو decorator_a. پس ترتیب اجرا به این شکله:
پس، دکوریتوری که پایینتر نوشته شده، زودتر اجرا میشه 🔄
4⃣ پشت صحنه در زمان کامپایل و اجرا 🕒
1⃣ دکوریتور کی اجرا میشه؟
دکوریتورها همون موقعی که تابع یا کلاس تعریف میشه اجرا میشن، نه وقتی که تابع رو صدا میزنید. پس این کد:
در لحظهای که پایتون به این خط کد میرسه، my_decorator(my_func) اجرا میشه و خروجیش جایگزین my_func میشه.
2⃣ ذخیره تابع در فضای نام (Namespace Binding)
بعد از این فرآیند، اسم تابع به تابع دکوریتشده اشاره میکنه. پس اگه تابع اصلی رو نگه نداشته باشید، دیگه بهش دسترسی ندارید
3⃣ تأثیر روی بهینهسازی
چون دکوریتورها میتونن کد تابع رو تغییر بدن، ممکنه باعث بشن که بهینهسازیهایی که پایتون انجام میده، دیگه درست کار نکنه. برای مثال، اگه دکوریتور یه حلقه اضافه کنه یا اجرای تابع رو تغییر بده، بایتکد نهایی کاملاً متفاوت میشه.
5⃣ نکات مهم که باید رعایت کنید 💡
✅ از functools.wraps استفاده کنید
اگه دکوریتورتون متادیتای تابع رو تغییر میده، این کار باعث میشه اطلاعات تابع اصلی حفظ بشه.
✅ ترتیب دکوریتورها مهمه
اگه چند دکوریتور دارید، حتماً ترتیب اجرا رو بررسی کنید که به مشکل نخورید.
✅ موقع اشکالزدایی حواستون باشه
چون دکوریتورها موقع تعریف اجرا میشن، اگه کدتون مشکل داشته باشه، ممکنه سختتر اشکالزدایی بشه. پس بهتره با print یا لاگ گرفتن، مراحل اجرا رو چک کنید.
➖➖➖➖➖➖➖➖➖
تو پست قبلی یه نگاه کلی به دکوریتورها داشتیم و دیدیم چقدر میتونن کاربردی باشن. ولی بیاین یه کم عمیقتر بشیم و ببینیم وقتی یه دکوریتور روی تابع یا کلاس اعمال میشه، دقیقاً چه اتفاقی پشت صحنه رخ میده؟ حتی قبل از اینکه کد اجرا بشه.
1⃣ پایتون چطوری کد رو اجرا میکنه؟ 📜
قبل از اینکه بریم سراغ دکوریتورها، یه نکته مهم:
پایتون یه زبان مفسریه، یعنی خطبهخط کد رو اجرا میکنه. ولی قبل از اجرا، اول کد رو به بایتکد تبدیل میکنه و بعد اون رو میفرسته برای ماشین مجازی پایتون (PVM).
تو این فرآیند، هر تابع و کلاس یه آبجکت جداگانه توی حافظه میشه و همینجاست که دکوریتورها وارد عمل میشن 🚀
2⃣ دکوریتورها دقیقاً چیکار میکنن؟ 🔧
1⃣ وقتی @ میذاریم، واقعاً چی میشه؟
وقتی یه تابع رو با @my_decorator دکوریت میکنیم، پایتون پشت صحنه این کارو انجام میده:
@my_decorator
def func(...):
...
میشه این:
def func(...):
...
func = my_decorator(func)
یعنی تابع اصلی ساخته میشه، بعد به دکوریتور داده میشه و خروجی دکوریتور جایگزین تابع اصلی میشه. این اتفاق در لحظه تعریف تابع رخ میده، نه وقتی تابع اجرا میشه
2⃣ ترتیب اجرا چطوریه؟
وقتی دکوریتور روی تابع اعمال میشه:
تابع اصلی به عنوان یه آبجکت ساخته میشه.
دکوریتور اجرا میشه و تابع اصلی رو میگیره.
خروجی دکوریتور جایگزین تابع اصلی میشه.
پس، از این به بعد هر وقت تابع رو صدا بزنید، در واقع دارید خروجی دکوریتور رو اجرا میکنید، نه تابع اصلی رو
3⃣ چه بلایی سر تابع میاد؟ 🔍
1⃣ تابع اصلی تبدیل میشه به...
هر تابع تو پایتون یه آبجکته، پس دکوریتورها میتونن روش تغییرات زیادی بدن:
قبل از اجرا یه کار انجام بدن (مثلاً لاگ بگیرن).
تابع اصلی رو اجرا کنن.
بعد از اجرا هم یه کار دیگه انجام بدن (مثلاً خروجی رو دستکاری کنن).
یا حتی یه چیز کاملاً جدید برگردونن
در نتیجه، اسم تابع دیگه به اون چیزی که اول تعریف کردید اشاره نمیکنه، بلکه به خروجی دکوریتور اشاره داره.
2⃣ مشکل متادیتا و راهحل functools.wraps
یه مشکل اینه که دکوریتور باعث میشه اطلاعات تابع (مثل نام، توضیحات و...) از بین بره. برای حل این مشکل، باید از functools.wraps استفاده کنیم:
import functools
def log_calls(func):
@functools.wraps(func)
def wrapper(*args, **kwargs):
print(f"قبل از اجرای {func.__name__}")
result = func(*args, **kwargs)
print(f"بعد از اجرای {func.__name__}")
return result
return wrapper
اینطوری، متادیتای تابع اصلی حفظ میشه وdoc __doc__ دسترسی داشت. 😎
3⃣ دکوریتورهای پشت سر هم (Chaining Decorators)
اگه چندتا دکوریتور رو روی یه تابع بذاریم، ترتیبش مهمه. به این مثال دقت کن:
@decorator_a
@decorator_b
def func():
pass
اول decorator_b اجرا میشه و خروجیش میره تو decorator_a. پس ترتیب اجرا به این شکله:
func = decorator_b(func)
func = decorator_a(func)
پس، دکوریتوری که پایینتر نوشته شده، زودتر اجرا میشه 🔄
4⃣ پشت صحنه در زمان کامپایل و اجرا 🕒
1⃣ دکوریتور کی اجرا میشه؟
دکوریتورها همون موقعی که تابع یا کلاس تعریف میشه اجرا میشن، نه وقتی که تابع رو صدا میزنید. پس این کد:
@my_decorator
def my_func():
pass
در لحظهای که پایتون به این خط کد میرسه، my_decorator(my_func) اجرا میشه و خروجیش جایگزین my_func میشه.
2⃣ ذخیره تابع در فضای نام (Namespace Binding)
بعد از این فرآیند، اسم تابع به تابع دکوریتشده اشاره میکنه. پس اگه تابع اصلی رو نگه نداشته باشید، دیگه بهش دسترسی ندارید
3⃣ تأثیر روی بهینهسازی
چون دکوریتورها میتونن کد تابع رو تغییر بدن، ممکنه باعث بشن که بهینهسازیهایی که پایتون انجام میده، دیگه درست کار نکنه. برای مثال، اگه دکوریتور یه حلقه اضافه کنه یا اجرای تابع رو تغییر بده، بایتکد نهایی کاملاً متفاوت میشه.
5⃣ نکات مهم که باید رعایت کنید 💡
✅ از functools.wraps استفاده کنید
اگه دکوریتورتون متادیتای تابع رو تغییر میده، این کار باعث میشه اطلاعات تابع اصلی حفظ بشه.
✅ ترتیب دکوریتورها مهمه
اگه چند دکوریتور دارید، حتماً ترتیب اجرا رو بررسی کنید که به مشکل نخورید.
✅ موقع اشکالزدایی حواستون باشه
چون دکوریتورها موقع تعریف اجرا میشن، اگه کدتون مشکل داشته باشه، ممکنه سختتر اشکالزدایی بشه. پس بهتره با print یا لاگ گرفتن، مراحل اجرا رو چک کنید.
#⃣ #python #programming
➖➖➖➖➖➖➖➖➖
🥷 CHANNEL | GROUP
Forwarded from Linux Labdon
Forwarded from LearnPOV | لرن پی او وی (Mohammad hossein)
واقعا keep it simple توی معماری و سیاست های shadcn به خوبی رعایت شده ...
یه جورایی میشه گفت shadcn تصمیم گرفت از محدودیت ها خارج بشه ؛)
شاید شما هم از خیلیا شنیده باشید که shadcn خیلی خوب و خفنه، ولی من ندیدم کسی بیاد به طور دقیق این مورد رو توضیح بده.
به زودی یه پست میزارم راجبش که ببینید چه ویژگی هایی وجود داره که انقدر shadcn رو نسبت به بقیه ui kit ها متمایز میکنه
#shadcn #tailwind #tips
یه جورایی میشه گفت shadcn تصمیم گرفت از محدودیت ها خارج بشه ؛)
𝗖𝗛𝗔𝗡𝗡𝗘𝗟 | 𝗚𝗥𝗢𝗨𝗣
Forwarded from Ninja Learn | نینجا لرن
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
لاراول نایتواچ - Laravel Nightwatch
تیلور آتوِل عزیز این ابزار خفنُ برای نظارت بر اپهای لاراولی ساخته که بهت کمک میکنه همیشه حواست به عملکرد و سلامت سیستمت باشه ولی هنوز ریلیز نشده. از درخواستها و لاگها گرفته تا ارورها و مسیرهای کند، همه رو زیر نظر داره و سریع بهت هشدار میده. دیگه Telescope و Pulse رو بنداز دور
https://www.youtube.com/watch?v=-fJnnAm1qBs
@DevTwitter | <Vahid Kaargar/>
تیلور آتوِل عزیز این ابزار خفنُ برای نظارت بر اپهای لاراولی ساخته که بهت کمک میکنه همیشه حواست به عملکرد و سلامت سیستمت باشه ولی هنوز ریلیز نشده. از درخواستها و لاگها گرفته تا ارورها و مسیرهای کند، همه رو زیر نظر داره و سریع بهت هشدار میده. دیگه Telescope و Pulse رو بنداز دور
https://www.youtube.com/watch?v=-fJnnAm1qBs
@DevTwitter | <Vahid Kaargar/>
Forwarded from کدنویس یکروزه (پدرام رحیمی)
nodejs-intro.pdf
739.3 KB
Forwarded from Ninja Learn | نینجا لرن
خب یه دوست گرامی انتخاب شد
با تشکر از همگی
با تشکر از همگی
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
#کارفرمای_آلت_چهره
دولوپر کیست؟
یک موجود که باید تمامی زبان های برنامه نویسی را بداند.
همیشه باید سکوت کند چون تمام برنامه نویسی از دید کارفرما چند if ساده است.
@DevTwitter | <بهزاد/>
دولوپر کیست؟
یک موجود که باید تمامی زبان های برنامه نویسی را بداند.
همیشه باید سکوت کند چون تمام برنامه نویسی از دید کارفرما چند if ساده است.
@DevTwitter | <بهزاد/>
Forwarded from Golden Code (علی 🇨🇴)
در MySQL میتونیم با استفاده از Table Partitioning جداول بزرگمونو به بخشهای کوچکتر تقسیم کنیم.
فایدش چیه؟؟
این کار query performance رو خیلی میتونه بهینه تر کنه برامون.
مثلا اگه جدول فروشمون خیلی بزرگ باشه و دیتاش شامل تاریخ فروش باشه، میتونیم جدولمونو بر اساس سال پارتیشنبندی کنیم و خب اینطوری وقتی بخوایم دیتاهای یه سال خاصی رو جستجو کنیم، فقط بخش مربوط به همون یه سال بررسی میشه که خب باعث میشه فرایند جستوجو سرعتش بهینه تر بشه.
#Laravel
@GoldenCodeir
(بهمنبع و مثالش دقت کنید 👇🏾)
https://x.com/mmartin_joo/status/1890023138622116289?t=bgrX4CCiL7eaLwpI9CAdYw&s=35
فایدش چیه؟؟
این کار query performance رو خیلی میتونه بهینه تر کنه برامون.
مثلا اگه جدول فروشمون خیلی بزرگ باشه و دیتاش شامل تاریخ فروش باشه، میتونیم جدولمونو بر اساس سال پارتیشنبندی کنیم و خب اینطوری وقتی بخوایم دیتاهای یه سال خاصی رو جستجو کنیم، فقط بخش مربوط به همون یه سال بررسی میشه که خب باعث میشه فرایند جستوجو سرعتش بهینه تر بشه.
#Laravel
@GoldenCodeir
(بهمنبع و مثالش دقت کنید 👇🏾)
https://x.com/mmartin_joo/status/1890023138622116289?t=bgrX4CCiL7eaLwpI9CAdYw&s=35
X (formerly Twitter)
Martin Joo (@mmartin_joo) on X
Table partitioning in MySQL can dramatically improve query performance by splitting large tables into smaller physical files.
🔥2