تلاش برای تکمیل حلقه گمشده زنجیره برنامه نویسی

 

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

سناریویی را تصور کنید که در آن یک برنامه‌نویس نیاز دارد از رویکرد سنتی آزمون و خطا استفاده کند تا سرانجام موفق شود یک مولفه یا قطعه کدی که متعلق به یک برنامه بزرگ است را با موفقیت نوشته و به دست برنامه‌نویس دیگری بسپارد. برنامه‌نویس دوم نیز یکسری بازبینی‌ها همچون بهینه‌سازی، شناسایی باگ‌ها و آزمایش‌های دیگری که با هدف کم کردن تعداد دستورات برنامه‌نویسی می‌شود را روی این قطعه کد اجرا می‌کند. اکنون این پرسش به ذهن ما می‌رسد که اساسا ضرورتی وجود دارد که ما از برنامه‌نویس اول برای انجام این‌کار استفاده کنیم؟ ما نمی‌توانیم یک روبات را جایگزین چنین فردی کنیم؟ تقریبا چند ماه پیش بود که مدیرعامل سایت گیت‌هاب پیش‌بینی کرده بود که در آینده کدنویسی به فرآیندی تبدیل خواهد شد که در آن فرآیند کدنویسی از سوی برنامه‌نویسان انجام نخواهد شد.

 اکنون پس از گذشت چند ماه پژوهشگران موسسه آزمایشگاه ملی Oak Ridge واقع در ایالات تنسی گفته‌اند که تا سال 2040 بخش اعظمی از کدهای مورد استفاده در نرم‌افزارهای کامپیوتری و برنامه‌هایی که از سوی ماشین‌ها مورد استفاده قرار می‌گیرد از سوی خود ماشین‌ها نوشته خواهد شد. پژوهشگران آزمایشگاه یاد شده در مقاله‌ای که در این زمینه منتشر کرده‌اند، این پرسش را مطرح کرده‌اند که اساسا آیا انسان‌ها تا سال 2040 موفق خواهند شد هیچ کدنویسی را انجام ندهند؟ و آیا این هوشمندسازی کدنویسی باعث به وجود آمدن یک ناهمگونی در دنیای محاسبات نخواهد شد؟ پژوهشگران اظهار داشته‌اند که ترندهای جاری برنامه‌نویسی و تلاش‌هایی که با هدف ورود ماشین‌ها به این حوزه در حال انجام است و به نام کدهای تولید شده از سوی ماشین (Machine Generated Code) از آن نام برده می‌شود در نهایت باعث خواهند شد تا هوش مصنوعی بتواند چنین نقشی را عهده‌دار شود.

 با توجه به توسعه اخیر برنامه‌هایی شبیه به DeepCoder مایکروسافت، AutoML شرکت گوگل و پژوهش‌هایی که در زمینه برنامه‌نویسی تحلیلی برای پیشبرد هرچه بهتر آموزش به ماشین در جریان است نباید از شنیدن این حرف متعجب شویم. AutoML و DeepCoder خیلی وقت است که از یادگیری ماشینی برای تولید کدهایی که قابلیت اجرایی دارند استفاده می‌کنند. از طریق به‌کارگیری ابزارهایی همچون DOG4DOG این امکان وجود دارد تا یک پایگاه داده اطلاعاتی کامل را تولید کرد. همچنین از طریق به‌کارگیری فناوری‌هایی همچون Eclipse Modeling Framework و Sirius که قادر به تولید کدها هستند، این امکان وجود دارد تا کل سلسله مراتب داده‌ها، رابط کاربری و لایه میانی را نیز ایجاد کرد.

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

منبع:شبکه

    نظرات

    "تخریب خلاقانه"در سیلیکون ولی
    شرکت ها و برندها
    "تخریب خلاقانه"در سیلیکون ولی
    اگرچه سیلیکون ولی، دستاوردهای تحول آفرینی زیادی را به دنیای دیجیتال عرضه کرده، اما به طور خطرناکی به یک کارخانه تک محصولی مردان سفیدپوست و نخبه کامپیوتر تبدیل شده است.
      2018-10-05 16:25:00
    کناره گیری ایلان ماسک
    شخصیت ها
    کناره گیری ایلان ماسک
    اگر توافق به‌دست آمده طبق برنامه پیش برود، ماسک باید ظرف 45 روز از مقام ریاست هیئت مدیره کناره‌گیری کند و حداقل تا سه سال بعد از آن نمی‌تواند برای این پست انتخاب شود.
      2018-10-02 07:40:09
    استارتاپ ناب ،جذاب‌ترین بازیگر دنیای کارآفرینی
    تازه های کسب و کار
    استارتاپ ناب ،جذاب‌ترین بازیگر دنیای کارآفرینی
    این متدولوژی به شما می‌گوید، فرآیند آزمایش را به جای برنامه‌ریزی سنگین، بازخورد مشتری را به جای شهود و طراحی تکرار شدنی را به جای راه‌کار سنتی توسعه "طرحی کامل و عالی در ابتدا" مورد استفاده قرار دهید.
      2018-10-02 06:58:00