كيف تصبح مبرمج؟
سؤال “كيف أكون مبرمج؟” أو “ما الذى أتعلمه ﻷصبح مبرمج؟” وغيرها من الأسئلة المشابهة يسألها الكثير من الناس وخاصةً الشباب فى المرحلة الجامعية وبداية مرحلة العمل. لذلك سأكتب لكم الآن كيف تصبح مبرمج فعلاً فى نقاط محددة. فلنبدأ النقطة الأولى.
أولاً: تعلم كيف تكتب كود (How to code) 🔗
كل ما عليك فى هذه الخطوة هو أن تختار أى لغة برمجة مثل جافا، كوتلن، سى شارب “C#"، بايثون، بى اتش بى “PHP”،.. إلخ. و ابدأ فى تعلم اللغة وفهم طريقة كتابتها “syntax” وأكتب أمثلة وأكواد بنفسك.
ثم تعلم أساسيات علم الكمبيوتر، و أساسيات أنظمة التشغيل؛ أى تعلم كيف تعمل أنظمة التشغيل وكيف يتحول هذا الكود الذى تكتبه إلى أفعال وأشكال تظهر على الشاشة أو تغير أشياء فى الهاردوير.. وهكذا.
ثم اختر لغة برمجة أخرى وابدأ فى تعلمها، وابدأ فى كتابة أكواد بها، وقارن بينها وبين اللغة التي تعلمتها فى البداية.. وستلاحظ أنك فهمت أشياء كثيرة فى هذه المرحلة، ولكن أكمل..
ثم ابدأ فى استخدام مهارات التحليل لديك بأن تقوم بحل المشكلات والألغاز بطريقة برمجية، وادرس الخوارزميات (algorithms)، و بنية البيانات (data structure) وطبق المفاهيم والأفكار التى تتعلمها على لغتيّ البرمجة لكى تستوعب البرمجة بشكل أعمق وأقوى.
ثانياً: تعامل مع إطار عمل (فريم وورك “Framework”) 🔗
بعد الإنتهاء من الخطوة الأولى، ابدأ فى تعلم كيف تتعامل مع إطار عمل معين مثل Unity لتطوير الألعاب وغيرها للمنصات البرمجية المختلفة.
لماذا أتعلم التعامل مع الأُطُر “frameworks”؟ 🔗
ﻷن 99% من الشركات تحتاج إلى مبرمجين يتقنون التعامل مع الـ frameworks ﻷنه الشركات تختار فريم وورك واحد وتقوم بتطوير برامجها عليه.
عندما تتعلم كيف تتعامل مع إطار عمل واحد، يُصبح تعلم كيف تطور برامج على إطار عمل آخر شئ سهل جداً ﻷنهم متشابهين بشكل كبير. حاول أن تتعلم 2 فريم وورك على الأقل لكي تكون فاهم بشكل مناسب للعمل فى الشركات.
ثالثاً: فهم هندسة البرمجيات (Software Design) 🔗
هندسة البرمجيات تُسمى software design أو software engineering وفى هذه المرحلة تبدأ فى تعميم المفاهيم وأسلوب التفكير على أطر العمل جميعاً frameworks. وتتعلم الـ design patterns، وأفضل الطرق لكتابة كود واضح وسهل التعديل عليه “clean code"، ثم تتعلم كيف تختبر الأكواد التى تكتبها “test your code”.
فى هذه المرحلة ستتعلم مفاهيم كثيرة منها builder و factories و observers و template pattern وغيرها.
رابعاً: مهارات التواصل “soft skills” 🔗
عليك أن تتعلم فنون التواصل مع الناس، وتتعلم كيف تتفاهم وتتحاور مع الناس غير المتخصصين فى البرمجة والهندسة. وتتعلم كيف تصيغ أفكارك وكلامك بشكل واضح وجميل لكى تُسَهِّل على نفسك التواصل مع الآخرين داخل الشركة التى تعمل بها.
أنصحك فى البداية بالتقديم على تدريب “internship” ثم وظيفة “jobs” فى الشركات الكبيرة، أو وظيفة “job” فى شركة صغيرة. حتى تعرف كيف تسير الأمور داخل الشركات وتبدأ فى تشكيل طريقة عملك وتُحسّن طريقة تواصلك مع الزملاء داخل الشركة.
ابدأ الآن 🔗
لا تؤجل كثيراً بداية تعلمك، ﻷنك ستحتاج إلى وقت طويل إلى حدٍ ما للوصول إلى كل ما تكلمنا عنه. لذلك أسرع طريقة للوصول هى أن تبدأ الآن! وتسير بشكل متدرج وصحيح لكى تفهم بشكل عميق ولا تصطدم بالمشكلات فى المستقبل. ﻷنك إن تعلمت بشكل متسلسل وصحيح ستكون قادر على حل المشكلات التى تواجهك، ولكن ان أخذت من كل مرحلة بعض الأشياء ستجد نفسك فى مشكلة لا تفهمها ولا تعرف سببها! وستتعرض لليأس كثيراً ﻷنك لا تستوعب البرمجة بشكل صحيح!
اقرأ أيضاً على موقع أبانوب حنا للبرمجيات: