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 Gopher Academy
🔵 عنوان مقاله
µ micro: A Go-Powered Terminal-Based Text Editor

🟢 خلاصه مقاله:
"Micro" یک ویرایشگر متن است که با هدف جانشینی برای ویرایشگر "nano" طراحی و توسعه داده شده است. این پروژه که سال‌هاست در حال توسعه قرار دارد، به عنوان یک نمونه بالغ و خوب از پیاده‌سازی یک ویرایشگر متن با استفاده از زبان برنامه‌نویسی Go مطرح است. کد منبع میکرو در مخزن GitHub قابل دسترسی و مشاهده است، که نشان‌دهنده انتشار آزاد و قابلیت همکاری گسترده‌ای بین توسعه‌دهندگان می‌باشد. این ویرایشگر متن با هدف فراهم آوردن تجربه‌ای ساده و کارآمد در ویرایش متون برنامه‌نویسی و دیگر اسناد متنی راه‌اندازی شده است.

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


👑 @gopher_academy
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
یکی از مهم‌ترین بهبودهای امنیتی در لینوکس 6.12:

معرفی ماژول Integrity Policy Enforcement (IPE) است. این ماژول به عنوان بخشی از به‌روزرسانی‌های ماژول‌های امنیتی لینوکس (LSM) اضافه شده است و سال‌ها در حال توسعه بوده است. IPE به عنوان جایگزینی برای کنترل‌های دسترسی عمل می‌کند و بر روی ویژگی‌های امنیتی غیرقابل تغییر اجزای سیستم تکیه دارد. این ماژول برای سیستم‌های با عملکرد ثابت مانند دستگاه‌های فایروال شبکه و پلتفرم‌های IoT طراحی شده است که فقط کدهای هدفمند خاصی را اجرا می‌کنند.
نویسنده: حسین سیلانی
منبع : کانال لینوکسی: لینوکس تی ان تی
@linuxtnt

حمایت -donate
https://zarinp.al/learninghive.ir
Forwarded from Linuxor ?
کی گفته مک شبیه لینوکسه؟ شباهت مک با لینوکس مثل شباهت Java و JavaScript عه


🐧 @Linuxor
#بگایی_در_کمین

‏هر چی می‌تونید دوره و کتاب برنامه نویسی دانلود کنید که بعد طرح صیانت فقط محسن مدحج دارید.

@DevTwitter | <نهنگ لال/>
Forwarded from Python Hints
هفته پیش از یک نفر مصاحبه گرفتم، پرای پوزیشن سنیور خودش رو معرفی کرد

از ۳۰ تا سوال، ۲ تاش رو جواب داد.
تهش هم خودش تشکر کرد و گفت که می‌دونه دعوت به همکاری نمیشه و ...


الان توی لینکدین دیدم، دوره آموزش Advance Python گذاشته توی یک آکادمی.

امیدوارم توی این ۱ هفته معجزه رخ داده باشه، وگرنه وای به حال نسل بعدی
گوگل یک ابزار جدید (عملا یک سیستم RAG) داده به اسم NotebookLLM که فایل هاتون را بهش میدید و قسمت های مختلف را براتون توضیح میده. اما نکته جالب اینه که یک فایل صوتی که حالت پادکست و مصاحبه طور داره درست میکنه که واقعا عالیه. من یک مقاله بهش دادم و این را درست کرد.
تصور کنید که چه کارهای جالبی میشه باهاش کرد.
https://blog.google/technology/ai/notebooklm-audio-overviews/

@DevTwitter | <Mehdi Allahyari/>
This media is not supported in your browser
VIEW IN TELEGRAM
سلام دوستان امیدوارم حالتون خوب باشه
همایش فرانت چپتر امسال واقعا همایش خفنی بود و از همینجا از همه رفقای فرانت چپتری تشکر میکنم بخاطر این اتفاق خفنی که رقم زدند

من از کل این رویداد مثل سفر و اتفاقات خفنی که در کنار هم رقم زدیم یه ولاگ تهیه کردم که ایشالا امروز اپلود میشه داخل چنل یوتوبم و میتونید ببینید ❤️🔥

این هم چنل یوتوب من هستش

https://youtube.com/@CoolyCode

به محض منتشر شدن لینک ویدیو رو داخل همین گروه میفرستم
توی گروهی بحث دیدم راجب تفاوت های :
.iter(), .iter_mut(), .into_iter().
و دیدم انگار خیلی از اعضا تفاوت هاش رو درک نکردن برای همین closure های داخل متدهایی که با iterator میاد رو متوجه نمیشدند.

گفتم بزنم به ریشه و چون کانال خودمم مقدمات هست اینجا هم مطلب رو بذارم.
تفاوت اصلی توی این هست که چی برمیگردوند یادتون باشه وقتی توی Rust چیزای مشابه میبینید که متوجه نمیشید چرا نسخه های مختلف داره حتما ۲ تا مورد توی ذهنتون باید بیاد :

1- Borrowing and Ownership
2- Memory (stack, heap, binary)


توی iterator ها هم تفاوت روی borrowing and ownership هست؛ وقتی از iter استفاده می کنید چیزی که برای هر آیتم تحویل میگیرید یک immutable reference خواهد بود & خالی وقتی از iter_mut استفاده کنید حتما mutable reference خواهید داشت &mut اما موضوع برای into_iter کمی متفاوت هست.

اگر مستقیم روی value استفاده بشه؛ ownership رو به دست خواهد گرفت.
اگر روی reference ایی از اون value استفاده بشه عملکرد iter رو خواهد داشت.
و در نهایت اگر روی mutable reference ایی از اون value استفاده بشه عملکردش مثل iter_mut خواهد شد.

برای همین توی closure متدهایی که روی اینها میاد مثل map, … حالات مختلفی رو میبینید.


امیوارم منظورم رو رسونده باشم؛ اگر نه حتما توی کامنت بپرسید.
Forwarded from 🎄 یک برنامه نویس تنبل (Raymond Dev)
🔶 از زمانی که پاول توسط فرانسه دستگیر شد که تلگرام مجبور است, قوانین کپی رایت به درستی اجرا کند.

مخصوصا کانال های دانلود انیمه, فایل هاشون به مشکل کپی رایت خوردند و باعث از دست رفتن کانال می شود.

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

@TheRaymondDev
آقا گروهمون رفت بالای صد تا، دیگه نمیتونیم ببینیم کی سین زده... 😔😂

الله اکبر

گروهمونو داشته باشید اگر سوالی داشتید بپرسید

https://t.iss.one/coolycodegap
با الهام گرفتن از اسکریپت nvidia detect دبیان، یک اسکریپت نوشتم برای پارچ که ورژن درایور دقیق گرافیک رو تشخیص بده.

مثلاً گرافیک من که nvidia geforce 430 هستش توسط درایور 390xx لگسی پشتیبانی میشه.


@SohrabContents
البته قرار دادنش توی مخزن بستگی به دو مورد داره.

۱- از اونجایی که این بسته به صورت انحصاری در دبیان وجود داره و سورس‌کدی ازش در دسترس نیست، استفاده از دیتابیسش به این صورت نمی‌تونه مجاز باشه.

۲- این اسکریپت درصد خطاش پایین باشه که بازهم نیازمند تست شدنه.

اگر مورد اول، به اون صورت باشه نه بسته رو میتونیم بزاریم توی مخزن نه سورس کدش رو :)))

nvidia-detect /usr/share/nvidia/nvidia-legacy-173xx.ids
nvidia-detect /usr/share/nvidia/nvidia-legacy-304xx.ids
nvidia-detect /usr/share/nvidia/nvidia-legacy-340xx.ids
nvidia-detect /usr/share/nvidia/nvidia-legacy-390xx-amd64.ids
nvidia-detect /usr/share/nvidia/nvidia-legacy-390xx.ids
nvidia-detect /usr/share/nvidia/nvidia-legacy-71xx.ids
nvidia-detect /usr/share/nvidia/nvidia-legacy-96xx.ids
nvidia-detect /usr/share/nvidia/nvidia-open.ids
nvidia-detect /usr/share/nvidia/nvidia-tesla-418.ids
nvidia-detect /usr/share/nvidia/nvidia-tesla-440.ids
nvidia-detect /usr/share/nvidia/nvidia-tesla-450.ids
nvidia-detect /usr/share/nvidia/nvidia-tesla-460.ids
nvidia-detect /usr/share/nvidia/nvidia-tesla-470.ids
nvidia-detect /usr/share/nvidia/nvidia.ids

این‌ها لیست فایل‌هایی هستن که توی این بسته هستن (از دبیان) و سورسشون جایی در دسترس نیست و من با استخراج اون بسته nvidia detect بهشون رسیدم.
@SohrabContents
دولوپرهای گرامی این CVE-2024-46982 روی Next.js که در اصل میتواند منجر به Cache Poisoning یا مسمومیت حافظه پنهان شود رو در نظر بگیرید که چند روزه خیلی ازش صحبت میشه و غیره.
بخوانید:
https://securityonline.info/next-js-vulnerability-cve-2024-46982-cache-poisoning-exploit-threatens-deployments/

https://app.netlas.io/responses/?q=http.headers.x_powered_by%3A%22Next.js%22&page=1&indices=

https://zoomeye.hk/searchResult?q=app%3A%22Next.js%22&from=5o6o54m5MjQwOTE5MDE=

@DevTwitter | <Amir/>
با استفاده از yt-dlp و این دستور میتونی playlist های یوتوب رو خیلی راحت دانلود کنی و توی پوشه ای به اسم کانال یوتوب و نام playlist به صورت خودکار ذخیره کنی ، همچنین ویدیوها شماره گذاری هم میشن ، البته yt-dlp رو باید نصب کنی که رایگانه

github.com/yt-dlp/yt-dlp

@DevTwitter | <Sajjad/>
در سال 2019 تحقیقاتی انجام شد

و نزدیک 10 درصد سایتا خطای Too Many Redirects داشتن

این خطا باعث مشکلاتی در سئو و سرعت سایت و همچنین خطای 500 میشد

اما این خطا چطوری شکل میگیره

تصور کنید لینک 1 رو به لینک 2 ریدایرکت کردید

و دوباره لینک 2 رو به به لینک 1 هدایت کردید

اینطوری توی یه حلقه گیر میکنن و در نمیاد و باعث خطای Too Many Redirects میشه

برای حل این مشکل باید به اچ تی اکسس و تنظیمات سئوی خودتون مراجعه کنید و حلش کنید

چه سایتایی بیشتر این مشکل رو دارن

کسایی که هم افزونه سئو دارن هم افزونه ریدایرکت و اینا ضررای زیادی در سئو میکنن

@poinair پوینا
جلوگیری از ویرایش ادمین‌ها در وردپرس

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

php
Copy code
function restrict_admin_editing( $caps, $cap, $user_id, $args ) {
if ( in_array( $cap, ['edit_user', 'remove_user', 'delete_user'] ) ) {
$edit_user_id = $args[0] ?? 0;
if ( in_array( $edit_user_id, [454], true ) ) {
$caps[] = 'do_not_allow';
}
}
return $caps;
}
add_filter( 'map_meta_cap', 'restrict_admin_editing', 10, 4 );

بعد از گذاشتن این کد، به جای 454، آی‌دی ادمینی که نمی‌خواید ویرایش بشه رو وارد کنید

@poinair پوینا
This media is not supported in your browser
VIEW IN TELEGRAM
اسکریپت Nvidia Helper الهام گرفته شده از اسکریپت nvidia-detect دبیان، برای کمک به نصب درایور انویدیا به پارچ اضافه شد.

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

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

نحوه نصب و استفاده:
sudo pacman -Sy
sudo pacman -S nvidia-helper
nvidia-helper


توجه: سورس‌کد این اسکریپت به علت انحصاری بودن دیتابیس‌های انویدیا موقتاً در دسترس نیست و پس از نامه‌نگاری های مربوطه در گیت‌لب پارچ قرار می‌گیرد.



@ParchLinux
‏یکی از کاربران Gitlab با ایجاد یک Issue مشکل timeout در زمان اتصال به سرورهای Gitlab رو گزارش می کنه.
طی یک سال گذشته این مشکل بیشتر خودش رو نشون میده تا می‌فهمن برای سرورهای هتزنر این اتفاق میوفته و اونم به این دلیل هست که IP ایران تشخیص داده میشه!
گوگل هم به این مشکل اضافه می شه و ترافیک رو به همین دلیل از هتزنر بلاک می کنه!
دوباره طی این چند هفته این مشکلات زیاد تر میشه به حدی که تمامی locationهای هتزنر دچار این مشکل شدن که ایران تشخیص داده میشن و این issue رو که Gitlab بسته بود دوباره ۲۰ ساعت پیش باز می کنه!
چیزی که می دونیم اینه که ایرانی های زیادی از سرورهای هتزنر به عنوان VPN استفاده می کردن ولی به نظرم مشکل اصلی به این دلیل هست که چون بسیاری از تنظیمات VPN ها، مبدا ترافیک که ایران بوده رو مخفی نمی کرده و ناشناسی در تنظیمات این VPNها مدنظر نبوده، سامانه های CloudFlare و گوگل به طور خودکار IPهای Hetzner رو flag کردن و ایران تشخیص میدن!
https://gitlab.com/gitlab-com/gl-infra/production/-/issues/8121#note_1237201726

@DevTwitter | <Vahid Nameni/>
Forwarded from CleverDevs (Mammad)
اگه دنبال برنامه ای هستید که توش sql بنویسید و تست کنید MySql Workbench میتونه نیازتون رو برطرف کنه

محیط ساده ای داره
و امکانات خوبی برای مدیریت mysql بهتون میده

من خودم فقط برای تست sql ازش استفاده میکنم اگه از امکانات دیگه‌اش که کارتون رو اسون تر میکنه استفاده میکنید میتونید تو کامنتا بگید

#sql #mysql
@CleverDevs - @CleverDevsGp