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 Code Module | کد ماژول (𔓙)
درود ماژولیتیای گل💙

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

در صورت داشتن هر گونه سوال، انتقاد و ... میتونید توی گروهمون جوین باشید👇🏻

@CodeModuleGap
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰خبری از گنوم جدید:

نسخه جدید محیط دسکتاپ GNOME 48 "بنگالورو" قرار است در تاریخ ۱۹ مارس ۲۰۲۵ منتشر شود. این نسخه شامل برنامه زمان‌بندی انتشار است که تاریخ انتشار آن تعیین شده است. در اینجا می‌توانید ببینید چه چیزهایی از این نسخه انتظار می‌رود!

🔹برنامه زمان‌بندی انتشار گنوم 48

- گنوم 48 Alpha ژانویه ۲۰۲۵
- گنوم 48 Beta – فوریه ۲۰۲۵
- نامزد انتشار – ۱ مارس ۲۰۲۵
- انتشار نهایی – ۱۹ مارس ۲۰۲۵

🔹یک ویژگی که می‌دانم در GNOME 48 وجود خواهد داشت، یک برنامه نمایشگر تصاویر Loupe بهبود یافته است که ویژگی‌های هیجان‌انگیزی مانند کنترل‌های زوم را شامل می‌شود. این ویژگی‌ها اجازه می‌دهد کاربران درصد زوم خاصی را وارد کنند،
یک بارگذار برای فرمت‌های تصویر RAW و ویژگی‌های اولیه ویرایش تصویر مانند برش تصاویر خواهد داشت.

توسعه‌دهندگان GNOME قصد دارند به‌روزرسانی‌های بیشتری برای آخرین نسخه GNOME 47 منتشر کنند که نسخه بعدی آن GNOME 47.2 خواهد بود و برای اواخر نوامبر یا اوایل دسامبر ۲۰۲۴ برنامه‌ریزی شده است.


نویسنده: حسین سیلانی
منبع : کانال لینوکسی: لینوکس تی ان تی
@linuxtnt

حمایت از کانال-donate
https://zarinp.al/learninghive.ir
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 لینوس توروالدز : هوش مصنوعی ۹۰ درصد تبلیغات و ۱۰ درصد واقعیت است

هرچند هوش مصنوعی قابلیت تغییر جهان را دارد، در‌حال‌حاضر به‌دلیل تمرکز بیش‌از‌حد بر تبلیغات، نمی‌توان به‌طور کامل به آن اعتماد کرد. وی به این نکته نیز اشاره کرد که بسیاری از کاربردهای فعلی هوش مصنوعی، مانند تولید محتوا با ChatGPT، بیشتر جنبه نمایشی دارند.

https://www.youtube.com/watch?v=s4wlrxFf2lM

#AI
@TheRaymondDev
Forwarded from Galaxy Ai (♪ Ayhan)
Password Generator in Bash

From time to time, you need to change your passwords. Everyone knows that a good password should include uppercase and lowercase Latin letters, numbers, and special characters. Additionally, they should not be too short. Coming up with new passwords each time is becoming increasingly difficult, especially if you use different passwords for different services. You can use programs like pwgen or the generator built into KeepassX for this purpose. Alternatively, you can write a simple password generator in Bash.

Characters Used
We will use the following characters: Uppercase and lowercase letters of the Latin alphabet (A-Z and a-z), numbers (0-9), and the symbols "!@#$%^*()?/|~]{}-+_=<>.,". This combination ensures maximum security.

Password Length
The password length will be 16 characters. If you need a shorter password, you can specify a smaller length in the script or add a command-line option.

Bash Password Generator Script
The first thing we need is a variable containing all the characters we will use. We also need a variable for the password length and a variable to store the password itself.



bash
SYMBOLS=""
for symbol in {A..Z} {a..z} {0..9}; do SYMBOLS=$SYMBOLS$symbol; done
SYMBOLS=$SYMBOLS'!@#$%&*()?/[]{}-+_=<>.,'
# The string with all characters has been created.
# Now we need to loop with the number of iterations equal to the password length
# and randomly select one character to add to the password string.
PWD_LENGTH=16 # password length
PASSWORD="" # variable for storing the password
RANDOM=256 # initialize random number generator
for i in seq 1 $PWD_LENGTH
do
PASSWORD=$PASSWORD${SYMBOLS:$(expr $RANDOM % ${#SYMBOLS}):1}
done
echo $PASSWORD

That's it. This is the entire script. With it, we can generate a password that meets all common security requirements. The only remaining problem is remembering it.
Forwarded from Gopher Academy
🔵 عنوان مقاله
Go Gets High-Resolution Timers on Windows

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

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


👑 @gopher_academy
بعد از تجربه چندین پروژه در طراحی پنل و سایت اصلی، چه به صورت فردی و چه در قالب کارهای گروهی، اکنون در فریمورک Vue.js همراه با فریم ورک لارول پیش می‌برم . در این مسیر، با Vuex به عنوان ابزار مدیریت وضعیت اصلی Vue 2 و Vue 3 کار کرده‌ام. اما با توجه به اینکه در Vue 3، ابزار Pinia به عنوان ابزار رسمی و توصیه‌شده برای مدیریت وضعیت معرفی شده،
,ولی بازم vuex در ویو ۳ کاربرد داره ولی خب ... تصمیم گرفتم به تدریج از Vuex جدا شم و به Pinia مهاجرت کنم. اما چرا؟؟

در Vue.js روش‌های مختلفی برای مدیریت وضعیت (State Management) وجود دارد که انتخاب هر روش به نیاز و پیچیدگی پروژه بستگی دارد. در زیر، برخی از ابزارها و روش‌های پرکاربرد برای مدیریت وضعیت در Vue را بررسی می‌کنیم:

استفاده از props و events
این روش ابتدایی‌ترین روش مدیریت وضعیت است. از props برای ارسال داده از کامپوننت والد به فرزندان و از events برای انتقال داده‌ها به سمت بالا استفاده می‌شود. این روش در پروژه‌های کوچک و ساده مؤثر است اما برای پروژه‌های بزرگ کافی نیست.

استفاده از provide و inject
provide و inject به اشتراک‌گذاری وضعیت بین کامپوننت‌ها بدون نیاز به props کمک می‌کنند. این روش در شرایطی که چندین کامپوننت نیاز به داده مشترک دارند مناسب است اما در پروژه‌های بزرگ محدودیت دارد.


ابزار Pinia، ابزار رسمی و توصیه‌شده برای Vue 3، با API ساده و روانی که دارد، تجربه توسعه‌دهنده را بهبود داده و از ویژگی‌های Vue 3 مانند Composition API و سیستم واکنش‌پذیری پیشرفته بهره می‌برد. این ابزار جایگزین Vuex در Vue 3 شده و برای پروژه‌های بزرگ گزینه‌ای بهینه است.

ابزار Vuex ابزار اصلی مدیریت وضعیت در Vue 2 است و ساختاری متمرکز برای مدیریت داده‌ها ارائه می‌دهد. Vuex از state، mutations، actions و getters برای مدیریت وضعیت استفاده می‌کند. با وجود امکان استفاده از Vuex در Vue 3، تیم Vue اکنون Pinia را به عنوان جایگزین رسمی برای Vue 3 معرفی کرده است.

استفاده از Composition API و reactive
در Vue 3، Composition API و reactive به توسعه‌دهندگان امکان می‌دهند که وضعیت‌های محلی را با سادگی بیشتری مدیریت کنند. این روش برای پروژه‌های متوسط و کوچک کارآمد است.

کتابخانه‌های خارجی (مانند Redux یا Zustand)
برخی از پروژه‌های پیچیده نیاز به ابزارهای دیگری مانند Redux دارند، هرچند این کتابخانه‌ها مخصوص Vue نیستند و بیشتر در پروژه‌های چندپلتفرمی کاربرد دارند.

تجربه ای داشتم این بود که اگر بخواین با nuxt مخصوصا ورژن ۳ کارکنید pinia بهترین هست این جمله من دلیل نمیشه vuex بد باشه نه منظوم این نیست :)
منظورم این که راحتر دیپلوی میشه در ناکست ۳ و همین ...

@DevTwitter | <amirreza raadi/>
Forwarded from Linuxor ?
مدل های زبانی بزرگ، چطوری زبان انسان رو درک میکنن و بهش پاسخ میدن؟

توی این مقاله با فرض اینکه شما فقط ضرب و تقسیم بلدید آقای Rohit بهتون میگه چطوری LLM ها کار میکنن، البته کوتاه نیست و خوندنش حدود یک ساعت زمان میبره ولی خیلی رَون توضیح داده:


https://towardsdatascience.com/understanding-llms-from-scratch-using-middle-school-math-e602d27ec876


🐧 @Linuxor
Forwarded from Gopher Academy
✍️Farshad AkbariFarshad Akbari



💡 آشنایی با کتابخانه sync در Go و کاربردهای آن برای مدیریت همزمانی

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

1️⃣ Mutex (قفل متقابل)

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

2️⃣ WaitGroup (انتظار برای پایان گوروتین‌ها)

وقتی چند گوروتین همزمان اجرا می‌شوند و می‌خواهیم تا پایان کار همه‌ی آن‌ها صبر کنیم، WaitGroup کاربرد دارد. این ابزار به ما اجازه می‌دهد که منتظر بمانیم تا همه گوروتین‌ها کارشان را تمام کنند.

3️⃣ Once (اجرا فقط یک‌بار)

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


🔍 جمع‌بندی

کتابخانه sync به توسعه‌دهندگان Go کمک می‌کند تا همزمانی را به خوبی مدیریت کنند و از بروز مشکلاتی مثل شرایط رقابتی جلوگیری کنند. استفاده درست از این ابزارها باعث افزایش کارایی و ایمنی برنامه‌های چندوظیفه‌ای می‌شود.

👑 @gopher_academy
Forwarded from ASafaeirad
Today I Learned: git log -S
a super handy way to search through commit history to find exactly where a specific line or snippet was added or removed.

Read the article

#git #til
This media is not supported in your browser
VIEW IN TELEGRAM
📍 در کنار دیوار هستیم!

💬 گفتا، پاسخگویی آنی و ۲۴ ساعته به چت دیوار رو به کمک هوش مصنوعی فراهم می‌کنه!

🤳🏻 کافیه به این لینک مراجعه کنی و گفتا رو برای آگهی مدنظرت فعال کنی.

🎉 اولین استفاده شما از گفتا کاملا رایگان خواهد بود!

🖥 gofta.ir | 🕸 Telegram | 🔗 Linkedin | 👾 Instagram
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 قالب وبلاگی که برای پارچ لینوکس نوشتم در بخش مترجم سایت، سهراب (خالق پارچ لینوکس) راضی نکرد.

به ذهنم رسید که یه پست تایپ برای پست فارسی با صفحه جدا فارسی شده ایجاد کنم که نیازی به مترجم سایت نباشد و جدا سازی بدون دردسر انجام شود.

@TheRaymondDev
نسخه جامعه XFCE منتشر شد.

باگ‌های مربوطه را در گروه پارچ اعلام کنید.



🔗 دریافت از مخزن


@ParchLinux_fa
@ParchLinux
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from a pessimistic researcher (Kc)
ما بالاخره بعد ۶ ماه، تمام commit های داخلی پروژه‌ی JMC رو پوش کردیم روی برنچ main که به شکل public از طریق این لینک قابل دسترس هستش

https://github.com/mpi-sws-rse/jmc

نسبت به نسخه‌ی قبلی feature های بسیاری اضافه کردیم. منتهی readme آپدیت نیست و به‌زودی آپدیتش میکنم.

خوشحال میشم که یک امتحانی بهش بدید و سعی کنید build کنید و اگر موردی بود بهم بگید. توصیه میکنم روی IntelliJ بیلد کنید.
Forwarded from Python Hints
گروه‌ مربوط به کانال حذف شد.

خیلی‌ها هنوز شعور عضویت در گروه رو ندارند.

#قوانین و بنر گروه رو خوندن وظیفه اعضا هست.

اینحه صحبتی غیر از Core Python توی گروه نباشه
به خواسته خودتون بوده و رأی گیری شد تا گروه جدابی داشته باشیم.

هیچکدوم از کانال‌های
@pyhints
@pytens
@pyrust

هیچوقت هیچ آورده‌ای برای من نداشتند، هیچ سودی هم نداشته.
قرار باشه تمرکزم رو هم ازم بگیره ترجیح میدم نباشه.
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰برنامه ساده تولید کننده رمز عبور با بش اسکریپت:

گاهی اوقات نیاز به تغییر رمز عبور خود دارید. همه می‌دانند که یک رمز عبور خوب باید شامل حروف بزرگ و کوچک لاتین، اعداد و کاراکترهای خاص باشد. علاوه بر این، نباید خیلی کوتاه باشند. هر بار ایجاد رمز عبور جدید به خصوص اگر از رمزهای عبور مختلف برای خدمات مختلف استفاده می‌کنید، دشوارتر می‌شود. می‌توانید برای این منظور از برنامه‌هایی مانند pwgen یا ژنراتور داخلی KeepassX استفاده کنید. یا می‌توانید یک مولد رمز عبور ساده در Bash بنویسید.
🔹کاراکترهای استفاده شده
از کاراکترهای زیر استفاده خواهیم کرد: حروف بزرگ و کوچک الفبای لاتین (A-Z و a-z)، اعداد (0-9) و نمادهای "!@#$%^&*()?/[]{}-+_=<>.,". این ترکیب حداکثر امنیت را تضمین می‌کند.
🔹طول رمز عبور
طول رمز عبور 16 کاراکتر خواهد بود. اگر به رمز عبور کوتاه‌تری نیاز دارید، می‌توانید طول کمتری را در اسکریپت مشخص کنید یا یک گزینه خط فرمان اضافه کنید.
🔹اسکریپت مولد رمز عبور Bash
SYMBOLS=""
for symbol in {A..Z} {a..z} {0..9}; do SYMBOLS=$SYMBOLS$symbol; done
SYMBOLS=$SYMBOLS'!@#$%&*()?/[]{}-+_=<>.,'
# رشته با تمام کاراکترها ایجاد شده است.
# اکنون باید با تعداد تکرار برابر با طول رمز عبور حلقه بزنیم
# و به طور تصادفی یک کاراکتر را برای اضافه کردن به رشته رمز عبور انتخاب کنید.
PWD_LENGTH=16 # طول رمز عبور
PASSWORD="" # متغیر برای ذخیره رمز عبور
RANDOM=256 # مقداردهی اولیه ژنراتور عدد تصادفی
for i in `seq 1 $PWD_LENGTH`
do
PASSWORD=$PASSWORD${SYMBOLS:$(expr $RANDOM % ${#SYMBOLS}):1}
done
echo $PASSWORD
Forwarded from  (Amir Hossein "Amiria" Maher)
«دختر لُر» یا «جعفر و گلنار» اوّلین فیلم تمام ناطق ایرانی بود که در ۳۰ آبان سال ۱۳۱۲، بر روی پرده‌های سینما دیده‌بان و سپه رفت.

#note #history #culture #learn
@amiria703_channel
یکی از چیزایی که معمولا خیلی رو مخمه اینه که افراد برای اینکه به تازه کار ها یه توزیعی معرفی کنن بهشون میگن که ubuntu استفاده کنن ولی خب این افراد به مواردی توجه نمیکنن و همین بی توجهی باعث میشه اون فرد تازه کار با کلی مشکل احمقانه مواجه بشه و از لینوکس زده بشه
خودم همیشه مینت یا پارچ رو توصیه میکنم
حالا اتفاق جذابی که افتاده اینه که: سهراب، توسعه دهنده پارچ، شروع کرده و توی مجموعه ای داره مقدمات لینوکس رو با کمک مینت آموزش میده
به شخصه خیلی زیاد توصیه میکنم که سهراب رو دنبال کنید، کلی چیز مفید و خفن میتونید از این آدم خفن کم اعتماد به نفس بعضی وقت ها پرخاشگر یاد بگیرید


سری مقدماتی استفاده از گنو/لینوکس

توی این ویدئوها از مینت استفاده کردم، و توی این قسمت یک سری کارهای اولیه رو انجام دادیم مثل کار با apt، نصب چندتا بسته و همینطور توضیحات کلی درمورد میزکار.



تماشا از یوتوب
تماشا از پیرتوب

کانال تلگرام سهراب: @SohrabContents


@PhiloLearn
فکر می‌کنم قبلاً درمورد تولید نوکیای قلابی توی ایران گفته بودم (تولید گوشی با برند نوکیا داخل کشور) جالبه بدونید که شرکت اصلی از شرکت قلابی توی دادگاه عمومی تهران شکایت کرده و طبق منطقی که هممون میدونیم، دادگاه عمومی تهران شکایت رو رد کرده😂


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


🔗 ماست‌مالی دنیای اقتصاد


@SohrabContents
Please open Telegram to view this post
VIEW IN TELEGRAM