منطق ایجنت‌ها › M9 — پروژه‌ی پایانی و ادامه
۹.۴ فرّار مرجع ~۲۰ دقیقه

مسیر ادامه

در یک نگاه

این فصل فرّار است

نام ابزارها و آدرس‌ها عوض می‌شوند. ولی روشِ به‌روز ماندن — کم‌تعداد و منظم، به‌جای زیاد و پراکنده — همان می‌ماند. آدرس‌های زیر در تاریخ زیر باز و بررسی شدند.

بررسی لینک‌ها: ۱۴۰۵/۰۵/۰۵

۹.۴.۱

چطور به‌روز بمانی وقتی همه‌چیز ماهانه عوض می‌شود

این حوزه سریع عوض می‌شود، و دنبال‌کردنِ همه‌چیز هم غیرممکن است و هم لازم نیست. تلاش برای به‌روز ماندن در همه‌چیز، معمولاً به خواندنِ زیاد و ساختنِ هیچ ختم می‌شود.

یک قاعده‌ی ساده کافی است:

به‌خاطر بسپار ماهی یک بار، سه منبع — نه روزی ده تا. و مهم‌تر از خواندن، این سؤال است: «آیا این چیزی را که من می‌سازم عوض می‌کند؟» اگر نه، رد کن. بیشترِ خبرهای این حوزه، برای تو خبر نیستند.

و سه منبعی که واقعاً ارزش ماهی یک بار را دارند، هر کدام یک محصولِ متفاوت:

و اگر برنامه‌های موبایل و وب را هم استفاده می‌کنی، release notes برنامه‌ها منبع چهارم است. بیشتر از این‌ها لازم نیست.

و یک چیزی که مهم‌تر از دنبال‌کردن اخبار است: وقتی چیزی در کارت گیر کرد، همان لحظه یاد بگیر. یادگیریِ در لحظه‌ی نیاز، ده برابرِ یادگیریِ پیش‌دستانه می‌ماند — همان چیزی که فصل ۷.۱ درباره‌ی واژه‌ها گفت.

۹.۴.۲

از اتوماسیون شخصی به محصول

سؤالی که دیر یا زود می‌رسد: «این چیزی که ساختم، می‌شود به بقیه هم داد؟»

جواب ممکن است بله باشد — ولی بدان که فاصله‌اش زیاد است، و صادقانه‌اش این است:

پله‌های بین این دو، به ترتیب — و هر پله را جدا بردار:

  1. یک همکار هم استفاده کند (تمرین فصل ۸.۸.۲). اینجا می‌فهمی چقدر از کارت به دانشِ نانوشته‌ی تو وابسته بوده.
  2. چند نفر در سازمان. اینجا مسئله‌ی مالکیت جدی می‌شود (فصل ۸.۸.۴) و باید کسی جز تو هم بتواند خاموشش کند.
  3. و بعد، بیرون از سازمان. اینجا دیگر بحث فنی نیست: پشتیبانی، مسئولیت، داده‌ی دیگران، و قواعد حقوقی.

و توصیه‌ی صادقانه: پله‌ی اول را حتماً بردار، بقیه را فقط اگر واقعاً می‌خواهی. خیلی‌ها اتوماسیونِ خوبِ شخصی را با هدفِ محصول‌شدن خراب می‌کنند — عمومی‌اش می‌کنند، پیچیده‌اش می‌کنند، و آخرش نه محصول می‌شود نه آن ابزارِ ساده‌ی مفیدِ قبلی می‌ماند.

۹.۴.۳

اگر گیر کردی، از کجا بپرس

به ترتیبی که واقعاً جواب می‌دهد — و اولی را اکثر آدم‌ها رد می‌کنند:

  1. از خودِ ایجنت (فصل ۲.۸.۳). خطا را بده و فارسی بخواه (فصل ۴.۳.۲). برای بیشترِ گیرها همین کافی است، و سریع‌ترین است.
  2. مستندات رسمی. اگر سؤالت «این ابزار چطور کار می‌کند» است، جوابش آن‌جاست — و برخلاف تصور، خواندنش با کمکِ ایجنت سخت نیست (فصل ۴.۳.۴).
  3. جست‌وجو با پیام خطای دقیق. کلِ متن خطا را در گیومه بگذار، نه توصیفِ خودت از مشکل.
  4. و آدم‌ها. یک همکار، یک گروه، یا کسی که در فصل ۹.۳.۴ به او یاد داده‌ای.

و یک قاعده که وقت زیادی نجات می‌دهد: اگر بیست دقیقه روی یک گیر ماندی و پیشرفتی نکردی، روش را عوض کن — نه اینکه بیشتر تلاش کنی. session تازه، یا سؤالِ متفاوت، یا راهِ کاملاً دیگر (فصل ۲.۸.۵).

۹.۴.۴

نقشه‌ی یک‌صفحه‌ای را دوباره ببین

و آخرین چیز. کلِ این دوره — ده ماژول و شصت‌وشش فصل — در یک تصویر:

منطق کل دوره در یک نگاه یک حلقه‌ی پنج‌مرحله‌ای: انتخاب، طراحی، ساخت، راستی‌آزمایی، تحویل — و بعد برگشت به انتخاب برای اتوماسیون بعدی. زیر آن، سه پایه که همیشه برقرارند: چطور فکر می‌کنند، محافظت، و زیرساخت و هزینه. انتخاب چه ارزش دارد؟ M2 طراحی spec و ساختار M2 · M6 ساخت با ابزار M3 · M8 راستی‌آزمایی واقعاً درست است؟ M4 تحویل به مقصد، خودکار M8 و دوباره — اتوماسیون بعدی است که عادت می‌سازد · M9 زیرِ همه‌ی این‌ها، همیشه چطور فکر می‌کنند M1 — مدل، context، حافظه محافظت M5 — فایل، داده، قضاوت زیرساخت و هزینه M7 — سواد، نه تسک هر ابزاری عوض شود، این نقشه همان می‌ماند
حلقه‌ی بالا کاری است که هر بار تکرار می‌کنی؛ سه پایه‌ی پایین چیزهایی‌اند که در هر مرحله برقرارند. راستی‌آزمایی پررنگ است چون تنها مرحله‌ای است که حذفش وسوسه‌انگیز است.

سه چیز که این تصویر می‌گوید و ارزش آخرین دقت را دارند:

به‌خاطر بسپار ابزارها عوض می‌شوند — نام‌ها، قیمت‌ها، دکمه‌ها، حتی شرکت‌ها. این نقشه عوض نمی‌شود. اسمِ این دوره «منطق ایجنت‌ها» بود نه «کار با فلان ابزار»، چون تنها چیزی که ارزشِ یاد گرفتن دارد همین ستون وسط است: بدانی چه چیزی می‌سازی، چرا کار می‌کند، و از کجا می‌فهمی درست است.

و همین‌جا دوره تمام می‌شود — با همان چیزی که در فصل ۰.۱ شروع شد: تو از قبل هم اتوماسیون می‌ساختی. فرقش این است که حالا می‌دانی داری چه کار می‌کنی.

نکته‌ی طلایی این تصویر در ضمیمه‌ی نقشه‌ی مدل ذهنی هم هست تا بدون ورق‌زدن پیدایش کنی. وقتی وسط یک پروژه گیج شدی، معمولاً یعنی نمی‌دانی در کدام مرحله‌ی این حلقه هستی — و همین که تشخیص بدهی «دارم می‌سازم در حالی که هنوز طراحی نکرده‌ام»، اغلب کل گیر را باز می‌کند.

تمرین (فکری)

سه منبعی که ماهی یک‌بار چک می‌کنی را انتخاب کن — و در تقویمت یک یادآور ماهانه بگذار. بعد دو کار آخر:

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

سخت‌ترین مرحله — سه جواب رایج:

  • «انتخاب» ← یعنی بک‌لاگت ضعیف است. یک هفته کارهای تکراری‌ات را یادداشت کن؛ مسئله کمبود ایده نیست، کمبود مشاهده است.
  • «طراحی» ← شایع‌ترین، و خبر خوبی است. یعنی داری نقطه‌ی درست را سخت می‌بینی. spec نوشتن با تمرین بهتر می‌شود و بیشترین بازده را دارد.
  • «راستی‌آزمایی» ← یعنی هنوز روش‌های M4 برایت عادت نشده‌اند. این مهم‌ترین جا برای تمرینِ بیشتر است، چون تنها مرحله‌ای است که نبودنش دیده نمی‌شود.

و کدام پایه کم‌تر جدی گرفته می‌شود؟ تقریباً همیشه M5 — محافظت. دلیلش روشن است و تقصیر تو نیست: تا وقتی چیزی خراب نشده، محافظت شبیه کارِ اضافه است. هزینه‌اش امروز پرداخت می‌شود و فایده‌اش روزی معلوم می‌شود که ممکن است هیچ‌وقت نیاید.

ولی دقیقاً به همین دلیل، تنها پایه‌ای است که اگر جدی نگیری، یک بار بهایش را کامل می‌پردازی — نه کمی، کامل. فایل بازنویسی‌شده، داده‌ای که رفت، یا قضاوتی که کند شد. اگر جواب تو هم «محافظت» بود، سه دقیقه وقت بگذار: پوشه‌ی کارت git دارد؟ اگر نه، همین حالا (فصل ۵.۲.۴).

ذخیره شد