ترفندهایی که کمک می‌کند دولوپر خفن‌تری شویم!

ترفندهایی که کمک می‌کند دولوپر خفن‌تری شویم!

اگر از شما در یک مصاحبهٔ شغلی برنامه‌نویسی پرسیده شود که «چه‌طور می‌شود به یک برنامه‌نویس خفن مبدل شد؟» چه پاسخی خواهید داد؛ گرچه این سؤال در ظاهر ساده است، اما از جنبه‌های مختلفی می‌توان به آن نگاه کرده و پاسخ‌های متفاوتی به آن داد. در ادامه، یکسری قواعد کلی را برای این‌که در حوزهٔ برنامه‌نویسی حرفه‌ای شویم پیشنهاد خواهیم داد اما توجه داشته باشیم که این قواعد صرفاً محدود به حرفهٔ برنامه‌نویسی نبوده و قابلیت این را دارا هستند تا به هر حوزهٔ کاری دیگری نیز تعمیم داده شوند.

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

روش درست سؤال پرسیدن را بیاموزید
یک سؤال مناسب که مختصر، ساده، کوتاه و با جزئیات کافی باشد، جواب‌های مناسبی هم دریافت خواهد کرد؛ اگر مشخصاً بدانید از پرسیدن سؤال چه چیزی می‌‌خواهید بیاموزید، شانس بیشتری برای به‌دست آوردن چیزی که تمایل دارید خواهید داشت. درضمن، در حین سؤال کردن هرگز چنین قصدی نداشته باشید که طرف مقابل‌تان از ۰ تا ۱۰۰ موضوع را برایتان توضیح دهد بلکه بیشتر باید به‌دنبال این باشید که سرنخ را بگیرید و الباقی را خود کشف کنید.

سوال نپرسیدن را نیز بیاموزید
در حقیقت، بهتر است سؤال نپرسیدن را نیز امتحان کنید؛ شاید خودتان بتوانید مشکل را برطرف کرده و راه‌‌حلی بیابید (البته ممکن است همیشه موفق نشوید!) زمان‌هایی پیش می‌آید که شما خیلی از موضوعات را نمی‌‌دانید و سؤال پرسیدن از یک متخصص و فرد حرفه‌ای، سریع‌ترین راه برای یافتن پاسخ است اما بیشتر سعی کنید خودتان مشکل‌تان را برطرف کنید چراکه اتخاذ چنین رویکردی، مزایای بی‌شماری دارا است که برخی از مهم‌ترین آن‌ها عبارتند از:
- وقتی‌ که شخصاً چیزی را می‌آموزید، مطالب در ذهن شما بهتر ماندگار می‌‌شوند.
- وقتی مشکلاتان را خودتان برطرف می‌‌کنید، احساس رضایت‌مندی بیشتری خواهید داشت و اعتماد به نفس شما بالا می‌رود.
- و وقتی از شخصی سؤال می‌‌کنید و او هم پاسخ می‌‌دهد، به‌نظر می‌‌رسد که نتوانند مثل شما به مشکل نگاه کنند و طرف مقابل سعی می‌کند فقط به سؤالات بدون در نظر گرفتن شرایط مختلف پاسخ بدهد.

کار‌ها را نیمه‌کاره رها نکنید
در توسعهٔ نرم‌افزار چیزی داریم تحت‌عنوان Technical Debt یا «بدهی فنی» که عبارت است از کارهایی که بایستی در سورس‌کد اعمال کنیم، اما به دلیل کمبود وقت یا یکسری از دیگر بهانه‌ها، آن‌ها را نیمه‌کاره رها کرده و بیشتر تمرکز خود را روی اتمام پروژه می‌گذاریم. در یک کلام، اگر یکی از کارهای شما به‌عنوان دولوپر این باشد که یکی پس از دیگری بدهی فنی ایجاد کنید، هرگز نخواهید توانست به یک برنامه‌نویس حرفه‌ای مبدل گردید.

انتظار غیر‌منتظره‌ها را داشته باشید
قانونی مورفی چیزی است که ما برنامه‌نویسان باید همیشه نیم‌نگاهی به آن داشته باشیم؛ هر چیزی ممکن است خراب شود و این امری اجتناب‌ناپذیر است. به‌عنوان یک مهندسی نرم‌افزار، انتظار موارد غیرمنتظره را داشته باشید و حس محتاطانهٔ خود را تمرین دهید تا همهٔ اتفاقات ممکن پیش‌روی را پیش‌بینی کند (برای آشنایی بیشتر با قانون مورفی، به صفحهٔ ویکیپدیای ادوارد مورفی مراجعه نمایید.)

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

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

تمرین کنید
همهٔ برنامه‌نویسان حرفه‌ای در یک موضوع با هم مشترک‌اند و آن‌هم این‌که هر روز تمرین می‌کنند و چیزهای جدید یاد می‌گیرند؛ خوشبختانه یا متأسفانه، صنعت توسعهٔ نرم‌افزاری صنعتی است که هر روز شاهد تغییرات شگرفی است و اگر ما به‌عنوان یک دولوپر به داشته‌های ۴ الی ۵ سال پیش خود اکتفا کنیم، به‌زودی رقبا گوی سبقت را از ما خواهند ربود.

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

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

دست از یادگیری برندارید
در حالی که قالباً باید روی یک موضوع متمرکز باشید، سایر موضوعات را نباید کاملاً فراموش کنید؛ شاید هیچ‌وقت در همهٔ قسمت‌های SQL خیلی‌خیلی خوب نشوید یا شاید چنین امکانی وجود نداشته باشد تا در موضوعاتی مثل سی‌اس‌اس، شئ‌گرایی، دیزاین پترن‌ها و غیره متبحر گردید اما شما می‌بایست حداقل با پایه‌ و اساس حوزه‌های مختلف توسعهٔ نرم‌افزار آشنا باشید.

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

با بازی کردن حول این الگو‌ها و تکنولوژی‌ها، ذهنتان را به طرز تفکری جدید و متفاوت باز می‌کنید و این شانس را به خود می‌دهید تا در کار روزانهٔ خود از این قابلیت‌های جدیدتان استفاده کنید.

قانون KISS را فراموش نکنید
به گفتهٔ آلبرت انیشتن، «هرچیزی باید تا حد ممکن ساده باشد، اما نه دیگر خیلی ساده!» هیچ‌کس قادر به مدیریت پیچیدگی‌های بزرگ نیست، نه در نرم‌افزار و نه در هیچ جنبهٔ دیگر زندگی و می‌توان گفت که پیچیدگی قاتل یک نرم‌افزار خوب است. 

سادگی موضوعی است که وقت بسیار و تمرین مستمر می‌خواهد تا به نتیجه برسد (برای آشنایی بیشتر با قانون KISS، به مقالهٔ اصطلاح KISS به چه معنا است و در برنامه‌نویسی چگونه نمود عینی پیدا می‌کند؟ مراجعه نمایید.)

حال نوبت به نظرات شما می‌رسد؛ آیا شما هم با نقطه نظرات فوق موافق هستید؟ به غیر از موارد بالا، چه استراتژی‌های دیگری را پیشنهاد می‌دهید تا افراد تازه‌کار به دولوپرهایی به‌اصطلاح خفن تبدیل شوند؟ نظرات و دیدگاه‌های خود را با ما و سایر کاربران سکان آکادمی به اشتراک بگذارید (همچنین می‌توانید برای مطالعهٔ قسمت دوم این پست به مقالهٔ ترفندهایی که کمک می‌کند دولوپر خفن‌تری شویم! (قسمت دوم) مراجعه نمایید).