البرمجيات مفتوحة المصدر (Open-source software) المعروفة اختصاراً بـ (OSS) هي برامج حاسوبية غير مسجلة الملكية، تسمح لأي شخص بتعديل أو تحسين أو عرض الكود المصدري الخاص بها، ويمكن لمبرمجين آخرين العمل عليها أو التعاون في تنفيذها وتعديلها، إذ لا يعد المبرمجون برمجياتهم هذه على أنها ملكية خاصة، بل يطلقونها بموجب تراخيص تسمح للمستخدمين الراغبين بعرض التعليمات البرمجية الخاصة بها ونسخها وتعلمها وتعديلها ومشاركتها، وهي بذلك تتمتع بميزات فريدة، ولها عيوبها أيضاً.
كيف تعمل البرامج مفتوحة المصدر؟
تتم مشاركة البرمجيات مفتوحة المصدر على الويب وإتاحتها مجاناً، ما يمنح إمكانية الوصول لأي شخص يريد العمل على كود المصدر، ومع ذلك، غالباً ما تتطلب البرامج مفتوحة المصدر الحصول على ترخيص التوزيع، والذي يحدد كيفية تفاعل الأشخاص معها وتعديلها ومشاركتها.
اقرأ أيضاً: 7 اتجاهات لتطوير البرمجيات لعام 2022 يجب على الجميع اعتمادها
أين تجد البرامج مفتوحة المصدر؟
انتشرت البرمجيات مفتوحة المصدر في عدة مجالات منها الذكاء الاصطناعي والتعلم الآلي والمعلوماتية الحيوية وتكنولوجيا النانو وبرامج المحاكاة الحاسوبية واستخراج البيانات ومحركات البحث الخاصة بالمؤسسات ومتصفحات الويب ومحركات الألعاب وبرامج الرعاية الصحية ومكافحة الفيروسات وبرامج نظم المعلومات الجغرافية مفتوحة المصدر وبرامج إدارة قواعد البيانات مفتوحة المصدر.
ما الفرق بين البرامج مفتوحة المصدر والاحتكارية؟
تختلف البرامج مفتوحة المصدر عن البرامج الاحتكارية أو البرامج مغلقة المصدر (Closed source software) المعروفة اختاراً بـ (CSS)، بأن البرامج الاحتكارية تكون غير مجانية، يفرض مبرمجها قيوداً على ما يمكن أن يفعله المستخدم النهائي مثل شروط الاستخدام أو الوصول أو النسخ أو التعديل أو التوزيع لإصدارات معدّلة من البرنامج، ويحتفظ أيضاً بحقوقها الفكرية بموجب حقوق الملكية.
الشروط الواجب توافرها في البرامج مفتوحة المصدر
حتى تكون البرامج مفتوحة المصدر يجب أن تتمتع بشروط منها:
- لا يتطلب ترخيص البرامج مفتوحة المصدر رسوماً لبيعها أو توزيعها.
- يجب أن يتضمن البرنامج شيفرة المصدر، ويجب أن يسمح بالتوزيع في كود المصدر.
- يجب أن يسمح الترخيص بالتعديلات والأعمال المشابهة، ويجب أن يسمح بتوزيعها وفقاً لنفس شروط ترخيص البرنامج الأصلي.
- يجب أن يسمح صراحةً بتوزيع البرامج التي تم إنشاؤها من شيفرة المصدر المعدلة.
- يجب أن تنطبق الحقوق المرتبطة بالبرنامج على جميع الذين تتم إعادة توزيع البرنامج عليهم دون الحاجة إلى ترخيص إضافي من قبل تلك الأطراف.
- يجب ألّا يكون الترخيص خاصاً بمنتج.
- يجب ألّا يقيّد الترخيص البرامج الأخرى.
- يجب أن يكون الترخيص محايداً من الناحية التكنولوجية.
تراخيص البرامج مفتوحة المصدر
من تراخيص البرامج مفتوحة المصدر الأكثر شيوعاً:
- رخصة إم آي تي MIT: هو ترخيص برنامج مجاني يسمح للمستخدمين بتعديل الكود الأصلي مع قيود قليلة جداً.
- رخصة جنو العمومية GNU General Public: عبارة عن سلسلة من تراخيص البرامج المجانية التي تضمن للمستخدمين النهائيين القدرة على تشغيل البرامج ودراستها ومشاركتها وتعديلها.
- رخصة Apache 2.0: هو ترخيص برنامج مجاني يسمح للمستخدمين باستخدام البرنامج وتعديله وتوزيعه لأي غرض.
- توزيعة برمجيات بيركلي BSD: يحتوي هذا الترخيص على قيود أقل على المطورين، ما يسمح للمستخدمين باستخدام التعليمات البرمجية وتعديلها دون الحاجة إلى مشاركة التعديلات.
- توزيعات سوزي لينكس SUSE Linux: وهو ترخيص يتم توزيعه مع برامج نظام لينوكس Linux وتطبيقاته.
- توزيعة Ubuntu: ترخيص من لينوكس أيضاً، ويتكون من برامج مجانية ومفتوحة المصدر تم إصدارها في سطح المكتب والسحابة وإنترنت الأشياء.
ميزات البرامج مفتوحة المصدر
تتمتع البرامج مفتوحة المصدر بالعديد من المزايا، ومنها:
- تتوفر العديد من تراخيصها مجاناً.
- تعد برامج موثوقة إذ عادةً ما يعمل الآلاف من المبرمجين المستقلين على اختبارها وإصلاح الأخطاء فيها.
- تسمح الأنظمة بالتعاون بين عدد كبير من المبرمجين المختلفين ببناء واجهات مخصصة أو إضافة قدرات جديدة.
- يمكن تطويرها وفقاً للمتطلبات التقنية البحتة.
- تعزز الابتكار السريع لأنها مزيج من وجهات النظر المتباينة وأهداف الشركات والأهداف الشخصية.
- يحق للمستخدمين الوصول بحرية إلى البرامج مفتوحة المصدر وتعديلها وتوزيعها لأي غرض من الأغراض دون مخاوف حقوق الملكية والنشر.
- البرامج مفتوحة المصدر أكثر مرونة لأنها توفر للمبرمجين طرائق متعددة لحل المشكلات وتشجيع الحلول الإبداعية.
- يتم حل المشكلات بسرعة كبيرة لأنها تسمح بالتعاون بهدف التحسينات وإصلاح الأخطاء.
اقرأ أيضاً: ناشطون يستخدمون «برامج احتجاج» مفتوحة المصدر احتجاجاً على الحرب الروسية الأوكرانية
سلبيات البرامج مفتوحة المصدر
على الرغم من عدم وجود تكلفة أولية، فقد تظل هناك بعض التكاليف غير المباشرة طويلة الأجل للدعم والصيانة. كما أنها يمكن أن تتعرض للمتسللين والمستخدمين الضارين الذين قد يبحثون عن نقاط الضعف لاستغلالها.
قد يكون استخدام البرامج مفتوحة المصدر صعباً لأنها قد تحتوي على واجهات أو ميزات أقل سهولة في الاستخدام، وغير مألوفة لجميع المبرمجين، وقد تظهر مشكلات التوافق إذا لم تكن الأجهزة المستخدمة لإنشاء برنامج مفتوحة المصدر متاحة لجميع المبرمجين الذين يعملون عليها.
ومن سلبياتها أيضاً التوثيق السيئ، والتعقيد غير المبرر، والإعلانات المتطفلة.
اقرأ أيضاً: الحدائق الرقمية تتيح لك تطوير مساحتك الصغيرة الخاصة على الإنترنت
الأمان في البرامج مفتوحة المصدر
كغيرها من البرمجيات، لا تخلو البرامج مفتوحة المصدر من المخاطر الأمنية، وتستفيد البرامج مفتوحة المصدر من العدد الكبير للمطورين ومختبري الإصدارات التجريبية، والذين يهتمون باكتشاف الثغرات وإصلاحها بسرعة.
لكنها على العموم، تتجاوز المراجعات الأمنية الطويلة والحاسمة مع عدم تقديم أي ضمان للدعم الأمني، ما يجعل اتخاذ المبادرة بالإصلاحات الأمنية مسؤولية مالك النظام، أو عليه تعيين مسؤول أمان لمراقبة مشكلات الأمان واكتشاف الثغرات وتطبيق الإصلاحات.