DevTwitter | توییت برنامه نویسی
33.4K subscribers
5.7K photos
469 videos
6 files
5.67K links
توییت های برنامه نویسی و طراحی وب :)

Admin:
@dvtwi

Hashtags:
devtwitter.t.me/5

DevBooks Channel:
https://xn--r1a.website/+AYbOl75CLNYxY2U0

Github:
https://github.com/DevTwitter

X:
https://x.com/devtwittir
Download Telegram
اگه شما هم مثل من دنیای برنامه‌نویسی رو با VB6 شروع کردین شاید دیدن این برای تجدید خاطره واستون جالب باشه.

یک نفر اومده خود محیط Visual Basic 6 رو دوباره ساخته، با این تفاوت که این بار برای باز کردنش دیگه به ویندوز و نصب VB6 احتیاج ندارین.

مستقیم توی مرورگر بازش می‌کنین، فرم طراحی می‌کنین، کد VB6 می‌نویسین و حتی می‌تونین برنامه رو اجرا کنین!

جالب‌تر اینکه پروژه فقط یک ظاهر شبیه VB6 نیست. یک runtime برای اجرای کد، کنترل‌های مختلف، debugger و حتی امکان import کردن بعضی پروژه‌های قدیمی VB6 رو هم داره.

برای من دیدن این صفحه یه جورایی شبیه باز کردن دوباره یکی از اولین محیط‌هایی بود که باهاش برنامه‌نویسی رو یاد گرفتم.

اگه شما هم با VB6 شروع کرده بودین، حتماً یه سر بهش بزنین

https://wieslawsoltes.github.io/VB6/

@DevTwitter | <Amir Salehi/>
❤43👎4🍌2
همه NotebookLM رو می‌شناسن، ولی بیشتر آدما هنوز مثل یه چت‌بات PDF ازش استفاده می‌کنن.
این ۸ تا پرامپت، یادداشت‌هات رو تبدیل می‌کنن به جزوه، آزمون و درس‌هایی شبیه معلم خصوصی.
پرامپت‌ها این پایینن.
این پست رو سیو کن برای بعداً.

۱. منبع
از NotebookLM این‌جا استفاده کن:
notebooklm.google.com
اول PDF، اسلاید، یادداشت، متن پیاده‌شده یا لینک یوتیوب رو آپلود کن.
بعد پرامپت‌های پایین رو یکی‌یکی بزن.

۲. جزوهٔ فوری
این را در NotebookLM قرار دهید:
از مطالب بارگذاری‌شدهٔ من، یک راهنمای کامل مطالعه تهیه کنید.
آن را بر حسب موضوع سازمان‌دهی نمایید.
برای هر موضوع این موارد را ارائه دهید:
۱. اندیشهٔ اصلی، به زبانی ساده
۲. سه نکتهٔ مهم‌تر
۳. دو خطای رایج دانشجویان
۴. دو پرسش به سبک امتحان، همراه با پاسخ
۵. یک شگرد کوتاه برای به‌خاطر سپردن
متن باید برای مبتدی روشن، و برای مرور نیز سودمند باشد.

۳. معلم سقراطی
این را در NotebookLM قرار دهید:
همچون معلم خصوصی عمل کنید.
مرا دربارهٔ مهم‌ترین مفاهیم مطالب بارگذاری‌شده بیازمایید.
با پرسش‌های آسان آغاز کنید و به‌تدریج بر دشواری آن‌ها بیفزایید.
پس از هر پاسخی که می‌دهم:
۱. بگویید چه چیزی را درست گفته‌ام
۲. آنچه را نادرست است تصحیح کنید
۳. مفهوم را به زبانی ساده توضیح دهید
۴. پرسش بعدی را طرح کنید
همهٔ پاسخ‌ها را یک‌جا ندهید.
گام‌به‌گام آموزش دهید.

۴. پیش‌بینی امتحان
این را در NotebookLM قرار دهید:
مطالب بارگذاری‌شدهٔ مرا تحلیل کنید و پیش‌بینی نمایید چه مطالبی به احتمال زیاد در امتحان می‌آید.
این موارد را ارائه دهید:
۱. پنج موضوعی که باید نخست مطالعه شوند
۲. دلیل اهمیت هر موضوع
۳. محتمل‌ترین پرسش برای هر موضوع
۴. یک پرسش دشوار برای هر موضوع
۵. نکات کلیدی که باید در پاسخ بیاید
همه چیز را از مهم‌ترین تا کم‌اهمیت‌ترین رتبه‌بندی کنید.

۵. رفع ابهام
این را در NotebookLM قرار دهید:
این مفهوم را درنمی‌یابم:
[مفهوم را اینجا بنویسید]
آن را با این شیوه‌ها توضیح دهید:
۱. یک تمثیل ساده
۲. یک مثال از جهان واقع
۳. توضیحی برای مبتدی
۴. توضیحی پیشرفته‌تر
۵. رایج‌ترین خطایی که افراد مرتکب می‌شوند
سپس مرا با سه پرسش کوتاه بیازمایید.
اگر پاسخ نادرست دادم، همچون معلم تصحیحم کنید.

۶. یافتن خلأها
این را در NotebookLM قرار دهید:
مطالب بارگذاری‌شدهٔ مرا بخوانید و خلأهای فهم مرا بیابید.
این موارد را نشان دهید:
۱. مفاهیمی که احتمالاً از قلم انداخته‌ام
۲. اندیشه‌هایی که به یکدیگر پیوند دارند
۳. نقاط ضعفی که دانشجویان معمولاً نادیده می‌گیرند
۴. سریع‌ترین راه رفع هر خلأ
۵. یک پرسش تمرینی کوتاه برای هر نقطهٔ ضعف
تمرکز بر آن چیزی باشد که باعث از دست رفتن نمره یا فراموشی بعدی موضوع می‌شود.

۷. سازندهٔ امتحان تمرینی
این را در NotebookLM قرار دهید:
از مطالب بارگذاری‌شدهٔ من یک امتحان تمرینی بسازید.
شامل این موارد باشد:
۱. ده پرسش چهارگزینه‌ای
۲. پنج پرسش پاسخ‌کوتاه
۳. سه پرسش پاسخ‌بلند
۴. یک پرسش چالشی
پس از امتحان این‌ها را بدهید:
۱. کلید پاسخ
۲. توضیح هر پاسخ
۳. موضوعی که هر پرسش می‌سنجد
۴. آنچه در صورت پاسخ نادرست باید مرور کنم
حس یک امتحان واقعی را القا کند.

۸. هم‌درس صوتی
اول از قابلیت Audio Overview استفاده کن.
بعد این را در NotebookLM قرار دهید:
مطالب بارگذاری‌شدهٔ مرا به جلسه‌ای برای مرور تبدیل کنید که بتوانم گوش دهم.
تمرکز بر این‌ها باشد:
۱. اندیشه‌های کلیدی
۲. بخش‌های مبهم
۳. محتمل‌ترین نکات امتحانی
۴. جزئیاتی که به‌آسانی فراموش می‌شوند
۵. مثال‌های کوتاهی که مطلب را در ذهن ماندگار می‌کنند
لحن، مانند دوستی دانا باشد که پیش از امتحان موضوع را شرح می‌دهد.

۹. آزمون بازآموزی
این را در NotebookLM قرار دهید:
می‌خواهم موضوعی را با واژگان خود شرح دهم.
پس از توضیح من، پاسخم را داوری کنید.
بگویید:
۱. چه چیزی را درست گفته‌ام
۲. چه چیزی را از قلم انداخته‌ام
۳. چه بخشی ناروشن بوده است
۴. چه باید بیفزایم
۵. روایتی بهتر از توضیح من
سپس یک پرسش پیگیر بپرسید تا معلوم شود آیا واقعاً مطلب را دریافته‌ام.

۱۰. کل سیستم
بهترین روش استفاده از NotebookLM برای درس خوندن اینه:
مطالبت رو آپلود کن.
یه جزوه بساز.
کوییز بده.
نقطه‌ضعفات رو پیدا کن.
یه امتحان تمرینی بساز.
وقتی داری راه می‌ری یا توی راهی، از Audio Overview استفاده کن.
بعد موضوع رو خودت توضیح بده.
این‌جوریه که یادداشت‌هات دیگه اون‌جا خاک نمی‌خورن و شروع می‌کنن به یاد دادنت.

@DevTwitter | <Yarad/>
❤22🍌15👍4
تا حالا اسم Streaming SSR به گوشتون خورده؟

فرض کنید وارد یک سایت می‌شید و منتظر می‌مونید تا کل صفحه آماده بشه و بعد یک‌جا نمایش داده بشه.

این حالت معمولی SSR هست.

اما در Streaming SSR، صفحه لازم نیست کامل آماده بشه تا نمایش داده بشه.

بخش‌هایی که زودتر آماده شدن، همون لحظه برای کاربر ارسال و نمایش داده می‌شن و بقیه صفحه کم‌کم میاد.

مثلاً یک صفحه از سایت فروشگاهی رو تصور کنید:

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

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

چرا این قضیه تو seo هم مهمه؟

چون یکی از مزیت‌های SSR اینه که محتوای مهم صفحه می‌تونه از همون ابتدا در HTML در دسترس باشه. Streaming SSR می‌تونه کمک کنه صفحه سریع‌تر شروع به نمایش محتوا کنه، اما به این معنی نیست که هر سایتی با Streaming SSR حتماً سئوی بهتری خواهد داشت.

در نهایت باید ببینیم محتوای مهم، لینک‌ها و المان‌های اصلی صفحه چطور در HTML تولید و در اختیار کرالر قرار می‌گیرن.

@DevTwitter | <Amin Falahan/>
🔥37❤12🍌3
کپچای فارسی، بدون وابستگی به CDN خارجی
پکیج capjs-local-persian-pro رو روی npm منتشر کردم؛ یک فورک از پروژهٔ متن‌باز Cap، با رابط فارسی، چیدمان راست‌به‌چپ و امکان میزبانی فایل‌های موردنیاز روی زیرساخت خودتون.
به‌جای معماهای تصویری، این ویجت از چالش محاسباتی SHA-256 Proof of Work استفاده می‌کنه؛ با WebAssembly برای سرعت بیشتر و Web Workers برای اجرای محاسبات خارج از رشتهٔ اصلی رابط کاربری.
چند قابلیت کاربردی:
- رابط فارسی و RTL
- فایل‌های WASM همراه پکیج و بدون نیاز به CDN در نسخهٔ اصلی
- امکان شخصی‌سازی ظاهر و متن‌ها
- اجرای نمایشی یا برنامه‌ای
- رویدادهای پیشرفت، موفقیت و خطا
هدفم این بود که استفاده از Cap در پروژه‌های فارسی و شبکه‌هایی با دسترسی محدود به سرویس‌های خارجی راحت‌تر بشه.
این پکیج بخش کلاینت رو فراهم می‌کنه؛ اعتبارسنجی توکن همچنان باید در بک‌اند و با API سازگار با Cap انجام بشه.
npm و راهنمای نصب:
https://www.npmjs.com/package/capjs-local-persian
کد منبع:
https://github.com/mohammadim48/capjs-local-persian


@DevTwitter | <Mohammad Mohammadi/>
👎19❤12👍4
مثل اینکه مایکروسافت بدون اعلام رسمی مصرف رم ویندوز ۱۱ را در آپدیت Windows 11 2026 (نسخه 26H2) کاهش داده و خیلی از کاربرها میگن بعد از نصب این نسخه هم سرعت ویندوز بیشتر شده هم مصرف رم کاهش پیدا کرده.

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

@DevTwitter | <MohammadMSFT/>
❤78🍌18👍6
This media is not supported in your browser
VIEW IN TELEGRAM
️تیم گوگل توی ژاپن یه کیبورد خیلی عجیب معرفی کرده...

کلیدهای این کیبورد ثابت نیستن و روی یه تسمه نقاله حرکت میکنن و میان زیر دستتون.

مدل Gboard Conveyor Belt فقط ۲۹ تا کلید داره و حتی یه حالت سرعت بالا هم براش گذاشتن.

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

https://github.com/google/mozc-devices/tree/main/mozc-conveyorbelt

@DevTwitter | <Abbas Bahadori Pour/>
👎61🍌38👍16
این ویدیو توضیح خوبی درباره Jev می‌ده.

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

ویدیو هم کوتاه و جمع‌وجوره و توضیحات خوبی داره:
https://youtu.be/YGgNBcIgI4s

@DevTwitter | <Ali Rashedi/>
👍25🍌7❤3
تو اوپن‌روتر یه مدل جدید به اسم Ling 3.1 Flash رایگان شده. هوشش هم بالاست؛ حتی از مدل‌های رایگان دیگه و DeepSeek v4.1 flash هم بهتره. یه سر بهش بزنید شاید به دردتون بخوره.

https://openrouter.ai/inclusionai/ling-3.1-flash

@DevTwitter | <Hanieh Khalesi/>
❤30👍5👎2
ابزار text-to-cad به agent قدرت مدل‌سازی CAD می‌ده

یه پروژه open source که به agent هایی مثل Codex یاد می‌ده از روی prompt مدل سه‌بعدی و CAD بسازه.
سازنده‌ش، Jake Fitzgerald از اولش روی X پروژه رو معرفی کرده و تا الان چند نسخه جدید هم داده، از جمله v0.5.
بحث‌های زیر پست‌هاش هم بین آدم‌های 3D و CAD داغه.

لینک گیتهاب:
https://github.com/earthtojake/text-to-cad

@DevTwitter | <Diego Jr/>
👍14❤4🍌2
This media is not supported in your browser
VIEW IN TELEGRAM
اگه خواستید hermes رو به سخت‌افزار esp32 وصل کنید که از این گجت‌های tamagotchi بسازید، یکی یه sdk درست کرده که کار رو راحت میکنه!

به عنوان یه دیوایس جدید pair میشه و ایجنت میتونه اسپیکر، میکروفون، LED و سنسورهای دستگاه رو کنترل کنه. یه simulator هم باهاش میاد که firmware رو قبل از نصب باهاش تست کنید!

http://github.com/Adolanium/hermes-gadget-sdk

@DevTwitter | <Amir/>
❤13🍌2👍1
یه مدت بود واسه PRهام به ایجنتم می‌گفتم به‌جای توضیح، اسکرین‌شات قبل و بعد بذاره. دوستان دیدن گفتن به ما هم بده منم تبدیلش کردم به یه Agent Skill.

npx skills add ArefMozafari/pr-evidence

https://github.com/ArefMozafari/pr-evidence

@DevTwitter | <Rf/>
🍌29👍12❤1
این سایته که گذاشتم یه مجموعه بزرگ از پرامپت‌های آماده برای ساخت محتوای بصری با AI داره،
مثل: تصاویر و ویژوال‌های حرفه‌ای
موکاپ تبلیغات
تصویرسازی بک‌گراند
ایده‌های طراحی
گفتم شاید بدردتون بخوره
آدرس سایت:
https://onepromptdesign.com/

@DevTwitter | <خانم_زاده/>
❤24👎2🍌2
گوگل با معرفی مدل Nano Banana 2.1 تولید تصاویر 4K را ۵۰ درصد ارزان‌تر کرد

مدل تصویرساز جدید گوگل به نام Nano Banana 2.1 بر پایه جمینای ۳.۶ فلش معرفی شد. این ابزار می‌تواند خروجی‌هایی شفاف تا وضوح 4K تولید و با اتصال به موتور جستجو، اشیا و کاراکترها را در طول مراحل ویرایش بدون تغییر ظاهر حفظ کند.

بزرگ‌ترین مزیت این مدل برای توسعه‌دهندگان، کاهش ۵۰ درصدی هزینه‌ها و نصف‌شدن تعرفه پردازش تصاویر در سرویس‌های پرداختی است. این ابزار هم‌اکنون به اپلیکیشن جمینای، موتور جستجوی گوگل و ابزارهای توسعه هوش مصنوعی اضافه شده است.

@DevTwitter | <Digiato/>
👍17❤7🔥3
برای اینکه فارسی‌نویسی توی Zed کمتر دردسر داشته باشه، یه پچ ساده براش آماده کردم

چیز پیچیده‌ای نیست؛ فقط خواستم تا فیکس این مشکل به‌صورت رسمی، کارتون راه بیفته

https://github.com/AmirAliManzar/Zed-RTL

@DevTwitter | <Amir Ali Manzar/>
👍25🍌6❤5
یک ریپو ساختم و داخلش Skillهایی که به نظرم کاربردی و کارآمد بودن رو جمع‌آوری، طراحی و دسته‌بندی کردم.

یکی از مشکلاتی که بعضی وقت‌ها موقع کار با چت‌بات‌ها داریم، ساخت PDF با کیفیت بالاست؛ مثلاً فونت فارسی، راست‌چین بودن متن، صفحه‌بندی و ظاهر نهایی فایل ممکنه اون چیزی نباشه که انتظار داریم.

یکی از Skillهای این ریپو دقیقاً برای همین موضوع ساخته شده؛ هدفش اینه که وقتی از چت‌بات می‌خوایم PDF بسازه، خروجی نهایی از نظر ساختار، فونت، صفحه‌بندی و کیفیت بصری استانداردتر و حرفه‌ای‌تر باشه.

البته این تنها Skill ریپو نیست و به‌مرور Skillهای کاربردی دیگه‌ای هم بهش اضافه می‌کنم.

https://github.com/mehranqadirian/skills

@DevTwitter | <Mehran Ghadirian/>
🍌24🔥17❤2
یه پچ برای zcode نوشتم:

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

نصبش فقط اجرای یه فایله:

github.com/Morteza-NW/rtl-zcode

@DevTwitter | <Morteza/>
👍18🍌5❤2
این ریپو رو توی گشت‌وگذارام پیدا کردم و به نظرم می‌تونه منبع خیلی خوبی برای آماده شدن برای مصاحبه‌های System Design باشه.

محتواش به شکل نسبتاً ساختاریافته‌ای مفاهیم و سناریوهای مختلف System Design رو پوشش می‌ده و می‌تونه برای مرور مباحث، آشنایی با الگوهای رایج و تمرین حل مسئله قبل از مصاحبه مفید باشه.

اگه دارید برای مصاحبه‌های Backend یا Software Engineering آماده می‌شید، به نظرم ارزش یه نگاه انداختن رو داره، مخصوصاً برای اینکه یه دید کلی از موضوعاتی که معمولاً توی مصاحبه‌های System Design مطرح می‌شن پیدا کنید.

https://github.com/liquidslr/system-design-notes

@DevTwitter | <Reza Jafari/>
❤7🍌6👍3
هوش مصنوعی در دیتابیس

اگر میتونستی با یک جمله ساده به PostgreSQL بگی: «فقط تیکت‌هایی رو پیدا کن که مشتری عصبانیه» چی میشد؟؟

با pgjev می‌توانید مفهوم زبان طبیعی را مستقیماً وارد Queryهای PostgreSQL کنید.

یعنی به‌جای اینکه برای هر سناریو کلی Regex، Rule یا منطق پیچیده برای تحلیل متن بنویسید، می‌توانید چیزی شبیه این داشته باشید:

SELECT *
FROM tickets
WHERE status = 'open'
AND jev(tickets, 'the customer is angry');



این پروژه قابلیت‌هایی مثل filtering، classification، scoring و probability را در اختیار PostgreSQL قرار می‌دهد.
به نظرم جذاب‌ترین بخش ماجرا این است که AI قرار نیست جای SQL را بگیرد؛ بلکه می‌تواند در کنار SQL، برای درک بخش‌های غیرساختاریافته داده استفاده شود.


https://pgjev.com

@DevTwitter | <Milwad Khosravi/>
1❤55👍18🍌7
وقتی Redis به خواب می‌رود، صندوق ورودی کاربر تبدیل به میدان جنگ می‌شود!️

تصور کنید سیستم نوتیفیکیشن شما با سرعت بالا در حال ارسال پیامک‌ها و ایمیل‌های دوره‌ای است. برای اینکه به یک کاربر در بازه زمانی کوتاه پیام تکراری نفرستید (Deduplication & Suppression)، تصمیم می‌گیرید کلیدهای سایلنت را با یک TTL ساده داخل Redis ذخیره کنید.
همه چیز سریع، سبک و عالی به نظر می‌رسد… تا زمانی که:
رم ردیس پر می‌شود و کلیدها Evict می‌شوند.
سرویس به هر دلیلی ری‌استارت می‌شود یا با خطای 503 / Network Timeout مواجه می‌شوید.
یا یک Flush ناخواسته رخ می‌دهد.

نتیجه؟
تمام سد‌های دفاعی برداشته می‌شوند و صدها هزار پیامک یا ایمیل تکراری در عرض چند دقیقه روی سر کاربر آوار می‌شود؛ هم هزینه‌های زیرساخت سر به فلک می‌کشد و هم تجربه کاربری نابود می‌شود!

چرا اتکای ۱۰۰٪ به این‌مموری (In-Memory) خطرناک است؟
ردیس فوق‌العاده سریع است، اما ماهیت آن Ephemeral (فرّار) است. در سیستم‌های حساس به اسپم، شما نه تنها نیاز به سرعت دارید، بلکه به پایداری داده (Durability) و ردیابی (Auditability) نیاز دارید:
قابلیت اتکا و ماندگاری (Durability): دیتابیس تضمین می‌کند که سابقه و وضعیت سرکوب پیام‌ها (Suppression Policies) پایدار است و با کرش سرویس دود نمی‌شود و به هوا نمی‌رود.
ثبت وقایع و لاگ سایلنت‌ها (Audit Logs): وقتی پیامی ارسال نمی‌شود، باید دقیقاً مشخص باشد چرا، به چه دلیلی و طبق کدام Rule سرکوب شده است تا پشتیبانی و مانیتورینگ کور نمانند.

معماری برنده: ترکیب هوشمندانه دیتابیس و ردیس (Hybrid Pattern)
به جای حذف کامل ردیس یا تحمیل بار سنگین کوئری به دیتابیس، راهکار استاندارد پیاده‌سازی یک معماری ترکیبی و مقاوم است:
۱. دیتابیس به عنوان Source of Truth: سیاست‌های سایلنت، لاگ‌ها و وضعیت‌های ماندگار در RDBMS ذخیره و ایندکس‌گذاری دقیق می‌شوند.
۲. ردیس به عنوان Gatekeeper (سد دفاعی اول): ترافیک بالا در سطح میلی‌ثانیه با دستورات اتمیک مثل SET NX EX چک می‌شود.
۳. مکانیزم Fallback و تاب‌آوری: در صورت قطعی یا تایم‌اوت ردیس، با کمک Circuit Breaker و Local Cache (کش موقت درون سرویس) جلوی طوفان پیام‌های تکراری گرفته شده و سیستم به شکل کنترل‌شده با دیتابیس همگام می‌ماند (Graceful Degradation).

درس اصلی معماری سیستم:
در سرویس‌های حساس، هیچ‌وقت کلید جلوگیری از خسارت مالی یا اسپم کاربر را فقط در دست داده‌های فرّار قرار ندهید؛ سیستم باید برای لحظه وقوع خرابی (Design for Failure) طراحی شده باشد.

@DevTwitter | <AliReza Ghenaatiyan/>
🔥30❤6👎3