عالم برامج الحاسب (2): تعرف على حركة البرامج الحرة ومفتوحة المصدر

معلومات عامة  -  بواسطة:   اخر تحديث:  2020/10/28
عالم برامج الحاسب (2): تعرف على حركة البرامج الحرة ومفتوحة المصدر

تحدثنا في الجزء الأول من سلسلة “عالم برامج الحاسب” عن الأنواع المختلفة لبرامج الكمبيوتر وأيضًا عن تراخيص البرامج المختلفة والمتشعبة.


دعونا الآن في الحلقة الثانية نتحدث بشكل أعمق عن حركة البرمجيات الحرة ومفتوحة المصدر Free and open-source software (FOSS). كيف ومتى بدأت ومن هم مؤسسوها وما هي رويتها وأهدافها؟


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


في المقال السابق تعرفنا على البرمجيات الحرة ومفتوحة المصدر وعرفنا بشكل عام أنها أحد أنواع برامج الكمبيوتر المختلفة والتي تأتي مع إذن لأي شخص لاستخدام ونسخ و/أو توزيع و/أو التعديل على الكود المصدري Source Code الخاص بها، هذا يعني أن شفرة المصدر أو الكود المصدري يجب أن تكون متاحة للجميع.


ما المقصود بهذه المصطلحات؟


في الحقيقة فإن مصطلح FOSS: Free and open-source software يضم في طياته مصطلحين في غاية الأهمية:


  1. البرمجيات الحرة free software

  2. البرمجيات مفتوحة المصدر open source software

أولاً: حركة البرمجيات الحرة Free software movement


كانت بداية حركة البرمجيات الحرة free software movement في أواخر ثمانينيات القرن الماضي وبالتحديد في عام 1983م مع إطلاق ريتشارد ستالمان Richard Stallman لمشروع غنو GNU project.


عالم برامج الحاسب (2): تعرف على حركة البرامج الحرة ومفتوحة المصدر



ريتشارد ستالمان وشعار مشروع Gnu



يعتبر مشروع غنو من المشاريع الشبيهة بمشروع Unix ولكنه في الحقيقة يُعتبر نواة لإنشاء نظام للحاسب يتكون بالكامل من البرمجيات الحرة. غنو هو نظام تشغيل متكامل الجوانب لأجهزة الحاسب لما يوفره من حزمة متكاملة من البرامج.


ظهور حركة البرمجيات الحرة أدت إلى تحفيز شركات البرمجيات العملاقة وقتها مثل نتسكيب Netscape لإطلاق متصفح الإنترنت المعروف نيتسكيب كوميونيكيتر Netscape communicator وجعله من البرمجيات الحرة. لذا أصبحت هذه الشيفرة المصدرية أساسًا لمشاريع أخرى مثل المتصفح الأكثر شهرة موزيلا فايرفوكس Mozilla Firefox.


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


هل تشير كلمة Free إلى السعر Price أم إلى الحرية liberty؟


عالم برامج الحاسب (2): تعرف على حركة البرامج الحرة ومفتوحة المصدر


كلمة الحرية هنا في الأساس تعني أن هذه البرمجيات تحترم حرية المستخدمين ومجتمعهم، أي أن للمستخدمين الحرية في تشغيل البرنامج ونسخه وتوزيعه ودراسته وتغيير نواته الأساسية وتحسينها بل وحرية بيعها للتربح المادي منها.
وبالتالي:

البرمجيات الحرة هي مسألة حرية وليست سعرًا فقط كما يعتقد الكثيرون.


وفقاً لمؤسسة البرمجيات الحرة Free Software Foundation- FSF والتي أسسها ريتشارد ستالمان عام 1985 لا يكون البرنامج حرًا إلا إذا توافر فيه أربع خصائص:


1- الحرية صفر Freedom 0: the freedom to use the work


حرية تشغيل البرنامج كما يحلو للمستخدم ولأي غرض.


2- الحرية الأولى Freedom 1: the freedom to study the work


حرية دراسة كيفية عمل البرنامج وتغيير نواته الأساسية أو الكود المصدري source code كما يحلو للمستخدم عن طريق الوصول إلى الشيفرة المصدرية للبرنامج.


3- الحرية الثانية Freedom 2: the freedom to copy and share the work with others


حرية إعادة توزيع النسخ حتى يتمكن المستخدم من مساعدة الآخرين.


4- الحرية الثالثة Freedom 3:


the freedom to modify the work, and the freedom to distribute modified and therefore derivative works
حرية المستخدم في توزيع نسخ من الإصدارات المعدلة للآخرين سواء قام بذلك بشكل مجاني أو ببيعها.


يرجى ملاحظة أن النقطتين الثانية والرابعة (الحرية الأولى والثالثة) يتطلبان الوصول إلى الكود المصدري لأننا سنعود إلى هذه النقطة بعد قليل.


يعتبر نظامي التشغيل GNU و Linux ومكتبة C وخادم الويب Apache وغيرها من أقوى الأمثلة على البرمجيات الحرة free software حرة التكلفة وحرة توفير أكوادها وشفرتها للآخرين.


ثانياً: حركه البرمجيات مفتوحة المصدر Open Source Software Movement


عالم برامج الحاسب (2): تعرف على حركة البرامج الحرة ومفتوحة المصدر


في أبريل عام 1998، تمت صياغة مصطلح “البرمجيات مفتوحة المصدر open source software” بواسطة إريك ريموند Eric Raymond ردًا على إعلان شركة نتسكيب في يناير من نفس العام عن إطلاق الشيفرة المصدرية لمتصفح نيتسكيب كوميونيكيتر
عالم برامج الحاسب (2): تعرف على حركة البرامج الحرة ومفتوحة المصدر
إريك ريموند مؤسس حركة البرمجيات مفتوحة المصدر

حاول إريك خلق مصطلح جديد بديل عن مصطلح البرمجيات الحرة (free software) الذي كان يُفهم خطأ على أنه برمجيات مجانية بسبب عدم وضوح الفرق بين كلمة liberty وكلمة Free وبالتالي كان قطاع الأعمال يتخوف من العمل في لينكس والبرمجيات الحرة، لأن كلمة (Free) كانت تعني لهم المجانية، وبالتالي عدم وجود أرباح.


من أشهر أمثلة البرمجيات مفتوحة المصدر:


متصفحات الإنترنت Mozilla Firefox و Chromium (المشروع الذي يتم فيه تطوير الغالبية العظمى من برنامج Google Chrome المجاني ومتصفح Edge من مايكروسوفت) ومجموعة حزم التطبيقات المكتبية الكاملة LibreOffice و Open office وقواعد البيانات MySQL.


ما الفارق بين حركة البرمجيات الحرة وحركة البرمجيات مفتوحة المصدر والبرمجيات المجانية؟


البرمجيات مفتوحة المصدر open source software والبرمجيات الحرة free software والبرمجيات المجانية Freeware هي مفاهيم مختلفة. اختلافاتها ترجع إلى اختلاف قيم وأنواع التراخيص licenses الموجودة تحتها.


فالفرق بين (Free and open-source software (FOSS من ناحية والبرامج المجانية Freeware من ناحية أخرى أن الـ Freeware كما أشرنا في المقال السابق هي مجموعة من البرامج مجانية التكلفة وليست الحرة مثل Adobe PDF Reader أو Skype وغيرها والتي يمكن لأي شخص تحمليها من الإنترنت واستخدامها مجانًا، ولكن في نفس الوقت بدون دراستها أو تعديل أكوادها أو شيفرتها.


بينما FOSS هي برمجيات يمكن استخدامها ودراستها وتعديلها دون قيود، ويمكن نسخها وإعادة توزيعها بصيغة معدلة أو غير معدلة إما دون قيود.


وفقًا للنموذج التالي لديفيد روزين من شركة Wolfire Games، فإن البرمجيات مفتوحة المصدر والبرمجيات الحرة (باللون البرتقالي) غالبًا ما تكون مجانية ولكن ليس دائمًا. بينما نادرًا ما تعرض البرامج المجانية (باللون الأخضر) شفرة المصدر الخاصة بها للجميع.


عالم برامج الحاسب (2): تعرف على حركة البرامج الحرة ومفتوحة المصدر


ما الفرق بين البرمجيات مفتوحة المصدر والبرمجيات الحرة؟


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


هل تتذكر عندما قلنا إن من أهم خصائص البرمجيات الحرة free software هي الحريتين الثانية والرابعة المتمثلتين في الوصول إلى الكود المصدري source code للتطبيق؟ حسنًا هذا يعني أن جميع تطبيقات البرمجيات الحرة يجب أن تكون مفتوحة المصدر open source ولكن العكس ليس صحيحًا إطلاقًا.


عالم برامج الحاسب (2): تعرف على حركة البرامج الحرة ومفتوحة المصدر


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

كل هذا يقودنا إلى أنه اليوم يختلف المفهومان (البرمجيات الحرة ومفتوحة المصدر) تمامًا بل إنهما يشكلان الآن اتجاهين منفصلين الأهداف والرؤية.


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


أما بالنسبة للتراخيص فقد تتقاطع التراخيص فيما بينهما بطرق مختلفة فتؤدي إلى نفس مجموعة التراخيص. على سبيل المثال، تعتبر غالبية تراخيص البرامج الحرة free software licenses تراخيص لبرامج مفتوحة المصدر مثل تراخيص Linux و Ubuntu و MySQL.


عالم برامج الحاسب (2): تعرف على حركة البرامج الحرة ومفتوحة المصدر


الجدول التالي سيوضح لك باختصار اختلاف التراخيص بين المصطلحات الثلاثة :


عالم برامج الحاسب (2): تعرف على حركة البرامج الحرة ومفتوحة المصدر


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