يُعتبر مجال البرمجة من أكثر مجالات العمل المطلوبة في وقتنا الراهن، فالتقنية تُحيط بنا من كل الاتجاهات، ولا يُمكن توظيف هذه التقنية دون كتابة برامج للاستفادة منها. البرمجة بحر كبير جدًا، مُختلف الاتجاهات والأعماق، ولا يُمكن لأي شخص أن يُبحر به أو يغوص إلى أقصى أعماقه.
ولكثرة الطالبين لهذا المجال كثُر القيل والقال، دون تجربة ودون تثبت عن أساس هذه الأفكار والأقوال، 6 أساطير عن البرمجة يجب أن تتخلص منها قبل أن تبحر.
1- البرمجة تعني كتابة الأكواد، لا طريقة تفكير
مهما اختلفت لغات البرمجة ومهما تطورت، فهي ترتكز في النهاية على أساس واحد وهو التفكير المنطقي العقلاني ولا شيء دونه. لا يُمكنك القفز لمسافة 3 أمتار من أول مرّة، إنما تحتاج إلى التدرّب وفهم أفضل السبل للوصول إلى هذه المسافة من قفزة واحدة فقط.
وكذلك هو الأمر في البرمجة، لا يُمكنك طباعة ناتج جمع عددين دون تحديد مصدر هذه الأعداد، لا يُمكنك عرض نافذة تسجيل الدخول إن لم تتصل بقاعدة البيانات للتأكد من وجود مُستخدمين بداخلها لمعالجة البيانات التي سوف يتم ادخالها. معرفة كتابة الأكواد شيء وتنظيمها لتصنع برنامجًا مفيد شيء آخر.
2- مُتلازمة المحتال .. “لست مؤهلاً بما يكفي لأبرمج”
قد يبدو عنوان هذه المُتلازمة جارحًا بعض الشيء، لكن في الحقيقة المُبرمج الذي يُعاني من هذه المُتلازمة هو الضحية وليس الجاني. حيث أُثبت علميًا أن بعض المُبرمجين لديهم مُتلازمة يشعرون من خلالها أنهم ليس مؤهلين تمامًا للقيام بالبرمجة على أكمل وجه، وأن معرفتهم لا تكفي، فضلًا عن كفاءة بقية المُبرمجين وأن معرفتهم قليلة جدًا إذا ما قُورنت بالبقية.
هذه المُتلازمة صُنّفت فيما بعد على أنها دليل قاطع على أن صاحبها هو مُبرمج حقيقي، لأن الشعور بعدم الرضا والسعي إلى التطوّر بشكل دائم كفيل بأن يجعل صاحبها مُتميّزًا عن غيره.
لذا حاول عدم التفكير بهذه الصورة بشكل دائم، فالبرمجة كما تحدثنا هي بحر، وباختيارك للغة برمجة فأنت حددت جهة الإبحار، لكن الجهد المبذول هو الذي يُمكّنك من الغوص حتى الأعماق، وحتى هذه اللحظة لا يُمكن للبشر الغوص إلى أي عمق يرغبون به دون استخدام بعض الأدوات.
لذا تخلّص من هذا الشعور وتابع عملك فأنت حتمًا في الطريق الصحيح، طالما أنك قادر على تحويل الأفكار التي برأسك إلى شيء ملموس على أرض الواقع فأنت في الطريق الصحيح.
يقول مارك زوكربيرغ مُؤسس فيس بوك “يجب التفكير دائمًا أنك بحاجة للبدء من نقطة ما ويجب أن تكون صغيرة، لأن الكثير من المفاهيم الخاطئة في مجال علوم الحاسب تنص على تعلّم كميّة كبيرة من المعلومات قبل أن تتمكّن من بناء شيء عظيم”
3- البرمجة تحتاج السهر والعمل لفترات طويلة
يعتقد الكثير من المُبرمجين أن السهر وعدم النوم والعمل لأكثر من 100 ساعة أسبوعيًا تصنع منهم مُبرمجين حقيقين، لكن هذه القاعدة ليست من الأمور الأساسية. الحاجة هي التي تخلق ساعات العمل، فلو كان لديك مشروع تحتاج لتسليمه بعد فترة قصيرة، من الضروري أن تعمل لضمان تسليمه في الوقت المُحدد.
أما أن تعمل لساعات طويلة لتجهد نفسك ظنًا منك أنه هكذا يكون المُبرمج الحقيقي، فانظر إلى المُبرمجين في أكبر الشركات مثل فيس بوك أو تويتر، فهم يعملون في بيئة مُهيّئة تمامًا لدفع عجلة الإنتاج، مع توفير أكثر من وسيلة ومكان للعمل.
لا يحتاج المُبرمج هناك للجلوس خلف مكتبه طوال وقت الدوام الرسمي، فبإمكانه التوجه إلى صالة الألعاب الرياضية وأخذ قسطًا من الراحة، أو يُمكن التوجه إلى حمّام السباحة والعمل من هناك طالما أن النتيجة النهائية هي العمل وإنجاز الأشياء.
4- سنتان من التعلم تكفي لتعمل مبرمجًا طوال حياتك
التقنية تتغيّر بشكل دوري وبسرعة كبيرة جدًا، لذا احرص على تطوير مهاراتك لتتلائم مع هذا التغيير ولا تقف عند حد مُعيّن.
لن تنفعك مهاراتك في تطوير صفحات الويب إذا كُنت قد تعلمتها مع بداية الألفية الجديدة، ولم تطورها لتتقن مهارات تطوير الويب باستخدام HTML 5. طالما أن الاتجاه الذي اخترته ما زال مطلوبًا ويُواكب التطور، تبنّى جميع تقنياته الحديثة وأعمل على إتقانها، فالمُبرمج الحقيقي يحتاج إلى تطوير أدواته بشكل مُستمر.
بيل جيتس مُؤسس مايكروسوفت تعلّم البرمجة من أجل إنشاء برنامجًا بسيطًا لتنظيم جدول الحصص الدراسية وأسماء البنات الذين يرتادون هذه الحصص، ليتمكن فيما بعد من برمجة أحد أعظم أنظمة التشغيل في تاريخ الحواسب. الحقيقة أنك لتصبح مبرمجًا حقيقيًا ستحتاج أن تواصل التعلم دائمًا وطوال مسارك المهني.
5- كتابة الأكواد .. مملة
المُبرمج الحقيقي هو ذلك الشخص الذي يستمتع مع كل سطر برمجي يكتبه، ولا يعتبر أن ما يقوم به هو عمله اليومي الممل. بعض المُبرمجين المُحترفين لا يعتبرون أن مجال عملهم هو البرمجة، فمعظهم يقوم بوظائف جانبية بدوام ثابت ويعملون بالبرمجة كنوع من التسلية والمُتعة، وهم رائدون جدًا في هذا المجال.
لذا احرص على الاستمتاع بأكبر قدر مُمكن لتجد نفسك لا تكترث للوقت الذي تقضيه خلف الشاشة لكتابة برنامج مُحدد أو حل مُشكلة برمجية.
جاك دورسي مُوسس تويتر، لم يصل إلى ما هو عليه بالصدفة، لكنه منذ الصغر كان مهووسًا بخريطة العالم والمدن الموجودة عليها، وتعلّم البرمجة من أجل إنشاء خريطة وإضافة الأماكن والمدن إليها والتعديل عليها فيما بعد.
لأنه استمتع بالبرمجة واعتبر أنها الشيء الذي يسمح له بتحويل أفكاره إلى حقيقة، تمكّن من إنشاء موقع التدوين المُصغّر تويتر فيما بعد.
6- لغة البرمجة التي أعرفها هي أقوى لغة برمجة
التفكير السائد هو كُلما كانت لغة البرمجة مُعقدة، كلما كان مُتقنها مُبرمج حقيقي، وهذا غير صحيح. تخيّل أنك اشتريت طقم السباحة، النظارات وجميع الأدوات اللازمة وقُمت بارتدائهم، هل يجعل ذلك منك سبّاحًا ماهراً ؟
بالطبع لا، النظر يجب أن يتوجه إلى كيفية توظيف هذه الأدوات واستخدامها بشكل صحيح للسباحة، وكذلك هو الأمر في البرمجة.
تعلّم لغات عميقة مثل C وحفظ جميع خواصها ووظائفها لن يجعل منك مُبرمجًا طالما أنك لم تستخدمهم بالشكل الصحيح لصناعة برنامج مُتكامل تستفيد منه أنت أولًا وبقية المُستخدمين فيما بعد.
يقول زوكربيرغ “أن البرمجة هي الشيء الوحيد في العالم الذي يُمكّّنك من إنشاء أي شيء ترغب به من العدم”
باختصار، لا تحتاج لأن تكون خارق الذكاء لإتقان البرمجة، بل يجب أن تُؤمن بفكرة أن الهدف الأساسي من البرمجة هو تحويل الأفكار إلى شيء ملموس على أرض الواقع ولهذا السبب صُنعت لغات البرمجة.
يقول ستيف جوبس مُؤسس شركة أبل “يجب تعليم البرمجة لجميع المواطنين في أمريكا لأنها تُعلِمهم كيفية التفكير” وهو ما حدث بمبادرة code.org بعدها والتي دعمها الرئيس الأمريكي نفسه.
هذه بعض المغالطات التي ستسمعها خلال رحلتك كمبرمج، من الأفضل لك أن تعرفها من الآن، لأنه كثيرًا من المحترفين والمبتدئين يقعون بها وتسبب لهم بعض المشاكل .. هل تعتقد أنه توجد أساطير أخرى بعالم البرمجة لم نذكرها؟