آیندهٔ برنامهنویسی؛ چیزی فراتر از نوشتن سینتکس | به کجا میرویم؟
یکی از موضوعاتی که مدتی است زیاد به آن فکر میکنم، آیندهٔ برنامهنویسی است.
مدت زیادی است که از AI Agentها استفاده میکنم و چیزی که برایم واضح شده این است که واقعاً عملکرد خوبی دارند. مخصوصاً در کدنویسی و نوشتن سینتکس، در بسیاری از مواقع از یک برنامهنویس Mid-level جلوتر هستند؛ حتی گاهی میتوانند در سطح یک Senior Developer هم خروجی قابلقبولی بدهند.
البته این ابزارها بدون مشکل نیستند. هزینهبر بودن، وابستگی شدید به آنها و حتی کم شدن انگیزه برای یادگیری عمیق، از چالشهایشان هستند. از طرف دیگر، وقتی پروژه از یک مقیاس مشخص بزرگتر میشود، حتی Agentهای قدرتمندی مثل Claude و Cursor هم به چالش کشیده میشوند.
چیزی که به آن رسیدهام این است که مهارتهایی مثل موارد زیر، از صرفاً کدنویسی مهمتر شدهاند:
- اصول پایگاه داده
- مهندسی نرمافزار
- System Design
- Clean Architecture
- توانایی حل مسئله
- شناخت حوزهٔ مسئله یا Domain Knowledge
- مقیاسپذیری و مدیریت پیچیدگی پروژه
به نظرم آینده به این سمت میرود؛ هرچند واقعیت این است که هیچکداممان دقیقاً نمیدانیم آینده قرار است به کجا برسد.
فکر میکنم الآن دقیقاً روی لبهٔ یک تغییر تکنولوژیک ایستادهایم. اگر جنگ و بحثی که بین اساتید برنامهنویسی در لینکدین و اینستاگرام راه افتاده را دیده باشید، احتمالاً شما هم حس کردهاید که خودشان هم دقیقاً نمیدانند چه اتفاقی در حال رخ دادن است!
اما یک موضوع تقریباً روشن است: تمرکز از روی «سینتکسنویسی» در حال برداشته شدن است.
در پروژههای کوچک و متوسط، مدل میتواند پیشنهاد بدهد، مسیر کار را جلو ببرد و حتی در تصمیمگیریها نقش یک همتیمی را داشته باشد. میتوانید با آن مشورت کنید، یک روند بسازید و بخش زیادی از اجرای کار را پیش ببرید.
اما بسته به موضوع و مقیاس پروژه، فعلاً هنوز لازم است که دانش حوزه داشته باشید تا بتوانید خروجی درست را از Agent بگیرید و پروژه را واقعاً به نتیجه برسانید.
روی «فعلاً» تأکید دارم؛ چون نمیدانیم ۵ یا ۶ سال آینده دقیقاً چه شرایطی خواهیم داشت.
هم نگاه افراطیِ کسانی که میگویند «برنامهنویسی کاملاً تمام شده» را اغراقآمیز و زرد میدانم، و هم نگاه کسانی را که میگویند «Agentها بیفایدهاند، جای برنامهنویس را نمیگیرند و همهچیز مثل گذشته میماند».
به نظرم کسانی بیشتر با این تغییر دچار چالش میشوند که هویت خودشان را صرفاً به «برنامهنویس بودن» گره زدهاند. طبیعی است که آدم بخواهد با روشهای مختلف از تغییری که هویتش را تهدید میکند دوری کند.
از طرف دیگر، من تا حدی کدنویسی مبتنی بر Agent و رویکرد جدیدی که شکل گرفته را به نفع بچههای رشتههای دیگر، مخصوصاً حوزهٔ سلامت، میدانم.
خودم در گذشته تجربه کردهام که پیدا کردن یک تیم برنامهنویسی و هماهنگ کردن اهداف، ذهنیتها و زبان مشترک بین افراد از رشتههای مختلف چقدر انرژیگیر و چالشبرانگیز است.
اما الآن، با تشکیل تیمهای کوچک بین همرشتهایها، حتی اگر تخصص عمیقی در برنامهنویسی نداشته باشند، میشود ایدهها را تا سطح نسبتاً خوبی جلو برد.
حتی دیدهام خیلی از اساتیدی که بیشتر مقالهمحور بودند، دارند با کمک همین Agentها به سمت اجرای ایدههایشان میروند. این اتفاق فاصلهٔ بین «ایده داشتن» و «ساختن» را کمتر کرده است.
برای بچههای حوزهٔ سلامت هم این یک فرصت مهم است؛ چون میتوانند بدون وابستگی کامل به رشتههایی مثل کامپیوتر، ایدههای خودشان را به نمونهٔ اولیه و حتی محصول تبدیل کنند.
به نظرم بهجای اینکه هویتتان را به برنامهنویس بودن گره بزنید، بهتر است برنامهنویسی را یک ابزار ببینید؛ ابزاری که قرار است آن را با دانش حوزهٔ سلامت ترکیب کنید و با آن یک مسئلهٔ واقعی را حل کنید.
و البته همیشه باید این نکته را هم به آخر صحبتها اضافه کنم: اینجا ایران است و بعضی روندها ممکن است مسیر متفاوت خودشان را داشته باشند.
اما من استفاده از Agentها برای کدنویسی را هم در دانشگاه و هم در محیط کار از نزدیک دیدهام. اگر در این حوزه فعالیت میکنید یا به تکنولوژی علاقه دارید، به نظرم بهتر است حتماً به سمتشان بروید و کار کردن با آنها را یاد بگیرید.
کار با Agentها فقط دادن یک Prompt و گرفتن خروجی نیست. جزئیات زیادی دارد که عمدتاً با تجربه به دست میآیند: از نحوهٔ تعریف مسئله و شکستن تسکها گرفته تا بررسی خروجی، مدیریت Context و تصمیمگیری دربارهٔ معماری.
یک نکتهٔ دیگر هم اینکه، فعلاً به نظرم نسخههای رایگان Agentها برای یادگیری جدی خیلی مناسب نیستند. اگر واقعاً میخواهید تجربهٔ خوبی داشته باشید، احتمالاً لازم است کمی هزینه کنید.
Post #749
1.84K
- ❤ 17