الـ blast radius
حين يسألك الـ prompt “أحذف هذا الملف؟” فالسؤال الصحيح ليس هل سيحذف هذا ملفاً؟ (نعم، هذا هو الـ command). السؤال الصحيح هو ما الذي يطاله هذا الحذف فعلاً؟
blast radius: إلى أيّ مدى يمكن أن تصل عواقب الـ action إن ساء.
هي الكلمة نفسها التي يستخدمها العسكر للانفجارات. والفكرة نفسها. الانفجار الصغير يبقى داخل الغرفة؛ والكبير يهدم الحيّ كله.
السلّم ذو الخمس درجات
كل action توافق عليه يجلس في مكان ما على هذا السلّم، من أصغر تأثير إلى أكبره:
- جلستك في الـ terminal. ضبط متغيّر، طباعة بعض النص. يزول حين تغلق النافذة.
- مجلد مسوّدات. إنشاء ملف في
/tmpأو directory ملاحظات تستخدمه أنت وحدك. لا يطال شيئاً آخر. - مشروعك. تعديل ملفات المصدر، تشغيل
npm install، أيّ شيء داخل مجلد واحد يمكنك إعادة بنائه من git. - جهازك. المساس بالـ home directory لديك، أو الـ shell config لديك، أو ملفات النظام، أو أيّ شيء خارج المشروع تعتمد عليه تطبيقات أخرى.
- أشخاص آخرون. الـ push للكود، إرسال بريد إلكتروني، استدعاء API يحاسب فريقك مالياً، النشر على Slack. الإنترنت لا ينسى.
الدرجة العليا لا بأس بالمرور عليها بنقرة. أما الدرجة الدنيا فهي حيث تتوقف وتقرأ فعلاً.
الحيلة: الـ command نفسه، تأثير مختلف
هذه هي النقطة التي تربك الناس عادةً.
rm file.txt يبدو متطابقاً في مجلدين مختلفين. في directory مسوّدات أنشأته بالأمس، هو الدرجة 2 — لم يُفقد شيء ذو قيمة. في مشروع لم تعمل له push بعد، هو الدرجة 3 — ربما حذفت لتوّك ساعة من العمل. في الـ home directory لديك، هو الدرجة 4 — ربما اعتمد شيء آخر على ذلك الملف.
الـ command لا يخبرك بالـ blast radius. المكان هو الذي يخبرك. ولهذا قال لك الدرس الماضي أن تقرأ سطر الـ directory قبل سطر الـ command.
قراءة الملفات الحساسة هي تأثير أيضاً
يستحق الذكر: التأثير لا يتعلق بـتغيير الأشياء فقط. إذا قرأ Claude ملف .env لديك، فإن تلك الأسرار أصبحت الآن في المحادثة — والمحادثات يمكن نسخها ومشاركتها وتسجيلها. قراءة الملفات الحساسة هي الدرجة 4 أو 5، لا الدرجة 1، حتى وإن بدت كلمة “قراءة” غير مؤذية.
ما التالي
الـ blast radius يجيب عن “إلى أيّ مدى؟” الدرس التالي يجيب عن سؤال أحدّ: ليس إلى أيّ مدى، بل هل يمكنك التراجع عنه أصلاً.