12/08/2013

ماهي الفائدة من اتقان البرمجة؟

في المرحلة الجامعية تعاملت مع عدة لغات برمجية ربما 6 او اكثر بحكم انني درست هندسة الحاسوب ولكن كان ذلك بشكل سطحي جداً, لغة الـ C# هي أكثر لغة أحببتها من هذه اللغات لكنني تجاهلتها وذهبت لتعلم لغة الـ PHP وأكملت مسيرتي البرمجية معها.
واخذت التوسع فيها والعمل بها لمدة طويلة من الزمن وتعلمت استخدام اكثر من منصة عمل وكنت دائماً ارفض فكرة تعلم لغة برمجة اخرى,
وعندما كنت أسال لماذا تعتبر PHP أفضل من ASP كنت أجاوب عن طريق سرد مزايا ومحاسن الـ PHP متجاهلاً أصل السؤال والذي الهدف منه المقارنة.

فيما بعد سمعت عن منصة العمل لارافل وسمعت انها اصبحت منصة العمل رقم 1 مع العلم انها من منصات العمل الجديدة فقمت بتعلمها وقراءة التوثيق الخاص بها وأيضاً عدة كتب تتحدث عنها وأعجبت كثيراً بها ووجدت انها نقلة نوعية في عالم البرمجة..
مؤسسها Taylor Otwel الأن يعتبر شخصاً معروفاً جداً في عالم الـ PHP أعتقد ان المبرمجين الذين يعرفون قصة حياته هم أكثر عدداً من أولئك الذين يعرفون اسم مخترع لغة الـ PHP حتى !!,
وجدير بالذكر ان مؤسس منصة العمل هذه Taylor Otwel هو مبرمج .NET في الأصل لكنه انتقل حديثاً الى الـ PHP.
فيما بعد شعرت ببعض الحنين الى لغة الـ C# وقررت أن أتعلم الـ ASP MVC بإستخدام لغة الـ C# والإصدار الرابع من MVC تحديداً, عندها اكتشفت اكتشاف مهم جداً, إكتشتفت ببساطة ان التعامل مع ASP MVC هو اسهل بكثير من التعامل مع منصة العمل Laravel والذي يعتبر أفضل منصة عمل للغة الـ PHP كما ذكرت سابقاً, لكن الشيء الذي أدهشني فعلاً هو أن Taylor Otwel و إختراعه العظيم Laravel ماهو إلا محاولة لتقليد ASP MVC, نعم وببساطة Laravel هو محاكاة لـ ASP MVC في لغة الـ PHP ليس أكثر ..
هل يجب عليك تعلم أكثر من لغة برمجة ؟
أعتقد أن جواب السؤال قد وصل إليك بوضوح, Taylor حصد نجاح كبير وأصبح من الأسماء اللامعة جداً في عالم الـ PHP كل هذا كان بفضل إتقانه لأكثر من لغة برمجة !!!
ومن وجهة نظري (الجديدة) نعم يجب عليك تعلم أكثر من لغة برمجة ولكن يجب عليك أن تقضي من سنة إلى سنتين على الأقل مع لغة برمجة واحدة.
تنويه : في هذه المقالة أنا لا أحاول أن أقلل من مجهود Taylor Otwel فمجرد فكرته حول نقل الإبداع الموجود في ASP إلى PHP تعتبر فكرة مميزة ومبتكرة بالإضافة إلى أن عملية النقل هذه لم تكن بالأمر السهل وإحتاج إلى الكثير من الأفكار المميزة ليتمكن من تنفيذها