از «همینکه کار میکند کافی است» تا «جرئت تغییر دادن و به کار انداختنش»: دفترچهٔ یک ماه برنامهنویسی یک تازهکار
نخست یک نکته را روشن کنم: من مهندس نرمافزار نیستم و آنچه اینجا دربارهٔ برنامهنویسی میگویم در واقع همهاش همان چیزی است که به آن Vibe Coding میگویند؛ همان نوعی که آدم دنبال حسش میرود.

این اواخر برای آنکه کارم کمی روانتر پیش برود، پیوسته در حال ساختن ابزارهای کوچک خودم بودهام. در این دو روز سه کار انجام دادم: پشتیبانگیری با Git را شروع کردم، چند bug در منطق برنامه را برطرف کردم و یک مدل هوش مصنوعی تازه را وصل کردم.
سختترین بخش نحو زبان نیست، «تبدیل خواسته به کد» است
پس از یک ماه، بزرگترین درسی که گرفتم این است — سختترین جای برنامهنویسی در واقع نحو زبان نیست، بلکه تبدیل «اینکه من دقیقاً چه میخواهم» به «کد مشخص و ملموس» است.
برای نمونه، گفتن «رفع یک bug» بسیار ساده است، اما پیش از آنکه واقعاً دست به کار شوید، باید انبوهی از پرسشها را از خودتان بپرسید:
- آیا اول فایل را ذخیره کنم؟
- آیا یک شاخهٔ تازه (branch) باز کنم؟
- چه زمانی آزمون بگیرم؟ و چگونه آزمون بگیرم؟
- پس از پایان تغییر، چه چیزی «تمامشده» به شمار میآید؟
- آیا همانجا یک شمارهٔ نسخه هم بزنم؟
اینها در واقع هیچکدام مسئلهٔ برنامهنویسی نیستند، بلکه مسئلهٔ «عادتهای کاری» هستند. شاید این روند در صنعت نرمافزار بسیار رایج باشد، اما برای یک تازهکار برنامهنویسی حسابی کابوس است.
چند نکتهٔ کوچک که یاد گرفتم
در این یک ماه چند نکتهٔ کوچک یاد گرفتم که آنها را با تازهکارهایی مثل خودم در میان میگذارم:
- اول سپر محافظ را بالا بیاورید، بعد دست به تغییر بزنید. با Git کنترل نسخه انجام دهید تا حتی اگر همهچیز را خراب کردید، در سی ثانیه بتوانید به گذشته برگردید؛ درست مانند نقطهٔ ذخیره در یک بازی، خیالتان آسوده است.
- هر بار فقط یک کار انجام دهید. هرگز سراغ «حالا که دستم است، یک خط دیگر هم عوض کنم» نروید، چون همین کار باعث میشود شما در آینده بخواهید سرتان را به دیوار بکوبید.
- کند بودن طبیعی است. یک بعدازظهر کامل فقط برای راه افتادن یک قابلیت کوچک؟ بله، همین روال روزمره است. آن آموزشهای «یکشبه استاد شوید» بیشترشان دارند شما را گول میزنند.
- برای خودتان در آینده یادداشت بنویسید. وگرنه دفعهٔ بعد که برگردید و نگاه کنید، خیال میکنید این برنامه را کس دیگری نوشتهاست. (باشد، این برنامه را واقعاً یک هوش مصنوعی نوشتهاست.)
از «همینکه کار میکند کافی است» تا «جرئت تغییر دادن و به کار انداختنش»، آنچه در این میان فاصله انداخته احتمالاً دقیقاً همین عادتهای کاری است؛ عادتهایی که به چشم نمیآیند، اما باید یکییکی تکمیل شوند.