تجاوز إلى المحتوى
العربية
المستوى 4: اقرأ مع Claude
الدرس 7 · +15 XP

ثِق، لكن اقرأ ما قرأه Claude

أمضيتَ ستة دروس تثق بإجابات Claude — ماذا يفعل هذا، من أين يُستدعى هذا، ما الذي تغيّر. حان وقت وضع عادة حاملة للأثقال تحت كل ذلك.

Claude سريع وصائب في الغالب. لكن في الغالب ليست دائمًا. الإصلاح بسيط: اسأل أي ملف وأي سطر، ثم اذهب وانظر.

هذه أهمّ عادة في المستوى بأكمله. إنها الفرق بين «القراءة مع Claude» و*«التمنّي أن يكون Claude صائبًا».*

لماذا يهمّ هذا تحديدًا في وضع القراءة

عودةً إلى الدرس 2.6، تعلّمتَ أن Claude يتوقّف طالبًا الإذن قبل أن يفعل شيئًا لا يمكن عمل undo له — كتابة ملف، أو تشغيل command. تلك الوقفة هي شبكة أمانك حيال التغييرات.

وضع القراءة لا يملك مثل تلك الوقفة. حين يجيب Claude عن سؤال، لا شيء على القرص يتغيّر، فلا يوجد prompt — ولا لحظة مدمَجة لتعيد فيها التفكير. تنزلق الإجابة الخاطئة دون فحص. وإن تصرّفتَ بناءً عليها لاحقًا (في كودك، أو في اجتماع، أو في وصف PR)، فأنت عالق بما أخبرك به.

البديل عن تلك الوقفة هو أن تقرأ أنت ما قرأه Claude.

نمطا الفشل

يمكن أن يخطئ Claude بطريقتين تقريبًا حين يقرأ الكود.

النمط الأول: إساءة قراءة الشيء الحقيقي. عثر Claude على الملف الصحيح، وفتحه، لكنه لخّصه بصورة خاطئة قليلًا — قلب الشرط، أو فاته حالة، أو دمج اثنين من الـ functions معًا. الأسماء وأرقام الأسطر التي يستشهد بها حقيقية؛ الخلاصة وحدها منحرفة قليلًا.

النمط الثاني: اختلاق الأشياء. أقلّ شيوعًا، أخطر. يخترع Claude اسم function، أو path لملف، أو import غير موجود. تبدو الإجابة معقولة. لكن الشيء الذي يصفه ليس موجودًا فعليًا في الكود.

يبدو النمطان متطابقين من الخارج — تلخيص واثق. الطريقة الوحيدة لتمييزهما هي التحقق.

عادة التحقق

تطرح سؤالًا إضافيًا واحدًا بعد أي إجابة غير تافهة:

من أي ملف وأي سطر استقيتَ ذلك؟ اقتبسه.
which file and which line did you get that from? Quote it.

الآن صار على Claude أن يكون محددًا. تستطيع أخذ تلك الإجابة و:

  1. تفتح الملف (code src/auth.ts أو ببساطة cat src/auth.ts أو تمرّر في محرّرك).
  2. تنظر إلى السطر.
  3. تتأكد من أن النصّ المقتبَس موجود فعلًا هناك.

هذا ينجح لأن الاستشهادات قابلة للدحض. التلخيص الذي لا يمكنك فحصه حكاية. أما التلخيص المسنود بـ*«السطر 42 من src/auth.ts»* فيستغرق التأكد منه عشر ثوانٍ — وClaude يعلم أنك قد تتأكد، وهذا وحده يجعل الإجابة أكثر تأنّيًا.

كيف يبدو «التأكد» فعليًا

في ادعاء صغير — «تُرجع الـ function قيمة null عند الفشل» — تفتح الملف، وتمرّر إلى الـ function، وتلقي نظرة على عبارة الإرجاع. خمس ثوانٍ.

في ادعاء أكبر — «تُستدعى هذه الـ function من ثلاثة أماكن: X وY وZ» — تفحص واحدًا أو اثنين بالعيّنة. إن صحّ كلاهما، فالثالث على الأرجح صحيح. إن أخطأ ولو واحد، فاطلب من Claude إعادة الفحص.

أنت لا تحاول إعادة اشتقاق إجابة Claude كلها من الصفر. أنت تأخذ عيّنة لاختبار الصدق. (هكذا تمامًا يتعامل المراجِعون مع PR لمهندس مبتدئ — لا بإعادة إنجاز العمل، بل بفحص الأجزاء الحاملة للأثقال.)

متى تتحقق ومتى لا تتحقق

ليست كل إجابة بحاجة إلى خطوة تحقق. قاعدة إبهام مفيدة:

الإجابة عن…تتحقق؟
ما يفعله ملف واحد، بشكل عامّخفيف — اقرأ التلخيص، وألقِ نظرة على الملف
ما إذا كانت function محددة موجودة، وأين تعيشنعم — افتحها
ما الذي يستدعي function (قائمة)نعم — افحص واحدًا على الأقل بالعيّنة
إلى أي قيمة يُضبَط شيءنعم — افتح وانظر
ما الذي تغيّر في الـ git historyنعم — اطلب من Claude اقتباس الـ commit والـ diff
كيف تتصرّف library تعرفها جيدًاخفيف — معرفتك المسبقة تؤدّي العمل
ادعاء أنت على وشك وضعه في PR أو وثيقة أو رسالةدائمًا

حين تكون على وشك التصرّف بناءً على إجابة — تغيير كود، أو إخبار شخص، أو فتح بلاغ bug — تحقّق. وحين تكون تتوجّه فحسب، فالأخفّ يكفي.

النقطة التي تربك الناس

الإغراء هو تخطّي التحقق لأن Claude يبدو واثقًا. هذا هو الفخّ. الثقة سمة من سمات طريقة كلام نماذج اللغة؛ ليست إشارة إلى الصدق. الإجابة المختلَقة والإجابة الصحيحة يمكن أن تبدوا متطابقتين كلمةً كلمةً في النبرة.

الثقة أسلوب، لا دليل. الدليل هو الملف.

اجعل العادة صغيرة بما يكفي ألّا تكسر الانسياب. «اقتبس السطر» يستغرق turn إضافيًا واحدًا. ذلك الـ turn هو أرخص بوليصة تأمين ستشتريها على الإطلاق.

أثر جانبي ألطف

طلب أن يستشهد Claude يجعل Claude يفكّر بعناية أكبر في المحاولة الأولى. ما إن يعلم أنك ستريد سطرًا مقتبسًا، حتى يميل فعلًا إلى الذهاب والعثور على سطر مقتبس بدلًا من المطابقة النمطية من الذاكرة. تحصل على إجابات أفضل منذ البداية، لا مجرد تدقيق حقائق أفضل لاحقًا.

لهذا يبني مستخدمو Claude المتمرّسون التحقق في سؤالهم الأول، لا في متابعتهم:

أين تُعرَّف handleLogin؟ افتح الملف واقتبس الـ function signature.
where is handleLogin defined? Open the file and quote the function signature.

تلك هي الخطوة. سؤال واحد، الاستشهاد مدمَج، لا حاجة إلى متابعة.

ما التالي

بعد سبعة دروس، تملك العدّة الكاملة: التأطير، ونطاق الملف، ونطاق الرمز، والتتبّع، والأخطاء، والـ history، وعادة التحقق. حان وقت استخدامها كلها على codebase حقيقي، من البداية إلى النهاية. هذا هو المشروع الختامي.