من الجائز أنك قد سمعت من قبل عن شيء يسمى بالبرمجيات الحرة، وقد تكون سمعت عنها بأسماء أو مصطلحات اخرى مثل FOSS او البرمجيات مفتوحة المصدر. ولكن هل تعلم حقيقةً ماذا يعني أن يكون البرنامج حر؟ هل تعلم مدى أهمية هذا الشيء للعالم؟ وهل البرمجيات الحرة تشكل خطراً على أمن المعلومات في العالم؟
ماذا يعني أن البرنامج حُر؟
البرنامج الحر بشكل عام هو البرنامج الذي يحترم خصوصية وإرادة المستخدم. بشكل عام، هذا يعني أن للمستخدم الحرية التامة في تشغيل، تعديل، دراسة، تحسين، نسخ، أو إعادة توزيع البرنامج بدون قيود قانونية.
هل البرنامج الحر مجاني؟
ليس بالضبط. قد يكون البرنامج الحر مجاني، وقد يكون مجاني بشروط، وقد يكون مدفوع الثمن. بشكل عام، ليس هناك من هو قادر على إجبارك على شراء البرنامج طالما أن الكود المصدري متوفر لديك ويمكنك القدرة على تشغيل البرنامج لوحدك، ولكن أنت لست جميع الناس.
من أفضل الأمثلة على البرمجيات الحرة المدفوعة هو نظام RHEL. الكود المصدري للنظام متوفر للجميع، حتى أنه من خلال هذا الكود تم عمل توزيعات مختلفة مجانية بالكامل مثل CentOS و AlmaLinux وغيرها من التوزيعات، ولكن يبقى نظام RHEL هو الأغلى والإقبال عليه شديد جدا على الرغم من ارتفاع ثمنه.
على الرغم من قدرتك على استنساخ الكود الخاص به وعمل توزيعات جديدة منه، إلا أنك ستبقى غير قادر على توفير الدعم الفني بالجودة التي تقوم بها شركة RedHat وهذا ما يدفع المستخدمين المال مقابله. فعلى الرغم من توفر النظام بشكل مجاني بالكامل، الا أن الدعم الفني للنظام أهم من النظام نفسه.
بعض البرمجيات الحرة مثل Blender أو ZorenOS لا تلزمك بدفع أي شيء مقابل الإستخدام، ولكن لديهم قنوات خاصة يمكنك من خلالها التبرع لهم بمبلغ من المال مقابل البرمجية التي تستخدمها. هذا الأمر من شأنه تشجيع المطورين وتوفير المال اللازم لهم لتطوير البرامج، وأيضا قد تشعر من خلاله بشعور طيب في نفسك لمعرفتك بأنك تدعم ما هو لخير العالم أجمعين.
ما هو العتاد الحُر؟
في حال أردنا تطبيق نفس تعريف البرمجيات الحرة على العتاد، سوف نواجه مشكلة بسيطة جدا. العتاد هو شيء غير قابل للنسخ. لا يمكنك الحصول على معالج والقيام بنسخة لمعالج جديد. يمكنك شراء جهاز صناعة معالجات والقيام بصنع معالج جديد ولكن…. هل حقا لديك المال الكافي لشراء هذا الجهاز؟ على كل حال، عندما نتكلم عن العتاد الحر، نحن نقصد حرية التصميم للعتاد نفسه.
حرية التصميم ينطبق عليها ما ينطبق على البرمجيات الحرة. التصميم مفتوح المصدر يجب أن يتوفر للمستخدم ويكون للمستخدم النهائي الحرية في طريقة الإستخدام، نسخ، تحسين، دراسة، أو اعادة بيع التصميم أو حتى تصنيع عتاد جديد بإستخدام هذا التصميم.
على الرغم من أن المصطلح الشائع هو العتاد الحُر، إلا أن المصطلح الصحيح هو العتاد المبنى على تصميم حُر.
لماذا البرامج الحرة مهمة جدا؟
خلال قراءتك لما سبق، قد تكون الأفكار الرأسمالية قد ملأت رأسك بالفعل ولديك بعض الإستفسارات. لماذا أقوم بالعمل على برنامج لساعات وساعات، وفي النهاية أقوم بنشر الكود المصدري ببساطة لجميع الناس الجشعين الذين ليس لديهم أي نية لدفع قرش واحد أو حتى قول كلمة شكراً؟ انت محق. في معظم دول العالم، المستخدم لا يرى أي شيء سوى برنامج مجاني وهي بعض دول العالم قد يسرق النسخة المدفوعة الخاصة بك عوضا من أن يدفع ثمنها. هذه مشكلة ثقافية كبيرة جدا و متأصلة في العديد من الشعوب. سرقة تعب الناس من ناحيتهم لا تُعتبر سرقة والفلتان القانوني في بلادهم يعزز هذه الأفكار.
البرامج الحرة مهمة جدا للعالم لعدد من الأسباب أهمها نشر العلم والتقنية مجانا للجميع. تخيل معي أن هناك شاب\ة مبدع\ة جدا وقادر\ة على الكثير، ولكنه\ا شاب\ة فقير\ة جدا. موضوع المساواة متعب في كتابة المقالات، وبالتالي سنتحول لوضع الكتابة المموهه.
على كل حال، هذا الإنسان ليس لديه ما يكفي من المال لشراء برنامج قد يكون قادر من خلاله على عمل الكثير. ولكن في حال توفر بديل حر مجاني مفتوح المصدر لهذا الإنسان، هذا الإنسان قد يكون قادر على عمل أمور لم تحلم بأنها قد تتحقق.
لتطبيق ما سبق، تخيل لو كان خادم Apache مدفوع، ولو كانت لغة php مغلقة المصدر، ولو كان نظام لينيكس غير مجاني. هل تتوقع أن العالم سيكون قد وصل الى ما وصله اليوم؟ تخيل معي لو كان العمل على لغة C منوط بدفع رسوم، هل تعتقد أنه سيكون لدينا آلات وبرمجيات متقدمة كما هو الحال اليوم؟
أغلب الظن أن الخدمات سوف تكون أقل بمئة مرة بما هو موجود اليوم على أقل تقدير. الإنترنت سيكون بأسعار فلكية ولمن استطاع إليه سبيلا فقط! البرمجيات الحرة بشكل عام هي رسالة سامية أكثر من كونها طريقك السحري للربح والتحول الى ملياردير. البرمجيات مغلقة المصدر أيضا لم تقوم بجعلك ملياردير بهذه السهولة أيضا.
هل البرامج الحرة خطيرة على أمن المعلومات؟
بالطبع لا. من أهم أسس حماية المعلومات في العالم هو فتح مصدر البرمجيات.
هناك من يجادل بأن فتح مصدر البرنامج وتوفيره لأي شخص قد يتسبب في جعل البرنامج قابل للإختراق بشكل أكبر. هناك طريقتين للرد على هذا الإدعاء. الطريقة التقليدية هي أن نخبرك بأن زيادة عدد الناظرين للكود يتسبب في اكتشاف مبكر للثغرات وحل المشكلة قبل أن تتحول الى مشكلة. هذا الكلام صحيح 100% وليس فيه مشاكل. ولكنك سوف تجادلني وتقول بان الناظر الذي يقوم باخبارك عن الثغرة، قد يكون بجانبه ناظر يقوم باستغلال هذه الثغرة. أليس كذلك؟
كلامك صحيح 100%. ولكنك نسيت شيء مهم جدا. البرمجيات الحرة هي رسالة سامية. عدد الناظرين الذين يريدون الخير للعالم هو أضعاف الناس السيئين الباحثين عن الأذى للآخرين. هذا لوحده يسبب إكتشاف وحل الثغرات بمعدل أعلى بكثير من معدل إستغلال الثغرات.
هذا كان الرد الكلاسيكي على هذا الإدعاء. الآن دعنا نجعلك أنت تقوم بتحليل الموضوع من وجهة نظرك ودعنا نستمتع بتبادل وجهات النظر. لو كان هذا الإدعاء صحيح -وهو غير صحيح-، هل يمكنك أن تشرح لنا لماذا لا يتم إختراق وزارة الدفاع الأمريكية على الرغم من أنهم يعملون بنظام RHEL مفتوح المصدر والذي يقوم بالعمل مئات الالف المطورين والمخترقين ويقومون بتحليل كل صغيرة وكبيرة فيه؟
لربما وزارة الدفاع الأمريكية هي أمر كبير جدا والخوف منهم هو رادع يكفي للابتعاد عنهم. لكن لماذا لا يتم إختراق البنوك العاملة بنظام لينيكس؟ لماذا لا يتم اختراق شركة استضافة بسيطة تعمل من خلال خادم وهمي؟ في المقابل، نظام ويندوز المغلق المصدر والذي لا يعلم بمصدره أحد سوى الله والعاملين عليه مليئ بالثغرات ويتم اختراق مستخدميه بالملايين سنوياً. لماذا النظام مفتوح المصدر يتغلب وبقوة على أي نظام مغلق المصدر على الرغم من توفر الكود للبرنامج الحر، وعدم توفره للبرنامج المغلق المصدر الغير حر.
كيف أحمي برنامجي الحر؟
هل تقصد حماية برنامجك من المستخدم النهائي؟ هذا يتعارض وبقوة مع مبدأ البرمجيات الحرة. كيف يمكنك تحديد حرية المستخدم في استخدام برنامج مصمم ليمنح الحرية في استخدامه؟
البرمجيات الحرة مصممة لتحميك من مبرمجي البرمجيات المغلقة وهي مصممة لتكون شفافة معك لأقصى حد، فليس هناك شفافية أكثر من تزويدك بالكود المصدري بدون أي قيود. مجرد تفكيرك بإغلاق المصدر، يعني أنك خالفت معايير الحرية والبرنامج الخاص بك ليس برنامج حر.
ولكن كيف يمكنك جني الأرباح من خلال برنامجك؟ لنقل أن لديك برنامج مهم ورائع ويقوم بعمل مميز. مثلا، برنامج Blender. هذا البرنامج يقوم بإدخال الملايين سنويا على المطورين من خلال المساهمين في البرنامج. كل من لا يرغب في الدفع لشركة أدوبي، يقوم بالدفع لبرنامج بليندر. على الرغم من أن الدفع لبرنامج بليندر أقل بكثير من الدفع لشركة أدوبي، إلا أن بليندر قادر على عمل ما هو منافس ويتغلب على أدوبي في العديد من الأمور.
البرنامج الحر يأتي بدون قيود وأيضا يأتي بدون أي دعم فني. يمكنك توفير دعم فني مدفوع للبرنامج الخاص بك، ويمكنك توفير استضافة مدفوعة في حال كان برنامجك يعمل من خلال الويب. هذا ما تقوم به شركة Automattic من خلال توفير برنامج ووردبريس بشكل مجاني للجميع، وتوفير استضافة مواقع Automattic بشكل مدفوع.
في حال كنت أحد مبرمجي العالم الحر، فأنت مبدع كفاية لتتعلم كيفية الربح من برنامجك بدون أن تقوم بإدخال المستخدمين في زنزانة مغلقة.