في سبتمبر من العام الماضي، بدأنا بهدوء العمل على Track Anatomy Project في Exercism. ومنذ ذلك الحين ونحن نخبر المزيد والمزيد من الناس عنه، وقررنا الآن أن الوقت مناسب للتعريف علنًا بالعمل الرسمي الذي نقوم به لتحسين المسارات والتمارين على Exercism.
لفهم الغرض من Track Anatomy Project والحاجة إليه، علينا أن نعود إلى جذور Exercism. بدأ Exercism كمجموعة متنوعة من مسارات اللغات، لكل منها مجموعة من التمارين المتداخلة. ولم يكن هناك ترتيب أو هيكل بحد ذاته، إذ كان بإمكان أي شخص اختيار أي تمرين يراه مثيرًا للاهتمام، وحلّه، ورفع الكود الخاص به، ثم يأمل أن يجده أحد ويعلّق عليه. كان جوهر إعادة إطلاقنا في 2018 هو إعادة تمركز Exercism حول نهج أكثر تنظيمًا بكثير، سواء في المسارات نفسها أو في التعلّم المصاحب لها. وقررنا إصلاح مسارات اللغات لتتكوّن من عمود فقري ثابت من «تمارين أساسية» مطلوبة، تفتح «تمارين جانبية» اختيارية عند إكمالها. وطلبنا من المشرفين أن ينظموا العمود الفقري الأساسي بحيث تزداد صعوبته تدريجيًا، وأن يصمموا تسلسلًا للفتح يكون ذا صلة بالتقنيات التي يجري التدرب عليها. وقد اتبع المشرفون المختلفون أساليب مختلفة لتحقيق ذلك، بدرجات متفاوتة من النجاح. بعضهم ببساطة لم يكن لديه الوقت، وفي هذه الحالة اخترنا عشرة تمارين شبه عشوائية لتشكيل النواة الأولية.
واتضح بسرعة كبيرة أن تصميم المسار يُحدث فرقًا هائلًا في نجاح ذلك المسار. وخلال الأشهر القليلة الأولى بعد الإطلاق، توصلنا إلى سلسلة من الملاحظات الجوهرية:
- اللغات التي تبدأ بتمرين صعب للغاية تُصيب الناس بالإحباط وتؤدي إلى انسحاب سريع.
- كانت صعوبة توجيه التمرين مرتبطة ارتباطًا مباشرًا بتعقيد التمرين لا بصعوبة التمرين.
- التمارين التي يمكن حلها بطريقة نمطية واحدة (مثل «acronym»)، أو التي لها أهداف تعلم واضحة، كان توجيهها أسرع بكثير من التمارين التي تتضمن تنوعًا (مثل «bob»).
- ترتيب تقديم المفاهيم مهم: فتغطية التعابير الأساسية في التمارين الأولى يجعل التمارين اللاحقة أسهل لكل من المتعلم والموجّه.
بناءً على ذلك، أدركنا أن جزءًا كبيرًا من نجاح التوجيه على Exercism سيتوقف على جودة «المنهج» في المسارات: أن تكون المواضيع الصحيحة مغطاة بشكل صريح في التمارين الصحيحة وبترتيب مناسب. وقررنا أننا بحاجة إلى تطوير إطار رسمي نستخدمه دليلًا للمشرفين، وأن ننشئ مسارًا نستخدمه معيارًا ذهبيًا للمسارات الأخرى.
بالتوازي مع كل ذلك، كانت إحدى موجّهاتنا، Maud de Vries، التي تعمل مدربة محترفة منذ 20 عامًا، قد بدأت تنشر بانتظام اقتراحات حول كيفية تحسين مسار Ruby. وكانت أفكارها متوافقة بشكل ملحوظ مع الاستنتاجات التي توصلنا إليها نحن أيضًا. وبهدوء في الخلفية، كانت Maud تحلل كل تمرين من تمارين Ruby بدوره وتطوّر خريطة لكيفية ارتباط التمارين، والمفاهيم التي تحتويها، وكيف يمكن إعادة ترتيبها بشكل أفضل لتشكّل بنية مسار منظمة جيدًا للمتعلمين، وممتعة وجذابة للمشرفين. وعندما عرضت علينا بعض عملها، قررنا أنها الشخص المناسب لتطوير إطارنا الخاص بالمسارات، وأنها قادرة على أن تأخذ مسار Ruby وتجعله نموذجنا المثالي. ومنذ ذلك الحين، تعمل Maud بدوام جزئي لدى Exercism، إذ تعيد تصميم مسار Ruby وتطوّر إطارًا متعدد المراحل يعمل عليه المشرفون ليكرروا تعلّماتها بسرعة في لغات أخرى. ومنذ أكتوبر، كان Erik Schierboom يعمل في وقت فراغه كفأر تجارب لـ Maud، إذ يختبر الإطار ويستخدمه لتحسين مسار C#، وهو ما كان له بدوره أثر كبير في تطوير الإطار نفسه.
ونحن نقترب الآن من المرحلة التي سنتمكن فيها من أخذ الدفعة التالية من المشرفين عبر مراحل الإطار، واختباره وتنقيحه بشكل أكثر صرامة. وبمجرد أن ننتهي من هذه الجولة التالية، نأمل في نشر نسخة أولى من الإطار يمكن أن تخضع لمزيد من التدقيق من المجتمع الأوسع. ونحن متحمسون حقًا للوصول إلى تلك المرحلة ولعرض كل العمل الذي جرى خلف الكواليس. ونرى أن هذه خطوة عملاقة إلى الأمام بالنسبة إلى Exercism، وستحسّن بشكل كبير تجربة التعلم وتجربة المشرفين على حد سواء.
وأريد أن أختم هذا بتوجيه شكر كبير لـ Maud التي قادت هذا المشروع بلا كلل، ولـ Erik الذي تخلى عن الكثير من وقت فراغه للمساعدة.