DevTwitter | توییت برنامه نویسی – Telegram
DevTwitter | توییت برنامه نویسی
23.6K subscribers
4.36K photos
357 videos
6 files
4.1K links
توییت های برنامه نویسی و طراحی وب :)

@dvtwi

Hashtags:
devtwitter.t.me/5

DevBooks Channel:
https://news.1rj.ru/str/+AYbOl75CLNYxY2U0

Github:
https://github.com/DevTwitter

X:
https://x.com/devtwittir
Download Telegram
اگر می خواهید در مصاحبه های برنامه نویسی سوال های بک اند فرانت اند و انواع استک جواب دهید این اپلیکیشن ها در موبایل‌تان نصب و مطالعه کنید
javanoscript interview
Front-end interview
frontend QA interview
که سومی سوال جواب تمام زبان ها فریم ورک ها و تکنولوژی های،برنامه نویسی داره
حتی سومی من چک کردم مثلا postman bi و... هم داره
react.js interview
typenoscript Quiz

@DevTwitter | <Pooria AshkevarVakili/>
🔥28👎5👍4🤣1
فریم ورک ویو جی اس ورژن 3.5 متشر کرد و در این ورژن یک سری قابلیت و بهبود های خوبی شاهد هستیم و در این پست به صورت کامل این تغییرات بررسی میکنیم.

https://code-news.com/p/vue-3-5-updates

@DevTwitter | <Code News/>
👍214🔥4👎3
‏اگه به برنامه نویسی RUST علاقمند هستید و دوست دارید باهاش کارهای redteam انجام بدید، این مخزن میتونه کمکتون کنه.
در این مخزن یسری تکنیکهایی که در تیم های قرمز یا توسعه ی بدافزار استفاده میشه، در زبان RUST پیاده سازی و آموزش داده شده.

https://github.com/Whitecat18/Rust-for-Malware-Development

@DevTwitter | <OnHexGroup/>
👍24👎7🤣5
This media is not supported in your browser
VIEW IN TELEGRAM
این ریپو یک search engine اپن سورس به اسم MindSearch هست که بر اساس فریمورک Multi-agent هست و قابل رقابت Perplexity Pro و SearchGPT. میتونید سیستم سرچ خودتون را لوکال و یا روی سرور خودتون دیپلوی کنید.
https://github.com/InternLM/MindSearch

@DevTwitter | <Mehdi Allahyari/>
👍27🔥4👎1
#به_سوی_گا

از اینترنت فقط یه خاطره مونده

@DevTwitter
👍124👎43🤣15🔥1
بیاید گپمون حرف بزنیم یکم
👍31👎12🤣5
عه راستی ما برنامه نویسا درون گراییم، گپ نمیزنیم...
🤣228👎15👍11🔥5
چرا PHP نسبت به بقیه زبان‌ها کندتر است و راهکار چیست؟ - قسمت اول

پی اچ پی در مقایسه با زبان‌هایی مثل GO کندتر است. دلیلش این است که هر درخواست PHP یک فرآیند جدید را شروع می‌کند. این فرآیند باید از ابتدا تجزیه و اجرا شود و سپس خاموش شود. یعنی هر پروسه به طور کامل بسته شده و از حافظه خارج می‌شود.

این یعنی PHP نمی‌تواند چیزی از پردازش‌های قبلی را در حافظه نگه دارد و باید برای هر درخواست جدید از صفر شروع کند. نتیجه این کار، در تعداد درخواست‌های بالا، عملکرد کندتر و مصرف بیشتر منابع سرور است. این روش را "Request-Response" می‌نامند.

اما راهکار برای وردپرس و PHP چی بود؟

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

@DevTwitter | <Farhad Safari/>
👍63🤣35👎8
با این کتاب‌خونه، QR Code های جذاب بسازید:

https://github.com/zhengkyl/qrframe

@DevTwitter | <معین/>
👍29🔥12👎1
زبان RSQL مخفف Restricted SQL برای فیلتر کردن داده‌ها در APIهای RESTful استفاده میشه

اگر نیاز به پیاده سازی فیلتر های RQL/RSQL/FIQL
در پایتون روی Django REST framework داشتید

این کتابخانه را یک نگاهی داشته باشید
https://github.com/njoyard/django-rql-filter

@DevTwitter | <MehrdadLinux/>
👍97🤣4
DevTwitter | توییت برنامه نویسی
چرا PHP نسبت به بقیه زبان‌ها کندتر است و راهکار چیست؟ - قسمت اول پی اچ پی در مقایسه با زبان‌هایی مثل GO کندتر است. دلیلش این است که هر درخواست PHP یک فرآیند جدید را شروع می‌کند. این فرآیند باید از ابتدا تجزیه و اجرا شود و سپس خاموش شود. یعنی هر پروسه به طور…
چرا PHP نسبت به بقیه زبان‌ها کندتر است و راهکار چیست؟ قسمت دوم


کندی PHP برای شرکت‌ها و سازمان‌های بزرگی مانند فیسبوک به یک چالش جدی تبدیل شده بود، زیرا هر فرآیند از ابتدا شروع می‌شد و این بار اضافی برای سازمان‌ها توجیه‌پذیر نبود. به همین دلیل فیسبوک تصمیم گرفت معماری HHVM را طراحی کند، که کد PHP را به بایت‌کد تبدیل کرده و به‌صورت Just-In-Time (JIT) کامپایل می‌کرد.

حالا JIT برای PHP چه کاری انجام می‌دهد؟
برای توضیح بهتر، تصور کنید یک تعمیرکار یخچال برای تعمیر روزانه در منازل، همه ابزارهای خود را با خودش ببرد. این کار نه تنها او را خسته می‌کند، بلکه باعث مصرف بیش از حد انرژی و منابع هم می‌شود.

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

و jit دقیقاً همین کار را برای کامپایل یک برنامه انجام می‌دهد؛ یعنی هر بخش از کد فقط زمانی که به آن نیاز باشد، کامپایل و اجرا می‌شود.

فیسبوک با این روش تونست یک پلتفرم بزرگ رو در اون زمان با php که تقریبا در زبان php ناممکن به نظر میرسید رو عملی کنه

@DevTwitter | <Farhad Safari/>
👍48🤣9👎3
یک رایت‌آپ خیلی خوب در مورد Exploit کردن CORS که بعضی از use caseهای آن خیلی جذاب هستند مثل به سرقت بردن توکن‌های CSRF قبل از دسترسی بهEndpointهای حساس که با Exploit کردن CORS همراه شده است.
https://outpost24.com/blog/exploiting-permissive-cors-configurations/

@DevTwitter | <Vahid Nameni/>
👍9🔥5
از بدی‌های آنریل اینه که بدون اعلام قبلی یهو یه کامیت دراپ میشه کامل یه چیزی رو شخم میزنه، مثل این مورد که بخاطر تغییر Layout دیتای OpenXR باعث بریک شدن API هندترکینگ آنریل شده. ۳ماهه میدونم و هنوز وقت نشده تغییرات رو اعمال کنم و Preview 1 دیروز معرفی شد
http://github.com/EpicGames/UnrealEngine/

@DevTwitter | <Mamadou On GameDev/>
🤣23👍5
یه دولوپر بعد از ۳۰ سال کار با ویندوز به لینوکس مهاجرت کرده، سر چی؟
ماجرا اینه که شش تا کارت گرافیک ۲۴ گیگابایتی واسه اجرای مدل‌های AI میخره و یکی یکی به سیستم اضافه میکنه، رو ویندوز افت عملکرد زیادی میبینه، یعنی از کل ظرفیت کارت‌ها نمیتونه استفاده کنه.
بعد میاد لینوکس رو به شکل مجازی داخل ویندوز اجرا میکنه و دوباره تست میگیره که کمک زیادی نمیکنه، نهایتا تصمیم میگیره یه لینوکس مستقیما نصب کنه.
بعد از تغییر ویندوز به لینوکس شاهد افزایش ۳ برابری سرعت اجرای وظایف میشه و سیستمش هم به حافظه بیشتری دسترسی پیدا میکنه.
سرعت بالاتر معنیش اینه که میتونه مدل‌های بزرگتر رو هم اجرا کنه، کاری که داخل ویندوز نمیتونست.
در کل ماجرای کاربر Inevitable-Start-653 هم دوست داشتید میتونید بخونید، جالب هست.
https://www.reddit.com/r/Oobabooga/comments/1b1pm0m/after_30_years_of_windowsive_switched_to_linux/

@DevTwitter | <Soroush Ahmadi/>
🔥87👍2611👎5
این سایت futureme.org‎ عالیه. مخصوصاً اگه در مسیری هستین که نسبت به آینده مرددین.

می‌تونین به خودِ آینده‌تون ایمیل بزنین (خصوصی/عمومی، ۶ ماه، یک سال یا ده بیست سال دیگه) و می‌رسه. نامه‌های بامزه عمومی بقیه رم داره (مثل این بعد ۱۷ سال) و نیز آرشیو خصوصی خودتون رو هم!

@DevTwitter | <لوکوموتیو/>
👍29🔥4🤣2
اکثر apikey هایی که روی تارگت پیدا میشه چیزایی چرت و بی ارزش هستند ولی گاها از توشون چیز خوبم در میاد
این گیت در مورد هر سرویس و نحوه تستش یه توضیح داده
اگه ناشناخته بودن براتون حتما تست کنید
https://github.com/streaak/keyhacks

@DevTwitter | <Arshiya/>
🔥18👍2👎1
‏اگر میخواید پروسه ساخت یک چت بات با RAG رو فقط تبدیل به چند تا API CALL کنید میتونید از API اوپن سورسی که نوشتم استفاده کنید. همه چی از embeding تا ساخت Chat completions اتوماتیک انجام میشه
https://github.com/xmannii/Maux-RAG-API

@DevTwitter | <Mani/>
👍13🤣3👎1
This media is not supported in your browser
VIEW IN TELEGRAM
کمپانی Meta ی مجموعه مدل به اسم MovieGen که ساخت ویدیو را متحول کرده. Movie Gen چهار قابلیت ارائه می‌دهد: تولید ویدیو، ویدیوهای شخصی‌سازی شده، ویرایش دقیق ویدیو و تولید صدا. کیفیت ویدیوها واقعا بالاست بخصوص درآوردن نور و فیزیک توی ویدیو واقعا سخته.

https://ai.meta.com/blog/movie-gen-media-foundation-models-generative-ai-video/

@DevTwitter | <Mehdi Allahyari/>
👍10🔥9
سوال مصاحبه: چطور میشه بررسی کرد که نام کاربری بین یک میلیارد کاربر تکراری نباشه؟

این روزها با رشد سریع کسب‌وکارها، ثبت‌نام کاربرهای جدید هم به یه چالش تبدیل شده. یکی از مهمترین بخش‌ها اینه که مطمئن بشیم هر کاربر یه نام کاربری منحصربه‌فرد داره. اخیراً در مورد این موضوع یه تحقیقی کردم و دو راه‌حل خوب پیدا کردم: استفاده از حافظه Redis و فیلتر Bloom. هر دو کمک میکنن سریع و بدون فشار زیاد به سیستم، نام کاربری جدید رو بررسی کنیم.

مشکل کجاست؟
اگه بخوایم از روش‌های سنتی و دیتابیس برای بررسی نام کاربری استفاده کنیم، با زیاد شدن کاربرها سیستم کند میشه و با مشکلات زیر روبه‌رو میشیم:
- کندی در درخواست‌ها
- فشار زیاد به دیتابیس، که باعث مصرف زیاد منابع میشه.
- مشکل در مقیاس‌پذیری، یعنی وقتی تعداد درخواست‌ها زیاد بشه، سرور نمیتونه همه رو مدیریت کنه.

استفاده از Redis: سریع ولی پرمصرف
ردیس Redis کمک میکنه که بررسی نام کاربری خیلی سریع بشه، چون داده‌ها رو توی حافظه ذخیره میکنه. اما این روش یه مشکل بزرگ داره: حافظه زیادی مصرف میکنه. مثلاً برای یک میلیارد نام کاربری به 15 گیگابایت حافظه نیاز داریم! که تو سیستمهای بزرگ، خیلی پرهزینه و غیرعملی میشه.

فیلتر Bloom: ساده، بهینه و کم‌مصرف
حالا بریم سراغ فیلتر Bloom. این فیلتر یه روش خیلی بهینه‌تره که فضای حافظه خیلی کمتری استفاده میکنه. برای همون یک میلیارد نام کاربری، فقط 1.67 گیگابایت حافظه نیاز داره!

اما فیلتر Bloom چیه؟ بذار یه مثال ساده بزنم:
فرض کن یه کیف داری که یه سری جیب کوچیک داره. هر بار که میخوای یه نام کاربری جدید رو ذخیره کنی، یه سری کلید (یعنی همون الگوریتمهای هش) بهت میگه تو کدوم جیب‌های کیف بذاری. بعد اگه بخوای ببینی اون نام کاربری قبلاً ذخیره شده یا نه، فقط کافیه جیب‌های مشخص شده رو چک کنی. اگه تو هر جیب چیزی باشه، یعنی احتمالاً اون نام کاربری قبلاً استفاده شده. ولی اگه یکی از جیب‌ها خالی باشه، مطمئنی که اون نام کاربری وجود نداره.

با این روش:
- حافظه کمی استفاده میشه
- سرعت بررسی خیلی بالاست

البته یه نکته کوچیک داره: بعضی وقتا ممکنه به اشتباه بگه که یه نام کاربری هست در حالی که نیست (این همون خطای مثبت یا False Positive هست)، ولی در اکثر مواقع این خطا قابل چشم‌پوشیه.

نتیجه‌گیری
اگه با سیستمهایی کار میکنید که میلیون‌ها یا حتی میلیاردها کاربر دارن، فیلتر Bloom یه راه‌حل خیلی بهینه و هوشمند برای بررسی یونیک بودن نام کاربریه. هم توی حافظه صرفه‌جویی میکنه، هم سرعت بررسی رو بالا نگه میداره.

@DevTwitter | <Massimo Dev/>
1👍99🔥14👎92
اگر مثل من با Django REST Framework (DRF) کار میکنی و دنبال راهی برای سریعتر کردن APIهات هستی، حتماً باید drf-cache رو امتحان کنی.

این ابزار چیکار میکنه؟

با کش کردن درخواست‌های API به شما کمک میکنه تا فشار روی دیتابیس کمتر بشه و سرعت پاسخ‌دهی APIها به‌طور چشمگیری افزایش پیدا کنه

میتونی کش کردن رو برای هر ویو یا کوئری به‌طور جداگانه تنظیم کنی، این یعنی کنترل کامل روی نحوه ذخیره‌سازی و بازیابی داده‌ها

فوق‌العاده مفیده برای APIهای سنگین یا پرتقاضا که نیاز به بهینه‌سازی دارن

اگه میخوای کارایی APIهات رو بهبود بدی و لود سرورت رو کم کنی، drf-cache یکی از بهترین گزینه‌هاست!

پ.ن: (اگه داده‌های زیادی رو کش کنی، این میتونه حافظه سرور رو بیشتر مصرف کنه. به‌خصوص اگر کوئری‌ها یا درخواست‌ها خیلی بزرگ و پیچیده باشن و برای APIهایی که باید به سرعت اطلاعات رو به‌روزرسانی کنن (جایی که داده‌ها مرتباً تغییر میکنن)، استفاده از کش میتونه باعث بشه کاربران داده‌های جدید رو دیرتر ببینن. در این مواقع، باید خیلی هوشمندانه کشینگ رو تنظیم کنی.
و همچنین استفاده از drf-cache نیاز به تنظیمات دقیق داره، و اگر به‌درستی تنظیم نشه، ممکنه اصلاً نتونی ازش بهینه استفاده کنی یا برعکس، عملکرد رو حتی بدتر کنی.)

https://github.com/chibisov/drf-extensions

@DevTwitter | <Shima Fallah/>
👍20🔥6👎2🤣2
ترکیب وردپرس و لاراول Laravel خیلی جذابه واقعا.
اول از همه Corcel رو نصب می‌کنید و پروژه لاراول رو باهاش کانفیگ می‌کنید.
حالا وردپرس رو نصب می‌کنید و با پلاگین WordPress Pete ستش می‌کنید روی لاراول.

اینجوری یه سایت لاراولی دارید با بک‌اند وردپرس

@DevTwitter | <Pedram/>
🤣82👎16👍10🔥7