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

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

بالحديث عن التصميم فهناك لغات يمكن استخدامها لتصميم صفحة ويب مثل HTML مثلًا فأنت تكتب للحاسوب: من فضلك ضع عنوانًا هنا وزرًا هناك. لكن لا يمكن استخدامها في حل المشكلات أو المساعدة في أي تطبيق هي فقط تصنع الصورة كخطوة أولى. 

هناك العديد من الأسماء التي نسمعها طوال الوقت مثل بايثون وجافا وC وجافا سكريبت وغيرها الكثير. إن كنت مبتدئًا فبما ستبدأ؟ 

اللغة غير مهمة بل الأساسيات: 

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

لغات البرمجة تموت وكذلك تخلق: 

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

تخصص في التخصصات وليس في اللغات: 

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

ماذا اختار إذن؟ 

إن بدأت تعلم البرمجيات فعليك تحديد هدفك وليكن مثلًا تعلم تطبيقات الحاسوب وحينها تنظر للغات التي يمكن أداء تلك المهمة بها. وستجد مجموعة متنوعة ولكن بعد البحث ستجد أن هناك لغة بها مميزات تمكنك من المهمة بشكل أسهل. وهذا مربط الفرس

لا تبحث عن اللغة السهلة فهي قد تكون سهلة في الكتابة ولكنها لا تقوم بمهمتك بالشكل الأمثل. بل ابحث عن أفضل لغة تؤهلك للمجال الذي تريده. فمثلًا لغة بايثون أفضل لغة إن كنت تريد تعلم تحليل البيانات أما لغة C فيه ممتازة عند الحديث عن الإلكترونيات وبرمجة الآلات وهكذا. 

اللغة نفسها وسيلة قد تتغير بتغير الزمن المهم هو كيف تخدمك هذه الوسيلة في طريقك.

إن كنت قد اخترت اللغة التي تود فمن أين تبدأ؟

هناك العديد من المواقع التي تقدم مساقات للبداية مثل اليوتيوب وأكاديمية حسوب وموسوعة حسوب

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

هذا رأيي بالطبع وقد تختلفون معي.

 لذلك شاركوني أراءكم عن الموضوع وتجاربكم حول تعلم لغات البرمجة. كيف عرفتم اللغة الأفضل لكن؟ وإن لم تكن لديك خبرة في البرمجة، هل تفكر في الانخراط بها قريبا؟