السمعة

تعرّف على نظام السمعة.


السمعة هي النظام الذي يتيح للناس اكتساب «الثقة» داخل منظومة Exercism.

والسمعة مقياس لمدى إسهام الشخص في Exercism، سواء من خلال الإسهام في المنصة (مثل إنشاء البرمجيات والتمارين والوثائق) أو الإسهام في المجتمع (مثل الإرشاد).

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

الهدف

الغرض من نظام السمعة هو:

  1. زيادة التفاعلات التي تركز على النمو بين الطلاب والمرشدين إلى أقصى حد
  2. زيادة رغبة المرشدين في الإسهام إلى أقصى حد

اكتساب السمعة

يمكن اكتساب السمعة بطرق متنوعة:

الإجراء السمعة
إرشاد حل بنجاح 5
نشر حل 1-3
كتابة تمرين 20
تحديث تمرين 10
كتابة مفهوم 10
تحديث مفهوم 5
إنشاء pull request 3-100
مراجعة pull request 1-20
دمج pull request 1-5

إرشاد حل بنجاح

عن كل حل تم إرشاده بنجاح (بانتهاء النقاش)، تُمنح 5 من السمعة.

نشر حل

عن كل حل منشور، تُمنح السمعة بناءً على صعوبة التمرين:

التسمية السمعة
easy 1
medium 2
hard 3

كتابة تمرين

عن كل تمرين يُدرج فيه المستخدم كمؤلف، تُمنح 20 من السمعة.

تحديث تمرين

عن كل تمرين يُدرج فيه المستخدم كمساهم، تُمنح 10 من السمعة.

كتابة مفهوم

عن كل مفهوم يُدرج فيه المستخدم كمؤلف، تُمنح 10 من السمعة.

تحديث مفهوم

عن كل مفهوم يُدرج فيه المستخدم كمساهم، تُمنح 5 من السمعة.

إنشاء pull request

افتراضيًا، تُمنح 12 من السمعة عند دمج pull request فتحه المستخدم.

وبحسب محتوى pull request، يمكن للمشرف أن يمنح سمعة أكثر (أو أقل) بإضافة إحدى التسميات التالية إلى pull request:

التسمية السمعة أمثلة
x:rep/tiny 3
  • إصلاح خطأ مطبعي واحد أو رابط واحد
  • حذف سطر فارغ أو إضافة فاصل أسطر
  • تغيير تعليق واحد في الكود أو إضافته
x:rep/small 5
  • إصلاح حالة اختبار واحدة أو مهمة واحدة أو مثال واحد
  • إصلاح عدة أخطاء مطبعية أو روابط في ملف واحد
  • توضيح المحتوى بإضافة بضعة أسطر إلى ملف
x:rep/medium 12
  • مزامنة تمرين مع problem-specifications (بما في ذلك التعديلات)
  • إضافة حالة اختبار واحدة أو أكثر من الصفر
  • تحسين عدة ملفات في تمرين
  • إضافة ملاحظات مرشد لتمرين من الصفر
  • إصلاح Bug صغير في test runner/analyzer/representer
  • إضافة تعليقات analyzer لتمرين واحد
x:rep/large 30
  • إضافة تمرين مفاهيمي أو تمرين تدريبي جديد
  • إضافة توثيق جديد للمفاهيم
  • إعادة كتابة جزء كبير من مفهوم أو تمرين قائم
  • إضافة نصوص CI جديدة أو أتمتة أخرى
x:rep/massive 100
  • إنشاء test runner أو analyzer أو representer أو مولّد من الصفر
  • إعادة هيكلة كبيرة لتلك الأدوات
  • إنشاء توثيق كبير من الصفر (مثل أدلة الإسهام أو الاختبار)

يمكن أن تكون الأمثلة أعلاه إرشادًا تقريبيًا لتحديد متى تُطبَّق أي تسمية، لكن للمشرفين الحرية في استخدام تقديرهم الخاص.

  • ينبغي تفسير العدد المقدَّر للوقت المستغرق على أنه متوسط الوقت الذي يقضيه المشرف في تنفيذ الـ PR.
  • إذا حُددت أكثر من تسمية، فالتسمية ذات أعلى قيمة سمعة هي التي تحدد السمعة الممنوحة.
  • إذا كان pull request ما يزال مفتوحًا، فلا تُمنح أي سمعة (حتى الآن).
  • إذا أُغلق pull request دون دمجه، فلا تُمنح أي سمعة.

لأغراض التوافق مع الإصدارات السابقة، ندعم أيضًا استخدام تسميات x:size لتحديد السمعة الممنوحة.

مراجعة pull request

عن كل pull request مدمج أو مغلق راجعه المستخدم، تُمنح 5 من السمعة.

  • إذا كان pull request ما يزال مفتوحًا، فلا تُمنح أي سمعة (حتى الآن).

  • لا تُمنح سمعة المراجعة إلا مرة واحدة لكل مستخدم لكل pull request.

  • المستخدم الذي فتح pull request لا يحصل على سمعة مقابل مراجعة pull request الخاص به.

  • تتغير السمعة الممنوحة مقابل مراجعة pull request إذا أُضيفت إحدى التسميات التالية إلى pull request:

    التسمية السمعة
    x:rep/tiny 1
    x:rep/small 2
    x:rep/medium 5
    x:rep/large 10
    x:rep/massive 20

    من غير الممكن استخدام «أحجام» سمعة مختلفة لمؤلف pull request ومراجعه. فكلاهما يستند إلى التسمية نفسها x:rep.

    إذا حُددت أكثر من تسمية، فالتسمية ذات أعلى قيمة سمعة هي التي تحدد السمعة الممنوحة.

    لأغراض التوافق مع الإصدارات السابقة، ندعم أيضًا استخدام تسميات x:size لتحديد السمعة الممنوحة.

دمج pull request

عن كل pull request دمجه المستخدم، تُمنح 1 من السمعة.

  • إذا كان pull request ما يزال مفتوحًا، فلا تُمنح أي سمعة (حتى الآن).
  • إذا أُغلق pull request دون دمجه، فلا تُمنح أي سمعة.
  • المستخدم الذي فتح pull request لا يحصل على سمعة مقابل دمج pull request الخاص به.
  • إذا لم يكن لـ pull request أي مراجعات، فتُمنح 5 من السمعة بدلًا من ذلك.

فتح مشكلة

مثل pull request، لا تُمنح أي سمعة افتراضيًا عند فتح مشكلة. وعلى عكس pull request، لا تُمنح السمعة إلا للمشكلات الكبيرة أو الضخمة.

وبحسب محتوى المشكلة، يمكن للمشرف أن يختار منح سمعة بإضافة إحدى التسميات التالية إلى المشكلة:

التسمية السمعة أمثلة
x:rep/large 30
  • تمرين مفاهيمي مكتمل التفاصيل
x:rep/massive 100
  • تصميم منهج track

يمكن أن تكون الأمثلة أعلاه إرشادًا تقريبيًا لتحديد متى تُطبَّق أي تسمية، لكن للمشرفين الحرية في استخدام تقديرهم الخاص.

  • ينبغي أن تعكس السمعة مقدار الجهد الذي سيبذله المشرف لإنشاء المشكلة.

  • إذا حُددت أكثر من تسمية، فالتسمية ذات أعلى قيمة سمعة هي التي تحدد السمعة الممنوحة.