هوش مصنوعی چه تاثیری بر توسعه نرمافزار و برنامهنویسان میگذارد؟

با پیشرفتهای چشمگیر در حوزه هوش مصنوعی، بسیاری از صنایع با تحولات بنیادینی مواجه شدهاند و توسعه نرمافزار یکی از مهمترین این بخشها است که تحت تاثیر این فناوری را بهطور محسوسی احساس میکند. برنامهنویسان به لطف دستیارهای کدنویسی مبتنی بر هوش مصنوعی، میتوانند بهرهوری خود را تا سطح قابل توجهی افزایش دهند و وظایف پیچیده را در زمان کوتاهتری به پایان رسانند. اما در عین حال، نگرانیهایی نیز درباره آینده این حرفه و احتمال کاهش فرصتهای شغلی مطرح شده است.
به گزارش پیوست، نیویورک تایمز در گزارشی به تاثیر هوش مصنوعی بر توسعه نرمافزار و فعالان این حوزه پرداخته است. براساس این گزارش بسیاری از متخصصان در حال حاضر از این فناوری برای کدنویسی سریعتر و بهبود روند کاری خود استفاده میکنند. براساس دادههای یک نظرسنجی، حدود دو سوم از برنامهنویسان در حال حاضر از ابزارهای هوش مصنوعی در کدنویسی خود استفاده میکنند.
این ابزار در سالهای آینده به جزئی جدایی ناپذیر از توسعه نرمافزار تبدیل میشود اما به گفته متخصصان با اینکه شکل و شمایل مهارتهای مورد نیاز در این صنعت تغییر میکند، اما نیاز به برنامهنویسان از بین نخواهد رفت.
دستیارهای کدنویسی و تاثیر آنها بر توسعه نرمافزار
جان جورجی، دانشمند ۲۹ ساله رشته کامپیوتر، میگوید برای توسعه نرمافزارهای حوزه سلامت از هوش مصنوعی استفاده میکند. او در استارتآپی مشغول به کار است که نرمافزارهای خلاصهسازی و ثبت یادداشتهای پزشکی برای پزشکان طراحی میکند، اما جالب اینجاست که خود او نیز از دستیار کدنویسی هوش مصنوعی برای کدنویسی سریعتر و دقیقتر کمک میگیرد.
دستیار کدنویسی پیشنهادهای خودکار در اختیار او میگذارد و حتی تغییرات را توصیه کند. این ابزار میتواند نقایص و اشکالات را شناسایی کند و حتی تستهای اولیه انجام دهد. جورجی تخمین میزند که این ابزار روزانه حدود یک ساعت در زمان او صرفهجویی میکند. او معتقد است «دیگر نمیتواند بدون آن کار کند.»
تجربه جورجی منحصربهفرد نیست و بسیاری دیگر از توسعهدهندگان شرایط مشابهی دارند. بر اساس نظرسنجی شرکت تحقیقاتی Evans Data، در حال حاضر حدود دوسوم از برنامهنویسان از ابزارهای کدنویسی هوش مصنوعی استفاده میکنند.
آیا هوش مصنوعی جایگزین برنامهنویسان میشود؟
با پیشرفت روز افزون هوش مصنوعی، نگرانیهایی مبنی بر خودکارسازی کامل کدنویسی و از بین رفتن مشاغل برنامهنویسی مطرح شده است. برخی کارشناسان هشدار دادهاند که مدلهای پیشرفتهای مانند ChatGPT از شرکت اوپنایآی و Copilot میتوانند در آیندهای نهچندان دور، بسیاری از وظایف برنامهنویسان را بر عهده بگیرند.
مارک زاکربرگ، مدیرعامل متا، به تازگی پیشبینی کرده است که فناوری هوش مصنوعی تا پایان سال جاری میتواند عملکردی در حد یک مهندس نرمافزار سطح متوسط داشته باشد. اما با این حال، او معتقد است که این ابزارها میتوانند برنامهنویسان را از شر کارهای تکراری خلاص کنند تا آنها بتوانند روی جنبههای خلاقانهتر توسعه نرمافزار تمرکز کنند.
دیوید اوتور، اقتصاددان دانشگاه MIT، نیز بر این باور است که هوش مصنوعی در مدتزمانی کوتاهی بر برنامهنویسان تاثیر عمیق میگذارد. به گفته او، تغییر مهارتهای مورد نیاز در این حوزه اجتنابناپذیر است، اما نیاز به برنامهنویسان از بین نمیرود.
شرکتهای بزرگ فناوری آمریکا بهسرعت در حال توسعه و بهبود ابزارهای کدنویسی مبتنی بر هوش مصنوعی هستند. از میان مهمترین ابزارهای ارائه شده از سوی شرکتهای بزرگ میتوان به ابزار هوش مصنوعی GitHub Copilot از مایکروسافت اشاره کرد (شرکتی که به لطف همکاری نزدیک با اوپنایآی به بهترین ابزارهای هوش مصنوعی جهان دسترسی دارد) و آمازون و گوگل نیز به ترتیب Amazon CodeWhisperer و Codey را در اختیار برنامهنویسان قرار دادهاند.
توماس دوهماک، مدیرعامل GitHub، پیشبینی میکند که در آینده نزدیک، بین ۸۰ تا ۹۰ درصد کدها توسط هوش مصنوعی نوشته خواهد شد. از نگاه او در آینده توسعهدهندگان دیگر نه به عنوان کدنویسان سنتی، بلکه بهعنوان «رهبر یک ارکستری مبتنی بر هوش مصنوعی» به کار خود ادامه میدهند.
افزایش بهرهوری و تغییر مهارتهای مورد نیاز
طبق مطالعات انجامشده، ابزارهای کدنویسی هوش مصنوعی تاکنون توانستهاند بهرهوری توسعهدهندگان را بین ۱۰ تا ۳۰ درصد افزایش دهند. در شرکت KPMG، برنامهنویسانی که از GitHub Copilot استفاده میکنند، بهطور متوسط ۴.۵ ساعت در هفته در زمان خود صرفهجویی میکنند و معتقدند که کیفیت کدهایشان بهبود یافته است.
با این حال هوش مصنوعی تنها محدود به فرایند تولید کد نیست و میتواند به شکلهای دیگری نیز در فرایند توسعه نرمافزار نقشآفرینی کند:
- آموزش توسعهدهندگان جدید: بسیاری از مهندسان از دستیارهای هوش مصنوعی برای یادگیری سریعتر و درک بهتر مفاهیم پیچیده استفاده میکنند.
- بهبود مستندسازی کد: ایجاد توضیحات دقیق و خوانا برای کدها، یکی از چالشهای همیشگی برنامهنویسان است که اکنون میتواند تا حد زیادی خودکار شود.
- ترجمه و بهروزرسانی کدهای قدیمی: ابزارهای هوش مصنوعی میتوانند کدهای نوشتهشده در زبانهای قدیمی را به نسخههای جدیدتر تبدیل کنند.
چالشها و نگرانیها
با وجود تمام مزایایی هوش مصنوعی برای بخش توسعه نرمافزار به همراه داشته است، برخی از چالشها به قوت خود باقی هستند:
- کیفیت و دقت کدهای تولیدشده: اگرچه دستیارهای هوش مصنوعی توانستهاند میزان خطاهای خود را کاهش دهند، اما همچنان در برخی موارد پیشنهادهای اشتباه و گمراهکننده ارائه میدهند.
- کاهش فرصتهای شغلی برای توسعهدهندگان تازهکار: با خودکار شدن برخی وظایف پایهای، ورود به این حرفه برای برنامهنویسان مبتدی دشوارتر شده است.
- حفظ خلاقیت انسانی: اتکای بیش از حد به هوش مصنوعی ممکن است باعث کاهش خلاقیت و مهارتهای حل مسئله در توسعهدهندگان شود.
از این رو توسعه دهندگان و کدنویسان جدید باید یادگیری نحوه کار با هوش مصنوعی را در اولویت خود قرار دهند. جان جورجی، که از ابزارهای هوش مصنوعی برای کدنویسی استفاده میکند، میگوید: «من هنوز نگران از دست رفتن شغلم نیستم، اما اگر یک برنامهنویس تازهکار بودم، بدون شک یادگیری مهارتهای مربوط به هوش مصنوعی را در اولویت قرار میدادم.»
آینده برنامهنویسی در عصر هوش مصنوعی
توسعهدهندگان نرمافزار در دوران گذار به یک مدل کاری جدید قرار دارند که در آن مهارتهایی مانند خلاقیت، تفکر انتقادی، حل مسئله و مدیریت ابزارهای هوش مصنوعی اهمیت بیشتری پیدا میکند.
اسماعیل فوفانا، یکی از دانشجویان برنامه آموزشی Per Scholas که برای یادگیری برنامهنویسی ارائه شده است، معتقد است که «یادگیری نحوه مدیریت هوش مصنوعی به اندازه مهارتهای فنی سنتی اهمیت خواهد داشت.»
در نهایت، آینده توسعه نرمافزار نه در حذف برنامهنویسان، بلکه در تغییر نقش آنها از نویسندگان کد به مدیران و معماران سیستمهای هوش مصنوعی خواهد بود. آیا این تغییر یک فرصت است یا یک تهدید؟ تنها زمان مشخص خواهد کرد.
منبع





