لقد تعلمت البرمجة ذاتيًا في سن الثلاثين

31

تعلمت البرمجة بنفسي عندما بلغت الثلاثين من عمري. ثم أطلقت بعض المشاريع الجانبية ؛ والآن تدير SaaS biz بدوام كامل ( حاليًا بسعر 220 دولارًا أمريكيًا MRR) . أفكر في نفسي كمبرمج الآن. إن المهام المفضلة لدي في اليوم هي دائمًا ما يتعلق بالهندسة.

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

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

ساعات تسجيل الدخول أثناء إنشاء أول مشروع جانبي

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

  • كل يوم من أيام الأسبوع – بعد ساعة واحدة العمل

في نهاية كل أسبوع – 4 ساعات يومي السبت والأحد لكل تم على مدى 4.5 شهر ، لذا المجموع =234 ساعة

إذا كنت لا تزال تعتقد ذلك تحتاج 10،000 ساعة لتغيير حياتك ؛ هذا هو العدد الدقيق للساعات التي قمت فيها بتسجيل الدخول إلى IDE الخاص بي ( ويعرف أيضًا باسم أداة محرر الكود) في 3 سنوات. تصدير كامل لوقتي المسجل ( عبر Wakatime) هنا.

بالنظر إلى الوراء ، أعتقد أن رحلتي لتعلم الكود يمكن تقسيمها إلى 5 مراحل. من المحتمل أن يتم تعلم أي مهارة جديدة من خلال نفس الرسم البياني.

الإثارة المبكرة دائمًا ما تكون ممتعة. لكن تجاوز الهوة الأخيرة لتتجاوز كونك “مبتدئًا”

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

من أين أبدأ؟

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

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

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

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

tl؛ dr

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

تفاصيل الإطار الذي وضعته:

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

  • أحتاج إلى التحقق من أفكاري بسرعة – لن أفعل أي كود قدر الإمكان ، على سبيل المثال رسائل البريد الإلكتروني للتسجيل للذهاب عبر Zapier + طاولة هوائية. سألت أصدقائي ما هو أسرع إطار عمل للبدء فيه ويبدو أن Django جاء مع جميع البطاريات المضمنة ( لوحة الإدارة ، وإرسال رسائل البريد الإلكتروني وما إلى ذلك ) وذهبت مع ذلك! قررت أن أتخلص من React وأشياء أخرى وذهبت للتو باستخدام JavaScript بسيط لأنه على ما يبدو كان لدى React منحنى تعليمي حاد.
  • أنا بحاجة ل تعلم كل من الواجهة الأمامية والخلفية – كانت Node.js مغرية للغاية لأنها على ما يبدو يمكنها التعامل مع كلا الأمرين بمهارة لغة واحدة فقط. لكن لا أحد في شبكتي يعرف هذه اللغة جيدًا ، لذا لم أختارها. المزيد أدناه حول “ العثور على مجموعة الدعم الخاصة بك “.

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

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

  • كيفية بدء مستند رمز موقع ويب جديد ” -> سترى بعض الأشياء الجديدة الغريبة هنا على سبيل المثال لذا فإن Google التالية
  • ما هو DOCTYPE html ” -> رائع ، مجرد تصريح بسيط لإخبار المتصفح بكيفية تحميل صفحتي .
  • كيفية إضافة صورة إلى صفحتي ”-> انتهى! لكن لماذا هو دائما على اليسار؟ كيفية محاذاة الصورة بشكل صحيح “->
  • “إخفاء العناصر في الصفحة عند النقر فوق الزر” -> سيأخذك هذا إلى غابة جافا سكريبت. وهي مهارة جديدة تماما. لذلك ربما تقضي أيامًا قليلة فقط في تعلم أساسيات ذلك. ثم عد إلى هذه المهمة بالضبط.
  • “كيفية إدراج البيانات الديناميكية على موقع الويب الخاص بي html” -> سيساعدك هذا على فهم الخوادم وقواعد البيانات

تؤدي الأهداف المختلفة إلى أنماط مختلفة من مسارات التعلم مثل

    • أريد أتمتة عملي – لا حاجة لتعلم الكود. ما عليك سوى تعلم أدوات مثل Webflow و Zapier و Airtable. أدوات التعليمات البرمجية هذه جيدة جدًا في السماح لك بإنشاء أدوات بصريًا
    • أرغب في بناء رواتب عالية ، وبناء حياة مهنية في مهندس برمجيات – اذهب إلى مدرسة أو على الأقل إلى معسكر تدريبي حول البرمجة
    • أحب إطلاق مشاريع جانبية ممتعة – تعلم الكود ، جنبًا إلى جنب مع لا رمز. ركز على التصميم والواجهة الأمامية (css ، js) حتى تتمكن من بناء أشياء جميلة خلال عطلة نهاية الأسبوع ومشاركتها مع العالم.

الإنترنت جميل مكان. لكل ما تريد القيام به ، ربما تم القيام به من قبل بطريقة أو بأخرى. موقع الويب الخاص بي البسيط لسرد أسماء المشاهير؟ من الواضح أن موضوعًا كهذا كان موجودًا. كان بإمكاني الذهاب إلى Themeforest وتنزيل مثل هذا المظهر ببساطة والحصول على ملفات HTML / CSS / JS. بصراحة كان مغريًا جدًا. حتى أنني حاولت العثور عليه. لكنني قررت اتباع نهج عدم القيام بأي شيء حتى أفهم اللبنات الأساسية لهندسة البرمجيات. لم أكن أريد أن أعرف كيف تصنع أجهزة الكمبيوتر ( ما زلت لا أعرف! ) لكن الأساسيات مهمة على المدى الطويل.

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

يمكنك العثور على برامج تعليمية شاملة حول كل ميزة تريدها تقريبًا كمبتدئ

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

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

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

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

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

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

ستكون مندهش جدًا من مقدار ما يمكن أن يقدمه لك الكون بمجرد طلب المساعدة.

كنت أضغط على أصدقائي على Whatsapp ورسائل البريد الإلكتروني وحتى المكالمات! لا أحد طلب مني أن أبتعد عنك. كان الجميع صبورًا ومفيدًا للغاية. وسأكون ممتنًا لهم إلى الأبد. أعتقد أنني كنت سأستسلم بدونهم.

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

ما الذي عليك عدم فعله

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

تلتزم My Github في عام 2020. العام الذي شعرت فيه أخيرًا بالراحة مع هذه المهارة الجديدة

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

قد يبدو بعيدًا جدًا إذا كنت تبدأ اليوم ، لكنها ليست كذلك. فقط ابدا. إذا كنت قد بدأت وتكافح اليوم ، فارجع إلى السبب. سوف يراك الدافع الجوهري. إذا كنت قد تعلمت شيئًا جديدًا بنفسك على الإنترنت ، فأنا أحب أن أسمع ما الذي يناسبك.