إلى المطورين المشككين في أنفسهم: هل أنت جيد بما فيه الكفاية؟

هل يبدو أي مما يلي مألوفًا؟

أنت قلق باستمرار من أنك لست جيدًا بما يكفي.

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

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

إذا كانت أي من هذه الأفكار المشكوك فيها تبدو مألوفة لك ، فأنت لست وحدك. جوجل "مطورو الشك الذاتي" ، وسوف تجد أكثر من 2 مليون نتيجة في أقل من ثانية.

كنت مكانك.

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

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

الدرس الأول: تعلم البرمجة تمامًا مثل بناء العضلات

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

بعد رفع الأثقال ، ستشعر بالألم والتعب في اليوم التالي. عندما تكون عالقًا في مشكلة برمجية ، سوف يتألم عقلك (حرفيًا) وستصاب بالإحباط.

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

1. التعثر هو جزء من العملية.

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

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

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

ملاحظة: قد يكون إعداد بيئة التطوير أصعب جزء في البرمجة.

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

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

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

2. نحن نخلط بين " ذكي وراثيًا " و "ظهر ذكيًا لأن الشخص قد أمضى الكثير من الوقت في مواضيع ذات صلة"

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

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

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

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

لذا صدقني عندما أقول إنني أعرف شعور الشك في نفسك والقلق من عدم قدرتك على فعل ذلك. لقد كنت هناك من قبل. ويمكنني أن أؤكد لك أنك لست وحدك. العديد من المطورين العظماء مروا بنفس الشيء. (هنا بودكاست حول هذا الموضوع.)

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

كل شيء عن الممثلين والمجموعات.

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

الدرس الثاني: ركز على حرفتك وليس أنت

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

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

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

عنصر العمل: ابدأ في تتبع المكاسب الصغيرة

متى كانت آخر مرة علقت فيها ولم تكن متأكدًا مما إذا كان بإمكانك حل المشكلة؟ كيف تمكنت في النهاية من حلها؟

افتح مستند Google جديدًا واكتبه.

في المرة القادمة التي تشك فيها في نفسك ، ألق نظرة على المستند وذكّر نفسك: إذا تمكنت من حل هذه المشكلة الأخيرة ، فستحل هذه المشكلة أيضًا.

استخدم المستند لتتبع المشكلات الصعبة التي تغلبت عليها وما تعلمته منها. احتفل دائمًا بهذه المكاسب الصغيرة!

اترك تعليقًا وشاركه في آخر مرة علقت فيها لتذكير أولئك الذين يكافحون حاليًا بأنهم ليسوا وحدهم. ؟

هل تريد أن تقرأ عن مسيرتي المهنية في مجال التكنولوجيا؟ تحقق من مقالاتي الأخرى.

هل لديك أسئلة أخرى تتعلق بالبرمجة؟

من فضلك أرسل لي بريدًا إلكترونيًا: [email protected]