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 Sadra Codes
ابزارهایی که Astral درست کرده، معنی واقعی پکیجه.

uv = virtualenv + pip + pyenv
ruff = flake + black + isort
rye = uv + ruff + twine + ...

توی سرعت که حرف ندارن و واقعا کار میکنن! 🤟

Astral: https://github.com/astral-sh
Forwarded from Sadra Codes
ایشالا که باگ کش توییتره.. 😂
Forwarded from Geniuses Group (Omid Hekayati)
This media is not supported in your browser
VIEW IN TELEGRAM
بارها اهمیت و قدرت استفاده صحیح از کلمات را گوشزد کردیم (مثلا اینجا و اینجا). نکته جالب این ویدئو این هست که اهمیت این موضوع را اونقدر پررنگ می کنه که می تونه روی #سبک_زندگی افراد و حس رضایت درونی از مسیر زندگی تاثیر باورکردنی بذاره. متاسفانه بدلیل عدم امکان کنترل #تضاد_منافع در ابعاد مختلف جوامع بشری، هر شخص (حقیقی، حقوقی، ماشین(AI)) در جهت افزایش ارزش های خودش قدم میذاره و متاسفانه در اکثر اوقات بدست آوردن ارزش ها توسط یک شخص، باعث از دست رفتن ارزش توسط یک شخص دیگر می شود. این موضوع به شکل علمی در #نظریه_بازی (ویکی پدیا) با عنوان #بازی_مجموع_صفر (ویکی پدیا) شناخته میشه که می تونید بیشتر مطالعه کنید. البته که خیلی از موارد مطرح شده در این بخش ها، به حوزه #فلسفه_اخلاق میره و صحبت کردن در موردش خیلی سخته چون خیلی بسته به #مدل_ذهنی و نظام ارزش‌های اخلاقی داره و بدون تبیین بیشتر موضوعات مرتبط خیلی سخت هست در مورد این موضوعات صحبت کنیم. پیشنهاد می کنم این پادکست را گوش بدید.

در انتها یادتون باشه زندگی (از نگاه نظریه بازی) واقعا یک بازی هست، پس هوشمندانه بازی کنیم!
Forwarded from Md Daily (Mahan)
#شاید_موقت

رفتم بانک سپه حساب باز کنم، طرف گفت ما دیگه حساب فیزیکی باز نمیکنیم. باید بری مجازی باز کنی

گفتم اوکی. اپلیکیشن بانک امید رو نصب کردم و از لحاظ ui و ux یه شاهکاری زده بودند که مسئول شعبه هم گردن نمیگرفت.

بعد از اینکه مراحل رو رد کردم و موقع افتتاح حساب شد، گفت خب ببین احراز هویتت رو که آنلاین انجام دادیم، کارمزدم که باید بدی و هزینه ی پستم هست :)))

یه فاکتور صادر کرد. گفتیم اقا اینم اوکی بریم مرحله بعدی. هرچی صبر کردم دیدم خبری از افتتاح حساب نیست. به مسئول شعبه گفتم پس چیشد؟ زنگ زد پیگیری کرد گفت سامانه قطع شده، صبر کن حسابتو دستی بسازیم😭

بعد از کاغذ بازی های بانکی و گرفتن دوباره ی فی و کارمزد یه حساب فیزیکی ساخت تا حساب دیجیتال فعال شد :)))))

احساس میکنم ازم دزدی شده 😂😂😂
‏یه سایت پیدا کردم واسه یادگیری مقدماتی لینوکس، چقد شیوا و قشنگ توضیح داده.
ببینم چقدش میتونم بخونم
Linuxlearning.ir

@DevTwitter | <Poriya/>
نکنید اینکارارو درست نیست :))😂

حالا این یه مرحله دیگه ام داره که نگفته و غولشونه، اونم ورژن بندی با فولدره 😂

اولین پروژه ای که با React زدم رو دقیقا با همین روش پیش بردم، مثلا چند روز رو پروژه کار میکردم بعد یه جا میخواستم یه تغییر بزرگ بدم یه کپی از فولدرم می‌گرفتم با کل package‌ها که فقط کپیش ۲۰ دیقه طول می‌کشید، اصلا یه چیز اسیدی بود هنوزم دارم پروژه رو رو‌ لوکال 😂


پروژمم یه چیزی بود دقیقا مثل groove music ویندوز، و کامل کار میکرد و میکنه هنوز :)))

#️⃣ #fun #programming

🫶 𝗖𝗛𝗔𝗡𝗡𝗘𝗟  |  𝗚𝗥𝗢𝗨𝗣
محصولات ناموجود سایت وردپرسی خودتو ببر انتهای لیست محصولات که کاربر تجربه بهتری داشته باشه
کد انجام ان کار:
https://gist.github.com/m4tinbeigi-official/b2c68c71d616fc42dffb52c1c78ba8f1

@DevTwitter | <Rick Sanchez/>
Forwarded from Syntax | سینتکس (Daimon)
یه شخصی تو لینکدین این پست رو گذاشته که قراره با هم بررسیش کنیم:
چرا نباید از Signals ها در جنگو استفاده کنیم؟

اگر تجربه کار با Django را داشته باشید، احتمالاً با Signals آشنا هستید. سیگنال‌ها به شما این امکان را می‌دهند که بعد از رخ دادن یک رویداد خاص، مانند ذخیره یا حذف یک شی، کدی را اجرا کنید. اما آیا همیشه بهترین انتخاب هستند؟ بیایید با هم بررسی کنیم.

کاربرد سیگنال‌ها
سیگنال‌ها در Django برای مواردی مانند ارسال ایمیل بعد از ایجاد یک شی یا به‌روزرسانی داده‌های مرتبط، استفاده می‌شوند. به این معنی که وقتی یک تغییر در دیتابیس رخ میده، میتونیم با استفاده از سیگنال‌ها به آن پاسخ دهیم. این رویکرد به ما کمک می‌کند تا وابستگی‌ها را کاهش بدیم و بین بخش‌های مختلف برنامه ارتباط برقرار کنیم.

چرا نباید از سیگنال‌ها استفاده کنیم؟
با وجود کاربردهای سیگنال‌ها، استفاده از آن‌ها معایب خودشون رو هم دارن. یکی از مشکلات اساسی سیگنال‌ها این است که پیچیدگی و عدم پیش‌بینی‌پذیری را افزایش میدن. کدهایی که به‌وسیله سیگنال اجرا می‌شوند، ممکن است در جریان اصلی کد ما نباشند و ما به‌راحتی متوجه نشیم که چه زمانی و چرا آن‌ها فراخوانی می‌شوند. این موضوع نه تنها کار دیباگ کردن رو سخت میکنه، بلکه ممکنه رفتار ناخواسته‌ای هم که ازش انتظار نداریم رو هم داشته باشه.

یکی دیگه از مشکل های سیگنال‌ها اینه که همگام (Synchronous) اجرا میشن. برخلاف تصوری که ممکنه داشته باشیم، سیگنال‌ها به‌صورت غیرهمگام اجرا نمیشن و هیچ پروسه پس‌زمینه‌ای برای آن‌ها وجود ندارد. این موضوع باعث میشه که اگر سیگنال با خطا مواجه بشن، این خطا مستقیما در جریان اصلی کد شما بروز کند و حتی ممکن است رفتارهای ناخواسته به وجود بیاد.

به‌عنوان مثال، فرض کنید شما در حال توسعه کدی هستید که تعداد فروش یک نوع تاپینگ پیتزا را هنگام ایجاد پیتزای جدید به‌روزرسانی می‌کند. اگر از سیگنال استفاده کنید، ممکن است در مواردی که از متدهای bulk مانند bulk_create یا .update() استفاده می‌کنید، این سیگنال فراخوانی نشود و این به داده‌های ناهماهنگ منجر شود.

همچنین سیگنال‌ها ممکنه که نگهداری کد را سخت‌تر کنند. توسعه‌دهندگانی که کد شما را بعدا نگهداری می‌کنند، ممکنه زمان زیادی را صرف پیدا کردن محل تعریف و اتصال سیگنال‌ها کنند، به‌خصوص اگر سیگنال‌ها در فایل‌های مختلف پخش شده باشند.

چه چیزی می‌تواند جایگزین باشد؟
به جای استفاده از سیگنال‌ها، یکی از راهکارهای بهتر استفاده از متدهای مدل مثل save() هست. زمانی که بیزینس لاجیک خود را درون متد save() مدل قرار می‌دهید، همه چیز شفاف‌تر و قابل پیش‌بینی‌تر خواهد بود. به این ترتیب، کد جلو چشم شما قرار دارد و نیازی نیست نگران اجرا شدن یا نشدن سیگنال‌ها باشید. این کار باعث می‌شود کد تمیزتر و خواناتر باشد و همچنین به‌راحتی قابل تست و نگهداری شود.

برای مثال، می‌توانید یک متد در مدل خود تعریف کنید که منطق به‌روزرسانی را مدیریت کند و سپس این متد را در متد save() فراخوانی کنید. این روش نه تنها ساختار کد شما را ساده‌تر می‌کند، بلکه به توسعه‌دهندگان آینده هم کمک می‌کند تا به‌راحتی جریان کد را دنبال کنند.
————————————-

نظر من راجب این پست:
استفاده از سیگنال ها تو برخی شرایط بنظرم خیلیم مفید هستش.

برای مثال میتونیم با استفاده از سیگنال ها، سرویس ها و اجزای مختلف رو از هم decouple تر کنیم.
فرض کنید موقعی که یک یوزر جدید ساخته میشه، چند تا سرویس دیگه هم یه سری عملیات انجام میدن. مثلا نوتیف خوش آمد گویی ارسال میکنیم.
ساختار پروژمونم یکپارچه هستش.

تو این شرایط اگه اپ نوتیف قرار باشه بعد از ساخته شدن یک یوزر جدید چیزی رو نوتیف کنه، کافیه تو خود اپ نوتیف مشخص کنیم که به سیگنال پست یوزر علاقه مند هستیم و اگه سیگنال پستی از سمت یوزر زده شد بیا و فلان چیزو نوتیف کن.

اینطوری سرویس ها نسبت به هم decouple تر شدن و دیگه یوزر کاری نداره زمانی که یوزری جدیدی ساخته شد، بقیه سرویس ها چیکار کنن، فقط سیگنالو ارسال میکنه هر کی علاقه مند بود دریافتش میکنه.

الگوی observer:
سیگنال ها درواقع پیاده سازی الگوی observer هستن که برای ارتباط بین اجزای مخنلف سیستم خیلی مفیده.

فقط چند تا نکته باقی میمونه اینکه از سیگنال ها هوشمندانه استفاده کنیم، تو استفاده ازشون زیاده روی نکنیم و حتما داکیومنت کنیم تا باعث سردرگمی نشه

#django #Signals

@Syntax_fa
👍1
Forwarded from Linuxor ?
می‌دونستین توی دیتابیس های NoSql هم مشکلات NoSQL injection رو داریم؟


این ابزار بهتون کمک میکنه برنامه NoSql که نوشتین رو تست کنید و مشکلاتش رو پیدا کنید :

https://github.com/codingo/NoSQLMap


🐧 @Linuxor
Forwarded from Syntax | سینتکس (Daimon)
📱 زندگی برنامه‌نویس‌ها قبل و بعد از چت‌بات‌های هوش مصنوعی:

قبل:
- گوگل: بهترین دوست
- Stack Overflow: خونه دوم
- کپی-پیست: مهارت اصلی

بعد:
- چت‌جی‌پی‌تی: رفیق فابریک
- پرامپت مهندسی: تخصص جدید
- هوش مصنوعی: همکار جدید

دنیای برنامه‌نویسی قبل از عصر هوش مصنوعی


برای نسل جدید برنامه‌نویسان که در عصر هوش مصنوعی و چت‌بات‌ها رشد کرده‌اند، تصور دنیای برنامه‌نویسی بدون این ابزارها شاید سخت باشد. اما واقعیت این است که تا همین چند سال پیش، برنامه‌نویسان با چالش‌های متفاوتی روبرو بودند.

جستجو: هنر اصلی برنامه‌نویسی


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

Stack Overflow: ناجی برنامه‌نویسان


سایت Stack Overflow نقش حیاتی در زندگی برنامه‌نویسان داشت. بسیاری از مشکلات با جستجو در این سایت و خواندن پاسخ‌های دیگران حل می‌شد. البته پیدا کردن پاسخ مناسب در میان انبوه نظرات، خود چالشی بزرگ بود.(هنوزم ناجی برنامه نویساس)

دیباگ: کابوس شبانه


پیدا کردن و رفع باگ‌ها، یکی از چالش‌برانگیزترین بخش‌های برنامه‌نویسی است. گاهی ساعت‌ها یا حتی روزها صرف پیدا کردن یک اشتباه کوچک در کد می‌شد. امروزه، هوش مصنوعی می‌تواند در شناسایی و رفع بسیاری از این مشکلات کمک کند.

#fun

@Syntax_fa
فکر کن مردی ...
حالا برای زندگی بعدیت دنیای کدوم زبان برنامه نویسی رو انتخاب میکنی ؟ :))

میدونم الان داری فکر میکنی که حاضر نیستی تو هیچکدومشون زندگی کنی، ولی مجبوری دوست خوبم مقاومت نکن و بگو 😔😂

#️⃣ #question #programming

🫶 𝗖𝗛𝗔𝗡𝗡𝗘𝗟  |  𝗚𝗥𝗢𝗨𝗣
Forwarded from HICTE Blog (smm)
#گوناگون

داشتم یه کتابی رو میخوندم
اول اشتباها ویرایش قدیمی ترش که برای سال ۲۰۰۹ بود رو گرفتم و بعد رفتم سراغ ویرایش جدید سال ۲۰۲۳
یه نکته‌ای چشمم رو گرفت این بود که
نویسنده تو ویرایش قبلی نوشته بود از ابونتو ۱۸.۱۰ استفاده میکنه و حالا که اومد سال ۲۰۲۳ ویرایش جدید رو منتشر کنه مینت رو پیشنهاد کرده 😂
باگبونتو 🗿

پ.ن: البته جای تاسف داره که ابونتو به این وضع دچار شده

🚁 Hicte Blog
Forwarded from Linuxor ?
This media is not supported in your browser
VIEW IN TELEGRAM
این هوش مصنوعی بهش توضیحات پروژه رو میدین براتون اونو میسازه، و می‌تونید همونجا رانش کنید :


llamacoder.together.ai


🐧 @Linuxor
Forwarded from Go Casts 🚀
و نکته دیگه اینکه قطعا دوست ندارم کانال یک طرفه باشه، قطعا در جمع عزیزان کانال هستند کسانی که تجربیات خیلی خوبی داشتند، اگه در کامنت ها مطلب مفیدی نوشته بشه بنده حتما با ارجاع به شخص مورد نظر، مطلب رو در کانال منتشر میکنم که بقیه دوستان هم بهره مند بشن.
بکدور های مدرن وردپرس (قسمت دوم) دانلود دیتابیس بدون ورود به سایت و سی پنل

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

کافیه کد زیر که در فایل txt هست رو در فاکشن قالب خودتون قرار بدید سپس ادرس سایتتون رو به این شکل باز کنید

https:/site.com/?download_db=1

میبنید که بدون هیچ لاگین و ورودی دیتابیس با فرمت sql شروع به دانلود کردن میکنه

و کدی هم که در فاکشن قالب گذاشتید هیچ آنتی ویروس و مالوری به عنوان ویروس و بکدور نمیشناستش

@poinair پوینا
Forwarded from کانال مهرداد لینوکس (Mehrdad Linux)
ابزار Profiling یک ابزار ارزشمند برای هر برنامه نویسی که می‌خواهد عملکرد برنامه‌های خودش را بهبود دهد. با یادگیری نحوه استفاده از Profilerها، می‌توانید Performance bottlenecks را به طور موثر شناسایی و رفع کنید و برنامه‌های سریع‌تر و کارآمدتر بسازید.

در #پایتون ابزار Memray یک memory profiler خوبه

🗓 امکانات :

1️⃣ ردیابی کامل: ️‍برخلاف profiler های دیگر ، این ابزار همه فراخوانی‌های تابع را دنبال می‌کند تا بتواند کل مسیر فراخوانی (Call Stack) را نمایش دهد.

2️⃣برسی native calls: قابلیت مدیریت native calls کتابخانه‌های C/C++ ، نمایش کل مسیر فراخوانی در نتایج

3️⃣فوق‌العاده سریع: Profiling کمی برنامه را کند می‌کند. ردیابی کدهای داخلی کمی کندتر است، اما این قابلیت را می‌توان در صورت نیاز فعال یا غیرفعال کرد.

4️⃣گزارش‌های متنوع: گزارش‌های مختلف در مورد داده‌های استفاده شده از حافظه، تولید نمودار مانند (Flame Graph)

5️⃣ سازگاری با Python threads
6️⃣ سازگاری با native-threads
نصب و راه اندازی آموزش بیشتر

 python3 -m pip install memray
memray run --live my_script.py

#python #پایتون
Forwarded from Gopher Academy
🔵 عنوان مقاله
htmgo: Build Simple, Scalable Systems with Go and htmx

🟢 خلاصه مقاله:
مقاله‌ای که مورد بررسی قرار گرفته، به یک پروژه نوظهور و پیشرو 'آلفا' پرداخته است که رویکردی نوین در تلفیق سادگی زبان برنامه‌نویسی Go و کتابخانه‌ی htmx ارائه می‌دهد تا فرآیند ساخت وب‌اپلیکیشن‌های تعاملی را سرعت بخشد. این ترکیب، به توسعه‌دهندگان امکان می‌دهد تا به سرعت وب‌اپ‌های پویا و کاربرپسند بسازند، با استفاده از قابلیت‌های زبان Go در کنار سهولت htmx در ایجاد تعاملات کاربری پیچیده بدون نیاز به جاوااسکریپت زیاد. این رویکرد می‌تواند تأثیر چشمگیری در کارایی و سرعت توسعه وب‌اپلیکیشن‌ها داشته باشد، زیرا به توسعه‌دهندگان اجازه می‌دهد تا بر روی بهبود تجربه کاربری تمرکز کنند وقتی که بخش‌های بیشتری از منطق برنامه‌نویسی را به سادگی مدیریت کنند.

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


👑 @gopher_academy
Forwarded from Yasha
اینو :)))
میگه: «کارم با کدنویسی تقریبا تموم شده»

@Yasha
ویروس چه بلایی سر سئو میاره

یه سایتی ویروس داشته بازدید از روزی 100 تا رسیده بود به 18 تا

بلافاصله بعد از پاکسازی ویروس رشد داشته بعد دوباره ویروس برگشته افت پیدا کرده دوباره پاک کردیم رفته بالا

ویروس میتونه سئو سایتتون رو به صورت کامل نابود کنه

@poinair پوینا
خب باز من بیکار شدم و یه SMTP client برای Python نوشتم
دوست داشتید ببینید و بهترش کنید :))
https://github.com/alisharify7/py-smtper

@DevTwitter | <Ali-Sharify/>