خرسِ برنامه نویس – Telegram
خرسِ برنامه نویس
239 subscribers
184 photos
12 videos
1 file
307 links
من 5 درصد موسیقی ام! 30 درصد خواب! و بقیه به دنبال یافتن چیزی !!!
Download Telegram
Forwarded from CodeLodge
در این قسمت از سری پادکست‌های Code lodge، به بررسی عمیق نقش هوش مصنوعی در دنیای توسعه نرم‌افزار می‌پردازیم. در این گفتگو، همراه با دوست صمیمی‌مان، مسعود عزیز، به نقد جنبه‌های مختلف استفاده از AI در محیط‌های دولوپمنت می‌پردازیم؛ از جمله مباحث پیرامون نگرانی‌های مرتبط با اتوماسیون بیش از حد و جایگزینی نیروی انسانی و دست کم گیری نقش مهم مدل های زبانی در توسعه. هدف ما ارائه بینشی جامع از چالش‌ها و فرصت‌هایی است که هوش مصنوعی برای توسعه‌دهندگان به ارمغان می‌آورد و راهکارهایی برای حفظ کیفیت و خلاقیت در کار ارائه می‌دهد.
میزبانان شما:
بهنیا آزاد
مسعود بیگی

این ایپزود را می توانید از طریق لینک های زیر هم بشنوید :

- 🔗Spotify

- 🔗Amazon

- 🔗Castbox

-🔗Apple podcast

-🔗 Shenoto


#Codelodge
#Software
#AI
#LLM
#softwareDeveloper
#SoftwareEngineer
@codeLodge
🔥6
سال نو مبارک رفقا ❤️❤️❤️
8🔥1
Software is becoming systems of software. Our thinking generates the concepts that we rely on when designing our systems. When our concepts work together in harmony, supporting a system’s purpose, they have integrity.
Without conceptual integrity, our software systems are built by “many good but independent and uncoordinated ideas.”

From Learning System Thinking Book
🔥4
خرسِ برنامه نویس
Software is becoming systems of software. Our thinking generates the concepts that we rely on when designing our systems. When our concepts work together in harmony, supporting a system’s purpose, they have integrity. Without conceptual integrity, our software…
از این حرف چی میشه برداشت کرد؟‌
نظر من:‌
اینکه ممکنه ما در مولفه های معماری نرم افزارمون هماهنگی بین اجزای نرم افزاری رو جا بندازیم. نکته ای که داره اینه که خیلی وقت ها انقدری درگیر ایزوله کردن ماژول ها میشیم که اصلا یادمون میره که این ماژول ها باید با هم ارتباط بگیرند، هماهنگ باشند و باهم کار کنن! اصلا یک سری رفتار ها از ارتباط و هماهنگی بین دوتا ماژول شکل میگیره. نکته دومی هم وجود داره با استفاده از هزار تا تکنولوژی و ابزار هم این موضوع لزوما درست نمیشه. مثلا اگر شما از ابزار های Event Sourcing داری استفاده میکنی به این معنی نیست که مسئله ارتباط بین ماژول ها رو حل کردی، فقط میشه گفت که زیرساخت این موضوع ممکنه اضافه شده باشه. همچنان باید یک پروتکل ارتباطی وجود داشته باشه که در بستر Event Sourcing بتونه به نیاز های ارتباطی پاسخ بده.
🔥31
Forwarded from tech-afternoon (Amin Mesbahi)
💡 یک قدم به سمت کاربرد عینی مدل زبانی با RAG, CAG, KAG یا Fine Tuning

سال ۱۴۰۳ هم تموم شد و مثل ۲ سال قبل‌ترش، روز و ساعتی نبود که هوش‌مصنوعی خصوصا از نوع مولدش از متن و تیتر اخبار بیوفته 😉 حالا اگر تا به امروز فقط باهاش چت کردین، یا همون چت رو با API انجام دادین، دیگه ۱۴۰۴ سالیه که خوبه از حاشیه به متن بیاریدش و «اگر و اگر ارزش افزوده‌ای به محصولتون اضافه می‌کنه»، به شکل جدی‌تری ازش استفاده کنین. حالا این یعنی چی؟ مگه چت کردن چشه؟


در حالت عادی، یه مدل زبانی از چند میلیارد تا چندصد میلیارد پارامتر آموزش می‌بینه، بلده به زبون‌های مختلف حرف بزنه و جملاتی عاقلانه تا ابلهانه سرهم کنه. بلده دستور پخت سوشی تا قرمه‌سبزی بده و برای دل‌دردتون چایی‌نبات تجویز کنه، ولی اینکه بالانس حساب آقای جمالی چقدره یا آیین‌نامه‌های داخلی شرکتی که ما توش کار می‌کنیم یعنی کامپیوتراندیشان عصر نوین پاسارگاد با مدیریت آقای موکت‌پور رو که بلد نیست!‍ پس باید راهی یاد بگیریم که مزخرفاتی که بلده رو با مزخرفات خودمون بیامیزیم و مزخرفات ترکیبی تولید کنیم. پس یه نگاه کلی به RAG، CAG, KAG و Fine Tuning بندازیم تا اگر مشتری داشت ادامه‌اش بدیم…


مفهوم و کاربرد RAG یا Retrieval-Augmented Generation چیه؟

کار RAG اینه که داده‌های مدل رو با دیتای ما تکمیل کنه؛ یعنی موقع جواب دادن به سؤال، میره از یه دیتابیس یا منبع خارجی (که عموما به صورت Vector database ذخیره می‌کنیم) اطلاعات جدید رو می‌گیره و بعد جواب می‌ده. اینجوری دیگه همیشه اطلاعات سیستم خودمون رو در کنار قابلیت‌های مدل اصلی داریم. این اطلاعات رو می‌تونیم نهایتا به شکل ساختارمند و مشخص (مثلا یه آبجکت یا یه ساختار JSON مشخص) برگردونیم، یا باهاش جمله بسازیم و مثل یه محاوره انسانی برگردونیمش.

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


مفهوم و کاربرد KAG یا Knowledge-Augmented Generation چیه؟

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

چرا لازمه ازش استفاده کنیم؟
- افزایش دقت در حوزه‌های تخصصی
- استدلال چندمرحله‌ای و منطقی
- رعایت قوانین و مقررات مشخص (مثل حوزه‌های پزشکی و حقوقی)


مفهوم و کاربرد CAG یا Cache-Augmented Generation چیه؟

مفهوم CAG یه جورایی نسخه سریع‌تر و ساده‌تر از RAG هست. توی CAG، دانش ثابت (مثل دفترچه‌های راهنما) از قبل تو حافظه (Cache) بارگذاری می‌شه و موقع جواب دادن لازم نیست هر بار اطلاعات رو از بیرون بگیره.

چرا لازمه ازش استفاده کنیم؟
- جواب‌های سریع‌تر
- ساختار ساده‌تر و هزینه کمتر
- ثبات و یکپارچگی جواب‌ها


مفهوم و کاربر Fine Tuning (تنظیم دقیق) دیگه؟

یه سری داده‌های محدود و مشخص رو به یه مدل زبانی که خیلی چیزا بلده، ولی دقیقاً کاری که میخوای رو درست انجام نمی‌ده. اینجا میای از Fine Tuning استفاده می‌کنی؛ یعنی یه سری داده خاص خودمون رو میدیم بهش که یاد بگیره دقیقاً طبق اون چیزی که می‌خوایم جواب بده. از RAG خیلی ساده‌تر و ابتدایی‌تره.

چرا لازمه ازش استفاده کنیم؟
- بهبود دقت مدل توی یه وظیفه خاص
- سفارشی کردن مدل برای کسب‌وکار یا حوزه خاص خودمون
- کاهش هزینه‌ها (چون نیازی به آموزش یه مدل عظیم از صفر نداریم)


📎 طی ماه‌های پیش رو، SQL Server 2025 قابلیت‌هایی ارائه خواهد کرد که کارهای RAG و CAG و KAG رو بتونیم انجام بدیم. یعنی به جای استفاده از Vector Databaseها که الان ازشون برای RAG کمک می‌گیریم، می‌تونیم مستقیم از خود SQL Server کمک بگیریم. البته چون هنوز قابلیت vector اش رونمایی عمومی نشده، نمی‌شه قضاوت کرد که در مقایسه با نمونه‌های پرشمار VectorDBها چه جایگاهی داره.

مثل همیشه: 💬⚙️😉
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
یه چرخ زدم تو گیتهاب ، ملت کلی api key پوش کردن تو گیتهاب :)))
نتیجه وایب کدینگ با هوش مصنوعی
البته بیشتراش از کار افتاده بخاطر سیستم گیتهاب...

@DevTwitter | <Shojaei/>
🔥3🤣1
Forwarded from TondTech (مسعود بیگی)
برای یکی از چند تا شرکت بزرگ اکوسیستم، دوستانم در حال تیم سازی هستند. اگر در حوزه دات نت مید (d3 به بالا) تا تک لید هستید و دوست دارید این فرصت رو بررسی کنید، رزومه تون رو برام بفرستین

برای سنجش خودتون نگاهی به این فریم ورک بندازید:
https://github.com/jorgef/engineeringladders
@Merkousha
🔥4
Forwarded from Novara
🔥7
Forwarded from .NET Fun
دیگه سی شارپ و دات نت بدرد نمیخوره
از این به بعد سوییچ میکنیم رو php و وردپرس!
🤣6🔥2
Forwarded from thisisnabi.dev [Farsi]
ف... به هر دوتاشون 😂

2 سالم هست از این دو بزرگوار در هیچ پروژه تجاری استفاده نکردم.
😁4😭2🔥1
Forwarded from thisisnabi.dev [Farsi]
... به هر سه تاشون :)

RabbitMq.Client هم خیلی فانتره

فقط بخش Distributed Tracing ش کمی چالش داره که توی سیستم دیزاین خودمون یکی نوشتیم براش 🤞
3😭2🔥1
1. Navigating changes to a design that one fundamentally disagrees with can be challenging. Communicating design intent—particularly to those without a design background—requires clarity, precision, and empathy. The ability to articulate design decisions effectively is crucial to the success of any project, as the most persuasive voice often guides the outcome. The distinction between a good designer and a great one lies not only in their capacity to solve problems through design, but also in their skill to communicate the rationale behind their solutions in a way that is compelling, builds consensus, and secures the support necessary to move forward.

کنار آمدن با تغییراتی در یک طراحی که اساساً با آن مخالف هستیم می‌تواند چالش‌برانگیز باشد. انتقال هدف طراحی—به‌ویژه برای کسانی که پیش‌زمینه‌ای در طراحی ندارند—نیازمند وضوح، دقت، و همدلی است. توانایی بیان مؤثر تصمیمات طراحی، برای موفقیت هر پروژه‌ای حیاتی است، چرا که اغلب تأثیرگذارترین صداست که مسیر نهایی را تعیین می‌کند. تفاوت بین یک طراح خوب و یک طراح عالی تنها در توانایی حل مسئله از طریق طراحی نیست، بلکه در مهارت او در توضیح منطق پشت راه‌حل‌هایش به‌گونه‌ای است که قانع‌کننده باشد، اجماع ایجاد کند و حمایت لازم برای پیش‌برد پروژه را جلب نماید.

#BetterSoftwareEngineer
👍4🔥3
2. It’s often unclear where some designers develop definitions of design that feel more performative than practical. These perspectives don’t seem to come from formal education or grounded experience. What’s concerning is the influence of a social media–driven design culture, where popularity and visual polish are mistaken for effectiveness and usability. This mindset encourages designers to create unsolicited redesigns of popular platforms—without a real understanding of the underlying business goals or user needs.
In these cases, design becomes more about visibility and validation than about thoughtful problem-solving. The truth is, design is deeply subjective. What one person finds intuitive, another may find confusing. What succeeds in one context can fail in another. This complexity makes design inherently difficult to discuss—particularly with those outside the field—because there is often no shared language or clear consensus on what design is, or what it should be.

اغلب مشخص نیست که برخی طراحان تعاریفی از طراحی را از کجا آورده‌اند که بیشتر نمایشی‌اند تا کاربردی. این دیدگاه‌ها نه به نظر می‌رسد از آموزش رسمی آمده باشند، نه از تجربه‌ای عمیق و واقعی. نکته نگران‌کننده، تأثیر فرهنگی است که از طریق شبکه‌های اجتماعی بر طراحی شکل گرفته—جایی که محبوبیت و جذابیت بصری، به اشتباه به‌جای اثربخشی و کاربرپذیری گرفته می‌شوند. این طرز فکر طراحان را تشویق می‌کند تا بازطراحی‌هایی بی‌درخواست از پلتفرم‌های محبوب انجام دهند—بی‌آنکه درک واقعی‌ای از اهداف تجاری یا نیازهای کاربران داشته باشند.

در چنین مواردی، طراحی بیشتر به ابزاری برای دیده‌شدن و تأیید گرفتن تبدیل می‌شود تا راه‌حلی اندیشمندانه برای مسائل واقعی. واقعیت این است که طراحی به‌شدت ذهنی و وابسته به دیدگاه افراد است. چیزی که برای یک نفر شهودی به نظر می‌رسد، ممکن است برای دیگری گیج‌کننده باشد. آنچه در یک موقعیت موفق است، ممکن است در موقعیتی دیگر ناکام بماند. این پیچیدگی باعث می‌شود صحبت درباره طراحی—به‌ویژه با کسانی خارج از این حوزه—بسیار دشوار باشد، چرا که اغلب زبانی مشترک یا توافقی روشن درباره اینکه طراحی چیست یا باید چه باشد، وجود ندارد.

#BetterSoftwareEngineer
🔥4👍2