CleverDevs – Telegram
CleverDevs
8.47K subscribers
733 photos
282 videos
27 files
435 links
به کانال کلوردوز خوش اومدین

سعی میکنیم چیزایی که بنظر کاربردی هستن رو باهاتون به اشتراک بزاریم


🔥لینوکس
🔥برنامه نویسی فرانت‌اند
🔥برنامه نویسی بک‌اند
🔥اخبار تکنولوژی و...

CleverDevs are better than other Devs
💢~> @mmdrsdev
Download Telegram
تو آشپزی ایرانی شما میتونی اول پیاز رو تف بدی و بعد تصمیم بگیری چه غذایی رو بپزی‌.

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


#fun #twitt - Reza Jafari
@CleverDevs - @CleverDevsGp
👍86🤣50👎23😁9🤯2
Forwarded from Arsham's Tech Mastery (Arsham)
تا حالا شده به یه مشکلی بخورید، ولی هیچ سر نخی از مشکل ندارید، بنابراین اصلا نمیدونید راجع به چی باید سرچ کنید؟ یا هر چی سرچ میکنید به نتیجه نمیرسید. (مثلا یه بار سر مموری لیک تو نود جی اس اینجوری شدم، و نمیدونستم حتی مشکلی که خوردم اسمش مموری لیک هست، مدعیان سینیوریتی هم که... باید براشون میخوندم ای به فدای چشم تو این چه نگاه کردن است!)

یا مثلا یه چیزی رو ندونید، اما ندونید چی باید سرچ کنید که یادش بگیرید؟ مثلا تو مکالمه همکارات بشنوی "p99 اش چنده؟" قبلنا که یادمه گوگل نتایج قابل قبولی برای این نمیداد، ولی ساده است، میگمش بعدا. (کلیت سوالم رو دریابید فارق از مثال)

یه حالت بدتر هم وجود داره، که مشکل خوردن، اما اصلا نمیدونن مشکل خوردن! (مثلا چندتا گوروتین اون گوشه نشستن نون و پنیرشونو میخورن به کسی هم کار ندارن (dangling goroutines))

یا میدونن مشکل خوردن اما بهش بی توجهی میکنن مثلا سرور هفته ای یه بار کرش میکنه، ری استارت میکنن و درست میشه و روز از نو روزی از نو! Availability هم که... کشک! 😂

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

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

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

یا تو همین موقعیتی که هستم نواقصی رو خواهم دید که قبلا نمیدیدم (مطمئنم این اتفاقا میوفته چون چندین بار تجربش کردم)

همه ما برنامه نویسا کم و بیش این دوره رو تجربه کردیم که نه بر حسب نیاز بلکه برای آینده مطالعه کنیم (قبل اولین کارمون مثلا)، اما گاهی بعد اینکه دیگه به کار میرسیم انقدر غرق کار میشیم که یادمون میره این مسیر طولانی تر از این حرفاست و کلی موقعیت برا پیشرفت هست. (بعضیا هم میدونن موقعیت هست ولی تصمیمشون بر لذت بردن و... در تایم های شخصیه، اونم مورد احترامه)
👍545👌4
کره شمالی اگه توزیع بود :


پ.ن : یه دستور اشتباه بزنی به جاش sudo rm -rf / رو ران میکنه

#fun
@CleverDevs - @CleverDevsGp
🤣85👍3😁3
باید با css پهپاد رو هک میکردن

@CleverDevs - @CleverDevsGp
🤣127👍7👎5😁4💔3
اسم زبون راست (Rust) رو اکثرتون شنیدید اما اگه از راست خوشتون نمیاد میتونید از زبون چپ (Chap) استفاده کنید

چپ یه پروژه فان هستش که توسط علی قهرمانی توسعه یافته با وجود فان بودنش پروژه خوبیه که میتونید تستش کنید

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

https://github.com/ali77gh/Chap

همچنین میتونید بدون نصب کردن و آنلاین امتحانش کنید

https://ali77gh.github.io/ChapApp/

پ.ن خود زبون چپ هم با راست نوشته شده 😂

#Chap #Rust
@CleverDevs - @CleverDevsGp
🤣87👍5👎4🔥3😁1
مخابرات اینطوریه که سرعت اینترنت افتضاحه زنگ میزنی پشتیبانی گردن نمیگیرن میگن سرعتتون عالیه


بعد قطع میکنی یهو سرعت اینترنت میره بالا😂

#fun
@CleverDevs - @CleverDevsGp
🤣128👍23👌4
‏Object Relational Mapping یا به اختصار ORM چیه؟ و به چه دردی میخوره؟

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

مثلا اگه شما بخواید یه سری اطلاعات رو از جدول users بگیرید باید یه همچین کوئری sql ای بنویسید :
"SELECT id, name, email, country, phone_number FROM users WHERE id = 20"

اما کمک ORM ها میتونید با یه همچین چیزی کارو در بیارید
users.GetById(20)


‏ORM یک لایه بین برنامه نویس و دیتابیس ایجاد میکنه و در نهایت متد های مورد استفاده شمارو به SQL ترجمه میکنه و کوئری میزنه به دیتابیس ORM های مختلفی هم برای زبون ها و فریمورک های مختلف وجود داره مثل Eloquent برای لاراول یا ORM فریمورک جنگو و...

‏ORM های مختلف میتونن متد های مختلفی هم داشته باشن ولی در نهایت هدفشون یکیه و یه کاری انجام میدن

استفاده از ORM ها یه سری مزایاا و یه سری معایب داره

مزایایی مثل
سرعت توسعه بالاتر
افزایش امنیت در اکثر اوقات
کمتر سرو کله زدن با SQL و ...

همینطور معایبی مثل
سرعت کمتر ORM نسبت به SQL
کارایی پایین ORM در کوئری های پیچیده و...


پ.ن درسته کار با ORM نیاز به دانش چندانی از SQL نویسی نداره اما به این معنی نیست که SQL بلد نباشید و فقط از ORM استفاده کنید

#ORM
@CleverDevs - @CleverDevsGp
👍32🔥12🆒4
💢 اخبار روز تکنولوژی (خلاصه و مفید)

🤖 همکاری BMW با ربات فیگور •
ربات فیگور ۰۱ متصل به هوش مصنوعی که چندی پیش معرفی کرده بودیم همراهی خود را با BMW اعلام کرد؛ همچنین تریلر ورژن جدید و پیشرفته ترش رو نشر داد و انتظار میره تا پایان سال ویدیو معرفی کاملش رو ببینیم.


🍎 تصمیم نهایی مدیرعامل اپل •
تیم کوک مدیرعامل اپل اعلام کرد؛ تا پایان سال میلادی جاری ChatGPT با سیستم عامل iOS18 و سایر نسخه های سیستم عامل اپل یکپارچه می‌شود.


• ‏🦷 اولین جراحی دندان‌پزشکی با ربات •
شرکت دندان‌پزشکی رباتیک Perceptive اعلام کرد برای اولین‌ بار از ربات با هوش مصنوعی تمام‌خودکار استفاده کرده است؛ این ربات تقریباً می‌تواند عمل‌های خاصی، مانند تعویض تاج دندان را هشت برابر سریع‌تر از دندان‌پزشک معمولی انجام دهد.


👽 رقابت انسان با هوش مصنوعی •
ایلان ماسک به‌تازگی در مصاحبه جدیدی با Lex Fridman درباره مزیت‌های تراشه‌های نورالینک صحبت کرده است. ایلان ماسک می‌گوید ایمپلنت‌های مغزی نورالینک بهترین راه برای انسان‌ خواهد بود تا هم با هوش مصنوعی پیشرفته یکپارچه شود هم در آینده با آن رقابت کند.


اگه موافق هستید این نوع پست‌ها رو ادامه بدیم با ری اکشن و شِیر کردن حمایت کنید.❤️

#QuickDailyNews
@CleverDevs | @CleverDevsGP
👍7046🔥3👎1
یکی از بچه ها تجربه چالش های مختلفی که اکثر تازه کار های لینوکسی بهشون بر میخورن رو توی بلاگش گذاشته و راه حل هایی براشون نوشته اگه شما هم تازه اومدید سمت لینوکس پیشنهاد میکنم بخونید میتونه کمکتون کنه

https://exinem.ir/2024/08/04/linux-daily-challenges/

#GNU #Linux
@CleverDevs - @CleverDevsGp
23🔥6👍4
CleverDevs
همون طور که بعضیاتون میدونین برای Height: auto; ترنزیشن اعمال نمیشه، که توی ساخت منو و اوتو‌کامپلت سرچ و .. استفاده میشه از این ترفند میتونین استفاده کنین. #trick - Source @CleverDevs @CleverDevsGp
calc-size()


قبلا توی این پست یه راه حل برای اعمال ترنزیشن روی

height: auto;

گفته بودم، ولی بالاخره بعد مدت‌ها مثل اینکه کارمون آسون شده‌.

یه تابع جدید به اسم calc-size اومده که اگه تو ورودی بهش auto رو بدیم، میاد مقدار auto رو مشخص میکنه و بهمون برمیگردونه‌.

یعنی جای همه اینکارا کافیه فقط

.box {
height: 200px;
overflow: hidden;
transition: 300ms
}

.box.active {
height: calc-size(auto);
}

اینکارو بکنیم، البته فعلا وضعیت ساپورت مرورگرش خوب نیست. (اصلا خوب نیست)

@CleverDevs - @CleverDevsGp
👍17👌4
یکی از برنامه نویسای ایرانی اومده موتور بازی سازی خودشو ساخته و مراحلش رو توی یوتوب توضیح داده

بنظرم کار خفنی بود و ارزش دیدن داره

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

#Game
@CleverDevs - @CleverDevsGp
🔥46👍9💯6
این توییت هم چند روزیه خبر ساز شده

نظر شما در این باره چیه ؟

#youtube
@CleverDevs - @CleverDevsGp
👎137👍30
اگر فکر کردین درآمدتون وابسته به سانسور و عدم دسترسی بقیه به اطلاعات و سرکوب آزادی و … هست، دوباره به کاری که دارین می‌کنین فکر کنین!

© Jadi

#youtube
@CleverDevs - @CleverDevsGp
👍1858🔥7👎4👌1
میم تیرانداز ترکیه ای رو با این تموم کنیم

#meme #fun
@CleverDevs - @CleverDevsGp
🤣74👍8😁4🆒3🔥2
توی این پست میخوام یه فیچر باحال لاراول به اسم macro رو معرفی کنم

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

در واقع کلاس های لاراول یه متد macro دارن که دوتا آرگیومنت میگیره اولی اسم متدی که میخوایم اضافه کنیم و دومی یه تابع که بدنه متد رو تشکیل میده

حالا چطور ماکرو هارو تعریف کنیم و ازشون استفاده کنیم ؟ برای اینکار میتونید ماکرو رو توی بوت AppServiceProvider تعریف کنید یا نه برای اینکه پروژتون تمیز تر باشه یه پروایدر مخصوص برای ماکرو ها بسازید

برای مثال ما میخوایم یه متد even برای کلاس Collection بسازیم تا بیاد اعضای زوج کالکشن رو برگردونه برای اینکار توی متود boot میاییم و ماکرو رو به این صورت تعریف میکنیم :

use Illuminate\Support\Collection;

public function boot()
{
Collection::macro('even', function () {
return $this->filter(function ($value) {
return $value % 2 === 0;
});
});
}


حالا هرجا بخوایم میتویم کلاس Collection رو use کنیم و از متد even استفاده کنیم :

php 
$numbers = collect([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);

$evenNumbers = $numbers->even();

// $evenNumbers will now contain [2, 4, 6, 8, 10]


برای درک بهتر میتونید این مقاله از دیتی رو هم بخونید

https://ditty.ir/posts/laravel-macro/J6dqn

#Laravel #php
@CleverDevs - @CleverDevsGp
👍17🔥433
یکی از بچه های چنل یه پادکستی به اسم ازشنبه شروع کرده که توش در باره برنامه نویسی و تکنولوژی حرف میزنه اگه علاقه‌مند بودید میتونید از یوتوب یا ساندکلاد گوش کنید

یوتوب - ساندکلاد
@CleverDevs - @CleverDevsGp
👍25🔥42
چطور مشکل merge conflict رو حل کنیم؟

#fun
@CleverDevs - @CleverDevsGp
🤣87😁8👍62🆒1
Forwarded from Sudoer (Morteza Bashsiz)
درود دوستان

من برگشتم :دی
یه پروژه ای رو از ماه مارچ سال ۲۰۲۳ شروع کردم برای دور زدن فیلترینگ که بشه ریکوست‌های وب رو توی یک ریکوست فیک قایم کرد و رد کرد توی اینترنت
که الان به جای خوبی رسیده و نیازمند همراهی عزیزانی هست که دست به کد با زبان سی++ هستند و با کتابخانه boost آشنایی دارند
من حدود یک سال و نیم هست که روی این پروژه به صورت پاره‌وقت دارم کار میکنم و برای اینکه بتونم بهتر پیاده‌سازیش کنم ۲ تا کتاب و کلی منابع خوندم تا دانشم بره بالاتر
۱. این کتاب از اسکات مایرز
۲. این کتاب دیگر از اسکات مایرز
۳. داکیومنت خود بوست
هنوز به صورت کامل آماده استفاده نیست و دو مشکل اساسی داره که سعی میکنم برطرفش کنم و اون هم مموری منیجمنت بهتر و ایزوله کردن تردهاست

سعی میکنم در آینده یه ویدیو بسازم و توش توضیح بدم که چطوری کار میکنه

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

سپاس فراوان از همراهی همه شما

https://github.com/MortezaBashsiz/nipovpn
👍3712🔥5
یکی از آسیب پذیری های خطرناک دنیای نرم افزار Race Condition هست . اما race condition چیه و چطور اتفاق میفته ؟

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

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

بزارید یه مثال بزنم تا این مسئله بهتر جا بیوفته . فک کنید با یه سیستم بانکی طرفید وقتی میخواید پولی به شخصی انتقال بدید سیستم اول میاد چک میکنه که شما تو حسابتون موجودی دارید یا نه اگه موجودی داشتید اول x مقدار پول به حساب طرف مقابل انتقال میده و بعد x مقدار از حساب شما کسر میکنه حالا فکر کنید اینجا یه race condition اتفاق بیوفته و دوتا درخواست انتقال با فاصله خیلی کم ثبت بشه اولی بیاد چک کنه ببینه موجودی دارید بعد پول رو به حساب طرف مقابل اضافه کنه و تا اون لحظه ای که پول از حساب شما کم میشه درخواست دوم هم بیاد و مرحله چک کردن موجودی رو رد کنه اینطوری شما پولی بیشتر از موجودیتون انتقال دادید


یکی از استفاده های معروف از این آسیب پذیری برمیگرده به سال 2015 که ایگر هوماکف ، متخصص امنیتی که تونست هرچند بار که میخواد حساب استارباکسش رو شارژ کنه بدون اینکه هزینشو پرداخت کنه (میتونید داستانش رو از اینجا بخونید)

یا همین چند وقت پیش که یه باگی تو openssh به وجود اومده بود و از همین آسیب پذیری استفاده میکرد

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

sokanacademy - techtarget - virgool

#security
@CleverDevs - @CleverDevsGp
🔥26👍143
فونت ادیتور برنامه نویس های ادایی :

#fun
@CleverDevs - @CleverDevsGp
🤣103👍8😁3💯2💔2