Dev Perfects
40 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 حذف اینستاگرام می‌تواند دست‌کم ۱۰ درصد به بهره‌ هوشی ‌ات اضافه کند.

@TheRaymondDev
Forwarded from Linuxor ?
این که می‌گن کوزه‌گر از کوزه شکسته آب می‌خوره راست می‌گن همیشه ما توسعه دهنده ها هیچ وقت به قدری بیکار نمی‌شیم که یه پنل خوب مدیریتی برای خودمون درست کنیم همیشه برای مدیریت داریم با فایل های کانفیگ ور می‌ریم اما واسه مشتری حتی تم روز و شب و سرچ های نرم RealTime هم می‌زاریم


@Linuxor
Forwarded from Linuxor ?
اگه هنوز داری فرم‌ها رو با useState یا onChange‌های دستی هندل می‌کنی، Formik یه لایبرری ری‌اکتیه که هندل کردن فرم‌ها، ولیدیشن، سابمیت و حتی نمایش ارورها رو برات انقدر تمیز و ساده می‌کنه که دیگه به دردسر های فرم فکر نمی‌کنی

formik.org

@Linuxor
Forwarded from Golden Code (علی 🇨🇴)
در لاراول وقتی مدلی (مثل Comment, Image, یا Like) میتونه به چند مدل مختلف تعلق داشته باشه، از روابط Polymorphic استفاده میکنیم.

برای پیاده‌سازی این رابطه، معمولاً به دو ستون نیاز داریم:

*_id → آیدیه مدل والد

*_type → نام کامل کلاس مدل والد


بجای ساخت این ستون‌ها بصورت دستی، لاراول یه سری روش ارائه داده که کارو ساده‌تر و خواناتر میکنه.

🔹 morphs('name')
نوع ID: bigInteger → پیش‌فرض و متداول

🔹 uuidMorphs('name')
نوع ID: UUID → وقتی مدل‌ها از UUID استفاده می‌کنن

🔹 ulidMorphs('name')
نوع ID: ULID → مناسب پروژه‌های مدرن


یه مثال:
Schema::create('comments', function (Blueprint $table) {
$table->id();
$table->text('body');

// این خط به‌جای دو ستون: commentable_id و commentable_type
$table->morphs('commentable');

$table->timestamps();
});

📌 این خط بصورت خودکار این دو ستون رو اضافه میکنه:

commentable_id (unsigned BigInt)

commentable_type (string)


با استفاده از morphs() و نسخه‌های UUID/ULID اون، کدمون خواناتر، تمیزتر، و مطابق استاندارای لاراول میشه.

@GoldenCodeir

#Laravel
(به منبع و مثالش دقت کنید 👇🏾)
https://x.com/PovilasKorop/status/1943245143517127095?t=G7MLCysG1b-TCpom8s83sA&s=35
Forwarded from Linuxor ?
می‌دونین چرا کامپیوتری ها اینترنت آزاد تر ندارن ولی خبرنگار ها دارن؟ چون کامیپوتری ها حق خودشون رو توی اولویت قرار ندادن و دارن از حق مردم دفاع می‌کنن

حالا برعکس خبرنگار ها با اینکه قوی ترین رسانه هارو دارن هیچ وقت پشت مردم نبودن و فقط به فکر خودشونن؛ به نظر من بیاید التماس این خبرنگار هارو کنیم که وضع رو برامون بهتر کنن چون قدرتشو داشتن که اینترنت آزاد برای خودشون بگیرن برای ما هم می‌گیرن؛ تازه رسانه هم دارن همه ازشون میترسن

@Linuxor
Forwarded from یه شعر (Poem Bot)
مولانا | دیوان شمس | رباعیات | رباعی شمارهٔ ۸۴۱

هرچیز که بسیار شود خوار شود
گر خوار شود به خانه پار شود
گر سیر شود از همه بیزار شود
یارش به بهای جان خریدار شود

#مولانا | گنجور
📍@iipoem
Forwarded from Ninja Learn | نینجا لرن (Mohammad)
یکی از چالش‌هایی که خیلی از برنامه‌نویس‌ها باهاش روبه‌رو می‌شن، اینه که بعد از یه مدت طولانی دوری از کدنویسی، حس می‌کنن مهارت‌هاشون زنگ زده انگار یه جورایی انگشتاشون دیگه با کیبورد غریبه شده و مفاهیم برنامه‌نویسی تو ذهنشون غبار گرفته. اما نگران نباشین این پست برای شماست که می‌خواین دوباره به اوج برگردین و مهارت‌های کدنویسی‌تون رو مثل قبل کنید. بیاین با هم یه نقشه راه بکشیم که چطور می‌تونیم مهارت‌هامون رو بازیابی کنیم و دوباره تو دنیای کد به اوج برگردیم🚀

🧠 چرا مهارت‌ها زنگ می‌زنن؟

اول بذارین خیالتون رو راحت کنم: دوری از کدنویسی کاملاً طبیعیه. شاید سر یه پروژه دیگه بودین، زندگی شخصی‌تون شلوغ شده یا حتی فقط نیاز به یه استراحت داشتین. اما وقتی برمی‌گردین، ممکنه حس کنین:
مفاهیم پایه‌ای مثل حلقه‌ها یا ساختار داده‌ها انگار غریبه شدن.

ابزارها و فریم‌ورک‌هایی که قبلاً باهاشون راحت بودین، حالا گیج‌کننده به نظر میان.

اعتماد به نفس کدنویسی‌تون یه کم افت کرده.


اینا همه عادی‌ان مغز ما مثل عضله‌ست؛ اگه یه مدت تمرین نکنه، یه کم تنبل می‌شه، ولی با یه برنامه درست می‌تونین دوباره رو فرم بیاین.

📚 نقشه راه برای بازیابی مهارت‌ها


1⃣ از پایه‌ها شروع کنین 🏗️

چرا؟ مفاهیم پایه‌ای مثل متغیرها، توابع، و حلقه‌ها ستون هر زبان برنامه‌نویسی‌ان. مرور اینا ذهنتون رو گرم می‌کنه.
یه پروژه ساده مثل یه ماشین‌حساب یا یه برنامه To-Do List با زبانی که قبلاً بلد بودین بنویسین.

2⃣ یه پروژه کوچیک و باحال انتخاب کنین 🎯
چرا؟ پروژه‌های کوچیک اعتماد به نفس رو برمی‌گردونن و کمک می‌کنن حس کنین دوباره تو بازی هستین.
یه چیزی بسازین که بهش علاقه دارین، مثلاً یه اسکریپت پایتون برای خودکار کردن یه کار روزمره یا یه صفحه وب ساده با HTML/CSS.

ایده: یه بات ساده برای تلگرام یا یه برنامه که قیمت ارزها رو نشون بده.

3⃣ ابزارها و تکنولوژی‌ها رو مرور کنین 🛠️
چرا؟ اگه مدت زیادی از فریم‌ورک‌ها (مثل Django یا React) دور بودین، ممکنه آپدیت‌هاشون غافلگیرتون کنه.
مستندات رسمی (مثل docs.djangoproject.com) یا یه دوره کوتاه تو Udemy یا Pluralsight بگیرین. فقط یه بخش رو مرور کنین، نه کلش

نکته: نیازی نیست همه‌چیز رو از صفر یاد بگیرین؛ فقط تغییرات جدید رو چک کنین.

4⃣ با حل مسائل تمرین کنین 🧩
چرا؟ حل مسائل الگوریتمی ذهنتون رو قوی می‌کنه و کمک می‌کنه منطق کدنویسی‌تون برگرده.
تو سایت‌هایی مثل HackerRank، Codewars یا LeetCode سوال‌های سطح آسان تا متوسط رو حل کنین. روزی ۱-۲ تا کافیه.
ترفند: یه دفترچه یادداشت داشته باشین و راه‌حل‌ها رو توضیح بدین تا بهتر جا بیفته.

5⃣ کد دیگران رو بخونین 📖
چرا؟ خوندن کدهای باکیفیت بهتون یادآوری می‌کنه که کد تمیز چطور نوشته می‌شه.
پروژه‌های متن‌باز تو GitHub (مثل پروژه‌های پایتون یا جاوااسکریپت) رو بررسی کنین. سعی کنین بفهمین چرا یه تابع خاص یا ساختار خاص استفاده شده.

6⃣ با یه پروژه واقعی برگردین تو رینگ 💪
چرا؟ پروژه‌های واقعی شما رو مجبور می‌کنن همه‌چیز رو کنار هم بذارین: کدنویسی، دیباگ، تست، و کار با ابزارها.
یه اپلیکیشن ساده بسازین، مثلاً یه وبسایت شخصی یا یه API با FastAPI. حتی می‌تونین تو پروژه‌های متن‌باز مشارکت کنین.
نکته: از چیزایی که قبلاً بلد بودین شروع کنین تا اعتماد به نفس‌تون برگرده.

7⃣ با بقیه گپ بزنین 👥
چرا؟ حرف زدن با برنامه‌نویس‌های دیگه بهتون انگیزه می‌ده و ایده‌های جدید می‌آره.
تو گروه‌های تلگرامی، دیسکورد یا انجمن‌های مثل Stack Overflow فعال بشین. حتی یه سوال ساده بپرسین یا جواب بدین.

🔍 نکات طلایی برای برگشتن به اوج

صبور باشین: مثل دوچرخه‌سواریه؛ یه کم طول می‌کشه تا دوباره تعادل پیدا کنین.
روزی یه کم: لازم نیست روزی ۸ ساعت کد بزنین. حتی ۳۰ دقیقه تمرین روزانه معجزه می‌کنه.
لذت ببرین: یه پروژه انتخاب کنین که بهش علاقه دارین تا انگیزه‌تون بالا بمونه.

جمع‌بندی

دوری از کدنویسی یه اتفاق عادیه و اصلاً به این معنی نیست که مهارت‌هاتون غیبشون زده با یه برنامه ساده، مثل مرور پایه‌ها، حل مسائل و ساخت پروژه‌های کوچیک، می‌تونین دوباره همون برنامه‌نویس قبراق و سرحال بشین.

#️⃣ #programming #backend

 
🥷🏻 CHANNEL | GROUP
Forwarded from Ninja Learn | نینجا لرن (Mohammad)
یکی از چالش‌هایی که خیلی از برنامه‌نویس‌ها باهاش روبه‌رو می‌شن، اینه که بعد از یه مدت طولانی دوری از کدنویسی، حس می‌کنن مهارت‌هاشون زنگ زده انگار یه جورایی انگشتاشون دیگه با کیبورد غریبه شده و مفاهیم برنامه‌نویسی تو ذهنشون غبار گرفته. اما نگران نباشین این پست برای شماست که می‌خواین دوباره به اوج برگردین و مهارت‌های کدنویسی‌تون رو مثل قبل کنید. بیاین با هم یه نقشه راه بکشیم که چطور می‌تونیم مهارت‌هامون رو بازیابی کنیم و دوباره تو دنیای کد به اوج برگردیم🚀

🧠 چرا مهارت‌ها زنگ می‌زنن؟

اول بذارین خیالتون رو راحت کنم: دوری از کدنویسی کاملاً طبیعیه. شاید سر یه پروژه دیگه بودین، زندگی شخصی‌تون شلوغ شده یا حتی فقط نیاز به یه استراحت داشتین. اما وقتی برمی‌گردین، ممکنه حس کنین:
مفاهیم پایه‌ای مثل حلقه‌ها یا ساختار داده‌ها انگار غریبه شدن.

ابزارها و فریم‌ورک‌هایی که قبلاً باهاشون راحت بودین، حالا گیج‌کننده به نظر میان.

اعتماد به نفس کدنویسی‌تون یه کم افت کرده.


اینا همه عادی‌ان مغز ما مثل عضله‌ست؛ اگه یه مدت تمرین نکنه، یه کم تنبل می‌شه، ولی با یه برنامه درست می‌تونین دوباره رو فرم بیاین.

📚 نقشه راه برای بازیابی مهارت‌ها


1⃣ از پایه‌ها شروع کنین 🏗️

چرا؟ مفاهیم پایه‌ای مثل متغیرها، توابع، و حلقه‌ها ستون هر زبان برنامه‌نویسی‌ان. مرور اینا ذهنتون رو گرم می‌کنه.
یه پروژه ساده مثل یه ماشین‌حساب یا یه برنامه To-Do List با زبانی که قبلاً بلد بودین بنویسین.

2⃣ یه پروژه کوچیک و باحال انتخاب کنین 🎯
چرا؟ پروژه‌های کوچیک اعتماد به نفس رو برمی‌گردونن و کمک می‌کنن حس کنین دوباره تو بازی هستین.
یه چیزی بسازین که بهش علاقه دارین، مثلاً یه اسکریپت پایتون برای خودکار کردن یه کار روزمره یا یه صفحه وب ساده با HTML/CSS.

ایده: یه بات ساده برای تلگرام یا یه برنامه که قیمت ارزها رو نشون بده.

3⃣ ابزارها و تکنولوژی‌ها رو مرور کنین 🛠️
چرا؟ اگه مدت زیادی از فریم‌ورک‌ها (مثل Django یا React) دور بودین، ممکنه آپدیت‌هاشون غافلگیرتون کنه.
مستندات رسمی (مثل docs.djangoproject.com) یا یه دوره کوتاه تو Udemy یا Pluralsight بگیرین. فقط یه بخش رو مرور کنین، نه کلش

نکته: نیازی نیست همه‌چیز رو از صفر یاد بگیرین؛ فقط تغییرات جدید رو چک کنین.

4⃣ با حل مسائل تمرین کنین 🧩
چرا؟ حل مسائل الگوریتمی ذهنتون رو قوی می‌کنه و کمک می‌کنه منطق کدنویسی‌تون برگرده.
تو سایت‌هایی مثل HackerRank، Codewars یا LeetCode سوال‌های سطح آسان تا متوسط رو حل کنین. روزی ۱-۲ تا کافیه.
ترفند: یه دفترچه یادداشت داشته باشین و راه‌حل‌ها رو توضیح بدین تا بهتر جا بیفته.

5⃣ کد دیگران رو بخونین 📖
چرا؟ خوندن کدهای باکیفیت بهتون یادآوری می‌کنه که کد تمیز چطور نوشته می‌شه.
پروژه‌های متن‌باز تو GitHub (مثل پروژه‌های پایتون یا جاوااسکریپت) رو بررسی کنین. سعی کنین بفهمین چرا یه تابع خاص یا ساختار خاص استفاده شده.

6⃣ با یه پروژه واقعی برگردین تو رینگ 💪
چرا؟ پروژه‌های واقعی شما رو مجبور می‌کنن همه‌چیز رو کنار هم بذارین: کدنویسی، دیباگ، تست، و کار با ابزارها.
یه اپلیکیشن ساده بسازین، مثلاً یه وبسایت شخصی یا یه API با FastAPI. حتی می‌تونین تو پروژه‌های متن‌باز مشارکت کنین.
نکته: از چیزایی که قبلاً بلد بودین شروع کنین تا اعتماد به نفس‌تون برگرده.

7⃣ با بقیه گپ بزنین 👥
چرا؟ حرف زدن با برنامه‌نویس‌های دیگه بهتون انگیزه می‌ده و ایده‌های جدید می‌آره.
تو گروه‌های تلگرامی، دیسکورد یا انجمن‌های مثل Stack Overflow فعال بشین. حتی یه سوال ساده بپرسین یا جواب بدین.

🔍 نکات طلایی برای برگشتن به اوج

صبور باشین: مثل دوچرخه‌سواریه؛ یه کم طول می‌کشه تا دوباره تعادل پیدا کنین.
روزی یه کم: لازم نیست روزی ۸ ساعت کد بزنین. حتی ۳۰ دقیقه تمرین روزانه معجزه می‌کنه.
لذت ببرین: یه پروژه انتخاب کنین که بهش علاقه دارین تا انگیزه‌تون بالا بمونه.

جمع‌بندی

دوری از کدنویسی یه اتفاق عادیه و اصلاً به این معنی نیست که مهارت‌هاتون غیبشون زده با یه برنامه ساده، مثل مرور پایه‌ها، حل مسائل و ساخت پروژه‌های کوچیک، می‌تونین دوباره همون برنامه‌نویس قبراق و سرحال بشین.

#️⃣ #programming #backend

 
🥷🏻 CHANNEL | GROUP
Forwarded from Database Labdon
🔵 عنوان مقاله
1. Life Altering Postgres Patterns

🟢 خلاصه مقاله:
مقاله‌ای که بررسی شده حاوی دوازده نکته و بینش کلیدی است که نویسنده از تجربیات واقعی خود در زمینه برنامه‌نویسی و مدیریت پایگاه داده به دست آورده است. این نکات شامل استفاده از UUID به عنوان کلیدهای اصلی، نحوه نام‌گذاری جداول، استفاده از اسکیماها و دیدگاه‌ها (views) می‌باشد. نویسنده تاکید دارد که این توصیه‌ها بر پایه تجربیات سخت و عملی او شکل گرفته‌اند و می‌توانند به عنوان راهنمایی مفید برای توسعه‌دهندگان نرم‌افزار عمل کنند. این مقاله نه تنها نکات تخصصی و فنی مرتبط با مسائل فناوری اطلاعات را پوشش می‌دهد، بلکه به چگونگی بهینه‌سازی کار با پایگاه داده‌ها و افزایش کارایی در زمینه برنامه‌نویسی نیز می‌پردازد. این راهنمایی‌ها برای هر توسعه‌دهنده‌ای که به دنبال بهبود مهارت‌های خود در این زمینه است، ارزشمند است.

🟣لینک مقاله:
https://postgresweekly.com/link/171599/web


👑 @Database_Academy
Forwarded from Ninja Learn | نینجا لرن (Mohammad)
دوستان ممنون میشم حمایت کنید تایه شروع قوی داشته باشیم 🥰
Forwarded from Linux Labdon
#کدنمک

مکانیسم ماشه:
$ rm -rf /
Forwarded from Morteza Bashsiz مرتضی باشسیز (Morteza Bashsiz)
ویدیو شماره ۹ - استفاده از PDNS به صورت Recursor

توی این ویدیو توضیح دادم که به صورت Recursor چگونه میشه استفاده کرد و معماری درست در زیرساخت‌های بزرگ به چه صورت هست. چند نمونه تستی هم اجرا میکنم.

https://youtu.be/28zwr7Al3wQ
در مورد اینسیدنت cloudflare روی ۱.۱.۱.۱

بلاگ پست جالبی نوشتن و خلاصه ایده ش اینه که به خاطر سیستم legacy کانفیگ اشتباه باعث خطا شد و ما دیگه سیستم مدرن(!) میاریم بالا و حل میشه همه چی.

https://news.ycombinator.com/item?id=44578490


چند تا نکته به نظرم میرسه:
۱. چقدر خوبه که تا حدی شفافیت دارن و براشون مهمه و هم عذرخواهی کردن و گفتن کاری میکنیم که دیگه تکرار نشه.
۲. این که یه مشکل رو به اشتباه یه مهندس تقلیل نمی‌دن برام قشنگه، چون آدما اشتباه میکنن و باید سامانه ها و روند ها جوری باشه که خطا رو نشون بده (مثال ساده میشه پایپالاین تست یا محیط تست جدا از پروداکشن)
۳. به نظر میاد که خطا رو محیط تست بوده ولی باعث خراب شدن پروداکشن شده. این یکی از بدترین اتفاق هاست. به چند دلیل از جمله این که تغییر تو محیط تست زیاده و قاعدتاً داکیومنت نمیشه و پیدا کردن ریشه مشکل ممکنه خیلی سخت بشه.
۴. این روحیه که همه چیزو بندازیم گردن سیستم قبلی و بگیم legacy بود رو دوست ندارم. یهو با این اینسیدنت متوجه شدید که legacy بوده و همه اشکالاتش در اومد؟ قاعدتا مشکل از این هم هست که وقت کافی به حل بدهی فنی هاش اختصاص پیدا نکرده در طی ماه ها و سال های اخیر.
۵. نکته ای که برام جالبه اینه که اینسیدنت ۲۰۲۱ meta هم که باعث شد کل زیرساختش از بیرون قابل دسترسی نباشه هم به خاطر یه کانفیگ اشتباه بود. شاید اون تمرکزی که برای قابل اطمینان کردن لایه های بالاتر داشتیم (زبان های type safe و انواع تست و canary release و ...) رو باید رو لایه های پایین تر هم داشته باشیم.
Forwarded from omid trade 360
🔵 عنوان مقاله
Aave TVL 50% greater than Revolut's (1 minute read)

🟢 خلاصه مقاله:
مقاله حاضر، به بررسی و مقایسه Aave و Revolut می‌پردازد که دو سازمان مالی در عرصه‌های متفاوت هستند. Aave، یک پلتفرم وام دهی غیرمتمرکز است که بر بستر بلاک‌چین فعالیت می‌کند، در حالی که Revolut یک شرکت فناوری مالی است که خدمات بانکی و تبدیل ارز را ارائه می‌دهد. بر اساس این مقاله، میزان کل ارزش قفل‌شده (TVL) در Aave، تقریباً 50 درصد بیشتر از دارایی‌های تحت مدیریت (AUM) در Revolut است. این تفاوت عمده ارزش نشان‌دهنده پذیرش گسترده‌تر و اعتماد بیشتر به پلتفرم‌های مالی بلاک‌چین مانند Aave در مقابل روش‌های سنتی‌تر مدیریت دارایی است که توسط شرکت‌هایی مانند Revolut انجام می‌شود. این خلاصه برجسته‌ کردن این تفاوت اساسی میان دو مدل تجاری و نقش تکنولوژی‌های نوین در تحول عرصه مالی را در بر دارد.

🟣لینک مقاله:
https://threadreaderapp.com/thread/1931735079098921341.html?utm_source=tldrcrypto


👑 @omidtrade360
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
برای کار با Kiro نیاز به فیلترشکن است که شاید وصل شود.
در نرم افزار خطای An Authorization Error Occurred. می دهد که در حالی که با گیت هاب احراز هویت شده است.
احتمالا از سوی آمازون مسدود شدیم.

@TheRaymondDev
خب دوستان، شیرین ها رو بیارید پخش کنید
اینترنت هم طبقاتی شد
با اولویت ارائه اینترنت طبقاتی به کسب‌وکارها؛ آیین‌نامه اجرایی کمیته تسهیل فعالیت کسب‌وکارهای دیجیتال تصویب شد

در جلسه عصر سه‌شنبه شورای عالی فضای مجازی که با حضور سران قوا برگزار شد، آئین‌نامه اجرایی کمیته «تسهیل فعالیت کسب‌وکارهای اقتصاد رقومی (دیجیتال)» با اتفاق آرای اعضای شورای‌عالی فضای مجازی تصویب شد.

به گزارش دیجیاتو، پیش‌ازاین در بهمن ۱۴۰۳ ایجاد این کمیته را تصویب کرده بود و روز گذشته آئین‌نامه اجرایی آن هم تصویب شد. در مصوبه تشکیل این کمیته، وظیفه آن رسیدگی به اعتراض تشکل‌های رسمی اقتصاد دیجیتال در کمتر از ۴۸ ساعت عنوان شده بود.

بااین‌حال، روز گذشته (سه‌شنبه ۲۴ تیر ۱۴۰۴) «امیر سیاح»، سرپرست معاونت اقتصادی و تنظیم مقررات مرکز ملی فضای مجازی، در همایش «اینترنت و آینده ایران» یکی از نخستین اقدامات این کمیته را «بازکردن IP برخی کسب‌وکارها» برشمرد.

روز گذشته «فاطمه مهاجرانی»، سخنگوی دولت، نیز از ارائه اینترنت طبقاتی به خبرنگاران خبر داده بود و نام آن را «اینترنت آزادتر» گذاشته بود؛ البته دولت پیش‌ازاین هم به خبرنگاران متقاضی اینترنت طبقاتی ارائه می‌کرد.

به نظر می‌رسد با این اقدامات در دولت چهاردهم، طرح ارائه اینترنت طبقاتی که از سال‌های گذشته آغاز شده و با نام‌های مختلف به گروه‌های خاصی تعلق گرفته است، در سطح گسترده‌تری در حال اجراست؛ هرچند وزارت ارتباطات در کلام بارها با اینترنت طبقاتی مخالفت کرده است.


منبع