الخميس، 3 مايو 2012

لينوس تورفالدز

(لِينُوس تُورفالدز) هو مؤسس مشروع نواة اللينوكس linux kernel و المدير الفني (إن جاز هذا التعبير) للمشروع. و هو هاكر متميزٌ جداً؛ ليس فقط ببراعته و عناده و ثقته الشديدة في نفسه، بل أيضاً بغرابة آرائه و مصادمتها في بعض الأحيان لما يهواه الكل و يحبونه.
و قد أعجبت بـ (لينوس) عند بداية تعرفي عليه و ذلك في المرحلة التي تلت معرفتي لنظام الـقنو/لينوكس GNU/Linux، و بدأت أشاهد الفيديوهات المتناثرة له علي الشبكة و هو يتحدث عن مواضيع مختلفة لا يربط بينها إلا حديثه عن نواة اللينوكس في الغالب.
و بدأ إعجابي به يتزايد حتي وصل لمرحلة أنني صرت أبحث عن فيديوهاته القليلة علي الشبكة كما يبحث العاشق عن صور محبوبته ! و صار من الواضح أنني رغم اختلافي الشديد معه في أغلب آرائه، إلا أنني صرت أتأثر به بشدة حتي في طريقة الحديث و أسلوب المناقشة !!!
و حينما فكرت في أسباب هذا التأثر الشديد (رغم ما سأورده بعد قليل من الاختلافات الفكرية بيننا) وجدت أن منها ما يلي:
  • الرجل له كاريزما عالية جداً، بحيث لا يمكنك إلا أن تقع أسير تلك الثقة الكاسحة في النفس، و قد يؤدي هذا إلي تأثيرٍ عكسيٍ جداً من حيث أن المشاهد له قد يكرهه إلي أقصي الحدود بسبب هذه الثقة في النفس التي قد يسميها الكثيرون غروراً واضحاً (و قد يكونوا مصيبين).
  • (لينوس) من الشخصيات التي تعتمد علي ذاتها بشكلٍ فائق، و أنا بطبيعتي أحب هذا النوع من الشخصيات بسبب نشأتي و قناعاتي الذاتية.
    و من أبرز الأمور التي تجسد هذه الاعتمادية علي الذات مشروعه الأكبر و هو (نواة اللينوكس)، فظروف إنشاء هذا المشروع كانت رغبة الفتي (لينوس) حينما كان طالباً جامعياً في الحصول علي نظام تشغيلٍ علي حاسوبه الشخصي يماثل ذلك الذي يوجد عل أجهزة الجامعة التي يعمل عليها، و هكذا قرر كتابة ذلك النظام من الصفر (و إن كان الموضوع أكثر تفصيلاً من هذا بالتأكيد) !
  • نشأة (لينوس) و علاقته المبكرة و الغريبة بالحاسوب و التي كنت أتمني أن أحظي بمثلها؛ فقد بدأت هذه العلاقة في سن العاشرة تقريباً، و كان من أبرز ملامحها أن (لينوس) كان يكتب كل برامجه (أو أغلبها) بنفسه لأن حاسوبه الشخصي لم يكن له برامج في السوق الفنلندية ! و هكذا اعتاد (لينوس) الاعتماد علي نفسه تماماً في هذا الشأن.
    و الأغرب أنه برمج بكل الوسائل المعروفة، بدءاً من لغة الآلة machine code و انتهاءاٍ بلغة الـC ! و قد صعقت حينما سمعته يؤكد أنه في مرحلةٍ من المراحل لم يكن يعرف معني المُجَمِّع assembler و كان من المعتاد له أن يكتب برامجه بالكود الستعشري hexadecimal !

أما الاختلافات في الآراء بيني و بين (لينوس) فهي كثيرة، و منها:
  • حبه البالغ للغة الـC و كرهي البالغ لها.
  • كرهه البالغ للغة الجافا و آلتها الوهمية JVM و حبي (غير الشديد) لَلُّغة و (الشديد) للآلة الوهمية.
  • طريقته في مهاجمة المخالفين له في الرأي، و هي عنيفةٌ جداً و تؤدي إلي الكراهية الشديدة، و قد كنت قد تأثرت به (و كذلك بأسلوب الإمام بن حزم رحمة الله عليه) لفترةٍ من الفترات، و لكني أحمد الله تعالي أنني عدت عن ذلك و أصبحت أحاول قدر الإمكان الحديث بحياديةٍ و اعتدال.
  • حبه المبالغ فيه (و يشترك معه كثيرٌ من المبرمجين  المخضرمين) لسطر الأوامر command line، و ابتعادهم عن التقنيات الحديثة التي تسهل البرمجة بشدة، و لكني أصبحت لا الومه علي هذا كثيراً؛ فظروف نشأته تجعل سطر الاوامر منتهي الرفاهية بالنسبة له (هلموا: لقد كان الرجل يبرمج بالأصفار و الآحاد ^_^)
  • كرهه للمُنَقِّحَات debuggers !!!
    و ربما يكون قد غير وجهة نظره هذه (لأنني سمعته يقول هذا في فيديو قديم له)، و لكن حتي لو كان لا يزال يكره المنقحات فظروف نشأته أيضاً تجعلنا نغض الطرف عن هذا نوعاً ما.

هناك 6 تعليقات:

  1. اولا رجاءا خفف عبء ادخال التعليقات في مدونتك

    ثانيا، هذه سمة المشاهير، يتم نسب الكثير من العمل لهم لم يعملوه بل عمله المساهمين في المشروع.

    هنالك الكثير ممن يحاول أن يقلده، و خاصة بفكرة الاعتماد فقط على الـ command line، اراهنك أنه عندما يضرب الخرف دماغة و يبدأ بفقدان الذاكرة (مثلي) نتيجة العمل سيلجاّ إلى تلك الأدوات التي تسهل عمله، من الرجل الرياضي، إلى رجل يستعين بعكاز.

    ردحذف
  2. * اولا رجاءا خفف عبء ادخال التعليقات في مدونتك
    قد فعلت ^_^

    * اراهنك أنه عندما يضرب الخرف دماغة و يبدأ بفقدان الذاكرة (مثلي) نتيجة العمل سيلجاّ إلى تلك الأدوات التي تسهل عمله، من الرجل الرياضي، إلى رجل يستعين بعكاز.

    أشك في كونه سيستسلم لهذه الرغبة؛ فهو (رغم صغر سنه) يُعتبر من الجيل الأقدم للمبرمجين، و بالنسبة له يعتبر سطر الأوامر و لغة السي قمةً في السهولة مقارنةً بما بدأ به حياته البرمجية ^_^

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

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

    ردحذف
  5. بالفعل أنا أحب الآلات الوهمية عامةً، و بشكلٍ خاص آلتي الـJVM و الـNET.؛ فكما قلت أنت بالضبط: فالآلات الوهمية تغنيك عن المشقة اللازمة لبناء إصدارةٍ من ملفات البرنامج التنفيذية لكل بيئةٍ من البيئات المختلفة، و كذلك تغنيك عن رفع كل تلك النسخ علي موقعك، و وجع الرأس الخاص بتحديث كلٍ واحدةٍ منها عند بناء إصدارةٍ جديدةٍ من البرنامج.
    و لكن هناك عيوبٌ لهذا الأمر، أولها أن الآلات الوهمية نهمةٌ فيما يخص موارد الجهاز الذي تعمل عليه، صحيحٌ أن هناك بعضها يستعين بتقنياتٍ قويةٍ بحق لتعويض هذا (كتقنية JIT و غيرها) إلا أن البقية لا تفعل أو علي الأقل تفشل في ذلك.
    أما العيب الثاني فأنها تدفعك لكي تستفيد منها خير استفادةٍ أن تجعل عمل البرنامج الخاص بك غير مرتبطٍ بنظام تشغيلٍ معينٍ قدر الإمكان، فلا يمكنك أن تستخدم ميزةً (أو نقصاً) في نظامٍ ما كجزءٍ أساسي من برنامجك و إلا كان استخدامه للآلة الوهمية بلا جدوي، فلا تجني فائدته مع أنك تدفع ثمن عبء التشغيل !
    كمثالٍ علي برنامج يعمل علي آله وهمية و لكنه يرتبط بنظام تشغيلٍ معين: برنامج (الفهرست) الذي كنت قد كتبته حينما كنت طالباً:
    http://afkar-abo-eyas.blogspot.com/2011/11/blog-post_25.html

    ردحذف