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 Meitix (Null)
Meitix
بر همگان واضح هست که داکر چیزی به غیر از استفاده مفاهیم لینوکسی نیست. مفاهیمی که به کار برده: 🔸️ UTS namespace -> filesystem access and structure 🔸️ IPC namespace -> process communication over shared memory 🔸️NET namespace -> network access and structure…
UTS Namespace
یه قابلیت ساده تو لینوکس که به هر کانتینر یه اسم مستقل(hostname) میده. مثل اینه که هر کانتینر یه کامپیوتر جداست با اسم خودش.

اول اینکه هر کانتینر میتونه اسم خودش رو انتخاب کنه. مثلاً میتونی یه کانتینر رو service-abas" صدا بزنی و یه دونه دیگه رو "service-asghar".

دوم اینکه بعضی برنامه‌ها، مخصوصا اونایی که با شبکه کار می‌کنن، به این اسم نیاز دارن تا درست کار کنن. مثلا وقتی میخوای به کانتینر دیتابیس وصل بشی یا برای service discovery ها

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


این قابلیت مثل اینه که به هر کانتینر یه کارت شناسایی بدی که فقط مال خودشه. بقیه نه می‌تونن کارت رو ببینن، نه می‌تونن تغییرش بدن

داکر از همین hostname ها برای dns اش استفاده میکنه
Forwarded from Meitix (Null)
Meitix
UTS Namespace یه قابلیت ساده تو لینوکس که به هر کانتینر یه اسم مستقل(hostname) میده. مثل اینه که هر کانتینر یه کامپیوتر جداست با اسم خودش. اول اینکه هر کانتینر میتونه اسم خودش رو انتخاب کنه. مثلاً میتونی یه کانتینر رو service-abas" صدا بزنی و یه دونه دیگه…
حالا uts مخفف unix time sharing هستش که هیچ ربطی نداره اصن😂😂

ولی قصیه اش اینه قدیما یه سیستم بین چندین کاربر به صورت همزمان اشتراک گذاشته می‌شد و هر کاربر فکر می‌کرد کل سیستم رو داره، اما در واقع CPU زمان رو بین همه تقسیم می‌کرد

دیگه از همون فلسفه استفاده کردن و اسمشو به یادگار همون گذاشتن 😅
Forwarded from Meitix (Null)
علت اینکه میگن کدهای اسینک غیر قابل پیش بینیه و دیباگش سخته اینه که ۱۰ سال داره کار میکنه و شما یه تسک محاسبات سنگین مثل پردازش اکسل میزنید و اون کد قدیمیه خراب میشه به علت مسائل تایمینگی که در پس و پیش اضاف میشه و حالا شما باید ۱۰ سال کد رو مرور کنید که بفهمید مشکل از کجاست
Forwarded from Meitix (Null)
حمله breach در زمینه فشرده سازی ریسپانس و gzip

https://en.m.wikipedia.org/wiki/BREACH
Forwarded from Meitix (Null)
لینوکس تنها سیستم عامل دونیا😅

واقعا چیز جالبیه علتش اینه که core
شده مثلا خیلی چیزا که توی برنامه نویسی داریم از اونجا میاد.
مثلا pipe, jail(isolation), regex،makefile و کلی چیزا و شاید پترنای دیگه

پسر cron jobs برای ۱۹۷۰ه😂

همین‌جاست که لینوکس رو از یه سیستم‌عامل ساده جدا می‌کنه و تبدیلش می‌کنه به یه مکتب فکری
Forwarded from Frontend with Erfun👨🏻‍💻 (Erfun Ghodoosi)
اگر به عنوان فرانت اند دولوپر هنوز توی پیاده سازی کردن ui ها مشکل دارید و فکر میکنید css در مواقعی خیلی براتون پیچیده میشه. حتی وقتی پیچیدگی ظاهری خاصی وجود نداره.
پیشنهاد میکنم طرز فکر box model رو تقویت کنید توی‌ خودتون.
نگاهی که همه چیز رو با باکس هایی از بزرگ به کوچیک تقسیم بندی میکنیم تا ریز ترین جزئیات رو با بهترین کیفیت پیاده سازی کنیم.

موضوعی که امروز با یکی از رفقایی که تازه با html css شروع کرده حدودا یک ساعت توی گوگل میت بررسی کردیم و خفن ترین نتیجه رو گرفتیم. حقیقتا من که خیلی کیف کردم از اینکه تونستم در این حد مسئله رو برای کسی که تازه شروع کرده ساده کنم (با حفظ تمام جزئیات در عین سادگی).😁
Forwarded from Frontend with Erfun👨🏻‍💻 (Erfun Ghodoosi)
توی این ویس خودمونی اما پر از نکته‌های ناب، برای اونایی صحبت کردم که واقعاً دارن تلاش می‌کنن و می‌خوان به جای نتیجه‌های نصفه‌نیمه، واقعاً استخدام باکیفیت و درست‌حسابی رو تجربه کنن. اگر دولوپر باانگیزه‌ای هستی که شاید تجربه زیادی نداشته باشی ولی می‌خوای شانس استخدامت رو چند برابر کنی، این ویس دقیقا برای توئه — با راه‌حل‌هایی که از دل تجربه و شناخت واقعی بازار کار اومده.

حتی اگر این ویس رو گوش میدید، تبریک میگم، شما جزو اون چند درصد دولوپری هستید که نتیجه میگیرن. چون خیلیا حتی به خودشون زحمت نمیدن این ویس رو گوش بدن و دور از انتظار هم نیست 😉
Forwarded from Ditty | دیتی
🔺اکمااسکریپت ۲۰۲۵ و متدهای جدید Set

- توی جدیدترین آپدیت اکمااسکریپت (۲۰۲۵) متدهای جدید و کاربردی به مجموعه Set اضافه شده

- توی جدیدترین پست دیتی اونها رو بررسی می‌کنیم:
ditty.ir/589

#javascript
Forwarded from Ditty | دیتی
🔺آزادسازی قانونی جاوااسکریپت

- شاید جالب باشه که بدونیم مالکیت کلمهٔ «جاوااسکریپت» در اختیار شرکت اوراکل هست. این در حالیه که این شرکت نه جاوااسکریپت رو ساخته و نه تلاشی برای توسعهٔ اون انجام داده

- به‌تازگی گروهی از افراد معروف حوزهٔ برنامه‌نویسی (از جمله خالق جاوااسکریپت، خالق نودجی‌اس، خالق npm و ۲۱هزار نفر دیگه) از طریق قانون درخواستی برای لغو مالکیت واژه «جاوااسکریپت» توسط اوراکل رو ارائه دادن

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

- اوراکل چکار کرد؟ اوراکل برای اینکه به دادگاه ثابت کنه که داره از کلمهٔ جاوااسکریپت استفادهٔ تجاری می‌کنه زیاد خودش رو به زحمت نینداخت. رفت از وبسایت رسمی نودجی‌اس یک اسکرین‌شات مرموزانه گرفت و به دادگاه ارائه داد و گفت «من دارم استفاده تجاری می‌کنم. لطفاً برند من رو تمدید کنید!»

- این کار باعث عصبانیت بیشتر رایان دال (مالک نودجی‌اس) شد. تا جایی که شکایتی رو در این مورد هم ثبت کرد (که البته شکایت برای این قسمت به جایی نرسید)

- اما موضوع آزادسازی و عامیت بخشیدن به کلمه «جاوااسکریپت» هنوز در حال بررسی هست و شرکت اوراکل تا تاریخ ۷ آگوست ۲۰۲۵ می‌بایست در این مورد اظهار نظر کنه

- این اتفاق چرا مهمه؟ توی دنیایی که کپی‌رایت اهمیت داره، استفاده کردن از نام جاوااسکریپت ممکنه تبعات قانونی برای افراد و سازمان‌ها داشته باشه و برای همین افراد و سازمان‌ها سعی می‌کنن با ریسک کمتری از این واژه استفاده کنن. مثلاً استفاده از JS Conf بجای JavaScript Conf

- صفحه رسمی با این درخواست:
https://javascript.tm


#javascript
Forwarded from Mulan (Saghar Mulan)
🔖 The Napkin Project
شخصی که این پروژه رو راه‌اندازی کرده Evan Chen که داور المپیاد جهانی ریاضیه دکتراش رو در نظریه اعداد از دانشگاه MIT گرفته. خودشم وقتی دبیرستانی بوده توی IMO مدال طلا می‌گیره. یه کتاب هم توی المپیاد در زمینه هندسه اقلیدسی نوشته. حالا این پروژه‌‌ی Napkin رو برای دانش‌‌آموزان دبیرستانی راه انداخته که یکم با ریاضیات پیشرفته‌تر در اون مقطع آشنا بشن. مثل جبر مجرد، توپولوژی، نظریه رسته‌ها. به قول خودش سعی کرده یه light approach برای این مباحث باشه. پیشنهاد می‌کنم که حتما مقدمه‌ی کتاب رو بخونید. بخشی از مقدمه:
"it is not the purpose of this book to train you to solve exercises or write proofs. I just want to show you some interesting math. I place a strong emphasis over explaining why a theorem should be true rather than writing down its proof. This is a recurrent theme of this book:
Natural explanations supersede proofs."

پ.ن: به نظرم حرکت خوبیه، دکتر ایرد هم بهمون گفته بود که یه سری کشورها در دبیرستان خیلی زودتر از دانشگاه با مفاهیم در جبر و دروس دیگه آشنا می‌شن.
Forwarded from a pessimistic researcher (Kc)
سمِ شب

در semantics زبان‌های برنامه‌نویسی finite data types ها رو مثل List و Tree و این صحبتا رو در قالب یک Initial Algebra نمایش میدن.
حالا امشب قراره شما گوش جان بسپاری به سخنان kc تا برات این سم خالص که nobody gives a fuck about رو عین قند ساده و خوشمزه توضیح بده.

بیاید اول ببینیم خود Algebra چیه. ببینید Algebra یک تاپل یا یک دوتایی هست مثل <x,y> که x یک مجموعه است و y یک عملیات روی اون مجموعه. با یک مثال اگر بخوام براتون بگم، x یک مجموعه‌ای از تمام رشته‌های متناهیه ( یعنی طول رشته محدوده مثل رشته aaa که طولش ۳ هستش وگرنه عناصر خود مجموعه نامتناهیه) که با استفاده از الفبای A ساخته میشه. یعنی خود الفبا هم یه مجموعه است. مثلا اگر الفبا باشه A={a} اون وقت مجموعه‌ی رشته‌های متناهی روی این الفبا میشه {a, aa, aaa, aaaa, ...} اصطلاحا به مجموعه x میگن carrier set. اینم به زبون ساده از من بپذیرید که مجموعه‌ی تمام رشته‌های متناهی ممکن که میشه بر اساس یک الفبا مثل A ساخت رو به شکل A* نمایش میدیم و به نوعی x رو همون A* در نظر میگیریم. حالا بیاید بر اساس مجموعه A* یه algebra تعریف کنیم. عملیات concatenation رو در نظر بگیرید که که میشه باهاش دو رشته رو بهم متصل کرد. مثلا اگر یک رشته داشته باشیم مثل aba و یک رشته داشته باشیم bcb اونوقت ادغام این دو رشته میشه ababcb.
جبرمون بر اساس A* و این اپراتور میشه :

<A*, \eta : ( 1 + ( A x A*)) -> A*>
همونطور که میبینید اپراتور eta یک تابع است که میاد یک مجموعه‌ی تک عضوه یا همون singletone مثل {*} (یه چیز dummy که صرفا بتونیم باهاش empty word رو تعریف کنیم) رو مپ میکنه به یک رشته‌ی خالی با epsilon نمایش میدنش و ما توی جبرمون این مجموعه رو با 1 نمایش دادیم.
علاوه بر این، این تابع میاد و یک دوتایی مثل <a,w> که a عضو A هستش و w عضو A* هستش رو مپ میکنه به a.w که اینم عضو A* هستش.

خب اما حالا این شد مفهوم Algebra. باید بیایم تعریف کنیم که Initial Algebra چیه و نشون بدیم که چرا finite data type ها initial algebra هستند.
وقتی میگیم که A* یک initial Algebra هستش یعنی اولا : که کوچکترین algebra در نوع خودش هست یعنی کوچکترین مجموعه‌ای هستش که نسبت به اوپراتوری که روش تعریف میکنیم بسته هست. منظور از بسته بودن یعنی حاصل انجام اون اوپراتور روی هر دو عضوی از مجموعه A* به ما میدهد یک عضوی از مجموعه A*. دوما : به ازای هر Algebra مثل B که روی همون اوپراتور تعریف شده یک homomorphism یکتا وجود داره که ساختار رو حفظ میکنه یا به عبارت دیگه :
h : A* -> B
خب حالا وقتشه که اون سوال احمقانه رو بپرسیم که homomorphism یکتا چیه؟ خب اول باید بگم که خودتو آماده کن یکم category theory یاد بگیری :)

زمانی که ما دو تا algebra داریم به شکل (A, a) و (B,b) که A همون Carrier set ما هستش و a هم همون اوپراتور یا ساختار جبر یا به قول احمقای حوزه کتگوری morphism که فرمالی تعریفش میشه :
a : F(A) -> A

یک homomorphism مثل h وجود داره که :
h : A ->B

به شرطی که :
h∘a = b∘F(h)

پس در حقیقت homomorphism یک تابع هستش که باید شرط فوق رو ارضا کنه.

خب حالا که فهمیدیم initial algebra چیه بریم و List رو توی زبان‌های برنامه‌نویسی در قالب یک Initial lagebra نمایش بدیم :

List(A) فرض کنید تایپ لیست ما اینه
اوپراتورش اینطوری تعریف میشه :
nil : 1 -> List(A) لیست تهی
cons : A x List(A) -> List (A) اضافه کردن یک المنت به لیست
که ترکیب شون میشه :
[nil,cons]:1+ (A×List(A)) ->List(A).

در نتیجه می‌تونیم بگیم که List(A) یک initial algebra هستش برای فانکتور :
F(X) = 1 +‌( A x X)
یعنی هر تابعی که با توصیف عملیات‌های nil و cons تعریف بشه رو میشه به شکل یکتا به یک homomorphism تعمیم داد.

توی functional programming شما این کار رو با foldr میکنید :)

خلاصه جونم براتون بگه که از خیر تعریف least fix-point و induction روی intial algebra هم عبور میکنیم
Forwarded from Linuxor ?
ایلان ماسک یه توییت زده و گفته گراک 4 حتی از Cursor هم توی کد زدن بهتر عمل می‌کنه و به قدری تاکید داره که توییتش رو پین کرده !

البته گراک 4 هنوز رایگان نیست ولی ممکنه بعدا رایگان بشه؛ بعضی کاربرا که تستش کردن نتیجه خوبی گرفتن و خبر از درک فوق العاده بالای گراک 4 از اجسام سه بعدی دادن این می‌تونه یه جهشی توی بازی سازی و صنعت ویدیویی باشه.

@Linuxor
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 اپل به آرامی در حال تبدیل شدن به نوکیا و بلک ‌بری جدید است.

- یعنی دارد همان اشتباهاتی را تکرار می‌کند که باعث سقوط نوکیا و بلک ‌بری شد.

@TheRaymondDev
مدیرعامل گیتهاب، Thomas Dohmke، یه ارائه داشت که با فیچرهای جدید کوپایلوت یک بازی Snake رو با vibe coding پیاده‌سازی کنه که تا آخر هر کاری کرد کدش کار نکرد و مجبور شد ارائه‌اش رو ناتموم بذاره :))

#wearedevelopers2025
@aminrbg
توی غرفهٔ Hetzner ازشون پرسیدم که چطوری کیفیت خوب و availability بالا رو با این قیمت معقول ارائه می‌دن چون از این نظر اختلاف قابل توجهی با رقیب‌هاش داره. یکی از مسئول‌هاش گفت که دلیلش اینه که تا جای ممکن سعی می‌کنن همه چی رو خودشون بسازن و کارها رو out source نکنن. از پروسهٔ طراحی و معماری دیتاسنترها تا تولید قطعات و رک‌ها. انقدر هم دیتاسنتر دارن که این هزینه‌ها براشون سرشکن می‌شه.
واسه همین هم قیمت مصرف‌کننده تا حد خوبی پایین نگه داشته شده. حتی یه سری درپوش که توی رک‌هاشون استفاده می‌شه رو بهم نشون داد که با پرینتر سه بعدی درست می‌کردن.

#wearedevelopers2025
@aminrbg
Forwarded from Linuxor ?
ترفند جدید و بسیار خلاقانه باج گیر ها؛

یه سایت با ظاهر تاییدیه کلادفلر درست می‌کنن و برای تاییدیه اضافی بهت می‌گن توی Run Dialog کامندی که خودش از قبل توی کلیپ بوردتون کپی کرده رو پیست کنید

و در نتیجه RCE یا اجرای کد از راه دور اتفاق می‌افته و مهاجم می‌تونه هر چیزی روی کامپیوترتون اجرا کنه !

@Linuxor
Forwarded from AI Labdon
🤖 همه‌چیز درباره Grok 4 – نزدیک‌ترین مدل به AGI (مدل انسانی)


🔸 قدرت پردازش: گراک ۴ با ۱۰۰ برابر قدرت بیشتر نسبت به Grok 2 آموزش دیده و نصف تاخیر (Latency) گراک ۳ رو داره.

🔸 دسترسی: احتمالاً نسخه Grok 3 به‌زودی برای دانلود عمومی در دسترس قرار می‌گیره.

📈 بنچمارک AGI:
تو بنچمارک بسیار دشوار ARC-AGI که ماه‌ها هیچ مدلی نتونسته بود حتی از مرز ۱۰٪ عبور کنه، گراک ۴ تونست در کمتر از ۱۲ ساعت به امتیاز ۱۵.۸٪ برسه؛ یک رکورد جدید!

📚 آزمون‌های علمی:
در آزمون HLE با ۲۵۰۰ سؤال در سطح دکترا:

Grok 4: امتیاز %25.4

میانگین انسان‌ها: 5%

Gemini 2.5 Pro: %امتیاز 21.6
OpenAI o3-high: %امتیاز 21

Grok 4 Heavy:
امتیاز عجیب و چشمگیر بیش از ۵۰ درصد


🧠 دیدگاه ماسک:

ایلان ماسک گفته: «دانشجوهای دکترا تو آزمون‌هایی که گراک قبول می‌شه، رد می‌شن!»


🚀 نسخه Heavy:
مدلی با اسم الهام‌گرفته از Falcon Heavy، که یک مدل مولتی‌ایجنته.
ماسک می‌گه وقتی یه سوال پیچیده ازش بپرسید، به‌جای یک جواب مستقیم، چندین ایجنت با هم مثل یه «تیم مطالعه» همکاری می‌کنن تا به بهترین پاسخ برسن.

🧾قیمت API:
پنجره زمینه: تا ۲۵۶ هزار توکن (عالی برای اسناد حجیم)

قیمت:
ورودی: ۳ دلار / یک میلیون توکن
خروجی: ۱۵ دلار / یک میلیون توکن

👇👇👇👇👇👇👇👇👇
@ai_labdon