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
از اونجایی که تصمیم گرفتم کتاب های حوزه NET. رو ترجمه کنم و الان دو موردش در حال انجام، گفتم خب کار خسته کننده ای یکی بیاد متن کتاب رو تو گیت هاب بخونه.

پس در یک repo جدید تصمیم گرفتم آنلاین اش کنم. لطفاً دوستان فرانت کمک کنند.

https://github.com/hheydarian/parsBook

@DevTwitter | <Hamed Heydarian/>
Forwarded from Linuxor ?
تا حالا فکر کردی چطور Node.js می‌تونه این همه درخواست رو همزمان و بدون گیر کردن مدیریت کنه؟ راز اصلیش تو دل یه کتابخونه به اسم libuv پنهان شده. این پروژه تمرکزش روی I/O ناهمزمان (asynchronous I/O) هست؛ یعنی به جای اینکه منتظر جواب شبکه یا فایل بمونه، میره سراغ کارهای دیگه و اینطوری اپلیکیشن شما سریع و روان باقی می‌مونه، حتی زیر بار سنگین.

اگر داری یه ابزار شبکه‌ی پرسرعت، سرور، یا هر برنامه‌ای که با تعداد زیادی اتصال همزمان سروکار داره با C/C++ می‌نویسی، libuv همون چیزیه که کارت رو راه میندازه. این کتابخونه پایه‌ی اصلی ابزارهای بزرگی مثل Node.js و Julia هست و بهت اجازه میده بدون درگیر شدن با پیچیدگی‌های سیستم‌عامل‌های مختلف (مثل epoll توی لینوکس یا IOCP توی ویندوز)، کدت رو بنویسی.


libuv.org

@Linuxor
Forwarded from LinNews (Benyamin)
دبیان ۱۳ «تریکسی» منتشر شد.
#Debian #Linux

پشتیبانی رسمی از RISC-V، مدیر بسته APT 3.0، بوت HTTP، پشتیبانی wcurl و HTT3 در cURL و دیکشنری دودویی BDIC Hunspell از جمله تغییرات دبیان تریکسی هستند. ترجمه‌های صفحات man نیز بهبود یافته‌اند. همچنین، بروزرسانی از دبیان ۱۲ با دستورالعمل‌های رسمی قابل انجام است.

منبع خبر
به ما بپیوندید :
@LinAcademy
Forwarded from Linuxor ?
برگاتون بریزه؛ گوگل به یه نفر که تونسته از Sandbox گوگل کروم escape کنه 250 هزار دلار داده.

فرار کردن از Sandbox یعنی اینکه محدودیت های امنیتی مرورگر کاملا دور زده می‌شه و اگه این آسیب پذیری فیکس نمی‌شد یه فاجعه بسیار بزرگ بود چون مهاجم می‌تونست از طریق مرورگر به کامپیوترتون دسترسی پیدا کنه.

توضیحات فنی :

issues.chromium.org/issues/412578726

@Linuxor
Forwarded from یه شعر (Poem Bot)
حافظ | غزلیات | غزل شمارهٔ ۳۵۰

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

#حافظ | گنجور
📍@iipoem
یه اسکریپت حرفه‌ای پایتون نوشتم که قالب کامل هر سایت رو همراه با تمام فایل‌هاش ذخیره می‌کنه تا بتونید به صورت آفلاین استفاده کنید!
اگر دوست دارید پروژه رو حمایت کنید، لطفاً ستاره بدید.
حمایت شما انگیزه‌مونه!

https://github.com/mehdi-jahani/web_template_saver

@DevTwitter | <Mehdi Jahani/>
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 من این سئوال را مطرح کردم و جواب لاراول داد.

@TheRaymondDev
Forwarded from Bit Orbit 🪐 (Arya)
این مقاله/پست درباره string خیلی جاله،‌ من قبلا درباره فرق unicode با utf-8 خونده بودم، اما اینجا بیشتر درباره تاریخشون فهمیدم،

زمانی که ascii معرفی شد کلا برای حروف انگلیسی ساخته شده بود، و البته یکسری از کاراکتر‌ها و دستورات دیگه.
مثلا برای اسپیس کد 32 و مثلا برای حرف A از کد 65 داخلش استفاده میشد.
ولی کد‌های قبل 32 چی؟ اون‌ها برای دستورات استفاده میشه مثلا کد 7 برای صدای beep هست!

حالا تمامی این کاراکتر‌ها کلا توی 7 بیت قرار می‌گیرن و بیشتر نیاز ندارن.
مثلا اگه حرف z رو درنظر بگیریم، کد اسکیش میشه 122
و باینری 122 میشه 1111010 و همینطور که می‌بینید، با فقط هفت بیت حروف انگلیسی، اعداد، سیمبل‌ها و دستورات رو می‌تونم داشته باشیم،
اما کامپیوتر ها با هشت بیت کار می‌کنند، پس پیاده سازی ascii که داخل کامپیوتر یک بیت اضافه‌ای به ما میده!(آخرین بیت سمت چپ) پس از کد 128 تا 255 برای هیچکاری استفاده نمیشه داخل تیبل ascii

اینجاست که شرکت‌ها و برنامه نویس ها تصمیم می‌گیرن اون بیت آخر رو برای کار های خودشون استفاده کنند.
همچنین هر زبانی مثلا یونانی از برای خودش یه کد پیج داشته
مثلا توی بعضی از سیستم عامل ها از کد 130 برای کاراکتر é استفاده میشده، و یه ورژن دیگه‌ای از همون سیستم عامل(DOS) از این کد برای کاراکتر ג استفاده میشده.
اینم باید بگم که همه قبول کردن که تمامی کد های زیر 128 دست نخورده بمونه خوشبختانه.
اینکه کدهای بالای 128 نماینده چه کاراکتری باشه بستگی داره به اینکه از چه code page استفاده می‌کردن. مثلا code page 862 در اسرائیل استفاده میشده و 737 در یونان.
حالا سیستم عامل DOS از کلی کد پیج ساپورت می‌کرده، ولی همزمان نمیشده توی یک فایل تکست از دو زبان استفاده کنی.


حالا عجیب‌تر اینکه این سسیتم توی زبان هایی مثل چینی بدرد نمی‌خوره، چون خب از 'حرف' استفاده نمی‌کنند و کاراکترهاشون نماده و هزاران کاراکتر دارند،
پس توی 8 بیت جا نمی‌شن. خب اینا چیکار کردن؟ از چیزی به اسم DBCS استفاده کردن این یعنی double bytes character set
درواقع برای پیاده‌سازی زبان چیزی باید تعداد بایت ها رو دو برابر می‌کردن،
این خودش یه مشکلی داره، اینکه تایپ یک کاراکتر ساده‌ست(حرکت رو به جلو) اما اگه بخای به عقب برگردی، این یه چالشه، چون نمی‌دونی کاراکتری که تایپ کردی یک بایتی بوده یا دو بایتی.
تا اینجا انچنان مشکلی نداشتیم، اما وقتی پای اینترنت به کامپیوتر‌ها باز شد، دیگه اینجا بود متن‌ها توی سیستم‌های مختلف به خوبی کار نمی‌کردند. و unicode اختراع شد.

به صورت خلاصه unicode به ازای هر کاراکتری یک کد داره، که بهش میگن character set، یونیکد طوری ساخته شده که حتی اگه در آینده‌هم کاراکتری و یا زبانی اختراع بشه، با unicode میشه یک کد منحصر بفرد بهش داد.
مثلا برای کاراکتر A از کد U0041 استفاده میشه،
و یا برای مثال U+0048 U+0065 U+006C U+006C U+006F. میشه Hello.
این کد‌ها هگزا دسیمال هستند.


اوکی حالا سوال اینجاست که ما برای هرکاراکتری یک کد در نظر گرفتیم، اوکی خب چطوری روی هارد قراره ذخیره‌ش کنیم؟
در حالت اول و خب خیلی ساده میشه اکثر کد ها رو داخل 16 بیت دخیره کرد، اما دو مشکل وجود داره:
اول اینکه فضای بیشتری برای ذخیره می‌گیره،
دوم اینکه خب اینهمه تکست که از قبل نوشته شده، یکی باید همه اونها رو تبدیل کنه.
یا شاید یه بتونیم الگوریتم backward comaptible ایجاد کنیم.

اینجاست که جادوی utf-8 که یک encondig هست میاد وسط،
توی utf-8 از 0 تا 127 توی همون 8 بیت ذخیره می‌شه
و چیزی که به فضای بیشتری نیاز داره چی؟
وقتی کاراکتری بیشتر از 127 (یعنی نیاز به بیش از 7 بیت) نیاز داشته باشه، UTF-8 از چند بایت استفاده می‌کنه:
بایت اول یه "الگو" داره که نشون می‌ده این کاراکتر چند بایتیه، و بایت‌های بعدی با 10xxxxxx شروع می‌شن.
اینطوری کامپیوتر می‌فهمه این یه کاراکتر چندبایتیه و چطوری باید رمزگشایی‌ش کنه.
Forwarded from Linuxor ?
حقوق شما توی شرکت به اندازه ریسکیه که اگه شرکت شما رو اخراج کنه باهاش می‌تونید یه شرکت کپی یا رقیب همون شرکت بسازید.

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

@Linuxor
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 در یک کلام، از چه فریم ورک فول استک استفاده کنم؟

جواب : لاراول

@TheRaymondDev
اسکریپت ارسال پیام انبوه تلگرام با پایتون

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

https://github.com/mehdi-jahani/telegram_message_sender

@DevTwitter | <Mehdi Jahani/>
Forwarded from Accio
I'd also be happy to hear any suggestions/ideas you might have @ke1vans
Forwarded from a pessimistic researcher (Kc)
اگر اشتباه نکنم، تبلیغ خلاقانه‌ی neptune.ai توی ICML امسال بود. و اگر احیانا نکته عکس رو نگرفتید بهتون تبریک میگم! مسیر بسیار درستی رو در آکادمیک دارید پیش میرید!
سیستم پرامپت مدل GPT-5 رو قرار دادم روی گیت هاب
https://github.com/alipyth/GPT-5-systemprompt

@DevTwitter | <Mr.J/>
بخش گذر از تحریم در ویکی پارچ به‌روز شد.

سرویس dynx به این صفحه اضافه شده که می‌تونید به سادگی ازش برای رفع تحریم ها استفاده کنید. این سرویس ارائه دهنده DNS از کیفیت خوبی برخورداره.

https://wiki.parchlinux.com/fa/anti403

@ParchLinux
Forwarded from Armon technical logs (armon Taheri)
کمال گرایی
عمل‌گرایی
نتیجه گرایی
بدهی فنی
اگر یک زمانی رلیز پارچ تاخیر خورد به این علته.

هر پنج دقیقه دکل رو خاموش می‌کنن در برق صرفه‌جویی بشه😂




@SohrabContents
Forwarded from Md Daily (Mahan)
اگه دنبال مجموعه ابزارهایی هستید که موقع توسعه کارتون رو سریع تر کنن، پس حتما dev tools رو امتحان کنید :)

مجموعه از ابزار های مختلفیو مثل :

- JSON Viewer

- QR Code Generator

- Markdown

- CRON Calculator

- Color Palette Generator

و .... رو با تمرکز روی privacy در اختیارتون میذاره.

ترکیب این سایت با CyberChef که به چاقوی سوئیسی سایبری معروفه میتونه خیلی کمک کننده باشه.

🌐 https://dev-tool.dev/


🌐 https://gchq.github.io/CyberChef/


---

💡 مثل همیشه کنجکاو بمونید :)

🆔 @MdDaily
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Linuxor ?
وقتی پروژه ای داری که از MySQL استفاده می‌کنه دوتا چیز رو حتما قبل از انتشار اپلیکیشن یا سایتت چک کن
یکی محدودیت های دیفالت مثلا لاگا و کانکشن ها، بافر و کش و ...

SHOW VARIABLES;

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

SHOW PROCESSLIST;


@Linuxor