کانال تلگرام

10 استراتژی قدرتمند برای موفقیت یک برنامه نویس

تاریخ : ۱۲ بهمن ۱۳۹۷
گردآوری و تالیف : حمید رضا ملکی

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

استراتژی

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

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

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

۱. فراتر از کلاس درس بیاموزید 

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

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

در حقیقت، شما عمدتا فقط با اصول برنامه نویسی، ساختارهای داده ها و الگوریتم ها تغذیه می شوید؛ البته، منطقی است که مبانی را بدانید، اما این برای موفقیت اصلا کافی نیست. تعجب می کنید اگر بدانید 90 درصد از توسعه دهندگان نرم افزار خودشان برنامه نویسی را یاد میگیرند!!! 

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

برای اینکه به عنوان یک توسعه دهنده نرم افزار به موفقیت برسید، شما باید یک "learnaholic" باشید. با این حال، این لزوما به این معنی نیست که شما نیاز به یک کتابفروشی داشته باشید، اما نمیتوانید از دانشگاه خود نیز خارج شوید. با این وجود، حتی اگر در دانشگاه هستید، لازم است که اطلاعات را بخش بخش یاد بگیرید. شما می توانید به طور رایگان با codecademy شروع کنید و یا با پرداخت حق اشتراک، از دوره های با کیفیت در Pluralsight، Lynda و یا Udemy استفاده کنید.

بسیاری از منابع آنلاین دیگر وجود دارند که شما می توانید از آن استفاده کنید و بسته به تکنولوژی که در آن هیجان زده میشوید، می توانید برای گرفتن آن از یک کتاب مناسب استفاده کنید. من قطعا "Code Complete: A Practical Handbook of Software Construction" توسط Steve McConnell را برای درک دقیق برنامه نویسی توصیه می کنم. این یک کتاب 900 صفحه ای است که اطلاعات زیادی را در اختیار شما قرار می دهد، چه شما در برنامه نویسی مبتدی باشید و یا یک حرفه ای.

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

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

۲. باید جهنمی تمرین کنید

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

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

چیزی که باید به آن توجه کنید این است که تمرین را ادامه دهید، منتظر انگیزه نمانید - خودتان را مجبور به تمرین و تکرار کنید. ممکن است بدانید به صورت تئوری یک مسئله را چطور حل کنید اما اگر بخواهید همین مسئله را با برنامه نوسی حل کنید کار شما متفاوت خواهد بود. تمرینات برنامه نویسی زیادی را انجام دهید - می توانید از همکارانتان بخواهید به شما کمک کنند.

۳. در ایجاد راه حل ها پرشور باشید

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

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

۴. تلاش و تمرین برای یافتن مسائل

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

سپس برای آنها راه حل پیدا کنید. در انجمن های پرسش و پاسخ مشارک کنید. سایت های زیادی وجود دارند که افراد مشکلات و مسائل خود را در آن قرار میدهند، از این طریق شما می توانید به خودتان آموزش دهید و مهارت های خود را بهبود بخشد.

۵. مسائل را ابتدا بر روی کاغذ و یا تخته سیاه حل کنید

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

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

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

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

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

۷. زمانی که در حل مشکلات ساده استاد شدید، شروع به حل مشکلات پیچیده تر کنید

انتظار می رود که به طور مداوم یادگیری را ادامه دهید، دراین صورت مطمئنا رشد خواهید کرد. خودتان را محدود به حل مسائل ساده نکنید. برای حل مسائل پیچیده تر خودتان را به چالش بکشید. همچنین، سعی کنید یک مشکل واقعی را برطرف کنید و برنامه ای برای حل مشکل ایجاد کنید. هنگامی که شما برای مصاحبه شغلی می روید، دو مورد مهم از سوء استفاده های غیرمنتظره عبارتند از: "تا کنون چه برنامه هایی ساخته ایذ؟" و "مخزن Git شما چیست؟"

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

هیچگاه متوقف نشوید.

۸. مشکلات را ذهن خود حل کنید

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

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

۹. به مسائل دشوار (در ریاضی یا زندگی واقعی) به عنوان فرصت برای یادگیری و رشد نگاه کنید

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

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

۱۰. داشتن یک مربی میتواند برای شما بسیار راه گشا باشد

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

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


هرگز یادگیری را متوقف نکن

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

 

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

مشاهده همه مقالات
ثبت دیدگاه

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