مواقع الـ Problem Solving من المواقع اللي ممكن تدمر المبتدئين, او تبنيهم. من يومين نزلت بوست على الفيسبوك محتواه في الصورة دي:
بعض اصدقائي مفهموش ليه, فا عدلت البوست و اضفت معلومات سريعة حابب اوضحها اكتر في المقالة دي.
فوائد واسباب وجود الـ leaderboards 👀
من فترة كبيرة بدأت شركات كتير تروح لحاجة اسمها Gamification (التلعيب). التلعيب بكل بساطة هو تحويل منصة معينة و اضافة عناصر من الالعاب ليها بهدف تحسين ردود الفعل و المشاركة العامة. حاجات زي الـ badges و الـ levels زي في برامج تعليم اللغات زي Duolingo و Memrise, وطبعاً الـ leaderboards.
الحاجات دي فعلاً مفيدة في سياقات محددة, زي التعلم الجامعي في مجالات الـ STEM و اتعمل دراسات اثبتت فعلاً ان بعض الطلاب ادائهم الدراسي بيتحسن بإضافة عناصر التلعيب[1][2]. النتايج دي مبنية على شروط واجب توافرها في الافراد زي الجنس و الحالة الاجتماعية و الشخصية, سواء الشخص مثلاً انطوائي و المنصة اللي بيحصل عليها الكلام ده و المنهجية العامة.
دراسات تانية قالوا ان اه معدل التحسن ملحوظ بس معدل تباين النتائج كبير جداً [3]. و ده بالاضافة للنتايج اللي ف الفقرة السابقة يدل على ان نسبة الناس اللي ادائهم بيتحسن بالتلعيب اقل من المتوقع بكتير حتى في شروط مثالية.
حسب نظرية التحديد الذاتي (Self-determination theory) احنا كبشر محتاجين ان اي حاجة نعملها يتوفر فيها 3 خصال:
- مهارة و قدرة الفرد
- الاستقلال في اتخاذ قرارات معلقة بالحاجة دي
- القرابة والارتباط بالحاجة اللي هنعملها
الـ leaderboards المثالية بتسمحلنا نعمل ده بصورة تنافسية. بتدينا تقرير عن مهارتنا و بتسمحلنا نستقل عن غيرنا في اننا نحاول نتقدم فيها, و طبعاً لو الحاجة اللي فيها leaderboard دي احنا مهتمين بيها يبقى كده الـ 3 خصال تحققوا فعلاً و بكده الـ leaderboard نقدر نستغلها في اننا نحط اهداف واضحة. و ده بدور بيحسن من تعاملنا مع المنصة و البيئة المحيطة, و بتزود التكاتف و المشاركة.[4]
عيوب الـ leaderboards 🔥
من ضمن الحاجات اللي بنعملها هي اننا دايماً بنقارن نفسنا بغيرنا. نظرية المقارنة الاجتماعية لعالِم النفس الاجتماعي ليون فيستنغر (Leon Festinger's Social Comparison Theory) بتنص على اننا بنقارن نفسنا بغيرنا لسببين: عشان لو عندنا نقص في علم ما نملى الفراغ ده, و عشان نحدد و نطور هويتنا كأفراد. [5] و ده يودينا للنقطة الجاية, طالما هي حاجة طبيعية, ايه الخوف من الـ leaderboards؟
اغلب الـ leaderboards بتبقى متكونة من عنصرين: مستواك و مرتبتك. المستوى ممكن يكون نقاط exp او عدد الـ lessons اللي خلصتها, و مرتبتك بتبقى مقارنة بباقي مستخدمين المنصة. طب فين الغلط؟
انعدام الـ feedback 🤔
الشكل ده مش بيدينا أي feedback نعرف من خلالها احنا ناقصنا ايه عشان نتحسن. بيحطنا في اختيار صعب مابين اننا نقعد ندور و نتوه كتير بحيث نحاول نفهم ايه اللي ناقصنا, و مابين اننا نستسلم و نسيب المنصة تماماً.
الانطباعات المخادعة 🤠
الشكل ده برضه بيدي انطباع ان الشخص اللي فوقنا عنده خبره اكتر او مهارة اكتر, بينما ده مش شرط يكون حقيقي. انا شوفت ناس بتغش على مواقع كتير. شوفت ناس بيعملوا حسابات جديدة عشان يخشوا يحلوا كل الاسئلة الاولية اللي هي بتاعت المبتدئين بحيث ان يتكتب "Solved 9999 problems this week" بينما كل اللي هو حله حاجات تخلص ف نص سطر و اي حد يحلها. في مواقع تانية الناس بتاخد الحلول كوبي, و في مواقع تانية بتسمح انك تحل نفس البروبلم تاني و تالت, و كل مره بتضاف للسكوور بتاعك و بتعلى الرانك بتاعتك في الـ leaderboard.
الحيرة و انعدام الثقة في الذات 🍉
الانطباعات دي كلها بتؤدي لأسئلة زي هو احسن ازاي؟ ازاي اوصل لمستواه؟ عمل ايه؟ الخ. و كل الاسئلة دي غير مجابة. كل اللي ظاهرك اسم و سكوور و رانك.
كل الحاجات دي و اكتر كمان بتسبب ضرر نفسي. بتخلينا نفقد الثقة في خبرتنا و علمنا. بتحسسنا ان مهما عملنا هيبقى دايماً في حد احسن مننا في الحاجة دي, مع ان ده مش شرط يبقى حقيقي, و بيخلينا نقرب للاستسلام اكتر ما بنقرب للتطور و التحسن. بتزعزع الثقة في النفس و بتزود الـ imposter syndrome.
حلول و بدائل 🚀
مبحبش انقد من غير ما ادي بدائل او حلول. دول شوية حاجات فكرت فيهم:
- متبصوش ف الليدربووردز. ساعتها مش هتقارنوا الا بنفسكوا. قارن نفسك بنفسك.
- كل شوية راجعوا ماضيكم. شوفوا انتوا حليتوا ايه و لما كنتوا بتحلوا حاجات سهلة كنتوا فاكرينها صعبة ازاي, استمتعوا بالتحسن و التطور المستمر بتاعكوا.
- بصوا على اللي فوقكوا على طول, فرق الرانك مابينكوا صغير جداً. متبصوش ف اول الليست. لما تيجوا تقارنوا, قارنوا باللي تحتكوا و فوقكوا. عشان متنسوش انكوا ف يوم كنتوا تحت و اتحسنتوا.
- متمسحوش الحلول القديمة\البطئية بتاعتكم وانتوا بتعملوا optimisation. اعملولها comment out و ضيفوا الحلول الجديدة الاحسن. عشان لما تيجوا تبصوا تلاقوا نفسكوا بتتحسنوا.
- قارنوا بـ objectivity. مش كل الناس بيقدروا يعملوا كده بس ممكن تجربوا. حددوا معطيات تقارنوا على اساسها. زي مثلاً سرعة الكود, سهولة فهمه, قدرتكم على شرحه و هكذا.
- حطوا اهداف. متحلوش عشان مجرد انكوا عايزين تحلوا. بلاش تحطوا في دماغكوا فكرة "عايز اطلع الليدربوورد و خلاص". حطوا اهداف زي مثلاً عايز ال10 problems اللي انا حليتهم خلال الاسبوع لما اجي كمان شهر ابص فيهم افهمهم اسرع و افهم حلي القديم بسهولة, و احاول احسنه. وهكذا.
- سجلوا analytics عن نفسكوا. في مواقع بتعمل كده, و ممكن تعملوا انتوا بنفسكوا. سجل صعوبة التاسك اول مره شوفته, و حليته ف قد ايه, و فكرتوا ازاي, مشيتوا ازاي, حليتوا ازاي. ايه المشاكل اللي وقفت معاكوا و ازاي حليتوها.
- في مواقع زي Codeforces مبيبقاش فيها الموضوع ده ظاهر بقوة, و بتبقى مبنية على شكل community اكتر ما هي لييدربورد و شوية بروبلمز.
- او خشوا فالاريوم 😆 هناك بنحل سوا وبنتفاهم و ببيتوفر عامل مع غيركوا في تنافس ونقاش, الشكوك و الحيرة مش بتبقى موجودة بنفس المقدار, وهتعرفوا بكل سهولة ايه اللي ناقصكوا عشان تتحسنوا لما تلاقوا في كذا عين بيبصوا ف الكود بتاعكوا و بيديكوا feedback عليه.
مصادر:
- Benefits and challenges with gamified multi-media physiotherapy case studies: a mixed method study [s40945-019-0059-2]
- Gamification through leaderboards: An empirical study in engineering education [332995462]
- The rise of motivational information systems: A review of gamification research [S0268401217305169]
- Designing Leaderboards for Gamification: Perceived Differences Based on User Ranking, Application Domain, and Personality Traits [1805/17645]
- Social Comparison Theory: Psychology from the Lost and Found [10.1177/0146167286123001]
Written by Nabil Tharwat
Nabil Tharwat is a software engineer and mentor who's super in love with all things accessibility and performance. He's host of The Weekly Noob podcast and his content has reached thousands of people around the world.