از یک انسان دوست تا یک توسعه دهنده در اعداد و رنگ ها

سلام، هابر! مدتهاست که شما را می خوانم، اما هنوز نتوانسته ام چیزی از خودم بنویسم. طبق معمول - خانه، کار، امور شخصی، اینجا و آنجا - و اکنون دوباره نوشتن مقاله را به زمان های بهتر موکول کردید. اخیراً چیزی تغییر کرده است و من به شما خواهم گفت که چه چیزی باعث شد بخش کوچکی از زندگی خود را در مورد توسعه‌ده شدن با مثال‌هایی توصیف کنم که ممکن است برای مبتدیان، افراد شک و مردانی که رک و پوست کنده خود را باور ندارند مفید باشد. برو!

من از دور شروع می کنم - در کودکی، والدینم تعداد زیادی دایره المعارف و کتاب به من دادند - برای همه مناسبت ها. هر دلیلی برای هدیه دادن یک کتاب است. سپس، البته، من از آنها سپاسگزار نبودم، بلکه آن را بدیهی می دانستم. اما با گذشت زمان، با صحبت کردن با افراد دیگر، نتیجه‌گیری عجیبی گرفتم: بسیاری از آنچه من می‌دانستم نمی‌دانستند، هیچ نام، مفهوم، مفهومی را نمی‌شنیدند، نویسنده‌ها را نمی‌خواندند و فیلم‌ها را تماشا نمی‌کردند. در همین لحظه، یک بینش به دست آمد: این است، دانش. خیلی وقت بود که نمی‌دانستم کجا می‌توانم همه اینها را اعمال کنم، زیرا صرفاً ارتباط با مردم به هیچ وجه سودی ندارد و حرفه گفتن داستان‌های جالب در آن زمان وجود نداشت (الان برخی وبلاگ‌نویسان هستند. ، یوتیوب، TED-ED و غیره). من انگلیسی را طولانی و پر زحمت خواندم، زیرا... "این امیدوارکننده بود و در آینده مفید خواهد بود" - البته در آن زمان هیچ اعتمادی به حرفه آینده من وجود نداشت ، بنابراین از طریق "من نمی خواهم" آنها من را بارها و بارها به درس سوق دادند. البته الان خیلی ممنونم که در آن لحظه پرش نکردم و توانستم پایگاه خوبی به دست بیاورم که البته نقش مهمی در انتخاب حرفه آینده من داشت.

من یک انسان‌گرای ساده نیستم، بلکه یک «ترکیب» هستم: با داشتن مهارت‌های نرم پیشرفته و دوست داشتنی برای سازماندهی فعالیت‌های مردم، در عین حال به فیزیک، شیمی، پدیده‌های اقتصادی، علوم کامپیوتر و مواد علمی عمومی علاقه‌مندم. در مدرسه حتی در امتحانات فیزیک قبول شدم و با بودجه وارد دانشگاه فنی شدم! با درخواست از چندین دانشگاه به طور همزمان برای دانشکده های کاملاً متضاد، تا آخرین لحظه مطمئن نبودم چه چیزی را انتخاب کنم. پس از درخواست بودجه، امضای همه اوراق و صحبت با رئیس، من و پدرم به خانه آمدیم و با احساس موفقیت به دنبال کارمان رفتیم.

با این حال، وقتی صبح از خواب بیدار شدم، با تعجب متوجه شدم که یک فکر آزاردهنده و خاردار در سرم نشسته است: "من باید به پدال (آموزش) بروم." چگونه در آنجا شکل گرفت: به طور مستقل یا در نتیجه فرآیندهای سایه مانند مندلیف، زمانی که او داده ها را در رویا سیستماتیک کرد و دانش جدول عناصر دوره ای را به دست آورد؟ من هرگز نمی دانم، اما من به پدر و مادرم رفتم، مشکل را برای آنها شرح دادم، ارزیابی های نسبتاً شادابی از فرآیندهای فکری فعلی خود، جهت گیری و توسعه کلی آنها دریافت کردم، اما عقب نشینی نکردم.

در نهایت به دانشگاه رسیدیم، مدارک را گرفتیم (اگرچه این کار به احتمال زیاد غیرقانونی بود، زیرا ثبت نام گذشته بود) و برای درخواست به دانشگاه دیگری رفتیم. پدرم در آن زمان موهایش را کوتاه کرده بود، به تازگی چشمش را جراحی کرده بود و عینکش را برداشته بود و به طور کلی با وجود 90 تحصیلات عالی و سابقه تدریس، شبیه یک «برادر دهه 2» معمولی به نظر می رسید. البته، آنها نمی توانند چنین شخصیت رنگارنگی را رد کنند. از آن به بعد هیچ وقت پشیمان نشدم که وارد دانشکده زبان های خارجی شدم.

وقتی با بچه ها کار کردم، به دو چیز پی بردم:

  • من خیلی دوستش دارم، می توانم یک داستان جالب تعریف کنم، اطلاعات به دست آمده از کتاب ها و دایره المعارف ها را در داستان ببافم و از همه مهمتر در زمینه آموزش زبان انگلیسی به نتیجه برسم.
  • کمبود پول فاجعه بار وجود دارد، حتی اگر یک کار نیمه وقت انجام دهید (درس های خصوصی + اردوی زبان تمام فصل برای کودکان)

در نتیجه پس از چندین سال کار به عنوان معلم (انگلیسی، آلمانی و کمی اسپانیایی) تصمیم گرفتم این حرفه را ترک کنم، زیرا ... به سادگی سوخت احتمالاً بسیاری از شما با این احساس آشنا هستید: به نظر می رسد کار همان است، همان آدم ها، کار، همه چیزهایی که دیروز به شما می آید - اما روح در هر روز کاری مقاومت می کند، اشتباهات بچه ها آزاردهنده درونی شده است، آرامشی که همیشه جایی در درون بود، شروع به ناپدید شدن کرد و افکار وحشتناک در مورد فرار از جایی ظاهر شد.

در طول زندگی حرفه ای ام، امکان تغییر حرفه خود را به چیزی مرتبط تر، غیر مرتبط با کار با مردم، در نظر گرفتم، زیرا حدود 10 تلاش برای مطالعه مستقل زبان های برنامه نویسی انجام دادم. C++، C#، Delphi، Python، Pascal، Java - همه اینها پیچیده، نامفهوم، ترسناک، وقت گیر و غیرمولد بود. در واقع، من انگیزه کافی نداشتم: نه بحران 2008-2009 و نه مشکلات 2014-2015 نگرش من را نسبت به کار تغییر نداد. و وقتی فرسودگی عاطفی شروع شد، مشخص شد که نمی‌توانم به خاطر بچه‌هایی که نمی‌خواستم به آن‌ها آسیب بزنم، به این شکل به کارم ادامه دهم.

در سال 2018 با دوست دخترم از کراسنویارسک به مسکو نقل مکان کردم، او به یک دانشگاه محلی منتقل شد و من در یک مدرسه خصوصی زبان خارجی شغل پیدا کردم. یک مکان جدید، حقوق مناسب، افراد و احساسات جدید - همه اینها به من اجازه داد تا حدود شش ماه به من روح بدهم و پس از آن مشکلات قدیمی بازگشتند.

تصمیم نهایی برای تغییر حرفه در درون من به بلوغ رسید، طرحی ترسیم شد، بازار کار و الزامات متقاضیان بررسی شد، تماس های دوستان و آشنایان حداقل به نحوی که با فناوری اطلاعات مرتبط بودند کشف شد، و من با سؤالات دقیقم مغز آنها را کاملاً بیرون آوردم. . به طور کلی، این طرح به این صورت بود:

  1. ساده‌ترین، سریع‌ترین را از نظر نتایج و از همان ابتدا خط کاری را انتخاب کنید که کمتر از محل قبلی‌تان هزینه ندارد. به توسعه frontend تبدیل شد. خودتان قضاوت کنید: با دانستن زبان انگلیسی در سطح C2، بیشتر کدها دستورات انگلیسی ترکیب شده با نحو را برای من نشان می‌دادند که کاملاً به خاطر سپرده می‌شد (برگرفته از افکاری به سبک "یا این یا تو اصلا کار نمی‌کنی"). نتیجه در قسمت جلویی بلافاصله قابل مشاهده است - این یک صفحه تمام شده است. پرداخت نیز بد نیست، از 40 هزار روبل (طبق hh.ru). حقوق من اون موقع حدود 60-65 + کار پاره وقت شخصی ~20 هزار بود. این کافی نبود، اما وقتی فقط برای آمدن سر کار باید با خودت بجنگی، هیچ پولی خوشحالت نمی کند.
  2. برنامه پرداخت و اقدام: هدف من بیش از 60 روبل بود، بنابراین شروع به مطالعه لیست فناوری های فرانت اند مربوطه کردم: HTML، CSS، JavaScript (ES5-6)، React. اینها با ابزارهایی تکمیل شده اند که هماهنگی و کار با کد را در مراحل مختلف آسان تر می کند: jQuery، Git، SASS، webpack، VS Code. این امر امکان طرح ریزی طرحی را برای مطالعه تدریجی همه اینها، همزمان با استفاده از دانش در ایجاد وب سایت، جداسازی و پیاده سازی طرح بندی در کد و مشاوره با دوستان فراهم کرد.
  3. خودآموزی: از فوریه 2019 تا ژوئن 2019، همه اینها را مطالعه کردم، با پشتکار اسناد را مطالعه کردم، StackOverFlow را خواندم و به دنبال پاسخ برای احمقانه ترین سؤالاتی بودم که ممکن بود ایجاد شود. برای من سخت بود - گاهی اوقات کد نمی خواست آن طور که من تصور می کردم کار کند. اما من ناامید نشدم - تجزیه و تحلیل مثال کد + مستندات نشان می دهد که کجا اشتباه کردم، چه چیزی را اشتباه گذاشتم و چه چیزی را کامل نکردم. در آن زمان بود که من هر روز والدینم را به خاطر اصرار بر یادگیری زبان انگلیسی در کودکی تحسین می کردم - بالاخره تمام اسناد مربوطه در آن بود.

HTML و CSS برای من ساده ترین بودند - حدود 2 هفته. در طول این مدت، من با استفاده از HTML و CSS خالص یک طرح برای وب‌سایت برخی از طراحان جمع‌آوری کردم و تمام عصای زیر بغل ممکن را جمع‌آوری کردم، دسته‌ای از رویکردها را مطالعه کردم و متوجه شدم که نوشتن همه این خطوط به صورت دستی فوق‌العاده زمان‌بر است. پس از کمی جستجو، بلافاصله با Bootstrap 4 آشنا شدم و با آشنایی با قابلیت ها، شروع به خواندن مستندات کردم. پس از چند روز کتابچه راهنمای سیگار کشیدن متفکرانه، همراه با تماشای ویدیوهای آموزشی مختلف در یوتیوب، شروع به ایجاد وب‌سایت کاملاً واکنش‌گرا با تصاویر، کارت‌ها و انیمیشن‌ها کردم. این حدود 2 هفته طول کشید و در طی آن جی کوئری را به عنوان یک ابزار دستکاری DOM کشف کردم.

البته این بهترین انتخاب نبود، اما همه چیز ساده و قابل درک بود و نتیجه برایم مهم بود. به هر حال، توصیه می‌کنم در این مرحله به برنامه‌نویسان جالبی که بهینه‌سازی‌ها و بهبودها را ارائه می‌دهند گوش ندهید، بلکه به سادگی رایج‌ترین مورد استفاده برای کد را پیدا کنید، به نمونه‌ها نگاه کنید و به سادگی سبک را کپی کنید. وظیفه در مرحله اولیه یکی است: تا زمانی که کار کند. فقط در این صورت است که می‌توانید به همه چیز فکر کنید و وقتی در شرکت کار می‌کنید، استانداردهای محلی را که باید رعایت کنید، توضیح داده و به شما نشان می‌دهند.

سخت ترین کار در مرحله یادگیری جاوا اسکریپت خالص آغاز شد - یک سوال بسیار جدی در ذهن من ایجاد شد: چرا این را یاد بگیریم اگر jQuery آسان تر است؟ برای پاسخ به گوگل رفتم: معلوم شد که jQuery به زودی به دنیای دیگری می رود، به استثنای کدهای قدیمی، و همه برنامه نویسان واقعی از JS استفاده می کنند، زیرا فریمورک ها می آیند و می روند، اما JS خالص هنوز هم مرتبط است. ما می خواهیم شغلی پیدا کنیم و برای مدت طولانی انجام دهیم، درست است؟ بنابراین شروع به تماشای ویدیو کردم، سعی کردم کد و توابع را در سایت های آموزشی بنویسم و ​​پروژه های قبلی خود را بازنویسی کنم. طبیعتاً در ابتدا کمی کمتر از هیچ بود، اما بعد از چند روز دیگر به نوشتن انواع عملکردهای پیکان (که ساده تر از معمولی بودند) فکر نمی کردم، با انتخابگرهای document.getElementById کار کنم. ، مرتب سازی آرایه ها و استخراج عناصر شی با استفاده از .map، .filter، .reduce، کار شده با API و AJAX و غیره.

و من اشتباه نکردم - در حین یادگیری React، به تعداد زیادی کد JS برخوردم که باید تجزیه و درک شود، در غیر این صورت هیچ چیز کار نمی کند. نفس عمیقی کشیدم و کمی برای خودم متاسف شدم، با نیرویی مضاعف شروع کردم به کاوش در اصل فرآیند. خیلی زود مشخص شد که React یک HTML (JSX) کمی تغییر یافته است + یک کیت از ابزارهای مختلف که به روز رسانی صفحه و ایجاد یک SPA (برنامه تک صفحه ای) را آسان تر می کند. کمی JS اضافه کنید و انیمیشن ها، بارگذاری و انتقال ها را خواهیم داشت. با عادت کردن به نحو، اولین طرح فروشگاه آنلاینی را که با آن برخورد کردم انتخاب کردم و یک SPA ساده نوشتم که به من امکان می داد دسته بندی ها را انتخاب کنم، در سایت حرکت کنم و شمارنده های کالا را در سبد خرید تغییر دهم.

به طور کلی، هیچ ایرادی در این واقعیت وجود ندارد که شما هرگز در زندگی خود برنامه ریزی نکرده اید، نه - اگر به تدریج روی خود کار کنید، همه چیز ممکن است. حتی بدون دانش انگلیسی، سایت های روسی زبان زیادی وجود دارند که برای مرحله اولیه کافی خواهند بود. موفق باشید!

پیوند به مواد آموزشی، کانال‌های یوتیوب، مقالات و هر چیزی که در آموزش خود استفاده کردم.

منبع: www.habr.com

اضافه کردن نظر