هندسة المنصات و InnerSource: بناء مجتمعات المطورين على نطاق واسع

لحظة Backstage: عندما يبدأ العمل الحقيقي #

لقد فعلتها مؤسستك. لقد نجحت في تنفيذ Backstage. لقد ألقيت محاضرات في المؤتمرات حول تحول هندسة المنصات لديك. لقد أظهرت كيف توفر بوابة المطورين الخاصة بك رؤية شاملة لكل شيء عبر مؤسستك الهندسية. لقد وضعت علامة على جميع الصناديق.

لكن إليك الحقيقة المزعجة: تنفيذ Backstage لا يعني أنك “أنجزت” هندسة المنصات - بل يعني أنك وصلت أخيراً إلى خط البداية.

هندسة المنصات لا تساوي Backstage، تماماً كما أنها لا تساوي أي أداة أو حل محدد. الجميع يعرف هذا فكرياً، ومع ذلك تقع المؤسسات باستمرار في نفس الفخ: يركزون على التكنولوجيا وينسون الثقافة.


نمط الفشل المتكرر للمنصات المشتركة #

قبل أن نتعمق في ما تتطلبه هندسة المنصات فعلياً، دعونا نعترف بالفيل في الغرفة: معظم المنصات المشتركة والمكتبات العامة فشلت تاريخياً. هذا ليس سراً - إنه نمط موثق جيداً من المفترض أن تحله هندسة المنصات.

لكن لماذا تفشل؟ الإجابة تتبع دائماً أحد نمطين متوقعين:

النمط الأول: فخ مكتب الخدمة يصبح فريق المنصة الخاص بك مكتب خدمة، يغرق في طلبات الميزات والمتطلبات العامة وإدارة التبعيات من كل فريق في المؤسسة. تتدفق المتطلبات المتضاربة، مما يجبرك إما على أن تصبح متجر تطوير مخصص لكل حالة استخدام أو تشاهد منصتك تتفرع إلى فروع غير قابلة للصيانة. دورات الصيانة طويلة المدى تزيد المشكلة تعقيداً - أنت لا تبني الميزات فحسب، بل تحافظ على حديقة حيوان من التطبيقات المخصصة التي تزداد تعقيداً مع الوقت.

النمط الثاني: البرج العاجي عندما يصبح فيضان الطلبات مرهقاً، تبدأ فرق المنصات في قول “لا”. يرفضون متطلبات المستخدمين، ويرفضون استيعاب الحالات الاستثنائية، ويصرون على أن الفرق تستخدم المنصة كما هي. النتيجة؟ الفرق تبني حلولها الخاصة. المنصة المشتركة تصبح غير ذات صلة. انتهت اللعبة.

هذه الإخفاقات ليست هيكلية - إنها ثقافية. وجود بوابات فاخرة وأدوات متطورة لا يحل المشكلة الأساسية: كيف تخلق علاقات تعاونية ومستدامة بين مقدمي المنصات ومستهلكي المنصات؟


التطبيق الثقافي المفقود #

فكر في إعداد GitHub الحالي لديك. ربما يخدم كـ “بوابة” افتراضية لمؤسستك - مكان واحد حيث يمكنك اكتشاف المستودعات والتعاون من خلال القضايا والوصول إلى الوثائق. عندما كان لديك 100 مستودع، لم تكن بحاجة إلى Backstage. كان GitHub كافياً. لكن عندما توسعت إلى آلاف المستودعات، احتجت إلى تلك الطبقة الإضافية من التنظيم والاكتشاف.

نفس المبدأ ينطبق على هندسة المنصات. البنية التحتية والأدوات هي مجرد الأساس. ما تبنيه حقاً هو مجتمع مطورين - والمجتمعات تتطلب ممارسات ثقافية مقصودة، وليس فقط أدوات أفضل.

هنا تتقاطع هندسة المنصات بقوة مع مبادئ البنية التحتية كرمز. تتضمن هندسة المنصات توليد القوالب والنشر المعياري والتوفير الآلي - جميع المفاهيم التي تتماشى مع معاملة البنية التحتية كبرمجيات. لكن على عكس IaC التقليدية، يجب أن تتعامل هندسة المنصات أيضاً مع العناصر البشرية: كيف يكتشف المطورون ما هو متاح؟ كيف يطلبون التغييرات؟ كيف يساهمون بالتحسينات؟


التعلم من موردي السحابة: دليل مجتمع المطورين #

إليك تغيير في المنظور يغير كل شيء: كفريق منصة، أنت تدير في الأساس مورد سحابة داخلي. أنت تأخذ تعقيد AWS وAzure وGCP - بمئات أو آلاف خدماتهم - وتقطرها إلى منصة مبسطة على مستوى المؤسسة يمكن لمطوريك نشرها بسهولة.

وكيف يتواصل موردو السحابة مع المطورين؟ من خلال GitHub. من خلال مستودعات الوثائق. من خلال GitHub Discussions. من خلال مكونات مفتوحة المصدر وتتبع شفاف للقضايا. من خلال محادثات مترابطة محفوظة وقابلة للبحث. من خلال آليات التصويت حيث ردود فعل المجتمع تقود قرارات المنتج.

رأيت هذا بشكل مباشر خلال وقتي كمهندس معماري سحابي في Microsoft. في النهاية، صوت العميل يقود كل شيء. فرق المنتج تريد بشدة فهم نقاط ألم المستخدمين، والتحقق من صحة ما إذا كانت القضايا تؤثر على العديد من المستخدمين، وقياس التأثير التجاري. أحياناً يتضمن هذا جمع المعلومات يدوياً وعمليات ترشيح العملاء، لكن بشكل متزايد، يشبه نموذج المنتدى المفتوح حيث أعداد كبيرة من المستخدمين يصوتون على الميزات وفرق المنتج تشارك مباشرة في المناقشات العامة.

هذا ليس مصادفة - إنه النموذج المثبت للمنتجات المركزة على المطورين على نطاق واسع.


InnerSource: الجسر الثقافي #

يوفر InnerSource الإطار الثقافي المفقود لنجاح هندسة المنصات. لا يتعلق الأمر بفتح جميع أكوادك الداخلية أو توقع مساهمات سحرية من مؤسستك. يتعلق بالتحول التدريجي نحو بيئة أكثر انفتاحاً وشفافية وتعاوناً.

يمكّن InnerSource الثقافة التعاونية التي تتطلبها هندسة المنصات. يجعل طلبات السحب والمناقشات الشفافة هي القاعدة وليس الاستثناء. والأهم من ذلك، ينشئ بيئة حيث يمكن للمهندسين أن يزدهروا كمساهمين ومستهلكين على حد سواء.

إليك لماذا هذا مهم لفرق المنصات: عملاؤك هم مطورون داخليون - مهندسون يتحدثون لغة الكود، ويفهمون سير عمل GitHub، ويمكنهم المساهمة بشكل مفيد في تطوير المنصة. منهجيات التواصل مع مجتمعات المطورين الداخليين مختلفة جوهرياً عن نهج Agile المصممة لمنتجات المستخدم النهائي.

مستخدمو منصتك يتواصلون من خلال أنظمة إدارة كود المصدر. إنهم تقنيون. يمكنهم المساهمة بالكود والوثائق والتحسينات المفيدة. يوفر InnerSource الأنماط المثبتة لاستغلال هذه القدرة.


طوبولوجيا الفرق وأنماط التعاون #

طوبولوجيا الفرق، الكتاب الأكثر مبيعاً الذي يشير إليه الجميع عند مناقشة هندسة المنصات، يحدد أنماط تعاون مختلفة بين الفرق. لكن إليك رؤية حاسمة: ليس كل أنواع الفرق تستفيد بالتساوي من نهج InnerSource.

فرق المنصات و InnerSource: تطابق مثالي فرق المنصات لديها أعلى علاقات تبعية في معظم المؤسسات. عندما تُستخدم مكتبة واحدة من قبل 100 شخص، التطوير التعاوني يفيد جميع المستخدمين الـ 100. يمنع إعادة الاختراع، ويقلل عبء المراجعة، وينشئ وفورات الحجم. هذا النمط عالي التبعية وعالي إعادة الاستخدام يجعل InnerSource قيماً بشكل لا يصدق لفرق المنصات.

الفرق المتماشية مع التدفق: ملاءمة أقل طبيعية الفرق المتماشية مع التدفق، بالتصميم، لديها معرفة مجال منفصلة تماماً وتبعيات متقاطعة بين الفرق قليلة. التعاون بين الفرق المتماشية مع التدفق محدود طبيعياً لأنها محسنة للاستقلالية. عندما توجد تبعيات، من المرجح أن تكون علاقات مستهلك-مقدم بدلاً من علاقات تطوير تعاونية.

هذا التمييز مهم. فرق المنصات تستفيد طبيعياً من InnerSource لأنها تعكس ديناميكيات مشاريع المصدر المفتوح الناجحة: إعادة استخدام عالية، مساهمون متنوعون، وفوائد صيانة مشتركة.


عصر الذكاء الاصطناعي: تضخيم هندسة المنصات من خلال معمارية معلومات أفضل #

بينما ندخل عصر الذكاء الاصطناعي، تصبح هندسة المنصات أكثر أهمية - ومبادئ InnerSource تصبح أكثر قيمة. إليك السبب:

تطوير المنصات بمساعدة الذكاء الاصطناعي بدلاً من أن يستجيب البشر فوراً لقضايا المستخدمين، يمكن للمنصات تعيين الفرز الأولي ومحاولات الحل لأنظمة الذكاء الاصطناعي. لكن هذا يتطلب معمارية معلومات يمكن للذكاء الاصطناعي فهمها: معلومات موحدة في مستودعات GitHub، ووثائق واضحة، وتاريخ قضايا شامل، وقوالب معيارية.

رحلة المستخدم المثالية تصبح: اكتشاف قدرات المنصة من خلال بوابتك ← مواجهة مشكلة ← إنشاء قضية GitHub ← فريق المنصة يعين القضية للذكاء الاصطناعي للتحليل الأولي ← مراجعة وتنفيذ بشري. هذا التدفق يعمل فقط عندما تعيش جميع المعلومات ذات الصلة - الوثائق، تاريخ المحادثات، التذاكر ذات الصلة - في تنسيقات يمكن للذكاء الاصطناعي الوصول إليها.

تحدي توحيد المعلومات أفهم القيود. ليس لدى الجميع تراخيص GitHub Enterprise. قد يكون كود المصدر مستضافاً على مدونات داخلية أو AWS CodeCommit. قد تعيش الوثائق ذات الصلة في Google Docs. قد تكون قنوات التواصل المختلفة مبعثرة عبر Slack وDiscord ومنصات أخرى.

لكن إليك الرؤية الحاسمة: كل حل بديل تنفذه لاستيعاب هذه القيود يزيد العبء التشغيلي لفريق المنصة الخاص بك. قنوات التواصل المتعددة تخلق محادثات مجزأة. المعلومات الموزعة تقلل القابلية للتتبع. سير العمل غير المتسق يؤدي إلى التكرار والارتباك.

بينما لا يغير الذكاء الاصطناعي جوهرياً ما تحتاج فرق المنصات لفعله، فإنه يجعل جودة معمارية المعلومات الخاصة بك أكثر أهمية من أي وقت مضى. يمكن للذكاء الاصطناعي تقليل الجهد المطلوب لحل قضايا المنصة الشائعة بشكل كبير - لكن فقط إذا كنت قد هيكلت معلوماتك لاستهلاك الذكاء الاصطناعي.


التطبيق العملي: المبادئ الأربعة لـ InnerSource لفرق المنصات #

1. الانفتاح: جعل المشاريع قابلة للاكتشاف والمساهمة #

مكونات منصتك تحتاج لأن تكون أكثر من مجرد متاحة - تحتاج لأن تكون قابلة للوصول للمساهمة. مجرد تسجيل المستودعات في Backstage ليس كافياً. كل مستودع يحتاج وثائق واضحة حول من يحافظ عليه، وكيفية المساهمة، وأين يُبلغ عن الأخطاء، وكيفية طلب الميزات.

بدون هذه الشفافية، لا يمكن للفرق التفاعل بشكل مفيد مع مكونات منصتك. يصبحون مستهلكين بدلاً من متعاونين، مما يعيد خلق ديناميكية مكتب الخدمة غير المستدامة.

2. الشفافية: صنع القرار المرئي #

الشفافية تعني توثيق ليس فقط ما توفره منصتك، لكن لماذا اتُخذت قرارات التصميم. عندما توفر قالب GitHub Actions أو خط أنابيب نشر، يحتاج المستخدمون لفهم المنطق وراء تصميمه، وما إذا كان مناسباً لحالة استخدامهم، وما إذا كان يجب عليهم المساهمة بتحسينات أو إنشاء نسخ مخصصة.

صنع القرار المغلق يؤدي إلى تفريع غير مدروس، وحلول مكررة، وفوضى في نظام منصتك البيئي.

3. الإرشاد المُعطى الأولوية: إعداد المطورين على نطاق واسع #

فرق المنصات تخدم مجتمعات المطورين. “عملاؤك” يحتاجون عمليات إعداد، وإرشادات مساهمة، ومسارات واضحة للمشاركة. هذا لا يتعلق بإدارة المساهمين الخارجيين - يتعلق بخلق طرق مستدامة للفرق الداخلية للتفاعل مع وتحسين منصتك.

4. المساهمة الطوعية بالكود: تطور المنصة المدفوع بالمجتمع #

الهدف ليس أن تتعامل فرق المنصات مع كل طلب. إنه خلق ظروف حيث يمكن للمستخدمين المساهمة بتحسينات عائدة للمنصة. هذا يتطلب تغييراً ثقافياً: مكونات المنصة تحتاج لأن تُصمم للمساهمة الخارجية، وليس فقط الاستهلاك.


ما وراء الأدوات: خلق مجتمعات مطورين مستدامة #

استخدام GitHub لا ينشئ InnerSource تلقائياً. مشاركة الكود لا تنشئ مجتمعاً تلقائياً. ما يهم هو المساهمة ثنائية الاتجاه والثقافة التعاونية.

هندسة المنصات بدون مجتمع تصبح مجرد طريقة أخرى لتوفير حلول للمطورين بدلاً من البناء معهم. أنجح فرق المنصات تخلق أنظمة بيئية حيث:

  • المستخدمون يساهمون بقوالب وأدوات عائدة للمنصة
  • طلبات الميزات تصبح فرص تطوير تعاونية
  • مشاركة المعرفة تحدث طبيعياً من خلال عمليات شفافة
  • تطور المنصة مدفوع بحاجات المستخدم الفعلية، وليس افتراضات فريق المنصة

الطريق إلى الأمام: البدء صغيراً، بناء المجتمع #

لا تحتاج لتحويل مؤسستك بالكامل بين عشية وضحاها. ابدأ بمكون منصة واحد. اجعله مفتوحاً حقاً للمساهمة. وثّق ليس فقط كيفية استخدامه، لكن كيفية تحسينه. أنشئ مسارات واضحة لردود فعل المستخدمين والمساهمة.

ابن قاعدة معجبيك الأساسية - المطورين الذين يصبحون مؤيدين حقيقيين لنهج منصتك. مكّنهم من المساهمة بشكل مفيد في تطور المنصة.

هندسة المنصات على نطاق واسع لا تتعلق ببناء أدوات أفضل - تتعلق ببناء مجتمعات أفضل حول تلك الأدوات. يوفر InnerSource الأنماط المثبتة لخلق هذه المجتمعات ضمن قيود المؤسسة.

أنجح فرق المنصات تفهم أنها ليست مجرد مقدمي بنية تحتية - إنها بناة مجتمع، تسهل التعاون بين المطورين الذين يشاركون حاجات مشتركة ويمكنهم المساهمة في حلول مشتركة.

رحلة هندسة المنصات الخاصة بك لا تنتهي عندما تنشر Backstage. تبدأ عندما تبدأ في بناء الثقافة التعاونية التي ستحافظ على منصتك وتطورها مع الوقت.

Yuki Hattori

Yuki Hattori

President of the InnerSource Commons Foundation
Sr. Architect at GitHub
Open Source Technical Advisor at IPA (Japanese government administration)
Author of two books on AI and GitHub
O’Reilly books translator for Prompt Enginnering for LLMs and two InnerSource books[1][2]
 
Opinions expressed here are my own and do not represent any organization I am affiliated with.