شرح كيف التكنولوجيات الجديدة، زي LLMs و ChatGPT، ممكن يغيروا واجهات برمجة التطبيقات (APIs) بالمستقبل. عطيني مثال عن كيفية عمل هالوجهات المستخدمة.
كصبي، حبيت شوف جيتسونز. بعد ما كبرت و خلصت بكتابة برمجيات و خلق و تنفيذ بنيات للأنظمة، فكرت إنني ما رح أشوف يوم يكون فيه مطبخ زي جيتسون ممكن. جي تي تي (تشات جي تي تي، إلخ) غير رأيي.  التزامات تعاقدية كونك مهندس معماري، لازم تفكر زي محامي. بتعرف العقود (API) بين الأنظمة أو المكونات. بتتعقبوا هالأجهزة عشان تستغل أو تستغل بالشكل الغير صحيح.  رح استعمل محرر Swagger عشان أعرّف هالعقود، و رح أكتب واجهة برمجة التطبيقات عشان تتطابق مع التفاعلات المضمنة في النماذج. كنت بفحص التصميم مع الفريق، كنت بروح من خلال سيناريوهات لأشوف إذا كانت واجهة التطبيقات بتتناسب مع حالة الاستخدام ولاتقدم ضغوط أداء، و كنت أحاكي وأتمتة بقدر الإمكان على طول الرحلة.  أنا كنت محتاط جدا لأحصل عليه بالجولة الأولى. هيديش كانت مثالية المرة الأولى، بطبيعة الحال. عشان كدا، لازمني بردو نتفكر كيف بتتطور الـ API مع التقليل من التكاليف/التأثير على بقية النظام. بعد ما ينشروا الـ API، بيصير شي بيحميه، زي السياسي الصادق بيحميه الدستور. لازم يكون الفريق حذرا مع أي تغيير بيأثر على الـ API.  شبكة API... أكتر شبيه بفوضى المنتج! التطبيقات بتعتمد على التطبيقات اللي بتعتمد على كتير من التطبيقات والمكتبات. بعد ما يصير النظام كبير كفاية، بتكون التعقيد عقدة. التغييرات الصغيرة بتقدر يكون ليها تأثير كبير. شوية طرق (زي #GraphQL المتحالف) بيساعدوا في إدارة التعقيد. بس بضل بيحتوي على واجهة برمجة التطبيقات اللي ممكن يكون فيها كتير هشاشة. #Agile أو مش، تطوير شبكة معقدة من واجهات برمجة التطبيقات معقد، بيحتاج مهارات متخصصة، ومليء بتحديات غير متوقعة.  محادثة المطبخ، بأسلوب شات جي بي تي مطبخ جيتسون بيحتوي على عدد من الأنظمة، كل وحدة بتتكون من أجزاء مختلفة، أجهزة استشعار، أجهزة، مدخلات ومخرجات. بعين الاعتبار تعقيد التفاعلات بين الأنظمة المستقلة في المطبخ، وحقيقة إن مكونات مطبخ جيتسون بتجي من مختلف البائعين أو المصنعين، تصميم API التقليدي ما بيقدر يحقق الرؤية. مش عملي، إطلاقاً.  هلق، خلينا نفكر في واجهة برمجة التطبيقات ومطبخ جيتسون، على غرار #chatgpt.  خلينا نحافظ على الأمر بسيط: بيتزا. إنت (أو الروبوت بتاعك) بتعمل بيتزا من الصفر.  الفرن بيسأل الثلاجة: "بوفي إننا عنا بيتزا. فيك تقلي إذا هيدا موزاريلا منخفض الرطوبة؟"  ثلاجة: "هيدا مش حتى موزاريلا. هالبيتزا لازم يكون فيها جبنة منستر لأن هيدا كل اللي عندي. و البشري إزاح شوية من المحتويات من نص ساعة، فاحتمال وجود جبنة منستر عالبيتزا عالية".  مستشعر من المطبخ اللي عنده عيون عبر الأوضة بيطلع في هالمرحلة. مستشعر: "احذرو إنو قشرة البيتزا هيدا مصنوعة من القرنفلور. أنا موافق على تقييم مستشعر الفيديو بخصوص نوع الجبن. ما في جبنة جديدة دخلت المطبخ هلأ".  أوفن: "أي شي تاني لازم أعرفه؟"  مستشعر: "درجة حرارة العجينة 47 درجة مئوية. هيدا أحسن من الإجماع بين الطباخين الخبراء عن إستخدام العجينة بدرجة حرارة الغرفة".  فرن: "ممتاز. بعرف شو لازم أعمل. بما إن العجينة باردة، رح ابدأ بالطبخ بدرجة حرارة أقل شوي من اللي بتحدده الوصفة. بعدين رح زيادة درجة حرارة العنصر السفلي عشان نتوفر قشرة ناعمة. رح أحافظ عن الرطوبة و ممكن إستخدم التدفئة عشان أخفف من مستويات الرطوبة اللي ما بدنا".  وين برنامج التطبيقات اللي بيربط معاهدة الأنظمة المستقلة؟ الـAPIs ما رحلوا. مثلاً، دماغ الفرن رح يكون عنده عدد كبير من واجهات التطبيقات (زي للتفاعل مع وحدات التحكم في درجة الحرارة وأجهزة الاستشعار، إلخ). المفتاح هون هو إن الواجهة بين الأنظمة ما زالت واجهة برمجة تطبيقات ثابتة. ما في توقيعات طريقة، ولا مسارات، ولا مواصفات حمولة. بدلًا من هيك، هيدي محادثة بتتعلق بالحواس والقدرات.  أي "دماغ"؟ كتاب كينس أندرسون تصميم الذكاء الاصطناعي المستقل بيوصف بشكل حلو كيفي النظام المعقد يمكن يتحلل لعدد من "الأدمغة" المستقلة. كل دماغ، في كتابه، ممكن يتطور ويتحسن بشكل مستقل، بتوجيه بشري متزوج من علم البيانات، التعلم الآلي و هندسة البيانات.  شو بيطبخ؟ أنا متحمس لما بيخزن المستقبل. كيف المهندسين المعماريين يعيدوا يفكروا في تصميم النظام المعقد بالنسبة لمواصفات التطبيقات، في رأيي، شيء لازم. وبصفتي صانع بيتزا هاوي، حبات التذوق بتشوقني لليوم اللي رح آخد فيه مساعدة من GPT علشان أصنع بيتزا أحسن.