كيف يمكن لشيء صغير جدًا أن يتسبب في مشكلة برمجية عالمية ... إليك قصة left-pad.
الـ left-pad هي مكتبة جافاسكربت تضم 11 سطر في الكود البرمجي. ودورها "سخيف" نوعا ما إذ تضيف عشوائيًا رقم 0 لكل نص (String) عند (عبارة Hello تصبح 00Hello) بغرض إطالة النص.
بالرغم من سخافتها، فقد كانت مستخدمة تلقائيًا في مئات الآلاف من المشاريع البرمجية أونلاين، حتى وإن لم يكن هناك ضرورة لاستخدامها.
في سنة 2016، أزال (Azer Koçulu - مطور المكتبة) من مدير الحزم NPM، انهارت مباشرة مجموعة كبيرة من المشاريع البرمجية حول العالم، وذلك بسبب تأثر مكتبات أخرى مثل React و Babel بحذفها. شركات مثل Netflix, Facebook, Spotify تأثرت أيضا مشاريعها البرمجية وتعطلت لفترة، وتحولت لمشكلة عالمية.
توجب على المطور إعادة حزمة left-pad لـ NPM، لتعود سائر الأمور على حالها.
كيف لمكتبة صغيرة تضم 11 سطرًا برمجيًا أن تتسبب في كارثة لمشاريع برمجية عملاقة؟ عُرفت هذه الحادثة بحادثة left-pad.
منصة NPM غيرت سياستها بعد الحادثة بالمناسبة، لتمنع حذف المكتبات ذات الاستخدام الكبير في المشاريع بشكل مفاجئ إلا بعد فترة من الزمن.
كيف يمكن لشيء صغير جدًا أن يتسبب في مشكلة برمجية عالمية ... إليك قصة left-pad. الـ left-pad هي مكتبة جافاسكربت تضم 11 سطر في الكود البرمجي. ودورها "سخيف" نوعا ما إذ تضيف عشوائيًا رقم 0 لكل نص (String) عند (عبارة Hello تصبح 00Hello) بغرض إطالة النص. بالرغم من سخافتها، فقد كانت مستخدمة تلقائيًا في مئات الآلاف من المشاريع البرمجية أونلاين، حتى وإن لم يكن هناك ضرورة لاستخدامها. في سنة 2016، أزال (Azer Koçulu - مطور المكتبة) من مدير الحزم NPM، انهارت مباشرة مجموعة كبيرة من المشاريع البرمجية حول العالم، وذلك بسبب تأثر مكتبات أخرى مثل React و Babel بحذفها. شركات مثل Netflix, Facebook, Spotify تأثرت أيضا مشاريعها البرمجية وتعطلت لفترة، وتحولت لمشكلة عالمية. توجب على المطور إعادة حزمة left-pad لـ NPM، لتعود سائر الأمور على حالها. كيف لمكتبة صغيرة تضم 11 سطرًا برمجيًا أن تتسبب في كارثة لمشاريع برمجية عملاقة؟ عُرفت هذه الحادثة بحادثة left-pad. منصة NPM غيرت سياستها بعد الحادثة بالمناسبة، لتمنع حذف المكتبات ذات الاستخدام الكبير في المشاريع بشكل مفاجئ إلا بعد فترة من الزمن.
0 Comments 0 Shares 184 Views 0 Reviews