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
بالاخره بتای عمومی Loops منتشر شد.


🔗 https://loops.video


@SohrabContents
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
نمایش وضعیت آب و هوا در ترمینال:
در لینوکس برنامه‌های مختلفی برای نمایش وضعیت آب و هوا وجود دارد، از جمله ویجت‌ها، اپلت‌ها، و کلاینت‌های مختلف. با این حال، wttr.in این قابلیت را مستقیماً از طریق خط فرمان ارائه می‌دهد و می‌تواند پیش‌بینی چند روزه‌ای از وضعیت آب و هوا برای هر مکانی که مشخص کنید، نمایش دهد.

ویژگی‌های اصلی wttr.in این است که نیازی به نصب یا تنظیمات پیچیده مانند کلید API ندارد و ظاهر جذابی دارد. همچنین اگر دستور curl را نصب کرده باشید، می‌توانید به سادگی با اجرای دستور زیر، وضعیت آب و هوای یک شهر مشخص را دریافت کنید:


curl wttr.in/City

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

حمایت از کانال-donate
https://zarinp.al/learninghive.ir
اوبونتو، توزیع محبوب لینوکس؛ بیست‌ساله شد.
این توزیع، در اکتبر ۲۰۰۴ توسط «مارک شاتلورث» و بر پایه «دبیان گنو/لینوکس» با هدف تبدیل شدن به یک سیستم‌عامل همگانی دسکتاپ، ارائه شد.
در حال حاضر این توزیع انتخاب اول بسیاری افراد هم برای دسکتاپ و هم برای سروره.
تولدش مبارک!

@DevTwitter | <Mohammadreza Haghiri/>
Forwarded from آموزش لاراول | LaravelHub (rwx-rwx-rwx)
🔥 آموزش Broadcasting توی لاراول (با مثال) 🔥

رفقا، امروز می‌خوایم بریم سراغ یه قابلیت خف ن تو لاراول به اسم Broadcasting! با این قابلیت می‌تونین یه‌سری رویدادها رو زنده (real-time) برای کاربرهاتون بفرستین. یعنی مثلاً تو چت آنلاین، اعلان‌های لحظه‌ای یا هر چیز دیگه که لازمه سریع به کاربر برسه، این خیلی کارآمده. 😎

خب بریم ببینیم چجوری می‌تونیم این کار رو انجام بدیم! 👇

قبل از هرچیزی باید Broadcasting رو تو پروژه‌تون راه بندازین. توی فایل .env، بیاین و Broadcasting رو روی سرویس Pusher تنظیم کنیم. البته می‌تونین Redis یا Socket.io هم استفاده کنین، ولی اینجا با Pusher می‌ریم جلو. 💻

تو فایل .env اینا رو اضافه کنین:

BROADCAST_DRIVER=pusher

PUSHER_APP_ID=your-app-id
PUSHER_APP_KEY=your-app-key
PUSHER_APP_SECRET=your-app-secret
PUSHER_HOST=
PUSHER_PORT=443
PUSHER_SCHEME=https
PUSHER_APP_CLUSTER=mt1

بعدش باید کتابخونه pusher رو نصب کنین:
composer require pusher/pusher-php-server

حالا میریم سراغ تنظیمات بیشتر!
بعد از تنظیمات اولیه، باید یه سری کانفیگ توی فایل config/broadcasting.php انجام بدیم. تو این فایل، Pusher رو به عنوان درایور انتخاب کنید:
'connections' => [
'pusher' => [
'driver' => 'pusher',
'key' => env('PUSHER_APP_KEY'),
'secret' => env('PUSHER_APP_SECRET'),
'app_id' => env('PUSHER_APP_ID'),
'options' => [
'cluster' => env('PUSHER_APP_CLUSTER'),
'useTLS' => true,
],
],
],

حالا وقتشه یه ایونت درست کنیم! با دستور زیر یه ایونت به اسم MessageSent می‌سازیم:

php artisan make:event MessageSent

این دستور یه کلاس توی پوشه app/Events می‌سازه. حالا بیاین تو این فایل کد زیر رو اضافه کنیم:
class MessageSent implements ShouldBroadcast
{
public $message;

public function __construct($message)
{
$this->message = $message;
}

public function broadcastOn()
{
return new Channel('chat');
}
}

تو این مثال، وقتی یه پیغام ارسال می‌شه، ما این ایونت رو برای کانال chat broadcast می‌کنیم. ✉️
حالا باید توی کدی که داریم، ایونت رو بفرستیم. مثلاً توی کنترلر:

event(new MessageSent('سلام! این یه پیام لایو از طرف علیرضا هست'));

این کد باعث می‌شه که پیغام به صورت real-time بره برای کسایی که تو کانال chat عضو هستن. 💬
برای اینکه از طرف کاربرها پیام‌ها رو دریافت کنیم، باید توی سمت فرانت هم یه سری تنظیمات انجام بدیم. اگه از Vue.js یا React استفاده می‌کنین، می‌تونین از Laravel Echo استفاده کنین که کدتون رو خیلی راحت‌تر و تمیزتر می‌کنه.

اول laravel-echo و pusher-js رو نصب کنین:

npm install --save laravel-echo pusher-js

بعد توی فایل جاوااسکریپت‌تون، چیزی مثل این رو تنظیم کنین:
import Echo from "laravel-echo";
window.Pusher = require('pusher-js');

window.Echo = new Echo({
broadcaster: 'pusher',
key: process.env.MIX_PUSHER_APP_KEY,
cluster: process.env.MIX_PUSHER_APP_CLUSTER,
encrypted: true
});

window.Echo.channel('chat')
.listen('MessageSent', (e) => {
console.log(e.message);
});

به همین راحتی! وقتی پیامی ارسال بشه، شما اون رو از طریق جاوااسکریپت توی مرورگر می‌گیرید و می‌تونید هر کاری که می‌خواید باهاش انجام بدید! 😍
خلاصه اگه یه اپلیکیشن دارین که نیاز به رویدادهای زنده داره، Broadcasting تو لاراول می‌تونه بهترین راه‌حل باشه. با استفاده از Pusher و Laravel Echo، کارتون خیلی سریع و تمیز انجام می‌شه.

سوالی داشتین تو کامنت‌ها بپرسین! 😁

🔥⚡️ کانال آموزشی LaravelHub
@LaraveHub
Forwarded from Gopher Academy
نکته خیلی جالبش شاید استفاده از GOMEMLIMIT بصورت dynamic هست که در runtime ست میشه..

Go Beyond: Building Performant and Reliable Golang Applications

https://blog.zomato.com/go-beyond-building-performant-and-reliable-golang-applications

✍️حسین نظری

#performance
#golang
#گولنگ


👑 @gopher_academy
Forwarded from Sadra Codes
LGTM 🤙
Forwarded from  (ZiZiGuLu)
تکنولوژی های ون (wan technology) :


تکنولوژی های wan به ما کمک می کنند تا بتوانیم شبکه داخلی wan خود را به دیگر شبکه در دنیای خارج متصل کنیم. 
این کار توسط سرویس دهنده های سوم شخص مانند مخابرات و شرکت های ISP(خودم توی یکیشون کار میکردم😌😂) صورت می پذیرد.

انواع این تکنولوژی ها از چندروش یا method استفاده می کند :
1)circuit switching (سوئیچینگ مدار)
2) packet switching (سوئیچینگ بسته)
3)PSTN(Public switched telephone network)


نکته: switching  به معنای راه یا راهگزینی(وقتی می خواهیم اطلاعاتی را از مبدا به مقصد ارسال کنیم درواقع آنهارا از مسیری گه وجود دارد switchمی کنیم)می باشد.

در سوئیچینگ مدار : یک مسیر مشخص بین مبدا و مقصد به عنوان خط اختصاصی ایجاد می شود و جریان داده ها بین این مسیر منتقل می شود.

در سوئیچینگ بسته : داده ها به بسته های اطلاعاتی تقسیم می شوند. و هر بسته یک روت مستقل از مبدا به مقصد ایجاد می کند و در نهایت تمام بسته ها در مقصد به داده اصلی تبدیل می شوند .(به خاطر همین سرعت کمتری دارد )
مانند : DSL / ISDN/ATM/X.25



#Network
@amiria703_channel
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰نمایش وضعیت آب و هوا در ترمینال:
در لینوکس برنامه‌های مختلفی برای نمایش وضعیت آب و هوا وجود دارد، از جمله ویجت‌ها، اپلت‌ها، و کلاینت‌های مختلف. با این حال، wttr.in این قابلیت را مستقیماً از طریق خط فرمان ارائه می‌دهد و می‌تواند پیش‌بینی چند روزه‌ای از وضعیت آب و هوا برای هر مکانی که مشخص کنید، نمایش دهد. ویژگی‌های اصلی wttr.in این است که نیازی به نصب یا تنظیمات پیچیده مانند کلید API ندارد و ظاهر جذابی دارد. همچنین اگر دستور curl را نصب کرده باشید، می‌توانید به سادگی با اجرای دستور زیر، وضعیت آب و هوای یک شهر مشخص را دریافت کنید:

curl wttr.in/City


🔰ابزار جایگزین
WeGo یک ابزار بسیار دقیق دیگر برای خط فرمان است که از APIهای مختلف مانند OpenWeatherMap برای نمایش وضعیت دقیق آب و هوا استفاده می‌کند. این ابزار قابلیت‌های زیادی از جمله پیش‌بینی چندروزه و جزئیات کامل آب و هوا را دارد.
روش نصب:

sudo snap install wego

یا
https://github.com/schachmat/wego.git

wego -l "City"
--------------------------
نویسنده: حسین سیلانی
حمایت از کانال-donate
https://zarinp.al/learninghive.ir
Forwarded from Linuxor ?
یه نوع باینتری از JSON داریم که بهش میگن BSON
که اومدن چیز های اضافه رو از JSON حذف کردن و برای افزایش سرعت indexing بهش اضافه کردن که توی جستجو خیلی سریع تر عمل میکنه اما ناچارا ویژگی human readable بودن JSON فدا شده.


🐧 @Linuxor
Forwarded from 🎄 یک برنامه نویس تنبل (  MΞ)
🔶 دانلود فیلم و سریال بدون سانسور از طریق تورنت

https://x.com/AmirrezaKN/status/1847968186299257108

@TheRaymondDev
ابزار Austin یک Python frame stack sampler است
پروفایل های آماری قدرتمندی که کمترین تأثیر را بر برنامه داره میسازه
ابزار جانبی نمیخواد، تاثیر حداقلی، سریع و سبک، پروفایل زمان و حافظه،
پشتیبانی از چند فرآیندی (مثل. mod_wsgi)

@DevTwitter | <MehrdadLinux/>
سال 2022 یک پروژه فروشگاهی پیشرفته لاراولی ساختم به نام Shopline که به صورت فول استک بود

توسعه این پروژه چند ماهی تقریبا متوقف کرده بودم ولی الان دوباره دارم یک سری آپدیت ها براش میدم.
اولین آپدیت این بود که از لاراول 10 به لاراول 11 آپدیت کردم

این پروژه به نظرم میتونه خیلی برای یادگیری مناسب باشه
https://github.com/milwad-dev/shopline

@DevTwitter | <Milwad Khosravi/>
دستیار هوش مصنوعی برای برنامه نویسان پایتون!

از وب سایت zzzcode.ai می تونید به عنوان یک دستیار تخصصی برای زبان پایتون، حوزه داده و هوش مصنوعی استفاده کنید. هم براتون کد مینویسه و هم کدهایی که بهش میدید رو توضیح میده. به عنوان نمونه من ازش خواستم که سورس کد مدل یادگیری ماشین GCNN روی توی پایتون بهم بده و خروجی تصویر رو داده. نمونه پرامپت داده شده در زیر:

Prompt:
Hi dear, I want to train a GCNN model on "MyDataset" dataset. Can you please write code in Python?

لینک وب سایت: https://zzzcode.ai/

@DevTwitter | <Ali Nazarizadeh/>
Forwarded from ASafaeirad
Finally a useful AI product.

https://www.hearview.ai/

#ai
این‌داستان؛ مدیرعامل ایرانسل!

🔍 ircf.space
@ircfspace‏⁧
اگر برنامه نویسی به زودی قراره چشمات به فنا بره اگر به این توصیه هایی که بهت میگم عمل نکنی :)

👀 استفاده از قطره اشک مصنوعی

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

به همین دلیل سعی کنید روزی حداقل ➍ مرتبه ازش استفاده کنید


استراحت دادن به چشم

هر 20 دقیقه یک بار پنج دقیقه دست از کار بکشید و 3 الی 5 دقیقه به چشمای خودتون استراحت بدید

حالا به چه شکلی ؟

➊ برید لب پنجره یا جایی که نور طبیعی وجود داره و به دور نگاه کنید، وقتی اینکارو انجام میدید چشماتون یه حالتی میشه و خودتون متوجه تغییر میشید

➋ چشم خودتون رو ببندید و با چپ، راست، بالا و پایین کردن چشمتون بهش ورزش بدید، این کار باعث تقویت عضله های چشم میشه

این مورادی که گفتم بهتون توصیه چندین چشم پزشک مختلف به من بوده مخصوصا مورد اول پس جدیش بگیرید !


و در نهایت مراقب چشماتون باشید چون یه عمر قراره باهاشون زندگی کنید و سلامتش رو در اولویت قرار بدید ❤️

#️⃣ #tips #programming

🫶 𝗖𝗛𝗔𝗡𝗡𝗘𝗟  |  𝗚𝗥𝗢𝗨𝗣
توی بعضی شرایط rust-analyzer ممکنه رو دستش بیاد؛ اونوقت highlight به درستی انجام نمیشه اگر اینطوری شد توی تنظیمات
Rust-analyzer > Semantic Highlighting > String

وارد بشید و گزینه‌اش رو غیر فعال کنید موقتا ( تا آخر پروژه مثلا)
Forwarded from Gopher Academy
🔵 عنوان مقاله
Some Go Web Dev Notes

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

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


👑 @gopher_academy
Forwarded from 🎄 یک برنامه نویس تنبل (  MΞ)
🔸توی این پست میخوایم پروژه‌های دانلودر از سوشال مدیا رو معرفی کنیم اگه موردی دیگه سراغ داشتید کامنت کنید:

1) پروژه‌های اوپن سورس:
+https://github.com/vaaski/telegram-ytdl
+https://github.com/tskau/cobold
+https://github.com/Rojeck/alwaysReelsBot
+https://github.com/yt-dlp/yt-dlp
+https://github.com/imputnet/cobalt
+https://github.com/TeamNewPipe/NewPipe/

2) سایت:
+https://cobalt.tools/
+https://newpipe.net/
+https://chatgpt.com/share/6714c3a7-a0c0-800f-ae49-869d26afb706

3) ربات‌های تلگرام:
+@uvd_bot
+@coboldbot
+@AlwaysReels_bot
+@MegaSaverBot

#معرفی
@TheRaymondDev
This media is not supported in your browser
VIEW IN TELEGRAM
~> ACID Properties

‏ACID یه سری خصوصیات کلیدی هستش که تو دیتابیس‌های رابطه‌ای برای تضمین صحت تراکنش‌ها (Transactions) استفاده می‌شه. این مفهوم اولین بار سال 1983 توسط Theo Härder و Andreas Reuter معرفی شد.

حالا ACID مخفف چیه؟!⬇️

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

‏Consistency (سازگاری): یعنی دیتابیس باید همیشه تو حالت معتبر (valid) باشه، چه قبل تراکنش و چه بعدش. مثلا اگه قانون داریم که موجودی حساب نباید منفی بشه، هیچ تراکنشی نمی‌تونه این قانون رو نقض کنه. اگه تراکنشی بخواد این کار رو بکنه، کامل کنسل می‌شه.

‏Isolation (انزوا): یعنی تراکنش‌های همزمان نباید روی هم تاثیر بذارن. مثلا اگه دو نفر همزمان از یه حساب برداشت می‌کنن، سیستم باید طوری مدیریت کنه که نتیجه نهایی درست باشه. این کار با مکانیزم‌های مختلف Locking انجام می‌شه.

سطوح مختلف Isolation وجود داره:
‏- Read Uncommitted: کمترین سطح ایزوله بودن.
‏- Read Committed: فقط تغییرات تایید شده دیده می‌شن.
‏- Repeatable Read: خوندن‌های تکراری نتیجه یکسان می‌دن.
‏- Serializable: بالاترین سطح ایزوله بودن.

‏Durability (ماندگاری): یعنی وقتی تراکنشی موفق انجام شد (Commit شد)، تغییراتش باید دائمی باشه و حتی با قطع برق یا کرش سیستم هم از بین نره. این کار معمولا با Write-Ahead Logging‏ (WAL) انجام می‌شه.

تو دنیای واقعی گاهی باید بین این خصوصیات تعادل برقرار کرد. مثلا NoSQL‌ها معمولا از مدل BASE استفاده می‌کنن که Basically Available, Soft State, Eventually Consistent هستش و سازگاری کمتری داره ولی در عوض مقیاس‌پذیری (Scalability) بیشتری داره.

PostgreSQL یکی از بهترین پیاده‌سازی‌های ACID رو داره و می‌تونه همه سطوح Isolation رو ساپورت کنه. MySQL هم ACID رو پشتیبانی می‌کنه ولی فقط با موتور InnoDB، موتور MyISAM این قابلیت رو نداره.

یه نکته جالب اینه که پیاده‌سازی ACID روی عملکرد (Performance) دیتابیس تاثیر منفی می‌ذاره. به همین خاطر بعضی سیستم‌ها مثل Redis از تکنیک‌های خاصی مثل AOF‏ (Append-Only File) استفاده می‌کنن تا تعادل بهتری بین کارایی و تضمین‌های ACID برقرار کنن.

#نرم_افزار #علوم_کامپیوتر #نوشته
~> @PinkOrca 🩷
Please open Telegram to view this post
VIEW IN TELEGRAM