GitHub يواجه مشاكل ضخمة!
MMaximilian Schwarzmüller
Computing/SoftwareBusiness NewsManagementInternet Technology
Transcript
00:00:00منصة GitHub في وضع حرج للغاية، وضع سيء جدًا.
00:00:04هناك العديد والعديد من المشكلات، والكثير منها مرتبط بالذكاء الاصطناعي،
00:00:08ولكن ربما ليس للأسباب التي تتبادر إلى ذهنكم،
00:00:10لكنني سأعود إلى هذه النقطة لاحقًا.
00:00:11وبالطبع هذا الأمر يكتسب أهمية كبيرة.
00:00:13إنه مهم لأن GitHub يمثل العمود الفقري
00:00:16لأعمال التطوير الحديثة.
00:00:17بغض النظر عما إذا كنت تعمل في تطوير البرمجيات مفتوحة المصدر،
00:00:20أو تدير بعض المشاريع مفتوحة المصدر،
00:00:22أو تعمل فقط على مشاريعك الخاصة،
00:00:24سواء كانت مشاريعك الشخصية أو الجانبية،
00:00:26أو إذا كنت تدير عملاً صغيرًا أو شركة صغيرة،
00:00:29أو ربما كنت في شركة أكبر،
00:00:32تُستخدم المنصة لكل أنواع المهام كأرشيف للأكواد
00:00:35لسير عمل CI/CD، وللتعاون البرمجي،
00:00:38وللعمل الجماعي على المشاريع عبر الـ "issues"،
00:00:42وطلبات السحب (pull requests) والعديد من الاستخدامات الأخرى.
00:00:47لذا فالأمر مهم، ولكن كما ذكرت،
00:00:49هناك الكثير والكثير من المشكلات.
00:00:51ودعونا نبدأ بما هو خاطئ حاليًا
00:00:53قبل أن نلقي نظرة على الأسباب
00:00:54وما يعنيه ذلك بالنسبة للمستقبل.
00:00:57ولنبدأ بمشكلة كبيرة حقًا.
00:00:59لقد تم الإبلاغ عن ثغرة أمنية ضخمة، هائلة،
00:01:02وغير معقولة يوم أمس
00:01:07أثناء قيامي بتسجيل هذا الفيديو.
00:01:09وهي ثغرة تنفيذ أكواد عن بُعد على موقع github.com.
00:01:12أعني، مجرد قراءة هذا الخبر أمر جنوني.
00:01:16تم اكتشافها من قبل شركة Wiz للأمن السيبراني،
00:01:19ولم يتم استغلالها.
00:01:21لذا تم اكتشافها والإبلاغ عنها وإصلاحها.
00:01:25ولم يقع أي ضرر.
00:01:28وفقًا لـ GitHub،
00:01:31فقد نشروا أيضًا ردًا على هذا التقرير.
00:01:33الآن، لن أخوض في التفاصيل التقنية
00:01:36لكيفية عمل هذه الثغرة.
00:01:39سأضع رابط المقال أدناه على أي حال.
00:01:42ولكن في النهاية، كانت الثغرة تعمل من خلال أمر git push.
00:01:44لذلك لم تتضمن عملية تصيد احتيالي،
00:01:46أو استيلاء على حساب أحد الموظفين،
00:01:49أو هجومًا على سلسلة التوريد.
00:01:51لقد رأينا الكثير من هذه الأمور خلال الأسابيع الماضية،
00:01:54لكن لا، لم يكن هناك شيء من هذا القبيل.
00:01:56بدلاً من ذلك، كان الأمر مجرد git push،
00:01:58وتحديدًا ميزة خيار الدفع القياسي (standard push option)
00:02:03التي يمكنك إضافتها إلى أمر git push
00:02:05لإرفاق خيارات إضافية بأمر الدفع هذا.
00:02:10ومن خلال ميزة الخيارات تلك والثغرة الأمنية
00:02:13والطريقة التي يتعامل بها GitHub مع عمليات الدفع،
00:02:17تمكن الباحثون الأمنيون هنا من إرفاق كود
00:02:22يتم تنفيذه مباشرة على خوادم GitHub.
00:02:27مرة أخرى، التفاصيل الدقيقة موجودة في هذا التقرير،
00:02:31ولكن في النهاية، استغلوا حقيقة
00:02:34أنه يمكنك إضافة بيانات وصفية إضافية إلى ترويسة xstat
00:02:39والتي يتم ملؤها بمساعدة علامة خيارات الدفع تلك.
00:02:44وتلك البيانات الوصفية، تلك المعلومات التي يمكنك تمريرها
00:02:49مع طلب الدفع عبر تلك الترويسة في النهاية
00:02:52لم يتم تنقيتها (sanitized) بواسطة GitHub.
00:02:54لقد قاموا فقط بمصادقة طلب الدفع في النهاية،
00:02:58أي أمر الدفع.
00:02:59لقد تحققوا مما إذا كان مسموحًا لك بالدفع
00:03:01إلى المستودع الذي تحاول الدفع إليه،
00:03:03لكنهم بعد ذلك أخذوا بيانات الخيارات تلك
00:03:07وأنشأوا ترويسة xstat دون تنقية تلك البيانات.
00:03:12وهذا سمح للباحثين الأمنيين
00:03:15بتنفيذ أمر لم يقتصر تأثيره
00:03:18على المستودع الذي دفعوا إليه،
00:03:21بل تم تنفيذه بحرية على خوادم GitHub
00:03:24وكان قادرًا على الوصول إلى مستودعات أخرى أيضًا،
00:03:27بما في ذلك المستودعات الخاصة.
00:03:29الآن، مرة أخرى، تم الإبلاغ عن هذه الثغرة وإصلاحها
00:03:33ولم تعد موجودة الآن،
00:03:35لكنها مشكلة ضخمة بكل وضوح.
00:03:39أعني، إنه أمر جلل أن توجد ثغرة
00:03:43تسمح بتنفيذ أكواد عن بُعد على github.com.
00:03:45إنه أمر ضخم حقًا.
00:03:47لذا نعم، هذه مشكلة كبيرة،
00:03:48لكنها بالطبع ليست المشكلة الوحيدة.
00:03:51في الثالث والعشرين من أبريل، أي قبل أيام قليلة فقط،
00:03:56كان هناك حادث كبير يتعلق بطوابير الدمج (merge queues) في GitHub.
00:04:01الآن، طوابير الدمج، في حال لم تكن تعرفها،
00:04:04هي ميزة في GitHub مخصصة للمستودعات
00:04:07التي تشهد الكثير من النشاط والعمل المستمر،
00:04:11والكثير من طلبات السحب الواردة.
00:04:13ومن أجل ضمان عدم اضطرارك لدمج
00:04:16كل طلب سحب قبل إمكانية إرسال طلب جديد،
00:04:19لأنك بالطبع تريد أن يكون طلب السحب
00:04:21متوافقًا مع أحدث حالة للمستودع،
00:04:24مثل الفرع الرئيسي (main branch) على سبيل المثال،
00:04:26ولضمان عدم اضطرارك لدمج
00:04:28كل طلب سحب قبل فتح طلب جديد.
00:04:30في النهاية، تم إيجاد ميزة طابور الدمج هذه،
00:04:34والتي تهدف ببساطة وبشكل فعال إلى إنشاء
00:04:38ما يشبه دمجًا وسيطًا بالفعل
00:04:42لإنشاء حالة جديدة للمستودع أو للفرع
00:04:46الذي تحاول الدمج فيه لكل طلب سحب.
00:04:49وإذا تمت إضافة طلب سحب جديد
00:04:51إلى سلسلة طلبات السحب،
00:04:53فإنه يتم دمجه مسبقًا مدموجًا مع طلبات السحب
00:04:57التي تسبقه في الفرع الرئيسي
00:04:58بحيث تُفتح طلبات السحب الجديدة
00:05:01كما لو كانت طلبات السحب السابقة قد دُمجت بالفعل.
00:05:05وهذا ببساطة يسمح للفرق بالعمل بشكل أسرع
00:05:08لأنك تستطيع فتح المزيد والمزيد من طلبات السحب
00:05:10دون انتظار انتهاء الطلبات التي تسبقها.
00:05:13في مرحلة ما، سيتم دمجها بالطبع،
00:05:15لكن هذا يتيح لك الاستمرار في العمل،
00:05:17وهو أمر مهم للفرق الكبيرة على سبيل المثال.
00:05:19الآن ما هو مهم أيضًا بخصوص هذه الميزة
00:05:22هو بالطبع أن تعمل بشكل صحيح.
00:05:24وما حدث في الثالث والعشرين من أبريل هو
00:05:28أنه كان هناك خطأ، خطأ منطقي داخلي
00:05:32في كيفية معالجة GitHub لطلبات السحب المختلفة هذه
00:05:37مما أدى في النهاية إلى إنشاء دمج
00:05:41يتسبب في فقدان بعض المعلومات مما يؤدي
00:05:45إلى "commit" غير صالح والتخلص من أجزاء
00:05:49من سجل Git هناك.
00:05:50الآن، البيانات لم تفقد فعليًا،
00:05:53لكن هذه الميزة عملت بشكل غير صحيح
00:05:55وأنتجت ذلك الـ "commit" الخاطئ.
00:05:57هذا هو الموجز أو الخلاصة.
00:06:00وبالطبع، هذا أمر غير مقبول تمامًا
00:06:03إذا كنت شركة كبيرة أو أي شركة تعتمد
00:06:06على تلك الميزة وفجأة ينتهي الأمر بمشروعك
00:06:09في حالة معطلة دون أن تجد تفسيرًا واضحًا
00:06:13لذلك، هذا أمر غير مقبول بالطبع.
00:06:16وأول ما سيتبادر إلى ذهنك على الأرجح هو
00:06:19ليس وجود خلل داخلي في ميزة طابور الدمج.
00:06:23بل ستظن غالبًا أنك ارتكبت خطأً ما.
00:06:26لذا تقضي وقتًا طويلاً في البحث عن الخطأ
00:06:28حتى تكتشف، أوه لا، المشكلة من GitHub.
00:06:30وكل هذا يأتي بالطبع بالإضافة
00:06:33إلى مشاكل توفر الخدمة المستمرة التي يعاني منها GitHub.
00:06:38الآن تبدو صفحة الحالة الرسمية سيئة،
00:06:42ولكن ربما مقبولة، لكننا لا نملك نسبة توفر
00:06:46تصل إلى 99.9% هنا أيضًا، على الأقل لمعظم الأنظمة.
00:06:49إنهم يبلغون عن وقت التشغيل بشكل منفصل لكل نظام.
00:06:53لكن الأمور تبدو مختلفة قليلاً إذا نظرنا
00:06:55إلى صفحة حالة GitHub غير الرسمية،
00:06:57والتي تتتبع وقت التشغيل بطريقة مختلفة
00:07:00وتعتبر كل حادثة صغيرة بمثابة مشكلة،
00:07:04أو تعطل في الخدمة في نهاية المطاف.
00:07:05هنا نرى وقت تشغيل كارثيًا لنظام حيوي
00:07:10مثل GitHub، وهذا غير مقبول تمامًا بالطبع.
00:07:14لذا واجهنا مشاكل في التوفر طوال الأشهر الماضية
00:07:18وحتى خلال العام الماضي بالفعل.
00:07:20وكانت هناك أيضًا أخطاء برمجية أصغر هنا وهناك،
00:07:23لكنها لم تكن بحجم هذه المشكلة أو بنفس أهمية
00:07:26هذه الثغرة الأمنية.
00:07:28ولكن نعم، هناك العديد من المشكلات
00:07:31وقد أصبح GitHub بالتأكيد منصة غير موثوقة
00:07:36في هذه المرحلة، للأسف،
00:07:38وهو أمر كارثي بالنظر إلى دوره وأهميته
00:07:43في التطوير الحديث كما قلت في البداية،
00:07:47بغض النظر عن نوع أعمال التطوير التي تقوم بها.
00:07:50مشكلة أخرى هي أن التواصل من جانب GitHub
00:07:54كان، لنقل، غير كافٍ.
00:07:59لم يكن هناك الكثير من التواصل،
00:08:01ولكن تم نشر تدوينة في الثامن والعشرين من أبريل
00:08:06قبل اكتشاف تلك الثغرة الأمنية،
00:08:10حيث يحاولون نوعًا ما شرح ما يجري،
00:08:14ومن أين تأتي هذه المشكلات،
00:08:16وأنهم يدركون أن استراتيجية التواصل لديهم
00:08:19لم تكن مثالية وأن الأمور ستتحسن.
00:08:23هذا يقودنا إلى الجزء التالي.
00:08:25من أين تأتي كل هذه المشكلات؟
00:08:28البيان الرسمي هنا يذكر الذكاء الاصطناعي كسبب،
00:08:32ولكن ليس بمعنى أن مهندسي GitHub
00:08:36في مايكروسوفت يستخدمون الذكاء الاصطناعي ويطلقون برمجيات معطوبة،
00:08:40أو تحديثات معطوبة لـ GitHub.
00:08:43قد يكون ذلك يحدث، لكننا لا نملك دليلاً على ذلك.
00:08:47بدلاً من ذلك، السبب الرئيسي المذكور هنا هو بالطبع،
00:08:51أنه بسبب الذكاء الاصطناعي، هناك مشاريع أكثر بكثير
00:08:57يتم إنشاؤها، وأكواد أكثر بكثير يتم توليدها،
00:09:00وفي النهاية يتم دفع كل تلك المشاريع والأكواد
00:09:03إلى منصة GitHub.
00:09:04وقد شاركوا بعض الرسوم البيانية التي، حسنًا نعم،
00:09:09ليست مفيدة للغاية، لكنها موجودة.
00:09:12ليست مفيدة جدًا لأنها تفتقر لمحور رأسي (y-axis).
00:09:14فنحن لا نرى الأرقام المطلقة،
00:09:17ولكن بالطبع يمكننا رؤية العلاقات هنا.
00:09:20ويمكننا بالتأكيد أن نرى أنه خلال عام 2025،
00:09:23كانت هناك زيادة حادة في طلبات السحب المدموجة،
00:09:28والـ "commits" المدفوعة، وبالطبع المستودعات الجديدة المفتوحة.
00:09:32هذه هي مشاريعنا الجانبية التي ننشئها الآن
00:09:34ولا ننهيها باستخدام الذكاء الاصطناعي.
00:09:36ثم في عام 2026، من الواضح بالنسبة لكل هذه المقاييس،
00:09:41أن الرسم البياني يرتفع بشكل جنوني نحو السماء.
00:09:46لذا نعم، هذا اتجاه واضح تمامًا.
00:09:49وهذا الحجم من الزيارات، وهذا النوع من الزيادة
00:09:54سيضع أي نظام تحت ضغط شديد بالطبع.
00:09:58والأمر يمثل مشكلة خاصة لـ GitHub
00:10:01لأنهم في خضم عملية الهجرة بعيدًا
00:10:05عن البنية المتجانسة (monolithic) ومن مراكز بياناتهم
00:10:09الخاصة أو أنظمتهم إلى سحابة Azure
00:10:13وإلى نظام أكثر تجزئة، نظام خدمات مصغرة (microservices)،
00:10:17بدلاً من تلك البنية المتجانسة السابقة.
00:10:21كانت تلك عملية مستمرة حتى قبل دخول عام 2026.
00:10:26ولكن هذا يعني بالطبع أن عملية الهجرة هذه الآن
00:10:31اصطدمت بتلك الطفرة الهائلة في الطلب،
00:10:34مما يعني أنه على الرغم من قيامك بالهجرة،
00:10:36عليك نوعًا ما تحقيق الاستقرار في النظام الحالي
00:10:39أثناء مواصلة عملية الهجرة،
00:10:40والتي نأمل أن تساعد بعد ذلك في استيعاب تلك الزيادة
00:10:44في حركة المرور في المستقبل.
00:10:46هذا هو الأمل بالطبع، ولا يوجد ضمان.
00:10:50ولكن بالطبع هذا شيء يتعين على GitHub التعامل معه.
00:10:52الآن يذكرون هنا أنهم بدأوا في تنفيذ خطة
00:10:56لزيادة سعة GitHub بمقدار 10 أضعاف في أكتوبر 2025.
00:11:01لذا يمكن القول إنهم رأوا في تلك الفترة تقريبًا،
00:11:04حسنًا، كل هذا في تصاعد.
00:11:06أعني، كان بإمكانهم رؤية ذلك من قبل بالفعل،
00:11:09لكن هنا قرروا أننا بحاجة إلى زيادة سعتنا بمقدار 10 أضعاف.
00:11:13ثم في فبراير 2026، رأوا،
00:11:16حسنًا، نحن بحاجة إلى 30 ضعفًا، وليس 10 أضعاف لأن، حسنًا،
00:11:20بسبب ذلك التطور هنا، أليس كذلك؟
00:11:22يجب بالطبع القيام بذلك بالإضافة إلى عملية الهجرة تلك.
00:11:28وهذه مهمة ضخمة بلا شك.
00:11:33الآن هي جزء من Microsoft، لذا فهي ليست شركة ناشئة صغيرة،
00:11:37ولكن مع ذلك، فهي مهمة شاقة.
00:11:39وهذا جانب واحد من مشكلة GitHub الكاملة هذه
00:11:44حيث أشعر ببعض التعاطف لأنني أعتقد أنه من السهل
00:11:47كراهية GitHub، أو الاستهزاء بـ GitHub.
00:11:51وبالفعل يمكنك فعل ذلك.
00:11:52وسأعود إلى المزيد من المشاكل، وهي سيئة حقًا.
00:11:56لكن هذا النوع من الزيادة في حركة المرور سيكون مشكلة كبيرة
00:11:59لأي نظام، ولأي شركة موجودة.
00:12:03ومن الصعب تصديق أن أي منافس لـ GitHub
00:12:07سيبلي بلاءً حسنًا في هذا الموقف.
00:12:09ومع ذلك، هذا ليس عذرًا بالطبع.
00:12:10إنها جزء من Microsoft.
00:12:12وبالتالي، فلديهم بالتأكيد الموارد الكافية
00:12:16للمضي قدمًا في ذلك الانتقال وتعديل أنظمتهم
00:12:20لتناسب هذا العالم الجديد وهذا الحجم الجديد من حركة المرور.
00:12:24ولكن هناك مشكلة مهمة أخرى هنا مع GitHub.
00:12:28وهي أنه لم يعد لديه مدير تنفيذي.
00:12:32المدير التنفيذي السابق، توماس، توماس دومكي،
00:12:37تقاعد أو استقال أو أعلن أنه سيتنحى
00:12:41في أغسطس 2025.
00:12:43ولم تقم Microsoft بتعيين مدير تنفيذي جديد.
00:12:48بدلاً من ذلك، أصبح GitHub جزءًا من Core AI،
00:12:51وهو قسم داخلي في Microsoft، وكما يوحي الاسم،
00:12:56يتعلق الأمر بالذكاء الاصطناعي وبناء أدوات ومنصات الذكاء الاصطناعي.
00:13:01وGitHub جزء من ذلك.
00:13:03لذا فمن الواضح أن مهمة GitHub من منظور Microsoft
00:13:07هي أن يصبح جزءًا من سلسلة أدوات الذكاء الاصطناعي تلك،
00:13:11من ثورة الذكاء الاصطناعي تلك.
00:13:13ومن الواضح أن Microsoft تدمج Co-Pilot
00:13:15في جميع منتجاتها.
00:13:16وبالفعل في GitHub Universe 2023،
00:13:20قالوا بالفعل إنهم سيحولون GitHub
00:13:24إلى منصة مطورين مدعومة بالذكاء الاصطناعي
00:13:28مع تواجد GitHub في كل مكان.
00:13:30يتضمن ذلك أشياء مثل الميزات الجديدة
00:13:32التي تساعد في إنشاء المشكلات باستخدام GitHub Co-Pilot،
00:13:36وهي مشكلة كبيرة لمشرفي المشاريع مفتوحة المصدر،
00:13:39ولكن أيضًا مجرد الوجود الخالص لـ GitHub Co-Pilot
00:13:43في كل مكان على GitHub.
00:13:44هناك شيء يسمى Agent HQ هنا على GitHub،
00:13:48[github.com/copilot](https://github.com/copilot)،
00:13:49حيث يمكنك التفاعل مع GitHub Co-Pilot
00:13:52والعمل على الكود الخاص بك مباشرة من داخل GitHub Co-Pilot
00:13:55دون الحاجة لفتح بيئة تطوير محلية أو أداة وكيل برمجية
00:14:00والعديد والعديد من الأجزاء الأخرى.
00:14:02GitHub Co-Pilot موجود في كل مكان في GitHub،
00:14:05تمامًا كما أن Co-Pilot موجود في كل مكان
00:14:07في جميع منتجات Microsoft، على ما أظن.
00:14:10وهذا بالطبع قرار استراتيجي واضح
00:14:14يتعارض نوعًا ما مع المهمة الفعلية لـ GitHub،
00:14:19على الأقل المهمة التي كان يمتلكها GitHub في الماضي.
00:14:23لأنه كما ذكرت في البداية،
00:14:25يعد GitHub مهمًا لأنواع مختلفة من المطورين
00:14:29لجميع أنواع حالات الاستخدام.
00:14:31يستخدمه مشرفو البرامج مفتوحة المصدر لاستضافة الكود المصدري
00:14:36هناك والتعاون مع المشرفين الآخرين
00:14:39والمساهمين الآخرين من المجتمع.
00:14:41تعد "المشكلات" (Issues) حيوية لاكتشاف، حسنًا، المشكلات
00:14:45والعمل عليها.
00:14:46كما أن "طلبات السحب" (Pull requests) مهمة للسماح للأشخاص الآخرين
00:14:50بالمساهمة في قاعدة الكود.
00:14:52ويمكن أن تكون "المناقشات" رائعة لمناقشة الميزات الجديدة
00:14:55أو توجهات مستودع ما أو مكتبة ما وما إلى ذلك.
00:15:01هناك العديد من الميزات المرتبطة هنا
00:15:03والتي تساعد مشرفي المشاريع مفتوحة المصدر
00:15:04أو على الأقل كانت تساعدهم في الماضي.
00:15:07أشخاص آخرون يستخدمون GitHub كمجرد مورد
00:15:11لاستضافة الروابط أو المستندات
00:15:13مثل كل تلك المستودعات الرائعة لـ Go و Rust
00:15:17وما إلى ذلك، والتي يمكنك استخدامها للعثور بسهولة على الموارد
00:15:20إذا كنت تريد العمل مع Go أو Rust.
00:15:22أنا أستخدم GitHub أيضًا لاستضافة موارد دوراتي
00:15:26مثل دورة Codex الخاصة بي هنا، على سبيل المثال،
00:15:29وللعديد من الدورات التدريبية الأخرى أيضًا.
00:15:31لذا يمكنك حتى استغلال GitHub
00:15:33كمجرد نوع من أنواع تخزين المستندات.
00:15:36وبعد ذلك بالطبع يمكنك أيضًا استخدام GitHub لأعمال CI/CD.
00:15:40في الشركات، قد تستخدم GitHub
00:15:43بالطبع ليكون الكود المصدري الخاص بك هناك،
00:15:46وليتعاون أعضاء فريقك على ذلك الكود المصدري
00:15:50من خلال طلبات السحب وما إلى ذلك.
00:15:52وبعد ذلك بالطبع، غالبًا ما يكون GitHub
00:15:54جزءًا من مسار CI/CD
00:15:57حيث يؤدي أي دفع جديد للفرع الرئيسي، على سبيل المثال،
00:15:59إلى تشغيل مسار CI/CD.
00:16:02قد يكون ذلك بمساعدة GitHub actions،
00:16:05على الرغم من أن هذا المنتج لديه مشاكله الخاصة.
00:16:08لكن بالطبع يمكن استخدامه أيضًا لتشغيل مسار CI/CD
00:16:12على أي مزود CI/CD آخر، وليس فقط GitHub actions.
00:16:16لذا فإن GitHub لديه بالطبع دور مهم للغاية
00:16:20في أعمال التطوير الكلاسيكية والتقليدية.
00:16:24لكن بالطبع، قررت Microsoft أن لا،
00:16:27يجب أن يصبح منصة مطورين مدعومة بالذكاء الاصطناعي،
00:16:31وليس مجرد منصة مطورين.
00:16:33وهذا بالطبع يمثل نوعًا من عدم التوافق هنا.
00:16:37المطورون لا يريدون بالضرورة وجود Co-pilot
00:16:41في كل جانب من جوانب GitHub.
00:16:43أعتقد أن مستخدمي منتجات Microsoft بشكل عام
00:16:46لا يريدون GitHub في جميع منتجاتهم،
00:16:48لكن هذه قصة أخرى.
00:16:49وقد أهمل GitHub الميزات الأساسية
00:16:53المهمة بالنسبة للمطورين.
00:16:56وأعني، خذ أعمال تطوير البرمجيات مفتوحة المصدر كمثال.
00:17:00مشرفو المشاريع مفتوحة المصدر يغرقون
00:17:03في المشكلات وطلبات السحب التي يولدها الذكاء الاصطناعي.
00:17:07المشكلة هنا بالطبع هي عدم التماثل.
00:17:10من السهل استخدام الذكاء الاصطناعي لإنشاء كود أو مشكلات.
00:17:14لكن من الأصعب بكثير مراجعة كل تلك الأشياء.
00:17:19أعني مراجعة ذلك الكود المولد وتلك المشكلات المولدة.
00:17:24وهذا شيء يعرفه كل مطور
00:17:26سبق له العمل مع الذكاء الاصطناعي.
00:17:27يمكنك بسهولة تشغيل ثلاثة وكلاء ذكاء اصطناعي أو أكثر
00:17:30وجعلهم يعملون على مشاريعك،
00:17:32بشكل منفصل تمامًا عن GitHub.
00:17:33يمكنك فعل ذلك على جهازك باستخدام codecs،
00:17:35و cloth code وما إلى ذلك.
00:17:36ولكن إذا لم تكن تتبع أسلوب البرمجة العمياء،
00:17:39والذي لا يجب عليك اتباعه في رأيي،
00:17:41عليك مراجعة ذلك الكود في مرحلة ما.
00:17:44وهذا يستغرق وقتًا.
00:17:45وليس بالأمر الممتع للغاية، على الأقل بالنسبة لي.
00:17:48الآن، إذا قمت بتشغيل ثلاثة وكلاء،
00:17:51عليك مراجعة مخرجات ثلاثة وكلاء.
00:17:54يمكنك تقليل عدد الوكلاء إذا كان ذلك فوق طاقتك
00:17:57ووجدت أنك لست منتجًا حقًا
00:17:59بهذه الطريقة.
00:18:00الآن، عندما تكون مشرفًا لمشروع مفتوح المصدر على GitHub،
00:18:03فأنت تغرق في المشكلات وطلبات السحب المولدة بالذكاء الاصطناعي
00:18:07وليس لديك سوى خيارين رئيسيين.
00:18:09يمكنك تجاهلها وهذا بالطبع يحبط الغرض منها،
00:18:13لكنها استراتيجية صالحة بكل وضوح.
00:18:16أو تحاول التعامل معها تدريجيًا
00:18:18وتصاب بالإرهاق الشديد لأنها مجرد كم هائل
00:18:21لأنه على عكس أعمال التطوير الشخصية الخاصة بك،
00:18:25لا يمكنك ببساطة تقليل كمية المشكلات الواردة
00:18:29وطلبات السحب.
00:18:30يمكنك استخدام عدد أقل من الوكلاء بمفردك
00:18:33إذا وجدت أنك لست فعالاً أو منتجًا
00:18:36مع كل الوكلاء الذين تحاول تشغيلهم.
00:18:38لا يمكنك فعل ذلك مع المستودعات العامة.
00:18:41لا يمكنك التحكم في عدد الأشخاص الذين سينشرون
00:18:45مشكلات مولدة بالذكاء الاصطناعي أو يشاركون طلبات سحب معك.
00:18:49لذا فهذه مشكلة كبيرة لمشرفي المشاريع مفتوحة المصدر
00:18:53وهذا هو السبب في أن مشهد البرمجيات مفتوحة المصدر بالكامل
00:18:56والفلسفة الكامنة وراء البرمجيات مفتوحة المصدر
00:18:59تواجه مشاكل ضخمة الآن بسبب الذكاء الاصطناعي.
00:19:04وGitHub لا يساعد في ذلك.
00:19:06بدلاً من ذلك، هم يفعلون العكس.
00:19:08إنهم يجعلون من السهل مشاركة مشكلات
00:19:13الذكاء الاصطناعي الرديئة وما إلى ذلك.
00:19:15ما يحتاجه المشرفون والمطورون
00:19:18هو أدوات أكثر فعالية للتعامل
00:19:22مع كل هذه المشكلات وطلبات السحب المولدة بالذكاء الاصطناعي.
00:19:25لكن GitHub لا يعمل على ذلك.
00:19:27أعتقد أن هذا ليس جزءًا من استراتيجيتهم.
00:19:29الآن، ربما يتغير ذلك.
00:19:30ذلك المنشور الرسمي من GitHub الذي ذكرته سابقًا
00:19:35يتحدث بشكل أساسي عن مشكلات الموثوقية ووقت التشغيل
00:19:39وأنهم يريدون أن يكونوا أكثر شفافية وما إلى ذلك.
00:19:41لكنهم ذكروا أيضًا أن لديهم التزامًا
00:19:44بدعم المطورين.
00:19:46سنرى، لست متفائلاً للغاية
00:19:49لأنها في النهاية جزء من Microsoft
00:19:52ولديهم استراتيجيتهم الخاصة جدًا هنا.
00:19:55ولكن ماذا يعني هذا بالنسبة لـ GitHub إذن؟
00:19:59هل حان الوقت للهجرة منه؟
00:20:02لقد سمعت بعض الأصوات هنا وهناك على X
00:20:05تقول إن الوقت قد حان الآن لبديل لـ GitHub.
00:20:08أعلم أن بعض المشاريع قد هاجرت منه بالفعل.
00:20:12ربما يكون SIG هو الأبرز بينها.
00:20:15لقد هاجروا من GitHub إلى Codeberg في نوفمبر 2025.
00:20:20ولكن لنكن واقعيين هنا.
00:20:22أولاً، كما ذكرت من قبل،
00:20:24فإن حجم حركة المرور التي تضرب GitHub
00:20:28من شأنها أن ترهق أي منافس أيضًا.
00:20:31من المرجح أن يكون ذلك أكثر حتى من GitHub
00:20:32لأنهم ليسوا جزءًا من Microsoft.
00:20:35لذا فمن المؤكد أننا لن نرى استبدال GitHub.
00:20:40وبينما قد تغادر بعض المشاريع الفردية،
00:20:42خاصة المشاريع مفتوحة المصدر، GitHub
00:20:45لأسباب يمكنني فهمها تمامًا،
00:20:48فإن كل تلك الشركات، وكل هؤلاء المطورين الأفراد
00:20:52لن يهاجروا منه على الأرجح.
00:20:54فإن GitHub يمتلك، على الرغم من كل مشاكله،
00:20:57منصة غنية بالميزات التي تعد جزءًا لا يتجزأ
00:21:02من سير عمل العديد من المطورين وعملهم اليومي.
00:21:06خاصة بالنسبة للشركات بالطبع،
00:21:08ليس من السهل عليها استبدال GitHub ببساطة
00:21:11بأي مزود آخر.
00:21:13على الرغم من أن جميع مشكلات الموثوقية
00:21:15تمثل بوضوح مشكلات ضخمة للشركات أيضًا،
00:21:18إلا أنها ستكون قادرة ومستعدة لتحمل المزيد من الألم
00:21:23قبل أن تفكر حتى في الانتقال منه.
00:21:25أنا متأكد من ذلك.
00:21:26GitHub ببساطة هو منصة بالغة الأهمية.
00:21:30إنها المنصة الأساسية لوضع كود Git الخاص بك
00:21:35على السحابة والعمل عليه والتعاون فيه.
00:21:39لذا أنا متأكد من أنه لن يختفي،
00:21:43حتى لو ساء الوضع أكثر.
00:21:45بالطبع، في النهاية سيغادر الناس
00:21:47إذا لم يقم GitHub بفعل أي شيء،
00:21:49ولكن من الواضح أنهم يفعلون شيئًا ما،
00:21:50على الأقل فيما يتعلق بمشكلات وقت التشغيل والموثوقية.
00:21:55وعندما يتعلق الأمر بالعمل مفتوح المصدر والمشكلات هناك
00:21:58ومشكلات رداءة محتوى الذكاء الاصطناعي، فسنرى.
00:22:01وحتى هناك، أعتقد أن GitHub مهم للغاية
00:22:07ولديه مزايا كثيرة جدًا لمشرفي المشاريع مفتوحة المصدر
00:22:10بحيث يصعب عليهم المغادرة، على الأقل ليس جميعهم.
00:22:14ولكني أفهم بالتأكيد إذا انتقلت مشاريع فردية
00:22:17بعيدًا عن GitHub، فقد يحدث ذلك.
00:22:20ولكن نعم، بالنسبة للشركات و GitHub بشكل عام،
00:22:23فسيستمر في الوجود.
00:22:24ومع ذلك، لا يسع المرء إلا أن يأمل في أن يكون هذا الموقف هنا
00:22:28ربما، ربما جرس إنذار لـ Microsoft.
00:22:33ربما سيعيدون تعيين مدير تنفيذي مسؤول عن GitHub.
00:22:38ربما يدركون أهميته.
00:22:41ربما يدركون أنه منصة للمطورين
00:22:45والتطوير، وليست في الأساس منصة للذكاء الاصطناعي.
00:22:49ولكن نعم، يمكن للمرء أن يأمل.
00:22:52لا أعرف متى سيحدث ذلك وما إذا كان سيحدث أصلاً.
00:22:55ولكن نعم، هذا هو وضع GitHub الحالي.
00:23:00إنه سيئ، إنه سيئ حقًا.
00:23:03وسيبقى سيئًا في المستقبل القريب،
00:23:06ولكن على الأقل نأمل أن تتحسن الموثوقية
00:23:11في وقت لاحق من هذا العام.
00:23:13أعتقد أننا سنرى ذلك.