السبب الحقيقي وراء ضخامة طلبات السحب (PRs) الخاصة بك
عملت ذات مرة في شركة كانت ترسل طلبات سحب (PRs) ضخمة بدافع العادة. كان من الممكن أن يظل طلب السحب الواحد مفتوحاً لأسابيع. تطلبت مراجعته استيعاب نظام فرعي كامل في ذهنك. تراكمت الأخطاء البرمجية، وتأخرت المواعيد النهائية. اضطررنا في النهاية إلى إعادة بناء جزء كبير من النظام لأن أحداً لم يعد قادراً على تغييره بأمان.
لم يكن المهندسون سيئين؛ بل كانوا أذكياء ومجتهدين. لكن الـ PRs كبرت لسبب ممل.
لم يعلمهم أحد كيفية تقسيم العمل.
غالباً ما نتعامل مع الـ PRs الكبيرة كمشكلة انضباط. نقول: "فقط اجعل الـ PRs أصغر". نتصرف وكأن قوة الإرادة هي الفرق الوحيد بين 1,500 تغيير و150 تغييراً.
الأمر لا يتعلق بقوة الإرادة. تقسيم العمل الكبير إلى أجزاء صغيرة ومستقلة هو مهارة، ومعظم الناس لم يتعلموها أبداً. عندما تقول التذكرة (ticket) "أضف نظام الفوترة"، يبدو الأمر وكأنه مهمة واحدة. الجزء الصعب هو معرفة أين ينتهي طلب سحب ويبدأ التالي.
كنت أرسل PRs كبيرة أيضاً. كنت أظن أن كلمة "انتهيت" تعني حل المشكلة بأكملها دفعة واحدة وإرسالها للمراجعة. استغرق الأمر سنوات لأتعلم أن الأصغر هو الأفضل.
لقد غيرت الـ PRs الصغيرة كل شيء بالنسبة لي:
- يكتشف المراجعون المزيد من الأخطاء. يمكن للإنسان استيعاب 200 تغيير، لكنه لا يستطيع استيعاب 2,000؛ بل يكتفي بالتصفح السريع والموافقة.
- عمليات الدمج (merges) تحدث بشكل أسرع. تتوقف الـ PRs عن الانتظار في الطابور.
- توقفت عن الشعور بالإرهاق. أصبحت أركز على قطعة واحدة في كل مرة.
- أصبحت مخططاً أفضل. يجب أن تفهم شكل عملك لتتمكن من تقسيمه.
بدأت أرى الأنظمة كمكعبات "ليغو". إنها قطع صغيرة تتركب معاً. بمجرد أن ترى هذه المكعبات، يصبح تقسيم العمل أمراً طبيعياً.
فريقي الحالي يرسل PRs صغيرة. والنتائج واضحة:
- متوسط وقت الدمج لدينا هو 1.5 يوم.
- نجد الأخطاء ونصلحها بسرعة لأن التغييرات تكون واضحة وسهلة القراءة.
- توقيت التسليم لدينا ثابت.
تقسيم العمل هو مهارة يجب تدريب الآخرين عليها. لا يمكنك إصلاح الـ PRs الكبيرة بمجرد وضع قاعدة، بل بإصلاحها عبر تعليم الناس كيفية رؤية "المكعبات".
يجعل الذكاء الاصطناعي هذه المهارة أكثر أهمية.
في الماضي، كانت كتابة 2,000 سطر من الكود تتطلب جهداً كبيراً، وهذا العناء كان يبقي الـ PRs أصغر. لقد أزال الذكاء الاصطناعي هذا العناء؛ حيث يمكنك الآن إنشاء تغييرات هائلة بأمر واحد (prompt).
الجهد لم يختفِ، بل انتقل ببساطة إلى المراجع. المؤلف لا يدفع أي ثمن، ولكن المراجع هو من يدفع الثمن كاملاً.
إذا لم يعد الحجم يشير إلى مقدار العمل الذي بذله المؤلف، فإن الحجم لن يخبرك إلا بالقليل عن المخاطر. يجب عليك أن تقرر أي الأجزاء تستحق اهتمامك الأكثر دقة.
علّم فريقك أن يرى "اللبنات" الأساسية. إنها العادة الأكثر تأثيراً في الهندسة.
كيف يقرر فريقك أي طلبات السحب (PRs) تحتاج إلى مراجعة عميقة وأيها يمكن تمريرها بسرعة؟
المصدر: https://dev.to/pixel-wraith/the-real-reason-your-prs-get-big-5cm3
مجتمع تعليمي اختياري: https://t.me/GyaanSetuAi