ترسم مايكروسوفت صورة لمستقبل يتحكم فيه الذكاء الاصطناعي في كل شيء على جهاز الكمبيوتر الخاص بك، حيث تقوم الوكلاء (Agents) بالعمل نيابة عنك في الخلفية. ولكن قبل أن تصل الشركة إلى هذا الهدف الطموح، يجب عليها بناء الأدوات اللازمة لجعل هذه الأنظمة تعمل، والأهم من ذلك، إقناع مطوريها بأن الذكاء الاصطناعي قادر بالفعل على تحقيق هذه الوعود الكبيرة.
محتويات المقالة:
- ادعاءات جريئة: 30% من الأكواد بواسطة الذكاء الاصطناعي
- وجهة نظر المطورين: بين التشكيك والتفاؤل
- الهدف: تقليل الجهد الروتيني للمطورين
- تحديات التطبيق: التعامل مع الأكواد القديمة
- مستقبل هندسة البرمجيات في عصر الذكاء الاصطناعي
- الأسئلة الشائعة
ادعاءات جريئة: 30% من الأكواد بواسطة الذكاء الاصطناعي
كشف الرئيس التنفيذي لشركة مايكروسوفت، ساتيا ناديلا، في وقت سابق من هذا العام أن ما يصل إلى 30% من الأكواد البرمجية في “بعض مشاريعنا” مكتوبة بواسطة الذكاء الاصطناعي. هذا التصريح أثار اهتماماً كبيراً حول كيفية استخدام مطوري مايكروسوفت لهذه التكنولوجيا بالضبط. وبينما تروج الشركة لنجاحها المبكر في نشر الذكاء الاصطناعي داخلياً، فإن الواقع على الأرض يبدو أكثر تعقيداً.
وجهة نظر المطورين: بين التشكيك والتفاؤل
تتفاوت آراء المطورين داخل مايكروسوفت حول فعالية الذكاء الاصطناعي. يشعر البعض بالتفاؤل تجاه قدرة الأدوات المدعومة بالذكاء الاصطناعي، مثل GitHub Copilot، على تسريع عملية التطوير والتعامل مع المهام المتكررة. ومع ذلك، أعرب موظفون آخرون عن شكوكهم في أن وكلاء الذكاء الاصطناعي سيتمكنون من استبدال عمل البشر بالكامل.
أحد المخاوف الرئيسية هو أن المطورين قد يجدون أنفسهم يقضون وقتاً أطول في إصلاح الأخطاء التي ترتكبها الوكلاء الآلية بدلاً من كتابة أكواد جديدة ومبتكرة. هذا يثير تساؤلات حول التوازن بين الأتمتة والإشراف البشري في عملية التطوير.
الهدف: تقليل الجهد الروتيني للمطورين
من منظور الإدارة، الهدف الأساسي هو زيادة الكفاءة وتقليل ما يُعرف بـ “جهد المطور” (Developer Toil) – وهي المهام الروتينية والمستهلكة للوقت التي لا تضيف قيمة مباشرة للمنتج النهائي.
تقول أماندا سيلفر، نائبة رئيس في فريق CoreAI بمايكروسوفت والتي تقود المنتج لمنصة التطبيقات والوكلاء بالشركة: «نريد حقاً أن ننظر إلى أين يوجد جهد المطور، وأين توجد أوجه القصور لدينا. جزء مما ننظر إليه هو كيف يمكننا تطبيق الذكاء الاصطناعي وأين يمكننا تطبيقه».
يركز النهج على استخدام الذكاء الاصطناعي لأتمتة المهام مثل كتابة الاختبارات، وتصحيح الأخطاء البسيطة، وتوليد الوثائق، مما يتيح للمطورين التركيز على الجوانب الأكثر تعقيداً وإبداعاً في هندسة البرمجيات.
تحديات التطبيق: التعامل مع الأكواد القديمة
تواجه مايكروسوفت تحديات فريدة في تطبيق الذكاء الاصطناعي على نطاق واسع. يوجد أكثر من 100,000 مستودع أكواد داخل الشركة، تتراوح من المشاريع الجديدة تماماً إلى قواعد الأكواد القديمة (Legacy Codebases) التي يزيد عمرها عن 20 عاماً ولا تزال قيد التشغيل.
توضح سيلفر: «لدينا تقريباً كل لغة برمجة، وبنية، ومرحلة دورة حياة يمكن تخيلها، وهذا يعكس حقاً الكثير من عملائنا». يمثل هذا التنوع تحدياً كبيراً لأدوات الذكاء الاصطناعي، التي تحتاج إلى فهم سياق وبنية الأكواد القديمة والمعقدة لتكون فعالة حقاً في تحديثها أو صيانتها.
مستقبل هندسة البرمجيات في عصر الذكاء الاصطناعي
تشير تجربة مايكروسوفت إلى أن دور مهندس البرمجيات يتطور بسرعة. بدلاً من كتابة كل سطر من الأكواد يدوياً، يتحول المطورون بشكل متزايد إلى دور “المديرين” أو “المنسقين” لأدوات الذكاء الاصطناعي. يتطلب هذا مجموعة مهارات جديدة تركز على فهم كيفية توجيه الذكاء الاصطناعي بفعالية، والتحقق من مخرجاته، ودمجها في أنظمة أكبر.
وبينما قد لا يحل الذكاء الاصطناعي محل المطورين البشريين في أي وقت قريب، فمن الواضح أنه أصبح جزءاً لا يتجزأ من عملية التطوير في واحدة من أكبر شركات التكنولوجيا في العالم. إن كيفية إدارة مايكروسوفت لهذا التحول ستوفر دروساً قيمة للصناعة بأكملها.
الأسئلة الشائعة
س: هل سيحل الذكاء الاصطناعي محل المبرمجين البشريين؟
ج: من غير المرجح أن يحل الذكاء الاصطناعي محل المبرمجين بالكامل في المستقبل القريب. بدلاً من ذلك، سيعمل كأداة قوية لزيادة الإنتاجية وأتمتة المهام الروتينية، مما يغير دور المطورين للتركيز على المهام الأكثر تعقيداً وإبداعاً والتحقق من عمل الذكاء الاصطناعي.
س: ما هي المهام التي يجيد الذكاء الاصطناعي أداءها في تطوير البرمجيات حالياً؟
ج: يجيد الذكاء الاصطناعي مهام مثل إكمال الأكواد تلقائياً، وتوليد قوالب الأكواد (Boilerplate code)، وكتابة الاختبارات الأولية، والمساعدة في تصحيح الأخطاء، وتلخيص وتوثيق الأكواد البرمجية.
س: ما هي التحديات الرئيسية لاستخدام الذكاء الاصطناعي في كتابة الأكواد؟
ج: تشمل التحديات ضمان دقة وجودة الأكواد المولدة، والمخاوف الأمنية (إدخال ثغرات غير مقصودة)، والتعامل مع قواعد الأكواد القديمة والمعقدة، والحاجة إلى إشراف بشري مستمر للتحقق من المخرجات.