کانال تلگرام

چگونه میتوان با یادگیری کمتر، به یک برنامه نویس بهتر تبدیل شویم؟

تاریخ : ۶ تیر ۱۳۹۹
نویسنده : آروین سعادت نیا
دسته بندی ها : برنامه نویسی

شاید مجموعه ای از دوره های مختلف را برای یادگیری در دفتر یادداشت خود لیست کرده اید، بهتر است برخی گزینه ها را در این لیست خط بزنید. اگر مانند من باشید شاید ده ها آموزش و تکنولوژی را لیست کرده اید تا آنها را یاد بگیرید.

من به برنامه نویسی و گسترده وسیعی از مهارت ها علاقه مندم. اما اخیرا متوجه شده ام که فقط برخی از آنها برای من ارزش یادگیری دارند و بقیه فقط مرا از هدفم دور میکنند.

lessLearn

ایده ای در مورد یک برنامه نویس خوب

اگر در زمینه برنامه نویسی کار کرده باشید، احتمالا با این ایده آشنا هستید که برخی برنامه نویسان آن را دنبال میکنند. آنها در یک حوزه متخصص بوده و در کنار آن در حوزه های دیگر نیز دانشی دارند.

به عنوان مثال، می توانید با داشتن دانش کمی در مورد DevOps ، مدیریت محصول و قسمت جلویی، یک توسعه دهنده back-end ماهر هم باشید. این جور افراد برنامه نویسان با ارزشی هستند، زیرا دانش متنوع آنها ارتباطات را تقویت می کند و باعث تقویت خلاقیت می شود.

طیف گسترده ای از مهارت ها واقعا سودمند است. من طرفدار تطبیق پذیری هستم و معتقدم که در آینده همه چیز به این اصل برمیگردد. اما برای اینکه بتوانید به این نوع برنامه نویس ها تبدیل شوید، باید دانش کافی از موضوعات مختلف داشته باشید.

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

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

برای رسیدن به موفقیت، باید مهارتها و چالشهای اساسی را شناسایی کنید. بعداً ، روی این مهارت ها متمرکز شده و تمام دوره های غیر ضروری را حذف کنید.

مهارت اصلی خود را تقویت کنید

من یک توسعه دهنده front-end ماهر هستم و دانشی هم در مورد زبان های سمت سرور دارم. تا کنون چندین برنامه موبایل با استفاده از React Native ایجاد کرده ام. سعی کرده ام در مهارت اصلی خود یعنی بخش front-end تا میتوانم توانایی خود را افزایش دهم. این موضوع اهمیت بسیاری دارد، همیشه مهارت اصلی خود را تقویت کنید.

موارد ضروری را انتخاب کنید

برای منی که در زمینه توسعه front-end  کار میکنم به نظر ضروری است که مجموعه ای از مهارت های مربوطه را هم در زمینه وب و هم در زمینه موبایل بدست آورم. برای اینکه بتوانم در این زمینه قدرتمند تر ظاهر شوم یادگیری زبان جاوا اسکریپت هم لازم است، پس تمام دوره های پیشرفته ای که در زمینه جاوا اسکریپت برگذار میشود، میتواند برای من مفید باشد. خلاصه شما باید با توجه به مهارتی که روی آن متمرکز هستید، موارد ضروری را انتخاب کنید.

میتوانید هر اپلیکیشنی را با زبان جاوا اسکریپت پیاده سازی کنید، اما این کار چندان عملی نیست، زیرا کار سختی است. من برای این کار عمدتا از React استفاده میکنم. برای همین روی اکوسیستم این فریمورک جذاب تمرکز کرده ام.

بنابراین مهارتهای مهم من JavaScript و React هستند. سایر زبانها و چارچوبها می توانند به عنوان مهارت های ثانویه مورد استفاده قرار گیرند.

تنها مهارت هایی که استفاده میکنید را یاد بگیرید

اکوسیستم جاوا اسکریپت و React موضوعات گسترده ای هستند، بنابراین حتی میتوانم علایق خود را محدود تر کنم. بهترین راه برای انجام این کار، انتخاب مهارت هایی است که به صورت عملی میخواهید از آنها استفاده کنید.

من برای سومین بار است که یادگیری Redux را تمام کرده ام. دو بار اول، آن را یاد گرفتم زیرا همه افراد در وب ادعا می کردند که این امر ضروری است. من نمیخواستم برای پروژه ای از آن استفاده کنم، بنابراین آموزشی را تمام کردم و مستندات آن را مطالعه کردم. اما چون به صورت عملی از آن استفاده نکردم، سریع همه چیز را فراموش کردم.

سرانجام زمانی نیاز به استفاده از Redux به صورت حرفه ای داشتم. من بلافاصله پس از اتمام دوره مربوطه شروع به کار با آن کردم. با چند مشکل روبرو شدم و با کمک مستندات مشکلات را برطرف کردم. اکنون می توانم هر زمان که بخواهم از Redux استفاده کنم.

یادگیری واقعی وقتی اتفاق می افتد که روی یک پروژه کار می کنید و به شدت روی آن در حال فکر هستید. در صورت عدم استفاده از دانشی که در آموزش ها آموخته اید، هیچ آموزشی هرچند با کیفیت به شما کمکی نخواهد کرد. یادگیری چیزهایی که نمی خواهید در پروژه های حرفه ای یا شخصی از آنها استفاده کنید، اتلاف وقت است.

خودتان را فریب ندهید

هرگز فرض نکنید که موضوعی را به صورت کامل درک کرده اید، مگر اینکه بتوانید آن را به روشنی برای کسی که تجربهقابل توجه کمتری دارد توضیح دهید. همیشه مراقب شکاف ها در درک مفاهیم باشید. مراقب اعتماد به نفس کاذب باشید.

تقریبا هرچیزی را که در برنامه نویسی بخواهید در آن عمیق شوید، پیچیده است. بنابراین از یادگیری کامل خود مطمئن شوید. به خاطر داشته باشید که باید خودتان را به چالش بکشید و به یاد داشته باشید برنامه نویسی همیشه سخت بوده است.

مهارت های ثانویه را مشخص کنید

برای تبدیل شدن به یک برنامه نویس خوب باید مهارت های ثانویه را نیز در خود تقویت کنید. من در این زمینه بسیار کار کردم. در چند ماه گذشته، دوره های مربوط به موضوعات مختلف را از DevOps از طریق زبان Golang گرفته تا یادگیری ماشین را شروع کردم(البته هیچوقت به پایان آنها نریسیدم).

آیا این مهارت ها برای من جالب بوده است؟ قطعا بله. آیا در حرفه ای که کار میکنم برای من مفید بوده است؟ خیر، جواب منفی است. دقیقا مانند مهارت های اصلی شما باید مهارت های ثانویه را نیز اولویت بندی کنید، و آنهایی که در عمل به کار شما نمی آیند، را به صورت بی رحمانه ای از لیست خود حذف کنید.

برای پیشرفت در حوزه ای که کار میکنم، باید روی مهارتهایی تمرکز کنم که ممکن است در درازمدت برای من مفید واقع شود و تا حدودی به تخصص اصلی من نزدیک باشد.

من در زمینه ریاضی اصلا استعدادی ندارم، بنابراین بهتر است یادگیری ماشین و هوش مصنوعی را فراموش کنم، به نظر هیچ وقت یک دانشمند در زمینه علوم داده نخواهم شد. بهتر است در همان زمینه های back-end دانش خود را افزایش دهم. اگر فرصت داشته باشم، حتما زبان های جدید را بررسی خواهم کرد.

نتیجه

من هنوز هم وسوسه میشوم که بسیاری از دوره ها را یاد بگیریم، این احساس همیشه در من وجود دارد، اما با تجربه ای که بدست آوردم سعی میکنم مواردی را انتخاب کنم که در دراز مدت به من کمک کنند. در چند هفته گذشته دوره های زیادی را از لیست خود حذف کرده ام، شما چه دوره هایی را از لیستتان حذف کرده اید؟

اطلاعات مقاله


تاریخ انتشار : ۶ تیر ۱۳۹۹
نویسنده : آروین سعادت نیا
اشتراک گذاری در :

مقالات پیشنهادی

مشاهده همه مقالات

دیدگاه های شما

A H

A H

۶ تیر ۱۳۹۹

خیلی ممنون بابت این مقاله عالی ، واقعا نکات خیلی خوبی رو یاد گرفتم.

A H

A H

۶ تیر ۱۳۹۹

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

ثبت دیدگاه

برای ارسال دیدگاه لازم است ابتدا وارد سایت شوید