تعلم-البرمجة-من-الصفر-حتى-الاحتراف

أريد تعلم البرمجة من أين أبدأ؟ كيف تتعلم البرمجة من الإنترنت

إذا كُنت تريد أن تبدأ في تعلم البرمجة بنفسك وبدون دفع اي أموال، فيجب معرفة بعض المصادر والأساسيات التي ستساعدك على طول الطريق لتجنب لتشتت.

إليك السر الكبير، هُناك الكثير من الموارد المجانية والتي يُمكنك استخدامها لتزويد نفسك بكل وسائل المُساعدة التي تحتاجها في رحلتك كمبرمج، ويمكن تعليم نفسك الكثير من التقنيات الجديدة وجعل رحلتك البرمجية مُمتعة ومُثيرة.

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

ولكن قبل أن تقفز من الحماس وتُقرر تعلم البرمجة من الصفر حتى الاحتراف مجاناً، إليك أفضل النصائح والمُوارد التي تجعل قدمك قادره على السير في عالم البرمجة.

اسأل نفسك أولاً: لماذا تُريد تعلم البرمجة؟

خُذ بضع الدقائق أو حتى يوم كامل للتفكير في الأسباب الحقيقية الدافعة لتعلُم البرمجة، وكن صادقاً مع نفسك.

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

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

على سبيل المثال، إذا كان حلمك هو إنشاء نظام تشغيل رائع أفضل من لينكس أو حتى إنشاء تطبيقات لأحد أنظمة ويندوز، فتعلُم علوم الحاسب التي تعتمد على لغة “++C” هي الخيار الأنسب، بالإضافة إلى مواضيع أكثر تعقيداً مثل هياكل البيانات والخوارزميات.

تعلم-البرمجة-من-الصفر-حتى-الاحتراف

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

أي لغة برمجة تتعلم أولاً؟

بمجرد معرفة سبب رغبتك في البرمجة، يُمكنك بسهولة تحديد لغُة البرمجة التي يجب البدء في التعرف عليها.

على الرغم من عدم وجود لغة برمجة “أفضل” من الاخرى، إلا أن بعض اللُغات أكثر سهولة في الاستخدام عن غيرها، فتُعتبر “HTML و CSS” أسهل أبواب الدخول إلى عالم كتبة الأكواد البرمجية في مجال تطوير الويب.

وبالرغم من أنهم ليسوا لُغات برمجه، إلا أنك ستحتاجهم بشكل أساسي في تطوير مواقع الويب بالإضافة إلى تقنيات اخرى.

لإجراء المزيد من الحركة على مواقع الإنترنت وجعلها أكثر فاعلية مثل تتضمن المُعاملات المالية أو التعامل مع قواعد البيانات، فستحتاج إلى معرفة أشياء مثل:

  • JavaScript.
  • PHP.
  • SQL.
  • Python.

يستخدم صانعو تطبيقات الجوال كُلاً من لُغات “Swift” أو “objective c” لإنشاء تطبيقات لأجهزة أبل مثل الأيفون.

تستخدم “الجافا” أو “كوتلن” أو “Dart” من أجل إنشاء تطبيقات للأندرويد كما يلجأ مُطورو ألعاب الفيديو إلى مُحرك “Unity“، أو حتى استخدام “#C” لأجل إضافة المزيد من الحيوية على أفكار ألعابهم.

هل مازلت لا تستطيع تحديد لغة برمجة؟

يوصي معظم المحترفين بتعلم البرمجة أولاً كطريقة تفكير وأسلوب برمجي من خلال تعلم الخوارزميات والبرمجة كائنية التوجه “OOP” ثم الشروع في تعلم لغة “Python” أو “C #” أو “JavaScript” أو أي لغة أخرى تبعاً للغرض الذي ستبرمج لأجله.

فيديوهات تحكي قصة البرمجة 

إذا كُنت تُريد المزيد من المرونة فقد تكون بعض الفيديوهات السريعة عبر فيديوهات اليوتيوب مفيدة لك كما أن الدورات البسيطة التي توضح لك أساسيات البرمجة بشكل عام هي حليفتك.

قد يكون من الصعب معرفة أي الدورات التدريبية تستحق وقتك حقاً، لكن سأضع لك بعض الترشيحات التي أراها مُناسبه:

  • قناة الزيرو “El zero Web School”: تختص القناة بمجال الويب، ولكن ستجد بعض الفيديوهات التي ستُرشدك في المجالات الأخرى.
  • قناة عبد الله عيد.
  • بغداد الجديدة.
  • محمد عيسى.
  • موقع “The Odin Project“.
  • موقع كورسيرا.

هل تريد المزيد من التدريب الفردي والاستعداد الوظيفي دون الحاجة إلى الذهاب للتعليم في أحد الأماكن؟

حاول الاشتراك في أحد الدورات الموجودة على “Udacity أوTreehouse، حيث ستُتاح لك فرصة طلب المساعدة من أحد المُدربين بدلاً من المُعاناة من الأخطاء أو ترك الأسئلة الخاصة بك دون إجابه.

بغض النظر عن عدد الدورات التي ستحضرها، فلا يزال العديد من المُبتدئين يجدون صعوبة في تطبيق معرفتهم الأساسية نسبياً.

وللتغلب على تلك المُعضلة، فيوصي الكثيرون بالتركيز على الجانب التطبيقي والعملي بشكل كبير واستمرار تنفيذ المشاريع لكي تحترف عملية تحويل أفكارك إلى كود مكتوب.

ركز على تعليم نفسك التفكير النقدي

بدلاً من التركيز المُفرط على تعلُم لغة برمجة مُعينة، يُمكنك تعلم كيفية حل المشكلات بطريقة يفهمها الحاسوب.

بمعنى آخر، قٌم بتحسين مهاراتك في المفاهيم مثل التعرف على الخوارزميات وغيرها من المصطلحات التي ستُسهل عليك الكثير، كُلما فهمت هذه المبادئ بشكل أفضل سيكون من الأسهل تعلم لُغات أخرى أسرع.

بفضل الإنترنت، ليس عليك الذهاب إلى الجامعة وقضاء أربع سنوات لتعلُم أساسيات علوم الحاسوب، الآن يتوفر عدد من الفصول الدراسية على مستوى العالم ومن أفضل جامعات العالم مجاناً وعبر الإنترنت أو حتى برسوم رمزية لا تُقارن مع قيمه تلك الدورات التدريبية.

يمكنني أن أوصي بدورة تُقدمها جامعة هارفارد بإسمCS50x لعلوم الحاسوب والذي سيجعلك شخص تفهم ما يحدث بالبرمجة والحاسوب بما فيه الكفاية.

احصل على كتاب

تعلم-البرمجة-من-الصفر-حتى-الاحتراف

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

ربما يُمكنك العثور على كتاب إلكتروني حول أي لغُة برمجة أو أي تقنية تحاول تعلمها.

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

نظراً لأن البرمجة تتعلق حقاً بحل المشكلات وبعض المهارات الشخصية الأخرى فيوجد كتابه العظيم يُسمى Programming Pearls“.

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

الدروس التفاعلية

دعونا نواجه الأمر بحياديه تامه، فقراءة بعض الأسطر البرمجية على شاشة أو في كتاب يُمكن أن يبدو من الغباء.

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

على سبيل المثال، لا يقوم موقعFreeCodeCamp بتقسيم مفاهيم التشفير إلى أجزاء صغيرة، ثم يقوم بدمج كل مفهوم في تمرين خاص به والذي يجب عليك حله قبل الانتقال إلى الموضوع التالي.

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

ألعاب تعليم البرمجة

ألعاب البرمجة هي أيضاً طريقة مُمتعة لترطيب الأكواد على قلبك، فإذا كان لديك بعض الملل، فيُمكنك تجربة ألعاب موقعHour of Code البسيطة.

تستخدم العديد من المدارس بالفعل لعبة ماين كرافت “Minecraft: Educational Edition لتعليم أساسيات البرمجة للأطفال، يُمكنك تنزيل هذا الإصدار من ماين كرافت مجاناً إذا كان لديك حساب جامعي لدى مايكروسوفت.

هل تُريد بعض البرامج التعليمية الأكثر تعقيدا والتي يُمكنك وضعها في سيرتك الذاتية؟ قد يكون موقع “CodinGame أكثر ملاءمة.

الخلاصة

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

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

المراجع

الأسئلة المُتَدَاوَلة

لا يوجد أفضل لغة لأن المقارنة غير عادلة، ولكن قبل كل شيء، ابدأ في تعلم شيء ما مُحدد ومعروف، وبمجرد أن تصبح مرتاحاً مع لغة برمجة واحدة، ستتمكن من التقاط اللغة التالية بسرعة أكبر، فالأمر يُشبه دراسة الموسيقى ثم البدء في تعلم آلة موسيقية جديدة مع العلم أن جميع الآلات تجلب كميات مرضية جداً من الأموال.

اترك تعليقًا

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

انتقل إلى أعلى