ليس مهماً او ليس هدفي في النهاية أن اعرف أين ضاع الوقت لألوم نفسي كمبرمج او ليلمومني مديري. بل كيف أقلل ذلك الوقت الضائع بحيث ارفع الانتاجية و الإنجاز و أحفظ الاستثمار؟
الحل البديهي الشائع كمدير او رب عمل هو أن اوظف شخصاً اخر اضافي و أكون او أزيد حجم الفريق. و هذا مايحصل في اغلب الشركات. لكن إن كانت شركتي في بدايتها Startup فقد لا املك المال او على الأقل ادخل ذلك المال في مخاطرة غير محسوبة!.
دعونا نحلل الوضع : لتكوين فريق برمجي صغير ستتكلف توظيف على الأقل شخصين (مبرمجين). فلا فريق بشخص واحد. و ستحتاج لجهاز لكل مبرمج و كرسيين و طاولتين. و أربعة مبرمجين افضل طبعاً من اثنين. ولكن سيحتاجون ايضاً اجهزة و كراسي و طاولات و مساحة و الذي يعني تكلفة.
هل يمكنني أن اجد طريقة تمكنني من مضاعفة الفريق مرة او مرتين بحيث يصبحوا اربعة بدل اثنين من دون أن استثمر الكثير او حتى لا اتكلف اكثر من تكلفة مبرمج اضافي واحد !؟
حقيقة هناك حل و الحل غريب لكن فعّال من واقع تجربة لي. لكن من يقنع المدراء حتى بمجرد التجربة؟
الحل هو أن أوظف مبرمجاً اخر مع المبرمج الأول بحيث يعملون على نفس الجهاز و نفس الكود بدون أي تقسيم للعمل بينهم.
الحل هو أن أوظف مبرمجاً اخر مع المبرمج الأول بحيث يعملون على نفس الجهاز و نفس الكود بدون أي تقسيم للعمل بينهم.
اي أن جميعهم يعملون على نفس جزئية الكود تماماً و على بناء نفس الصفحة و على نفس الجدول. واحد منهم فقط من يكتب و الاخر ينظر وتابع فقط ثم ينتقلون إلى جزء اخر.
إذا كان لديك مبرمجين اثنين على جهازين مختلفين و اجزاء مختلفة من البرنامج فأنت لديك اثنين. لكن إن كان لديك مبرمجين اثنين على جهاز واحد و على نفس الكود فأنت لديك اربعة مبرمجين لا اثنين.
هذه ليست مجرد فكرة او تجربة يتيمة بل هي ممارسة قديمة من الخمسينيات و احد ممارسات الAgile التي اوصى بها كبار المبرمجين بدءاً من Kent Beck و Martin Fowler و غيرهم و اسمها Pair programming.
نعود للبداية, البرمجة ليست مجرد طباعة تحتاج فيها لزيادة آلات الطباعة و مدخلي بيانات, بل تحتاج البرمجة إلى عقول تفكر , تحلل , تناقش , تنظر من منظور مختلف, تخطط , تصمم , تنتقد , تصحح , تُفاضل. و هذا مايوفره وجود شخصين مع بعضهما على نفس الكود.
ربما من الصعب في ظروف الجائحة الحالية أن تقرّب اثنين من بعضهما جسدياً, لكن يمكن عمل ذلك عن طريق برامج مشاركة الشاشة, حتى ان مايكرسوفت برأيي ان اهم ميزة ستضيفها على Visual Studio 2023 هو تحسين موضوع الLiveShare للPair programming بإضافة امكانية الدردشة بين المبرمجين.
تبدوا الفكرة بسيطة, لذا فمن المرجح أن تفشل إذا لم تُمارس بطريقة صحيحة. مجرد الجلوس مع زميلك او مساعدته لايكفي. قد تقول مثلاً أن السيارة لن يقودها اثنين, لكن الطائرة نعم. و هي النموذج الذي ستأخذه. فإذا اردت التجربة اقرأ عن الموضوع جيداً قبل أن تبدأ.
و رمضان كريم.
و رمضان كريم.
جاري تحميل الاقتراحات...