أولاً: ما هو غيتهب (GitHub)؟
غيتهب هو موقع إلكتروني يستخدمه المبرمجين لتخزين ملفات مشاريعهم بصيغة يمكن للمبرمجين الآخرين الإطلاع عليها والمساهمة فيها، تتبع التعديلات التي يقومون بها، وتنظيم العمل بينهم.
بالنسبة لك كمستخدم عادي، هو المكان الذي ستجد فيه النقاشات حول البرنامج، وروابط التحميل، وهو المكان الأفضل للتواصل مع المطور.

ثانيًا: كيف أحمل برنامجاً منشوراً على غيتهب وأجربه بهدف المساعدة غير التقنية فيه؟
عندما تدخل لصفحة مشروع ما أو ما يسمى بالمستودع (Repository)، قد تشعر بالضياع بسبب كثرة الملفات. لا تقلق، أنت لا تحتاج لهذه الملفات البرمجية لتشغيل البرنامج. لتحميل البرنامج القابل للاستخدام، ابحث في الأماكن التالية بالترتيب:
1. قسم Releases (الإصدارات)
- انظر إلى القائمة الجانبية (على اليمين بالواجهة الإنجليزية). ستجد كلمة Releases.
- اضغط على أحدث إصدار (Latest).
- في الصفحة الجديدة، انظر لأسفل قسم Assets. ستجد ملفات التحميل (مثل ملفات exe للويندوز أو dmg للماك أو apk للأندرويد).
2. واجهة الصفحة الرئيسية (README)
انزل قليلاً لأسفل الصفحة لقراءة الشرح (README). غالباً ما يضع المطور قسماً بعنوان Download أو Installation يحتوي على روابط مباشرة.
3. وصف المشروع (About)
في أعلى يمين الصفحة في الواجهة الإنجليزية قد تجد رابطاً لموقع إلكتروني خارجي مخصص للبرنامج، يمكنك التحميل منه مباشرة.

ثالثًا: كيف يصل صوتي للمطور؟ (قسم Issues)
بعد تجربة البرنامج، سواء واجهت مشكلة أو خطرت ببالك فكرة، المكان الصحيح لكتابتها هو قسم Issues (مهام، مشاكل).
كيف تصل إليه؟
- تأكد أنك قمت بتسجيل الدخول بحسابك في غيتهب (Sign in) - يمكنك إنشاء حساب مجاناً أو تسجيل الدخول بواسطة خدمة طرف ثالث.
- في أعلى صفحة المشروع، ستجد شريطاً يحتوي على تبويبات (Code, Issues, Pull Requests...).
- اضغط على Issues.
- اضغط على الزر الأخضر New Issue لإنشاء موضوع جديد.
ولكن وقبل أن تكتب أي شيء ابحث في الـ Issues الموجودة سابقاً، فلربما قام شخص آخر بالإبلاغ عن نفس المشكلة أو اقترح نفس الفكرة. التكرار يزعج المطور ويشتت جهده.

رابعًا: أنواع الملاحظات وأدبيات كتابتها
سنقسم مشاركتك إلى نوعين رئيسيين، لكل منهما طريقة كتابة مثالية:
النوع الأول: الإبلاغ عن خطأ تقني (Bug Report)
عندما لا يعمل البرنامج كما هو متوقع (توقف مفاجئ، زر لا يستجيب، نتيجة خاطئة). المطور لا يرى شاشتك، لذا عليك أن تكون "عينه" التي يرى بها المشكلة.
محتويات البلاغ المثالي:
1. وصف المشكلة: ماذا حدث بالضبط؟ (مثال: "البرنامج يغلق عند الضغط على زر البحث"). اكتب باللغة الإنجليزية إن استطعت، فكثير من العاملين على المشاريع مفتوحة المصدر لا يفهمون العربية. وإن لم تستطع فاكتب بالعربية الفصحى، فهي أسهل للترجمة الآلية.
2. خطوات إعادة الإنتاج (Reproduction Steps): هذه أهم نقطة. اكتب خطوات مرقمة (1، 2، 3) لو اتبعها المطور سيظهر له الخطأ نفسه:
مثال: 1- فتحت البرنامج. 2- كتبت كلمة "تفسير". 3- ضغطت انتر. 4- توقف البرنامج.
4. بيئة التشغيل: ما هو نظام تشغيلك؟ (ويندوز 10، ماك، أندرويد 13؟). هل جهازك قديم أم حديث؟ اكتب اسم الجهاز والمواصفات لو استطعت، ومتصفح الإنترنت المستخدم لو كان المشروع موقعاً إلكترونياً، اشرح كلّ التفاصيل التقنية التي يمكنك شرحها عن سياق استخدامك للبرنامج.
5. الأدلة:
- لقطة شاشة (Screenshot): صورة واحدة تغني عن ألف كلمة.
- سجل الخطأ (Log): إذا ظهرت رسالة خطأ فيها أكواد أو نصوص إنجليزية، انسخها كما هي وأرفقها.
النوع الثاني: الاقتراحات وطلب الميزات (Feature Requests & Suggestions)
عندما تريد إضافة ميزة جديدة أو تحسين ميزة موجودة. هنا الأمر يختلف، أنت تطلب من المطور وقتاً وجهداً إضافياً، وتذكر أنّ معظم المشاريع مفتوحة المصدر تطوّعية ويخصص المطوّر من وقته وجهده للعمل عليها.
شكل الاقتراح المفيد للمطور والمشروع:
1. اللطف والتقدير: تذكر أن أغلب مشاريع المصادر المفتوحة يقوم عليها متطوعون بدون مقابل مادي. ابدأ بشكرهم على جهودهم الحالية قبل الطلب.
2. شرح السبب: لا تقل "أريد ميزة الوضع الليلي". بل قل: "إضافة الوضع الليلي ستساعد المستخدمين الذين يقرؤون القرآن لفترات طويلة ليلاً من إجهاد العين". اربط طلبك بفائدة حقيقية للمستخدم.
3. احترام خطة عمل المطور: قد يكون لدى المطور خطة عمل (Roadmap) محددة. تقبّل بصدر رحب إذا رد عليك بأن الميزة جيدة لكنها ليست ضمن أولوياتنا حالياً. الرفض لا يعني أن فكرتك سيئة، بل يعني أن الموارد (الوقت والجهد) محدودة ويفضّل المطوّر تخصيصها في سياقات مناسبة لهذه الخارطة.
ملخص سريع (Checklist) قبل نشر Issue جديدة 📋
✔️ هل بحثتُ في المشاكل السابقة وتأكدتُّ أن موضوعي غير مكرر؟
✔️ هل عنوان الـ Issue واضح ومختصر؟ (تجنب عناوين مثل: "مساعدة!" أو "عندي مشكلة" بدون شرح).
✔️ في حال الخطأ التقني: هل أرفقتُ الصور وخطوات التكرار؟
✔️ في حال الاقتراح: هل أسلوبي مهذب ومقدر لجهود المتطوعين؟