من عاشق برنامهنویسی و لینوکس و منبعباز هستم. و خب وقتی به همه اینها علاقهمند باشی و هکری بزرگ مثل «اریک ریموند» از چیزی تعریف کرده باشد، نمیتوانی در برابرش مقاومت کنی. توی گوگل پلاس دیدم که لینکی در مورد برنامهنویسی را به اشتراک گذاشته و تصمیم گرفتم ترجمهاش کنم.
اصل مطلب را میتوانید اینجا بخوانید و این هم ترجمهاش:
کد نوشتن درست شبیه جادوگری است. کلمات درست را به کار ببرید و وقایعی هیجانانگیز رخ خواهند داد، یا اتفاقاتی هولناک به وقوع خواهند پیوست.
تبدیل شدن به یک برنامهنویس بزرگ کار سادهای نیست، به زمان احتیاج دارد. من در اینجا ده توصیه برای برنامهنویسان تازهکار دارم که می تواند در طی کردن این مسیر به آنها کمک کند.
۱- وقت بگذارید
تبدیل شدن به یک برنامهنویس خوب به سالها زمان نیاز دارد، پس صبر داشته باشید. هر چقدر هم که باهوش باشید، نخستین پروژههای شما به یقین ضعیف خواهند بود. اگر هر روز کد مینویسید، ظرف پنج سال برنامهنویس قابل قبولی میشوید و پس از ده سال یک برنامهنویس خوب خواهید بود. و در نهایت پس از بیست سال ممکن است به شهرت و بزرگی برسید!
۲- کد بنویسید، کد بنویسید
افسانهای وجود دارد که میگوید برخی «نابغه برنامهنویسی» زاده میشوند. بله، شما به استعداد احتیاج دارید اما بیش از آن محتاج تمرین کردن هستید. هر دقیقه از وقت آزادتان را صرف کدنویسی کنید. باید سالها به تنهایی و با دیگران تمرین کنید. این کار شما را پولدار نمیکند، اما مهارتهای شما را افزایش میدهد. کدنویسی همانند نواختن موسیقی است. یک آهنگ را صدها بار بنوازید و حتما هربار چیز تازهای یاد میگیرید.
۳- تواناییهایتان را گسترش دهید
افراد با هم متفاوتند. پس نقاط قوت خودتان را پیدا کنید. هنر شما شاید حل مساله باشد یا آموزش به دیگران. یا حتی مثلا تمرکز عمیق و طولانی روی مفاهیم دشوار. بهترین نشانه برای دانستن اینکه در زمینهای مهارت ویژه دارید این است که از انجام آن لذت میبرید. به مرور زمان در سایر جنبههای کدنویسی نیز پیشرفت خواهید کرد.
۴- کار کردن با دیگران را یاد بگیرید
به تنهایی همیشه معمولی خواهید بود. زمانی میتوانید بدرخشید که با دیگران کار کنید. یاد بگیرید که به دیگران اجازه دهید نقاط ضعف شما را پوشش دهند. به دنبال تیمهایی بگردید که به شما احتیاج دارند و همینطور تیمهایی که میتوانند شما را به چالش بکشند. به پروژههای منبعباز بپیوندید و فرهنگ اپنسورس را یاد بگیرید. از دیگران و به ویژه از اشتباهاتشان پند بگیرید.
۵- از دانش استفاده کنید، نه از جادو
بیشتر صنعت نرمافزار در گمراهی به سر میبرد. یاد بگیرید که موضوعات جادویی را بشناسید و از آنها پرهیز کنید. جوهر دانش، حل مسایل واقعی با پاسخهایی فراگیر و غیرقابل مقاومت است و البته [مستلزم] سعی و خطای بسیار شدید خواهد بود. به دنبال مد نروید. اولین مساله واقعا مهم بعدی را انتخاب کنید. یک راهحل مینیمال قابلاستفاده برایش خلق کنید. آن را امتحان کنید و فقط اگر به نظر آمد که کار میکند، نگهاش دارید.
۶- به غرایزتان اعتماد کنید
ما برای کار کردن با دیگران از غرایز نسبتا خوبی برخورداریم. آموزش و کار این غرایز را در ما میکُشند. غالب اوقات به ما میآموزند که ناراحتی و درد را تحمل کنیم. اما شما یاد بگیرید که به غرایزتان اعتماد کنید. اگر کاری که میکنید غلط به نظر میرسد اصلاحش کنید. حتی اگر به یک دهه زمان نیاز داشت، بنویسیدش، درکش کنید و اصلاحش کنید.
۷- با هرچه که در اختیار دارید کار کنید
با مسایل، ابزارها و افرادی که در دسترس دارید کار کنید. تمرکزتان را روی این موضوع قرار دهید که کار را درست، مینیمال و ساده انجام دهید. منتظر نباشید تا فناوریهای فردا از راه برسند. سعی نکنید آینده را اختراع کنید. هدف کارتان این باشد که راهحلهای واقعی برای مسایل واقعی ایجاد کنید. آینده خودش، خودش را اختراع خواهد کرد.
۸- از انتقادها استقبال کنید
خودتان را فراموش کنید. این که کسی از کار شما انتقاد کند دردناک است. اما نادیده گرفته شدن از آن دردناکتر است. از دیگران بخواهید که شما را نقد کنند. کارهایتان را در معرض دید و استفاده عموم بگذارید و هر زمان توانستید، آنها را منبعباز کنید. البته گهگاه با مریضی برخورد خواهید کرد که واقعا تلاش میکند شما را آزار دهد. مساله اصلا شخصی نیست. یاد بگیرید که نسبت به آن بیتفاوت باشید.
۹- هزینههایتان را پایین نگه دارید
کمهزینه بودن مهم است. یاد بگیرید که از لینوکس و یک کامپیوتر ارزان دست دوم استفاده کنید. استفاده از خط فرمان را یاد بگیرید. به زبانهای کوچکی مانند C بچسبید و ترجیحا به سراغ زبانهای عظیمی مانند ++C نروید. یاد گرفتن یک زبان بزرگتر شما را برنامهنویس بهتری نمیکند!
۱۰- کارهایتان را منتشر کنید
کدهایتان را با اسم واقعیتان منتشر کنید. به عنوان یک مشارکتکننده در پروژههای منبعباز شرکت کنید. اگر شما را نخواستند، به دنبال پروژههایی بگردید که شما را بخواهند! وجهه عمومی خوبی برای خودتان بسازید. به سراغ GitHub بروید. همه اینها در آینده رزومه شما را خواهند ساخت.
اگر این مطلب مورد پسندتان بود، بد نیست سری هم به مجموعه «پندهای یونیکسی استاد فو» بزنید.