السبت، فبراير 06، 2010

البرمجيات الحره

ريتشارد ماثيو ستالمن مؤسس حركة البرامج الحرة و مشروع جنو و مؤسسة البرامج الحرة . دعى لنشر مفهوم استمرارية حقوق النسخ "Copy Left" لحماية أهداف هذه الحركة، قام بتطوير العشرات من البرمجيات الحرة. والتي تعمل ضمن رخصة أطلق عليها ستالمن اسم GPL GNU Public License والتي تنص على أنه يمكن لكل من يمتلك أحد برامج GNU أن يقوم بنسخه، أو تغييره، أو تعديله، وحتى بيعه طالما كانت الشيفرة المصدرية والتعديلات التي يقوم بها هؤلاء متاحة لجميع مستخدمي البرنامج دون تمييز.
مشروع جنو ”GNU
بدأ ريتشارد ستالمن مشروع جنو لبناء نظام تشغيل حر بالكامل يوفر لمستخدمي الحاسوب حريتهم ويعفيهم من الاضطرار لاستخدام برمجيات مملوكة تسلبهم حريتهم في تعديل وتطويع ومشاركة البرمجيات مع بعضهم البعض. بدأ المشروع في كتابة نظام التشغيل جنو تقريبا من الصفر عن طريق كتابة أدوات بديلة لأدوات نظام يونكس بحيث تستبدلها الواحدة تلو الأخرى حتى يكتمل نظام التشغيل. مع نهاية الثمانيات وبداية التسعينات كانت تقريبا كل المكونات الأساسية لنظام جنو قد اكتملت ماعدا النواة، فحتى ذلك الوقت لم تكن هناك نواة مكتملة لنظام جنو
ولكن كانت هناك محاولات لا تزال في بدايتها لعمل نواة والتي عرفت فيما بعد باسم هيرد مبنية على النواة ماخ، لكن هذا استغرق وقتا طويل جدا. هنا أتى دور نواة لينكس.
و ستالمن أيضاً مبرمج بارع حيث كان يترأس عدة مشاريع مثل محرر إي ماكس Emacs، و المترجم جي سي سي GCC، و المدقق جي دي بي GDB و هي كلها برامج تنتمي لمشروع جنو.
البرمجيات الحرة تعنى أن للمستخدم الحريات الأربع الآتية :
1- حرية دراسة المصدر البرمجي وتعديله
2- حرية استخدام البرامج كيفما تشاء
3- حرية توزيعات البرمجيات للآخرين
4- حرية توزيع البرمجيات المعدلة للآخرين
من الأخطاء الشائعة بين المستخدمين الاعتقاد بأن نظام جنو/لينوكس تم بناؤه على نظام يونكس Unix وينسون أن الدافع ألرئيسي لقيام رتشارد ستولمان إلى إنشاء مؤسسة جنو "GNU هو قيام أصحاب نظام يونكس بتحويله إلى نظام مملوك وتجارى في نفس الوقت ويجب أيضا أن يوافق المبرمج على اتفاقية عدم الإفصاح عن الشيفرة المصدرية بين المطورين ، لذلك فقد تم تسمية المؤسسة "GNU هي اختصار متلاعب بالألفاظ للتعبير عن عدم علاقة مشروع جنو مع مشروع يونيكس GNU Not Unix لذلك عمل ريتشارد على دعوة المبرمجين من خلال شبكة الإنترنت إلى إنشاء نظام تشغيل يعيد الحرية إلى المستخدمين وذلك بأن عملوا على استبدال كل مكونات نظام يونكس بمكونات أخرى حرة تؤدى نفس الغرض ومتاحة تحت رخصة جنو العامة التي توفر الحرية للمستخدمين ، لذلك يجب ألا نقول أن نظام لينوكس تم بناؤه اعتمادا على نظام يونكس لان هذا يضيع جهود الآلاف المبرمجين الأحرار الذين ساهموا في الوصول إلى الانتشار الحالي لجنو/لينوكس ولكن من المناسب أن نقول أن هناك توافق للمعايير بين لينوكس و يونكس من حيث النتائج فكلاهما مثلا يدعم تعدد المستخدمين وتعدد المهام وغيرها من الأمور التقنية ، لكن لا تنس أن جنو/لينوكس نظام حر و يونكس نظام تشغيل مملوك.
الهدف الحقيقى من البرمجيات الحرة
للأسف الكثير من المستخدمين يستعملون أنظمة جنو/لينوكس من سنوات طوال ولكنه ربما تجد انه لم يجهد نفسه يوما في معرفة المغزى الحقيقى في اختلاف البرمجيات التي يستخدمها عن البرمجيات الامتلاكية السائدة في الأسواق ، ،ولاحظ لان استخدام البرامج بهدف تجارى لا يتعارض مع كون البرنامج حرا ولكن الذي يتعارض مع كون البرنامج حرا هو امتلاكية الشركة المصنعة للشيفرة المصدرية وعدم إتاحة الشركة الصانعة لهذه الشفرة بأي شكل من الأشكال ولا تعطى المستخدم شيئا إلا النسخة التنفيذية من برامجهم تحت اتفاقيات استخدام مجحفة .
الهدف الحقيقى من استخدام البرمجة الحرة هو غرض اجتماعي بالدرجة الأولى وهو حرية المستخدم ، أي أن المستخدم هو الذي يكتب الشيفرة وهو الذي يعدلها وهو الذي يطورها وهو الذي يوزعها بين إخوانه و أهله و أصدقائه وجيرانه ولا يخضعهم لشروط استخدام مجحفة ، البرمجيات الامتلاكية تفرض شروطا على مستخدميها بعدم مشاركة البرمجيات على عدة أجهزة والإبلاغ عن من يقوم بفعل هذا حتى لو كانت هذه البرمجية عبارة عن لعبة إلكترونية أعطاها أب لابنه الصغير على جهازه ليتسلى بها و إلا فانه سيكون بذلك خارقا لبنود الاتفاقية وعليه أن يقدم نفسه لدفع التعويضات الملائمة .
لم يكن الهدف التقني على الرغم من أهميته ذو أولوية لريتشارد ستولمان مؤسس حركة المصادر الحرة ، الهدف الفعلي هو الحرية التي أراد بها ريتشارد أن ينعم المستخدمون بها ، فتبادل البرمجيات أمر ميسور على الجميع ولا يكلف المستخدم إلا وسيلة حفظ البرنامج المطلوب لذلك فان منع المستخدمين من نسخ البرمجيات هو أمر في منتهي الصعوبة فلماذا يضع المستخدم نفسه في مشكلة أخلافية باحتفاظه بالبرنامج في حين أن هناك الكثير من أبنائه وإخوانه وأصدقائه وجيرانه بحاجة لهذه البرمجية ، يرى ريتشارد أن من حق المستخدم أن يحصل على البرنامج مجانا ويجب أن تلاحظ أنه على الرغم من أن هذا الأمر يعبر عن رأيه الشخصي إلا أن اتفاقية المصادر الحرة لم تنص على ذلك فعليا ومن حق المبرمج استغلال البرامج تجاريا .
عند الاستخدام الفعلي للبرمجيات الحرة يجد المستخدمين الجدد انفسهم حائرين حول الأفضلية بين البرمجيات الحرة والبرمجيات الامتلاكية لذلك يرى ريتشارد أن كون البرنامج حرا يعطيه أفضلية فانت تستخدم برنامج حر إذن انت إنسان حر وحريتك تساوى الكثير لا تفرط فيها أبدا ، الكثير من البرامج الحرة افضل تقنيا من البرامج الامتلاكية والبعض قد يرى العكس ولكن هذا الأمر لا يشكل معيارا للبرمجيات الحرة فالحرية هي المعيار الوحيد !
عملية تطوير البرمجيات الحرة يجب أن تكون شفافة وانفتاحية ومتاحة للجميع و يرفض أن يقوم أحد المبرمجين بتعقيد الشيفرة المصدرية أو عدم إتاحة الوصول إليها كما يسمح بعمل أعمال مشتقة وتوزيعها ولا تفرض اتفاقية البرمجيات الحرة على المستخدم قيودا مجحفة ، ذلك لأننا يجب أن ننظر إلى البرمجيات الحرة كنتاج فكرى وليس منتجا تجاريا !
4- البرمجيات الحرة هل هي مجانية السعر
من الأخطاء الشائعة أن تترجم كلمة Free إلى معنى مجاني وهو ما يثير غضب ريتشارد كثيرا ، فبعد كل هذه السنوات الطوال من البرمجة لآلاف من البرامج الحرة يأتي إليك شخص ليسألك هل هي مؤسسة البرمجيات المجانية وهو ما يسيء كثيرا لمؤسسة البرمجيات الحرة ، المشكلة هنا لغوية فلا توجد في اللغة الانجليزية كلمة تخبرك بمعنى الحرية مباشرة ، ولكن في العربية الحر حر ...والمجاني مجاني ، على الرغم من أن أغلب البرمجيات الحرة فعليا بلا ثمن فذلك لا يعنى أن كل البرمجيات الحرة يجب أن تكون مجانية فاتفاقية المصادر الحرة لا تجبرك على ذلك ، ولكى تفهم ذلك بصورة اكثر وضوحا فكر في حرية الرأي "Free Speech وليس مشروب مجاني Free beer
5- البرمجيات الحرة هل هي ذات ملكية عامة
البرمجيات الحرة فيها حقوق للملكية ولها مالك ولها رخصة ، لو جعلت البرمجيات الحرة مشاعا لأخذ بعض المستخدمين الشيفرة المصدرية للبرامج وقاموا بتحويلها إلى برمجيات امتلاكية مما يعنى أن المستخدمين سيعملون على البرامج وليست لديهم حرية للمشاركة أو التعاون ولمنع هذا استخدمت تقنية "CopyLeft والتي تعنى أن رخصة البرنامج نفسها تعطيك الحق في استمرارية النسخ وان هذا البرنامج محمى باستمرارية حقوق النسخ ونحن نعطيك الإذن بأن تقوم بنسخه ونعطيك الإذن بأن تغير فيه، ونعطيك الإذن لكى تضيف عليه ، ولكن عند إتاحة توزيع البرنامج يجب أن يكون تحت هذه الشروط لا اكثر ولا اقل ولذلك فأي شخص يحصل على البرنامج لديه الحرية للتعاون مع الآخرين إذا أراد ذلك وهكذا بهذه الطريقة أينما ذهب البرنامج تذهب الحرية معه وتصبح حق غير قابل للتحويل ، الرخصة التي تمنحك هذه الشروط هي رخصة جنو العامة " General Public License" والتي قام بكتابتها هو ريتشارد ستولمان نفسه وهي من رخص البرامج القليلة التي وضعت من اجل حماية حرية جمهور المستخدمين وليس للدفاع عن برمجيات شركة معينة ، لقد استخدمت هذه الرخصة في مشروعات جنو وكما استخدمها لينوس كرخصة للنواة Linux
نشأت مبادرة المصادر المفتوحة "Open Source Initiative أو مؤسسة البرمجيات مفتوحة المصدر عام 1998 ، حيث قام‬ ‫جون "‪ و ،"maddog‬لاري أوغسطين، وإيريك إس رايموند، و بروس ‪ بيرنز بالترويج رسميا للبرامج مفتوحة المصدر على أساس البراعة التقنية.
تقريبا كل برمجيات المصادر المفتوحة هي برمجيات حرة ولكن كل منهما يستند إلى فلسفة مختلفة في التفكير حيث إن البرامج المفتوحة منهجية تطوير تعتمد على البراعة التقنية واعتبرها مؤيدوها أنها "حملة تسويقية للبرمجيات الحرة"وهو ما يسترعى اهتمام رجال الأعمال للاستفادة منها ماديا مع اجتناب الحديث عن الأهداف الاجتماعية للبرمجيات الحرة لأن ذلك يصيب المستثمرين بالضجر ، بالطبع فان الأسماء المختلفة تعطيك معاني مختلفة لذلك ننصح باستخدام لفظ "البرمجيات الحرة بدلا من "البرمجيات المفتوحة أردت الدعاية لي حركة البرامج الحرة .
مساوئ مصطلح البرمجيات المفتوحة :
1- المصطلح "Open Source هو مصطلح عام لا يمكن لشخص عادى أن يحدد المقصود منه تحديدا لذلك لا يمكن حمايته كعلامة تجارية .
2- عدم دقة المصطلح"Open Source والتي يدعي أصحابها أنهم جاؤوا لتصحيح الفهم الخاطئ لمصطلح "Free والحقيقة أنهم أخطأوا خطأ كبيرا ، على الرغم من أن البعض قد أساء فهم مصطلح Free على أنه مجانية ولكن يمكن أن تشرح له مثالا أن معنى الحرية هو حرية التعبير وليست مجانية السعر لذلك فهو لن يخطا مجددا بينما المعنى الحرفي للمصدر المفتوح "Open Source هو إتاحة الكود للقراءة فقط.
3- التنازل عن المصطلح "Free مما يفهم على أن مؤسسة البرامج المفتوحة تتنازل عن حريات المستخدمين مقابل بعض الفوائد التقنية وعدم إتاحة الشيفرة المصدرية للعموم من أجل التوزيع أو التعديل أو عمل برامج مشتقة وتوزيعها ، وهذا ناتج عن خوف رجال الأعمال من الحرية والتي سوف تلقى على عاتقهم مبادئ وأخلاقيات اجتماعية ومسؤولية مما يؤثر على الأرباح التي من الممكن أن يقومون بتحقيقها .
4- اعتقاد المستخدمين الجدد لجنو/لينوكس أن أهداف حركة المصادر المفتوحة تختلف عن أهداف حركة المصادر الحرة ، إلا انه من يقوم بقراءة بنود التسعة يجد انه لا اختلاف حقيقي بينهم ، فغالبا ما تتفق نتائج المصادر الحرة مع مبادرة المصادر المفتوحة "OSI
5- الاعتقاد بأن البرمجيات مفتوحة المصدر لا تخضع لرخصة جنو العمومية
6- موزعين البرمجيات المفتوحة قد يقومون بإضافة قطع برمجية مملوكة إلى أنظمتهم وقد يعتبرونها ميزة تقنية على حساب التنازل عن حرية المستخدمين .