چند وقت پیش مسئولیت مهاجرت یکی از پروژههای قدیمی از NET Core 3. به NET 8. را بر عهده داشتم.
راستش اول فکر میکردم فقط کافی است نسخه Framework را تغییر بدهم و چند پکیج را آپدیت کنم، اما خیلی زود فهمیدم داستان به این سادگی نیست.
بعد از ارتقا، با مشکلات مختلفی روبهرو شدم:
- ناسازگاری بعضی از پکیجها
- تغییر رفتار AutoMapper و نیاز به بازبینی Mappingها
- خطاهای مربوط به Dependency Injection
- تغییرات EF Core و برخی Queryها
- خطاهایی که فقط در زمان اجرا خودشان را نشان میدادند، نه هنگام Build
این تجربه یک نکته مهم را به من یاد داد:
مهاجرت نسخه فقط ارتقای Framework نیست؛ در واقع فرصتی برای بازنگری در معماری، حذف وابستگیهای قدیمی و بهبود کیفیت کد است.
در پایان پروژه، علاوه بر اینکه از قابلیتها و Performance بهتر NET 8. استفاده کردیم، کدها هم خواناتر و نگهداری آنها سادهتر شد.
اگر قرار باشد دوباره چنین مهاجرتی انجام بدهم، قبل از هر تغییری یک لیست کامل از Packageها، وابستگیها و تغییرات Breaking Change تهیه میکنم. این کار میتواند ساعتها زمان عیبیابی را کاهش دهد.
@DevTwitter | <Ashkan Motahari/>
راستش اول فکر میکردم فقط کافی است نسخه Framework را تغییر بدهم و چند پکیج را آپدیت کنم، اما خیلی زود فهمیدم داستان به این سادگی نیست.
بعد از ارتقا، با مشکلات مختلفی روبهرو شدم:
- ناسازگاری بعضی از پکیجها
- تغییر رفتار AutoMapper و نیاز به بازبینی Mappingها
- خطاهای مربوط به Dependency Injection
- تغییرات EF Core و برخی Queryها
- خطاهایی که فقط در زمان اجرا خودشان را نشان میدادند، نه هنگام Build
این تجربه یک نکته مهم را به من یاد داد:
مهاجرت نسخه فقط ارتقای Framework نیست؛ در واقع فرصتی برای بازنگری در معماری، حذف وابستگیهای قدیمی و بهبود کیفیت کد است.
در پایان پروژه، علاوه بر اینکه از قابلیتها و Performance بهتر NET 8. استفاده کردیم، کدها هم خواناتر و نگهداری آنها سادهتر شد.
اگر قرار باشد دوباره چنین مهاجرتی انجام بدهم، قبل از هر تغییری یک لیست کامل از Packageها، وابستگیها و تغییرات Breaking Change تهیه میکنم. این کار میتواند ساعتها زمان عیبیابی را کاهش دهد.
@DevTwitter | <Ashkan Motahari/>
🔥28🍌27❤9
#Wordpress
یک آسیبپذیری بحرانی (Pre-Authentication RCE) به نام WP2Shell در هسته وردپرس کشف شده که هکر ناشناس میتواند با یک درخواست ساده HTTP روی وردپرس پیشفرض (بدون هیچ پلاگین) کد دلخواه اجرا کند.
چگونه بفهمیم آسیب پذیر هستیم: https://wp2shell.com
نسخههای آسیبپذیر:
6.9.0 تا 6.9.4
7.0.0 تا 7.0.1
راه حل: به آخرین نسخه بروزرسانی کنید.
https://slcyber.io/research-center/wp2shell-pre-authentication-rce-in-wordpress-core/
@DevTwitter | <VAHID NAMENI/>
یک آسیبپذیری بحرانی (Pre-Authentication RCE) به نام WP2Shell در هسته وردپرس کشف شده که هکر ناشناس میتواند با یک درخواست ساده HTTP روی وردپرس پیشفرض (بدون هیچ پلاگین) کد دلخواه اجرا کند.
چگونه بفهمیم آسیب پذیر هستیم: https://wp2shell.com
نسخههای آسیبپذیر:
6.9.0 تا 6.9.4
7.0.0 تا 7.0.1
راه حل: به آخرین نسخه بروزرسانی کنید.
https://slcyber.io/research-center/wp2shell-pre-authentication-rce-in-wordpress-core/
@DevTwitter | <VAHID NAMENI/>
👍15🍌3❤1
Forwarded from DevTwitter Ads.
چرا واسه اشتراکهایی هوش مصنوعی ماهانه چند میلیون پول بدی وقتی میشه سالانهشو با چند صد هزار تومن خرید؟
جمینای پرو ۱۸ ماهه ۴۰۰ تومن کانوا پرو ۱ ساله ۵۰۰ تومن اونم رو اکانت شخصی خودتون 😐
اشتراکهای هوش مصنوعی، بازیهای انلاین، پرمیوم تلگرام و خیلی چیزای دیگه ارزونتر از همهجا!👇
@birdirch
@birdirch
@birdirch
جمینای پرو ۱۸ ماهه ۴۰۰ تومن کانوا پرو ۱ ساله ۵۰۰ تومن اونم رو اکانت شخصی خودتون 😐
اشتراکهای هوش مصنوعی، بازیهای انلاین، پرمیوم تلگرام و خیلی چیزای دیگه ارزونتر از همهجا!👇
@birdirch
@birdirch
@birdirch
🍌18👎6👍1
مخزن LingBot-Map: مدل foundation 3D feed-forward برای بازسازی صحنه از دادههای streaming
این پروژه یه مدل پیشرفته 3D هست که میتونه صحنهها رو از streaming ویدیو و عکس به صورت realtime بازسازی کنه.
مناسب برای robotics, AR/VR و کاربردهای 3D reconstruction.
https://github.com/Robbyant/lingbot-map
@DevTwitter | <Diego Jr/>
این پروژه یه مدل پیشرفته 3D هست که میتونه صحنهها رو از streaming ویدیو و عکس به صورت realtime بازسازی کنه.
مناسب برای robotics, AR/VR و کاربردهای 3D reconstruction.
https://github.com/Robbyant/lingbot-map
@DevTwitter | <Diego Jr/>
🔥7👍2❤1
فکر میکردم تو Claude Code فقط وقتی کد بیشتری مینویسه، توکن بیشتری مصرف میکنه ولی داستان فقط این نیست یه چیزی که خیلی روی مصرف تاثیر داره effort هست در واقع effort به claude میگه چقدر برای حل یه مسئله وقت بذاره
وقتی زیادش میکنی فایلهای بیشتری رو میگرده، بیشتر بررسی میکنه، رفت و برگشت بیشتری با ابزارها داره و خب توکن بیشتری هم مصرف میشه
برای یه تغییر کوچیک، لازم نیست claude بشینه کل پروژه رو زیر و رو کنه ولی وقتی داری یه باگ عجیب پیدا میکنی یا یه بخش بزرگ رو تغییر میدی، effort بالاتر واقعاً میتونه کمک کنه.
@DevTwitter | <Hamed Soltani/>
وقتی زیادش میکنی فایلهای بیشتری رو میگرده، بیشتر بررسی میکنه، رفت و برگشت بیشتری با ابزارها داره و خب توکن بیشتری هم مصرف میشه
برای یه تغییر کوچیک، لازم نیست claude بشینه کل پروژه رو زیر و رو کنه ولی وقتی داری یه باگ عجیب پیدا میکنی یا یه بخش بزرگ رو تغییر میدی، effort بالاتر واقعاً میتونه کمک کنه.
@DevTwitter | <Hamed Soltani/>
❤25👍7🔥2
بعد از نوشتن یک پرامپت در کافه، به این نتیجه رسیدم که نیاز به ابزاری برای مدیریت و بهبود پرامپتها دارم، مخصوصا وقتی به لپتاپ دسترسی ندارم.
اپ Prompt Forge برای مدیریت پرامپته.
ویژگیها:
· مدیریت پرامپتها: یک دفترچه یادداشت تخصصی با قابلیت دستهبندی، نشانگذاری (Favorite/Pin)، کد رنگی و ویرایشگر کامل.
· قالبهای آماده (Templates): بیش از ۳۰ قالب داخلی که متغیرهای آن ([variable]) به صورت لحظهای قابل مقداردهی هستند.
· بهبود با هوش مصنوعی: امکان Enhance پرامپت با یک کلیک با استفاده از API Key شخصی (پشتیبانی از Groq، OpenAI، DeepSeek، Gemini، Claude).
· اشتراکگذاری: قابلیت اشتراکگذاری پرامپتها.
· شخصیسازی: تغییر سایز و نوع فونت، و ۱۴ تم جذاب (۷ تیره و ۷ روشن).
· عملیات سریع (Swipe Actions): کشیدن کارت به چپ/راست برای دسترسی به اقداماتی مانند ویرایش، کپی، حذف و... (قابل شخصیسازی).
· امکانات دیگر: بررسی آپدیت درون برنامهای (دانلود APK از GitHub)، عملیات چندتایی روی پرامپتها، و پشتیبانی از RTL.
تکنولوژی: React Native با SDK 57.
https://github.com/MehranQadirian/prompt-forge
@DevTwitter | <Mehran/>
اپ Prompt Forge برای مدیریت پرامپته.
ویژگیها:
· مدیریت پرامپتها: یک دفترچه یادداشت تخصصی با قابلیت دستهبندی، نشانگذاری (Favorite/Pin)، کد رنگی و ویرایشگر کامل.
· قالبهای آماده (Templates): بیش از ۳۰ قالب داخلی که متغیرهای آن ([variable]) به صورت لحظهای قابل مقداردهی هستند.
· بهبود با هوش مصنوعی: امکان Enhance پرامپت با یک کلیک با استفاده از API Key شخصی (پشتیبانی از Groq، OpenAI، DeepSeek، Gemini، Claude).
· اشتراکگذاری: قابلیت اشتراکگذاری پرامپتها.
· شخصیسازی: تغییر سایز و نوع فونت، و ۱۴ تم جذاب (۷ تیره و ۷ روشن).
· عملیات سریع (Swipe Actions): کشیدن کارت به چپ/راست برای دسترسی به اقداماتی مانند ویرایش، کپی، حذف و... (قابل شخصیسازی).
· امکانات دیگر: بررسی آپدیت درون برنامهای (دانلود APK از GitHub)، عملیات چندتایی روی پرامپتها، و پشتیبانی از RTL.
تکنولوژی: React Native با SDK 57.
https://github.com/MehranQadirian/prompt-forge
@DevTwitter | <Mehran/>
🍌55❤12🔥2
هرچی مدل پیشرفتهتر بشه، باز هم کیفیت خروجی رو همون پرامپت اولیه تعیین میکنه. این ریپو حاصل سالها تجربمه - تمام پیچیدگیها و دردسرایی که پیش میاد با مدلا حین توسعه رو جمع کردم توی چند فایل کوچیک skill.md
۱۰ تا مهارت سیستمی آماده برای دیباگ، آنالیز، بهینهسازی، تستنویسی و... فقط کافیه کپی کنید و استفاده کنید.
https://github.com/Tariux/AI-Skills-Not-Awesome
@DevTwitter | <MADMAN/>
۱۰ تا مهارت سیستمی آماده برای دیباگ، آنالیز، بهینهسازی، تستنویسی و... فقط کافیه کپی کنید و استفاده کنید.
https://github.com/Tariux/AI-Skills-Not-Awesome
@DevTwitter | <MADMAN/>
❤22🍌8👍6
یکی از پروژههایی که این مدت روش کار میکردم «خِرَد» بود؛ یک ویکی داخلی برای تیمها که تجربهای شبیه Notion داره، اما پشت صحنه همه چیز روی Git مدیریت میشه، بدون اینکه کاربرها درگیر پیچیدگیهای اون بشن.
بخشی که بیشتر از همه برام جذاب بود، قابلیتهای AI و Agentic این پروژهست. بهجای اینکه فقط یک چتبات کنار صفحه باشه، ایجنتها در جریان واقعی تولید دانش قرار میگیرن؛ با کاربر مصاحبه میکنن، مستندات موجود سازمان رو بررسی میکنن، نقش تخصصی میگیرن و یک پیشنویس آماده برای ویکی تولید میکنن.
علاوه بر اون، کل دانش سازمان قابل پرسش میشه؛ مدل فقط از محتوای تأییدشده ویکی پاسخ میده و برای هر جواب منبع و ارجاع ارائه میکنه. همچنین اسناد، PDFها، فایلهای Office، تصاویر اسکنشده و حتی فایلهای صوتی میتونن وارد سیستم بشن و به محتوای قابل ویرایش و قابل جستجو تبدیل بشن.
هدف Kherad اینه که هوش مصنوعی فقط یک قابلیت جانبی نباشه، بلکه به بخشی از فرآیند تولید، سازماندهی و نگهداری دانش سازمان تبدیل بشه.
https://github.com/mohammadmaso/kherad
@DevTwitter | <Mohammad Masoudi/>/>
بخشی که بیشتر از همه برام جذاب بود، قابلیتهای AI و Agentic این پروژهست. بهجای اینکه فقط یک چتبات کنار صفحه باشه، ایجنتها در جریان واقعی تولید دانش قرار میگیرن؛ با کاربر مصاحبه میکنن، مستندات موجود سازمان رو بررسی میکنن، نقش تخصصی میگیرن و یک پیشنویس آماده برای ویکی تولید میکنن.
علاوه بر اون، کل دانش سازمان قابل پرسش میشه؛ مدل فقط از محتوای تأییدشده ویکی پاسخ میده و برای هر جواب منبع و ارجاع ارائه میکنه. همچنین اسناد، PDFها، فایلهای Office، تصاویر اسکنشده و حتی فایلهای صوتی میتونن وارد سیستم بشن و به محتوای قابل ویرایش و قابل جستجو تبدیل بشن.
هدف Kherad اینه که هوش مصنوعی فقط یک قابلیت جانبی نباشه، بلکه به بخشی از فرآیند تولید، سازماندهی و نگهداری دانش سازمان تبدیل بشه.
https://github.com/mohammadmaso/kherad
@DevTwitter | <Mohammad Masoudi/>/>
❤30👍7👎3
معرفی کتابخونه Zen-QL :
یک Integrated Query Language در زبان گولنگ میباشد که در نسخه های اخیر از عبارات کامپایل شده برای سهولت در کدنویسی و خوانایی بیشتر کدبیس ها پشتیبانی مینماید.
ایجاد API های مجتمع برای پشتیبانی از منابع داده ای مختلف از هدف های اصلی این پروژه بوده و همچنین بدلیل طراحی ماژولار آن میتوان تنها از ماژول های مورد نیاز بدون اضافات استفاده نمود.
https://GitHub.com/malikhan-dev/zenql
@DevTwitter | <Mohammad/>
یک Integrated Query Language در زبان گولنگ میباشد که در نسخه های اخیر از عبارات کامپایل شده برای سهولت در کدنویسی و خوانایی بیشتر کدبیس ها پشتیبانی مینماید.
ایجاد API های مجتمع برای پشتیبانی از منابع داده ای مختلف از هدف های اصلی این پروژه بوده و همچنین بدلیل طراحی ماژولار آن میتوان تنها از ماژول های مورد نیاز بدون اضافات استفاده نمود.
https://GitHub.com/malikhan-dev/zenql
@DevTwitter | <Mohammad/>
👍11👎5🔥2
بعد از چند روز توسعه و تست، اولین نسخه DevObin را منتشر کردم.
ابزار DevObin یک ابزار متنباز برای مهندسی پرامپت است که به AI Coding Agentها کمک میکند پروژه را بهتر درک کنند.
بهجای اینکه فقط یک درخواست ساده برای هوش مصنوعی ارسال شود، DevObin فایلهای پروژه را بررسی میکند، ساختار و Context کد را استخراج میکند و سپس پرامپت کاربر را به یک پرامپت دقیقتر، کاملتر و متناسب با همان پروژه تبدیل میکند.
در نتیجه، مدلهای هوش مصنوعی با اطلاعات بیشتری تصمیم میگیرند و پاسخهای مرتبطتر و دقیقتری ارائه میدهند.
قابلیتهای فعلی:
- خواندن و تحلیل فایلهای پروژه
- استخراج Context واقعی کد
- تولید پرامپت بهینه برای AI Coding Agents
- رابط خط فرمان (CLI)
این تازه اولین نسخه DevObin است و در روزهای آینده قابلیتهای بیشتری به آن اضافه خواهم کرد تا به یک دستیار هوشمند برای توسعه نرمافزار تبدیل شود.
GitHub:
https://github.com/mobinhasanghasemi/devobin
PyPI:
https://pypi.org/project/devobin/
@DevTwitter | <mobin/>
ابزار DevObin یک ابزار متنباز برای مهندسی پرامپت است که به AI Coding Agentها کمک میکند پروژه را بهتر درک کنند.
بهجای اینکه فقط یک درخواست ساده برای هوش مصنوعی ارسال شود، DevObin فایلهای پروژه را بررسی میکند، ساختار و Context کد را استخراج میکند و سپس پرامپت کاربر را به یک پرامپت دقیقتر، کاملتر و متناسب با همان پروژه تبدیل میکند.
در نتیجه، مدلهای هوش مصنوعی با اطلاعات بیشتری تصمیم میگیرند و پاسخهای مرتبطتر و دقیقتری ارائه میدهند.
قابلیتهای فعلی:
- خواندن و تحلیل فایلهای پروژه
- استخراج Context واقعی کد
- تولید پرامپت بهینه برای AI Coding Agents
- رابط خط فرمان (CLI)
این تازه اولین نسخه DevObin است و در روزهای آینده قابلیتهای بیشتری به آن اضافه خواهم کرد تا به یک دستیار هوشمند برای توسعه نرمافزار تبدیل شود.
GitHub:
https://github.com/mobinhasanghasemi/devobin
PyPI:
https://pypi.org/project/devobin/
@DevTwitter | <mobin/>
🔥18🍌15👎1
فایربیس یه حرکت قشنگ زده!
روش Firebase Phone Number Verification (Firebase PNV) یک روش سریعتر و امنتر برای تأیید شماره تلفن (OTP) است.
برخلاف روش تأیید با SMS که کاربر باید یک کد ارسالشده در پیامک را دریافت و وارد کند، Firebase PNV شماره تلفنی که روی سیمکارت دستگاه ثبت شده را مستقیماً از اپراتور متصل دریافت میکند
یعنی روند کار این شکلی است:
روش قدیمی (SMS OTP) :
کاربر شماره موبایل را وارد میکند.
سرویس Firebase یک پیامک با کد (مثلاً 123456) میفرستد.
کاربر کد را وارد میکند.
شماره تأیید میشود.
مشکلات:
- پیامک ممکن است دیر برسد یا نرسد.
- هزینه ارسال SMS دارد.
- امکان سوءاستفاده (Spam، تقلب، حملات OTP) وجود دارد.
روش Firebase PNV :
کاربر روی دکمهی "Verify Phone Number" میزند.
سرویس Firebase با اپراتور موبایل ارتباط برقرار میکند.
اپراتور شماره سیمکارت موجود در گوشی را تأیید میکند.
شماره بدون وارد کردن کد تأیید میشود.
مزایا:
- سریعتر (بدون انتظار برای SMS)
- تجربه کاربری بهتر
- کاهش هزینه پیامک
- کمتر در معرض حملات مربوط به OTP
اما چند نکته مهم:
- این روش نیاز به پشتیبانی اپراتور موبایل دارد.
- معمولاً برای همه کشورها و همه سیمکارتها فعال نیست.
- بیشتر برای اپلیکیشنهای موبایل (Android/iOS) طراحی شده، نه وب.
ویدئوی معرفی:
https://www.youtube.com/watch?v=A8zq0xfXlvY&pp=0gcJCZkLAYcqIYzv
@DevTwitter | <Ali Amoori/>
روش Firebase Phone Number Verification (Firebase PNV) یک روش سریعتر و امنتر برای تأیید شماره تلفن (OTP) است.
برخلاف روش تأیید با SMS که کاربر باید یک کد ارسالشده در پیامک را دریافت و وارد کند، Firebase PNV شماره تلفنی که روی سیمکارت دستگاه ثبت شده را مستقیماً از اپراتور متصل دریافت میکند
یعنی روند کار این شکلی است:
روش قدیمی (SMS OTP) :
کاربر شماره موبایل را وارد میکند.
سرویس Firebase یک پیامک با کد (مثلاً 123456) میفرستد.
کاربر کد را وارد میکند.
شماره تأیید میشود.
مشکلات:
- پیامک ممکن است دیر برسد یا نرسد.
- هزینه ارسال SMS دارد.
- امکان سوءاستفاده (Spam، تقلب، حملات OTP) وجود دارد.
روش Firebase PNV :
کاربر روی دکمهی "Verify Phone Number" میزند.
سرویس Firebase با اپراتور موبایل ارتباط برقرار میکند.
اپراتور شماره سیمکارت موجود در گوشی را تأیید میکند.
شماره بدون وارد کردن کد تأیید میشود.
مزایا:
- سریعتر (بدون انتظار برای SMS)
- تجربه کاربری بهتر
- کاهش هزینه پیامک
- کمتر در معرض حملات مربوط به OTP
اما چند نکته مهم:
- این روش نیاز به پشتیبانی اپراتور موبایل دارد.
- معمولاً برای همه کشورها و همه سیمکارتها فعال نیست.
- بیشتر برای اپلیکیشنهای موبایل (Android/iOS) طراحی شده، نه وب.
ویدئوی معرفی:
https://www.youtube.com/watch?v=A8zq0xfXlvY&pp=0gcJCZkLAYcqIYzv
@DevTwitter | <Ali Amoori/>
👍51❤7👎7
#کوته_نیوز
پلتفرم Huggingface هک شد. یه ایجنت AI درش گذاشت.
یک دیتاست خراب آپلود کرده و با اجرای کدش تونسته به مدارک داخلی و باقی دیتاستها دسترسی پیدا کنه.
دستخوش
@DevTwitter
پلتفرم Huggingface هک شد. یه ایجنت AI درش گذاشت.
یک دیتاست خراب آپلود کرده و با اجرای کدش تونسته به مدارک داخلی و باقی دیتاستها دسترسی پیدا کنه.
دستخوش
@DevTwitter
🔥91💔11👎6
یه ابزار نوشتم که کل کدهای پروژه رو توی یه فایل مارکداون مرتب میکنه تا راحت بدی به هوش مصنوعی و تحلیل کنه، بدون نیاز به نصب هیچ چیز اضافهای. خوشحال میشم تست کنید و نظرتون رو بگین:
https://ahm-id.github.io/RepoDoc
https://github.com/AHM-ID/RepoDoc
@DevTwitter | <AHM_ID/>
https://ahm-id.github.io/RepoDoc
https://github.com/AHM-ID/RepoDoc
@DevTwitter | <AHM_ID/>
👍41👎13💔1
یه مدت بود دلم میخواست پروژهای بسازم که فقط رفع نیاز نباشه، بلکه یک نمونهی کاربردی و پروداکشنردی از MVI و Clean Architecture در دنیای مدرن اندروید باشه.
برای همین Nimbus Weather متولد شد.
یه اپ آبوهوا با Jetpack Compose که دادههاش رو همزمان از دو دیتاسورس مجزا (آبوهوا و تصاویر) میگیره و ترکیب میکنه، با یه لایه گلسمورفیسم کاملاً دستی و پیادهسازیشده با Canvas.
حیفم اومد این تجربه رو پیش خودم نگه دارم، برای همین سورسش رو اوپنسورس کردم تا به سهم خودم به مسیر یادگیری دوستان کمک کرده باشم.
تمام چالشهای فنی و تصمیمات معماریاش رو هم توی یک مقاله مدیوم کامل باز کردم که دعوتتون میکنم بخونیدش.
مشتاقانه منتظر فیدبکهای قشنگتون در گیتهاب و مدیوم هستم!
GitHub: https://github.com/MrNouri/NimbusWeather
Medium: https://medium.com/@nouri.softeng/building-nimbus-weather-a-clean-architecture-mvi-case-study-in-jetpack-compose-0ba973dae087
@DevTwitter | <Nouri/>
برای همین Nimbus Weather متولد شد.
یه اپ آبوهوا با Jetpack Compose که دادههاش رو همزمان از دو دیتاسورس مجزا (آبوهوا و تصاویر) میگیره و ترکیب میکنه، با یه لایه گلسمورفیسم کاملاً دستی و پیادهسازیشده با Canvas.
حیفم اومد این تجربه رو پیش خودم نگه دارم، برای همین سورسش رو اوپنسورس کردم تا به سهم خودم به مسیر یادگیری دوستان کمک کرده باشم.
تمام چالشهای فنی و تصمیمات معماریاش رو هم توی یک مقاله مدیوم کامل باز کردم که دعوتتون میکنم بخونیدش.
مشتاقانه منتظر فیدبکهای قشنگتون در گیتهاب و مدیوم هستم!
GitHub: https://github.com/MrNouri/NimbusWeather
Medium: https://medium.com/@nouri.softeng/building-nimbus-weather-a-clean-architecture-mvi-case-study-in-jetpack-compose-0ba973dae087
@DevTwitter | <Nouri/>
🍌28❤15👍2
یکی از چالشهایی که اخیرا با آن روبهرو بودم، مدیریت و همگامسازی فایلها و فولدرهای مختلف یک پروژه روی یک یا چند سرور بود.
گاهی باید فایلها از سیستم local به سرور منتقل شوند و گاهی برعکس، فایلهای سرور دانلود یا بهروزرسانی شوند. روند معمول این کار معمولا با ابزارهایی مثل WinSCP یا Termius انجام میشود؛ یعنی رفتن به مسیرهای مختلف سرور و آپلود، دانلود یا جایگزینی دستی فایلها.
این موضوع وقتی پیچیدهتر میشود که بخواهیم AI Agentها را هم وارد جریان توسعه کنیم. اگر Agent قرار باشد فایلها را بخواند، ویرایش کند یا بر اساس آنها تصمیم بگیرد، خیلی زود با مشکلاتی مثل مدیریت نسخهها، پراکندگی فایلها و کنترل تغییرات روبهرو میشویم.
ایده اصلی ساده است: فایلهای مهم پروژه را روی سیستم local داشته باشید، تغییرات را بررسی کنید و فقط وقتی از نتیجه مطمئن شدید، sync را انجام دهید.
این ابزار برای سادهتر کردن مدیریت پروژهها روی چندین سرور طراحی شده و قرار است روی ویندوز، لینوکس و مک قابل استفاده باشد.
https://github.com/hamidrg20001379/sync-gui-public
@DevTwitter | <Hamid Reza/>
گاهی باید فایلها از سیستم local به سرور منتقل شوند و گاهی برعکس، فایلهای سرور دانلود یا بهروزرسانی شوند. روند معمول این کار معمولا با ابزارهایی مثل WinSCP یا Termius انجام میشود؛ یعنی رفتن به مسیرهای مختلف سرور و آپلود، دانلود یا جایگزینی دستی فایلها.
این موضوع وقتی پیچیدهتر میشود که بخواهیم AI Agentها را هم وارد جریان توسعه کنیم. اگر Agent قرار باشد فایلها را بخواند، ویرایش کند یا بر اساس آنها تصمیم بگیرد، خیلی زود با مشکلاتی مثل مدیریت نسخهها، پراکندگی فایلها و کنترل تغییرات روبهرو میشویم.
ایده اصلی ساده است: فایلهای مهم پروژه را روی سیستم local داشته باشید، تغییرات را بررسی کنید و فقط وقتی از نتیجه مطمئن شدید، sync را انجام دهید.
این ابزار برای سادهتر کردن مدیریت پروژهها روی چندین سرور طراحی شده و قرار است روی ویندوز، لینوکس و مک قابل استفاده باشد.
https://github.com/hamidrg20001379/sync-gui-public
@DevTwitter | <Hamid Reza/>
❤11🍌5👍3
اگر تو چتباتها مشکل بهم ریختگی متن فارسی دارید، این اکستنشن به کار شما میاد.
اکستنشن ai-rtl-resolver مشکل متنهای فارسی رو توی چتباتها حل میکنه و با فونت زیبای وزیرمتن بهتون نمایش میده.
حالا تو نسخهی 5.1 از kimi , duck ai هم پشتیبانی میکنه.
پلتفرمهای پشتیبانی شده:
Gemeni
Claude
ChatGPT
Perplexity
Zai
Gemeni Notebook
Duck Ai
Kimi
DeepSeek
Qwen Ai
هیچ دیتایی جمع نمیکنه و سبکه، کاملا هم اوپن سورسه
برای کروم:
https://chromewebstore.google.com/detail/ai-rtl-resolver/fajdcnieohikiogbngkfedbpfoniobcc
برای فایرفاکس موبایل و دسکتاپ:
https://addons.mozilla.org/en-US/firefox/addon/ai-rtl-resolver/
گیتهاب:
https://github.com/miladniroee/ai-rtl-resolver
@DevTwitter | <Ladoya/>
اکستنشن ai-rtl-resolver مشکل متنهای فارسی رو توی چتباتها حل میکنه و با فونت زیبای وزیرمتن بهتون نمایش میده.
حالا تو نسخهی 5.1 از kimi , duck ai هم پشتیبانی میکنه.
پلتفرمهای پشتیبانی شده:
Gemeni
Claude
ChatGPT
Perplexity
Zai
Gemeni Notebook
Duck Ai
Kimi
DeepSeek
Qwen Ai
هیچ دیتایی جمع نمیکنه و سبکه، کاملا هم اوپن سورسه
برای کروم:
https://chromewebstore.google.com/detail/ai-rtl-resolver/fajdcnieohikiogbngkfedbpfoniobcc
برای فایرفاکس موبایل و دسکتاپ:
https://addons.mozilla.org/en-US/firefox/addon/ai-rtl-resolver/
گیتهاب:
https://github.com/miladniroee/ai-rtl-resolver
@DevTwitter | <Ladoya/>
👍36🍌4👎1
یکی از تفاوتهای بین برنامهنویسی سنتی و الگوریتمهای یادگیری تقویتی اینه که توی برنامهنویسی، ما به سیستم میگیم چطور تصمیم بگیره اما توی RL، فقط نتیجهی تصمیمها رو بهش نشون میدیم و خودش یاد میگیره بهترین تصمیم چیه.
همین تفاوت توی پارادایم یادگیری، RL رو از خیلی از روشهای رایج Machine Learning متمایز میکنه. یکی از اولین الگوریتمهایی که این مفهوم رو به شکل عملی نشون میده، Q-Learning هست. چیزی که Q-Learning رو جالب میکنه، سادگی ایدهشه.
میشه گفت که Agent هیچ درکی از محیط نداره، مدل محیط رو هم نمیشناسه و حتی نمیدونه رسیدن به هدف چه مراحلی داره. فقط با آزمون و خطا، دریافت Reward و ذخیرهی تجربهها، کمکم یاد میگیره که در هر State، کدوم Action در بلندمدت بیشترین ارزش رو داره.
نکتهی جالب اینجاست که Q-Learning هیچ آیندهای رو پیشبینی نمیکنه؛ بلکه تخمینی از ارزش تصمیمها میسازه. به همین دلیل هم اسمش از Q-Value (Quality Value) گرفته شده؛ عددی که کیفیت هر Action رو در یک State مشخص میکنه.
البته این الگوریتم هم محدودیتهای خودش رو داره. با بزرگ شدن فضای Stateها، نگهداشتن Q-Table عملاً غیرممکن میشه و دقیقاً از همین نقطهست که روشهایی مثل Deep Q-Network (DQN) وارد بازی میشن و به جای جدول، از شبکههای عصبی برای تقریب Q-Value استفاده میکنن.
برای اینکه این مفاهیم رو بهتر درک کنم، حدود یک سال پیش، یه پروژه مسیریابی ساده با Q-Learning پیادهسازی کردم. اگر دوست داشتید، میتونید پروژه رو اینجا ببینید:
GitHub:
https://github.com/naseridev/notch
@DevTwitter | <Nima Naseri/>
همین تفاوت توی پارادایم یادگیری، RL رو از خیلی از روشهای رایج Machine Learning متمایز میکنه. یکی از اولین الگوریتمهایی که این مفهوم رو به شکل عملی نشون میده، Q-Learning هست. چیزی که Q-Learning رو جالب میکنه، سادگی ایدهشه.
میشه گفت که Agent هیچ درکی از محیط نداره، مدل محیط رو هم نمیشناسه و حتی نمیدونه رسیدن به هدف چه مراحلی داره. فقط با آزمون و خطا، دریافت Reward و ذخیرهی تجربهها، کمکم یاد میگیره که در هر State، کدوم Action در بلندمدت بیشترین ارزش رو داره.
نکتهی جالب اینجاست که Q-Learning هیچ آیندهای رو پیشبینی نمیکنه؛ بلکه تخمینی از ارزش تصمیمها میسازه. به همین دلیل هم اسمش از Q-Value (Quality Value) گرفته شده؛ عددی که کیفیت هر Action رو در یک State مشخص میکنه.
البته این الگوریتم هم محدودیتهای خودش رو داره. با بزرگ شدن فضای Stateها، نگهداشتن Q-Table عملاً غیرممکن میشه و دقیقاً از همین نقطهست که روشهایی مثل Deep Q-Network (DQN) وارد بازی میشن و به جای جدول، از شبکههای عصبی برای تقریب Q-Value استفاده میکنن.
برای اینکه این مفاهیم رو بهتر درک کنم، حدود یک سال پیش، یه پروژه مسیریابی ساده با Q-Learning پیادهسازی کردم. اگر دوست داشتید، میتونید پروژه رو اینجا ببینید:
GitHub:
https://github.com/naseridev/notch
@DevTwitter | <Nima Naseri/>
🔥25❤4🍌3
فرایند کابل کشی فیبرنوری داره دوباره شروع میشه تو شهر های مختلف و میتونید به شرکت های مختلف که تو محلتون پوشش دارن درخواست سرویس بدین
اگه دنبال خرید مودم فیبر نوری هستید و نمیدونید از کجا شروع کنید، این ویدیو میتونه خیلی کمکتون کنه
لینک ویدیو: https://youtu.be/tbX3vbb-AlU
توی ویدیو یه شیت کامل معرفی شده که شامل:
لیست تمام مودمهای موجود در بازار ایران
مشخصات و امکانات هر مودم
لینک ترب و آخرین قیمتها
همه چیز یهجا جمعآوری شده تا راحتتر بتونید مقایسه کنید و بهترین انتخاب رو داشته باشید.
@DevTwitter | <Kaveh/>
اگه دنبال خرید مودم فیبر نوری هستید و نمیدونید از کجا شروع کنید، این ویدیو میتونه خیلی کمکتون کنه
لینک ویدیو: https://youtu.be/tbX3vbb-AlU
توی ویدیو یه شیت کامل معرفی شده که شامل:
لیست تمام مودمهای موجود در بازار ایران
مشخصات و امکانات هر مودم
لینک ترب و آخرین قیمتها
همه چیز یهجا جمعآوری شده تا راحتتر بتونید مقایسه کنید و بهترین انتخاب رو داشته باشید.
@DevTwitter | <Kaveh/>
🍌22❤17👍7
This media is not supported in your browser
VIEW IN TELEGRAM
این پروژه به اسم اوپنکدکس دقیقاً یه پروکسی محلی هست که بهت اجازه میده از مدلهای مختلف هوش مصنوعی (مثل کلود، گروک، کیمی، جمینی و مدلهای محلی) مستقیماً داخل ابزار (کدکس) اوپنایآی استفاده کنی. منوی انتخاب مدل هم خیلی خوب کار میکنه.
لینک گیتهاب پروژه برای کسایی که میخوان تست کنن:
https://github.com/lidge-jun/opencodex
فقط توجه کن که این پروژه غیررسمی هست و ارتباطی با شرکت اوپنایآی یا شرکتهای دیگه نداره.
@DevTwitter | <Navid Taheri/>
لینک گیتهاب پروژه برای کسایی که میخوان تست کنن:
https://github.com/lidge-jun/opencodex
فقط توجه کن که این پروژه غیررسمی هست و ارتباطی با شرکت اوپنایآی یا شرکتهای دیگه نداره.
@DevTwitter | <Navid Taheri/>
👍8🍌2❤1
اگر دنبال ساخت Agentهای AI برای نقشهای مختلف هستید این ریپو میتواند برایتان مفید باشد
برای توسعهدهنده، طراح، مارکتر، مدیر محصول، QA و چند نقش دیگر Agent های آماده دارد و میتواند نقطه شروع خوبی برای ساخت ورکفلوهای ai باشد
https://github.com/msitarzewski/agency-agents/
@DevTwitter | <Davinchi/>
برای توسعهدهنده، طراح، مارکتر، مدیر محصول، QA و چند نقش دیگر Agent های آماده دارد و میتواند نقطه شروع خوبی برای ساخت ورکفلوهای ai باشد
https://github.com/msitarzewski/agency-agents/
@DevTwitter | <Davinchi/>
❤8👍2🍌1