Ai Casts | Ai for Software
رفتن به کانال در Telegram
CTO @ Zarinpal | Ex Snapp! Senior SE فوق لیسانس هوش مصنوعی از دانشگاه تهران اشتراک محتوا در مورد مهندسی نرم افزار، هوش مصنوعی، گولنگ https://gocasts.ir پروفایل https://www.linkedin.com/in/gohossein ارتباط @lifography Ai for Software @aicasts_ir
نمایش بیشتر918
مشترکین
+124 ساعت
+47 روز
+1330 روز
آرشیو پست ها
ترکیب Sonnet 5.5 و Opus 5.5 این روزا خیلی خوب جواب میده.
الگویی که برای من جواب داده اینه: کارای حجیم و تکراری (پیادهسازی، ریفکتور، نوشتن تست، پر کردن جزئیات) رو میدم به Sonnet 5.5. تصمیمهای مهم رو میدم به Opus 5.5: طراحی، review، و جاهایی که اشتباه گرون تموم میشه. هزینه و سرعت متعادل میمونه و رو بخشهای حساس هم کیفیت نمیاد پایین.
چیزی که تازه حس کردم اینه که طول تسکهای long-running از چند ساعت رسیده به چند روز. یکی دو بار پیش اومده که دو سه روز کار توسعه تو بکگراند جلو رفته و من اصلاً متوجه نشدم. نکته مهمترش اینه که کار واقعاً پیش رفته بود. اینطوری نبود که چرت و پرت تولید کرده باشه. خروجی بیربط نبود و میشد ادامهش داد.
این ماجرا با اکانت ۲۰ دلاری شدنیه و اگه با همون اکانت به محدودیت خوردید، اون موقع به فکر ارتقا باشید.
البته هنوز باید نظارت داشته باشید در مراحل مختلف پروسه. ولی نسبت به چند ماه پیش، اعتماد به اینکه یه تسک بلند رو رها کنی خیلی بیشتر شده.
یه نقش مهمی که به نظرم باید ایفا کنیم qa-engineer بودنه!
https://x.com/adocomplete/status/2104638097678020992
@gocasts
Ai for Software
@aicasts_ir
Repost from Go Casts | Systems & Agents 🚀
از قشنگترین دیدگاههایی که این چند ماهه دربارهی «نقش هوش مصنوعی در مهندسی نرمافزار» دیدم٬ ارائهی Adam Bender هست. نقطه قوتش این نیست که چیز جدیدی دربارهی مدلها بگه، بلکه اینه که میگه نمیشه فقط به سرعت تولید کد نگاه کرد و قضاوت کرد که هوش مصنوعی چقدر داره کمک میکنه. باید کل محیط توسعهی نرمافزارتون رو بهعنوان یه سیستم پیچیده ببینید، با همون اصطلاحی که خودش ساخته، "بومشناسی نرمافزار" یا software ecology - یعنی مطالعهی کامل مجموعهی انسانی و تکنیکی شرکت که در کنار هم نرمافزار رو تولید میکنه. این نکته که فرهنگ یه تیم و معماری سیستمش از هم جدا نیستن، دقیقاً همون چیزیه که خیلی از ما هم باهاش دستوپنجه نرم میکنیم - یه تیم اگه فرهنگ خرابی داشته باشه و بعد هوش مصنوعی رو هم بهش اضافه کنه، نتیجه نهفقط بهتر نمیشه، بلکه همون ناکارآمدی رو با سرعت بیشتر تکرار میکنه. این دقیقاً همون چیزیه که گزارش DORA هم چند بار تو دو سال اخیر گفته: هوش مصنوعی فقط یه تقویتکنندهست (amplifier)، نه یه راهحل. اصول خوب رو تقویت میکنه، اصول بد رو هم همینطور.
نکتهای که برام جالب بود، بحث «لحظهی 10x شدن»ـشه. میگه فرق بین سریعتر کد تولید کردن و سریعتر مهندسی کردن (engineering) از زمین تا آسمونه. بعد یکییکی بخشهای سیستم رو بررسی میکنه: زمان بیلد، بازبینی کد، تست، کنترل نسخه، انتشار نسخه، برگشت به نسخهی قبل - و میگه همهی اینها برای سرعت انسانی طراحی شدن، و اگه بخوای ده برابر سریعتر کد تولید کنی ولی این بخشها رو متناسب باهاش جلو نبری، کل سیستم میشکنه. این خیلی شبیه چیزیه که تو هر زیرساخت بزرگی میبینیم - یه جای سیستم رو سریع میکنی، ولی فشار میره رو جای دیگهای که اصلاً برای اون حجم طراحی نشده بوده و خودش تبدیل به نقطهی شکست میشه.
اون بحث «کنترل ذهنی روی سیستم» یا همون intellectual control هم خیلی به دلم نشست. میگه تقریبا پانزده ساله که ما مهندسین نرمافزار این جنگ رو داریم میبازیم - سیستمها اونقدر بزرگ شدن که هیچکس نمیتونه کامل تو ذهنش معماریشون رو نگه داره (یه آزمایش جالب پیشنهاد میده: از تیمت بخواه نقشهی معماری سیستم رو بکشن، ببین چقدر فرق دارن). ولی برخلاف خیلیها که ممکنه فقط منفی نگاه کنن، میگه شاید هوش مصنوعی بتونه برعکس عمل کنه و کمک کنه این کنترل رو پس بگیریم - مثلاً یه مدل تعاملی از معماری سیستم که بشه ازش پرسید «اگه ظرفیت (capacity) رو از اینجا به اونجا منتقل کنیم چی میشه؟». این برام جالبتر از صرف تولید کد بود، چون داره میگه ارزش واقعی هوش مصنوعی نهفقط نوشتن کد، بلکه فهمیدن سیستمهای بزرگه.
نتیجهای که میگیره هم به نظرم درسته: رویهها(practices) تغییر میکنن، اصول(principles) میمونن. اگه نفهمی چرا تیمت یه جور خاص تست مینویسه یا منتشر میکنه، نمیتونی اون رو درست تغییر بدی. این مسئولیت رو هم میاندازه گردن مهندسهای ارشد، نه فقط مدیریت بالادست - میگه شما باید برای کیفیت و طراحی درست حرفتون رو بزنید، چون احتمالاً مدیرتون این کار رو نمیکنه. واکنشهایی هم که دیدم متفاوت بود - بعضیها همین نگاه رو دقیقاً چیزی میدونن که صنعت لازم داشت، بعضیها هم میگن خیلی کلیگوییست. به نظر من خود ایده ارزشمنده، ولی باید عملیاتیش کرد - یعنی واقعاً بنشینی ببینی تو سیستم خودت کدوم بخش اول میشکنه.
تجربه شخصی خودم هم در تلاشهای مختلف برای agentic کردن محیط توسعه همین بوده که در نهایت به این نتیجه رسیدم واقعا اگه یه محیط agentic توسعه بخواد موثر باشه باید حتما جنبه های socio-technology ecosystem رو با هم در نظر بگیری. تعامل اجتماعی-فنی در کنار هم داره باعث توسعه نرمافزار میشه و این دو عامل در طی زمان co-evolve میشن و تغییر یکیشون دیگری رو هم تحت تاثیر قرار میده.
https://www.youtube.com/watch?v=2n41YjR5QfU
@gocasts
Repost from Go Casts | Systems & Agents 🚀
چند روزه ایجنت کد جدید شیائومی رو امتحان میکنم و در یک کلمه میتونم توصیفش کنم: «تحسین برانگیز»
یه پلن رایگان داره که از اینجا میتونید نصبش کنید و استفاده کنید.
https://github.com/XiaomiMiMo/MiMo-Code
یه نمونه تستی که ازش گرفتم اینجوری بود که پاسخ Codex - ChatGPT 5.5-High و Claude Sonnet 4.6-Max رو باهاش به اشتراک میذاشتم و پاسخ هایی که در جواب اونا بهم داد کیفیت و بلوغی داشت که خوشم اومد ازش.
قطعا تست چند روزه نمیتونه ارزیابی کافی ای باشه اما حتما امتحان کردنش میارزه مخصوصا که پلن رایگان هم داره
@gocasts
+2
در سومین جلسه دورهمی TechTalk در مورد بازتعریف نقش مهندس نرم افزار در عصر Ai Agents صحبت کردم.
امیدوارم که ارائه مورد توجه عزیزان همراه قرار گرفته باشه و مفید بوده باشه.
بابت همه کم و کاستی ها عذرخواهی میکنم.
موضوع ai agents و نقش اونا در بازتعریف مسئولیتهای مهندس نرمافزار چیزیه که کمتر بهش پرداخته میشه و این موضوع روز به روز اهمیت بیشتری پیدا میکنه و لازمه که براش آماده باشیم.
ان شاءالله در آینده بیشتر در موردش صحبت میکنم.
با تشکر از امیر عزیز که چنین بستری رو فراهم کردن و تمام دوستان زحمت کش TechTalk | تِک تاک
ممنون از AvalAI و GSMPay که اسپانسر این دورهمی بودن تا این جمع بتونه دور هم باشه.
@gocasts
Ai for Software
@aicasts_ir
Repost from N/a
ایجنت کد Claude Code حالا LSP داره!
نسخه 2.0.74 یه قابلیت خفن اضافه کرد: Language Server Protocol
چرا مهمه؟
قبلاً Claude برای پیدا کردن تعریف یه تابع باید با grep کل پروژه رو بگرده. حالا با LSP مستقیم میره سر تعریف اصلی.
استفاده از grep مثلا ۴۵ ثانیه زمان احتیاج داشت برای پیدا کردن رفرنس ها ولی lsp در ۵۰ میلی ثانیه پاسخ میده!
هزینه توکن فقط حدود 500 توکن اضافه میشه به context. ارزشش رو داره وقتی تو یه codebase ناآشنای بزرگ داری کار میکنی.
زبانهای ساپورت شده
Go, TypeScript, Python, Rust, Java, C/C++, PHP, Ruby, Kotlin, C#
این فیچر خیلی به درد میخوره. دیگه Claude سردرگم نمیشه تو فایلها.
https://code.claude.com/docs/en/plugins-reference#lsp-servers
📱 @gocasts
Ai for Software
📱 @aicasts_ir
واقعاً لذت بردم از نحوه نوشتن این مقاله. نویسنده یه موضوع نسبتاً پیچیده رو با انیمیشن و visualization های تعاملی طوری توضیح داده که قدم به قدم باهاش جلو میری. از اون مقالههاییه که آدم دلش میخواد کاش همه مطالب فنی اینجوری نوشته میشدن.
موضوعش prompt caching توی LLM هاست. اگه با API های Claude یا OpenAI کار کرده باشید، دیدید که cached tokens حدود ۱۰ برابر ارزونترن. ولی سوال اینه: دقیقاً چی داره cache میشه؟ جواب این سوال کمک میکنه بهتر بفهمیم LLM ها از درون چطور کار میکنن.
خلاصهاش اینه که توی مکانیزم Attention، هر token باید با همه tokenهای قبلی مقایسه بشه تا مدل بفهمه به کدومها توجه کنه. این مقایسه با ماتریسهای Q و K انجام میشه و نتیجه نهایی با V ترکیب میشه. نکته کلیدی اینه که K و V مربوط به tokenهای قبلی هیچوقت عوض نمیشن.
پروایدرها (مثل OpenAI و Anthropic) این K و V رو برای ۵ تا ۱۰ دقیقه نگه میدارن. اگه request بعدی با همون prefix شروع بشه، دیگه لازم نیست از اول محاسبه بشه.
نتیجهش هم میشه تا ۱۰ برابر کاهش هزینه و تا ۸۵ درصد کاهش latency.
یه نکته جالب هم داره: OpenAI اتوماتیک cache میکنه با حدود ۵۰ درصد hit rate، ولی Anthropic کنترل رو دست شما میده و ۱۰۰ درصد hit میخوره. برای سیستمهایی که latency قابل پیشبینی میخوان، این تفاوت مهمه.
اینم لینک مقاله
https://ngrok.com/blog/prompt-caching
📱 @gocasts
Ai for Software
📱 @aicasts_ir
این چند ماه که از claude زیاد استفاده کردم کاملا به یه سطحی رسیده بود که دیگه از vibe coding فراتر رفته بود و خودم اسمش رو گذاشته بودم agent-first development.
معتقدم بزودی باید تلاش کنیم یه بازبینی اساسی در روند توسعه هامون داشته باشیم چون سطح کارآمدی توسعه agent-first کاملا متفاوته با agent-assisted.
برای agent-first شدن در سطح سازمان و شرکت هایی که سرویس و codebaseهای بزرگ دارن باید از همین امروز کار شروع بشه که انتظار داشت چند سال دیگه بهینگی مد نظر بدست بیاد. ولی برای سرویس های کوچیک و استارتآپ ها میشه انتظار داشت که در بازه کوتاه مدت این کارآمدی زودتر خودش رو نشون بده.
امروز که گوگل همراه با معرفی Gemini 3 Pro از یه IDE جایگزین cursor رونمایی کرده که اسمش رو گذاشته Antigravity
نکته جالبش اینه که همون اول که میخوای نصبش کنی ازت میپرسه که میخوای agent-driven توسعه بدی یا agent-assisted.
درسته که recommendationش فعلا روی agent-assisted هست ولی احتمالا بزودی این اولویتبندی هم تغییر میکنه..
https://antigravity.google
📱 @gocasts
Ai for Software
📱 @aicasts_ir
وقتی نیاز شخصیات میشه محصول ۵۰۰ میلیون دلاری
سپتامبر ۲۰۲۴، یه برنامهنویس به اسم Boris Cherny تازه به Anthropic جوین شده بود. داشت با مدل Claude ور میرفت که خودش رو با APIهاشون بیشتر آشنا کنه. اولین ابزارش یه چیز خیلی ساده بود: یه برنامه ترمینال که بهش میگفتی الان چه آهنگی داری گوش میدی! خیلی basic، خیلی شخصی، ولی جالب بود. بعد یه روز یهو به ذهن Boris خطور کرد که چرا فقط AppleScript؟ چرا نذاریم فایلسیستم رو ببینه؟ چرا نذاریم bash commands بزنه؟
همین که این قابلیتها رو اضافه کرد، دنیاش عوض شد. Claude شروع کرد به explore کردن کد، خوندن فایلها، دنبال کردن importها، و پیدا کردن جوابها. Boris خودش میگه: "این همون لحظهای بود که فهمیدم یه چیز بزرگ داره میشه." ابزاری که برای خودش ساخته بود، یهو تبدیل شد به چیزی که همکاراش هم میخواستن ازش استفاده کنن. تا روز پنجم، ۵۰٪ تیم مهندسی Anthropic داشتن باهاش کار میکردن!
حالا Claude Code یه ماشین درآمدزایی ۵۰۰ میلیون دلاری شده. یه تیم کامل داره، features جدید هر روز اضافه میشه، و داستانش شبیه همون چیزیه که Ken Thompson درباره Unix گفته بود:
"Unix was built for me. I didn't build it as an operating system for other people, I built it to do games, and to do my stuff."
یعنی Unix هم اول یه ابزار شخصی بود، بعد شد اساس سیستمعاملهای امروزی.
نکته داستان چیه؟ وقتی چیزی میسازی که واقعاً نیاز خودت رو رفع کنه، احتمالش خیلی زیاده که برای دیگرانی که نیاز مشابه دارن هم مفید باشه. Boris داشت یه مشکل شخصی حل میکرد، نه یه محصول تعریفشده. تیم Claude Code الانم با همین فلسفه کار میکنه: کمترین کد ممکن، سادهترین معماری، و اجازه بده مدل کارشو بکنه. حتی ۹۰٪ کد Claude Code با خود Claude Code نوشته شده! پس دفعه بعد که احساس میکنی یه ابزاری لازمه، نشین منتظر شرکتها یا استارتاپها. خودت بساز. شاید امروز فقط برای خودته، ولی فردا میشه یکی از بهترین ابزارهای دنیا.
https://newsletter.pragmaticengineer.com/p/how-claude-code-is-built
📱 @gocasts
Ai for Software
📱 @aicasts_ir
MCP آشنایی با
چند وقتی هست که شرکت Anthropic سازنده Cluade AI یک استانداردی رو معرفی کرده به اسم Model Context Protocol
خیلی خلاصه بخوام بگم MCP یه راه استاندارد برای integration هست که به AI systemها مثل Cluade اجازه بده به external resourceها مثل دیتابیس، api و غیره وصل بشن برای استخراج اطلاعات.
خودشون اینطوری معرفی کردن که MCP رو چیزی شبیه پورت USB-C ببینید برای اپلیکیشن های ai.
همانطور که پورت usb-c روی دستگاه ها یه روش استاندارد وصل کردن اونا به لوازم جانبی هست، MCP هم یه راه استاندارد برای اتصال مدل های ai به منابع و ابزار متفاوت و متنوع هست.
۳ تا کامپوننت اصلی داره:
هاست یا همون ai application مثل cluade
کلاینت MCP که توسط ai model استفاده میشه تا با منابع خارجی ارتباط بگیره
سرور MCP که مسئولیت برقراری ارتباط بین کلاینت MCP و منبع خارجی رو داره
مزیت ش چیه؟
به شما اجازه میده که ایجنت ها و workflowهای پیچیده بر روی LLMها بسازید و بین LLMهای مختلف سوییچ کنید.
https://modelcontextprotocol.io/introduction
@gocasts
Ai for Software
@aicasts_ir
خب بریم سراغ اولین مقاله ای که درباره الگوهای Generative AI در نرم افزار صحبت میکنه
یکی از نویسندگان این مقاله Martin Fowler معروفه
عنوان مقاله هست
Emerging Patterns in Building GenAI Products
این مقاله به بررسی الگوها و روشهای مختلف برای استفاده مؤثر از GenAI در توسعه نرمافزار و سایر حوزهها میپردازه. این مقاله integrate شدن GenAI، به ویژه مدلهای زبانی بزرگ (LLM) در workflowها رو برای افزایش بهرهوری، خلاقیت و حل مسئله بررسی میکنه.
در تصویر، لیستی از الگوهایی که مقاله به بررسی اونها پرداخته رو میبینید که شرح بیشتر هر کدوم در مقاله ارائه شده.
این مقاله تأکید میکند که GenAI ابزاری برای تقویت قابلیتهای انسانی است، نه جایگزینی برای اون، و اهمیت ادغام هوشمندانه و یادگیری مستمر رو برای به حداکثر رساندن پتانسیلش برجسته میکنه.
@gocasts
Ai for Software
@aicasts_ir
هوش مصنوعی حوزه های تخصصی خیلی متنوعی داره، سرعت تغییرش هم وحشتناک زیاده، تو Ai Casts سعی میکنیم تمرکزمون حول محور نقش ai برای توسعه software باشه.
الگوها و practiceهایی که ai بوجود میاره، در مراحل طراحی، پیاده سازی و استفاده از software تاثیر بسزایی داره و بهتره که سعی کنیم این الگوهارو یاد بگیریم و ازشون استفاده کنیم.
یه گروه هم ساخته شده که راحت تر بتونیم با همدیگه در مورد موضوعات مرتبط صحبت کنیم.
از طریق این id میتونید عضو گروه بشید.
@ai_software_eng
کانال AiCasts
@aicasts_ir
کانال GoCasts
@gocasts
