ossu / computer-science

🎓 Path to a free self-taught education in Computer Science!
MIT License
172.45k stars 21.77k forks source link

Proposal for Adding Arabic Translation to OSSU Computer Science Curriculum #1214

Closed Bassamejlaoui closed 6 months ago

Bassamejlaoui commented 8 months ago

Dear OSSU Curriculum Maintainers,

I hope this message finds you well. I am writing to propose the addition of an Arabic translation to the OSSU Computer Science Curriculum. Currently, the curriculum is available in English, Chinese, and Brazilian Portuguese, and I am eager to contribute by creating an Arabic version.

Issue Title: Adding Arabic Translation to OSSU Computer Science Curriculum

Issue Body:

I am enthusiastic about volunteering to translate the OSSU Computer Science Curriculum into Arabic. With over 400 million Arabic speakers worldwide, this translation has the potential to benefit a significant number of learners who prefer Arabic as their primary learning language.

I am committed to actively participating in the translation process, ensuring that the content is not only accurately translated but also culturally relevant. This initiative aligns with the OSSU's goal of making quality education accessible to a global audience.

Please let me know if there are specific guidelines or requirements for translations, and if there are any existing resources or tools that I should use during the translation process.

I look forward to contributing to this fantastic initiative and helping make the OSSU Computer Science Curriculum available to Arabic-speaking learners.

Thank you for considering my proposal.

Best regards, Bassam Mejlaoui @mejbass

waciumawanjohi commented 8 months ago

Hi Bassam, It is wonderful to hear your enthusiasm! You are absolutely correct, there is a place for an Arabic language curriculum.

One challenge that I will point out to you is that there isn't a Chinese or Portuguese translation so much as there is a Chinese CS curriculum and a Portuguese curriculum. This may already be obvious; these are curricula that bring together resources created in those languages, not translations of the resources from the english OSSU CS curriculum.

In terms of requirements for creating a curriculum, two things are necessary to begin:

  1. A curricular guide. Our computer-science curriculum uses the CS 2013. The Portuguese curriculum balances between [two](Referenciais de Formação para os Cursos de Graduação em Computação 2017 (SBC)) different guidelines.
  2. An explanation of how to contribute. Users should have clarity around how to make suggestions for new or different resources that can meet the requirements of the curricular guide.

Given these two elements, OSSU is happy to create a repository for a new curricula!

Bassamejlaoui commented 8 months ago

Hy @waciumawanjohi

I sincerely appreciate your thoughtful guidance and swift response.

After careful consideration, I'd like to clarify that my goal is to develop a dedicated Arabic OSSU curriculum, aligning it with the CS 2013 framework and incorporating principles from the "Referenciais de Formação para os Cursos de Graduação em Computação 2017 (SBC)." Additionally, I plan to contribute by incorporating relevant Arabic computer science courses, ensuring a comprehensive and culturally relevant learning experience. Your ongoing support is truly invaluable, and I commit to keeping you updated on the progress. Should you have specific areas or considerations you'd like me to focus on during this process, please share your insights.

Thank you once again for your support and guidance.

Best regards.

Bassamejlaoui commented 8 months ago

@waciumawanjohi

I hope this message finds you well. I wanted to confirm whether you received my last response regarding the Creation and development of the Arabic OSSU curriculum. I'm enthusiastic about contributing and providing Arabic computer science courses. If there are any additional insights or guidance you can provide, I would greatly appreciate it.

Thank you for your time and support.

Warm regards

waciumawanjohi commented 8 months ago

Hi @mejbass, The next steps are to write:

  1. a contribution policy for your curriculum.
  2. a clear explanation of your curricular guide.

A stranger who reads these documents should have a clear idea of how to evaluate if a course will fit in the curriculum. They should know if an Arabic language course on Scratch fits, and whether an Arabic language course on Advanced Design of VLSI Circuits and Systems fits. It is generally easier to make such judgements if there is one curricular guide, a reason that the OSSU CS curriculum changed from having two to one a number of years ago.

That stranger should also have a clear idea how to mechanically make an improvement to the curriculum. Should they open a PR, an issue, something else? Are there specific pieces of information which they must include?

Feel free to borrow from the existing OSSU curricula for these.

Once you've shared these two pieces of the curriculum, I'll be happy to make a repository for you and other contributors to collaborate.

Bassamejlaoui commented 8 months ago

Hi @waciumawanjohi

I appreciate your continuous support and guidance throughout this endeavor. Your insights have been instrumental, and I am fully committed to delivering a robust Arabic OSSU Curriculum that aligns seamlessly with the CS 2013 framework and incorporates principles from the "Referenciais de Formação para os Cursos de Graduação em Computação 2017 (SBC)."

1. Contribution Policy

Overview: The contribution policy will be meticulously crafted to serve as a comprehensive guide for contributors, emphasizing clarity, transparency, and adherence to established guidelines.

How to Contribute: I will outline a detailed process for contributors, covering steps such as forking the repository, creating dedicated branches, and submitting pull requests with well-documented changes.

Evaluation Criteria: Contributions will be evaluated based on clear criteria, ensuring alignment with the CS 2013 framework, maintenance of quality, and cultural relevance to Arabic-speaking learners.

Submission Process: A streamlined process for contributors will be established, initiating discussions through opened issues and progressing to the submission of comprehensive pull requests for thorough review.

Review Process: Acknowledging the importance of a rigorous review, I am committed to incorporating constructive feedback from maintainers to enhance the quality of contributions.

Code of Conduct: Adherence to the Code of Conduct (https://github.com/ossu/code-of-conduct) will be highlighted to maintain a respectful and inclusive community.

2. Curricular Guide

Introduction: The overarching goal is to create a coherent and culturally pertinent Arabic OSSU Curriculum, tailored to the unique needs of Arabic-speaking learners globally.

Structure: The curriculum will be meticulously organized into sections, encompassing core concepts, specialization areas, and projects/electives.

Course Inclusion Criteria: Courses will be selected based on language alignment, strict adherence to the CS 2013 framework, and a clear demonstration of cultural relevance to cater to the diverse learning preferences of Arabic-speaking individuals.

Selected Courses (Examples): As a preview of the educational content that will be integrated into the Arabic OSSU Curriculum, here are some examples of courses:

  1. Master Python from Beginner to Advanced in Arabic (https://youtube.com/playlist?list=PLuXY3ddo_8nzrO74UeZQVZOb5-wIS6krJ&si=tj13uP4yH5XG2LaJ):

    • This comprehensive course covers Python programming from the basics to advanced topics, offering learners a thorough understanding of the language.
  2. Concepts of Programming Languages in Arabic (https://youtube.com/playlist?list=PLpz5a69-3Ux70LOuf54ddV5pAOyPao73N&si=oBAwZQrjsXqlmfcv):

    • Exploring fundamental concepts in various programming languages, this course aims to provide a solid foundation in programming language principles.
  3. C programming for Beginners in Arabic (https://youtube.com/playlist?list=PLxbVBWjVdAEieEfGae9hqwT9TQ90yvehy&si=IVw5wHzSQ6RdeAOs):

    • Tailored for beginners, this course introduces the C programming language in Arabic, laying the groundwork for understanding key programming concepts.

These examples showcase the diversity and depth of content that will be included, ensuring a comprehensive and culturally relevant learning experience for Arabic-speaking learners.

Categories and Topics: Each section will provide detailed overviews and objectives, offering learners a comprehensive roadmap for their educational journey.

I am currently in the process of drafting these documents and will provide them promptly for your thorough review.

Best regards

Bassamejlaoui commented 7 months ago

Hi @waciumawanjohi Certainly! Here are the contributions policy and a clear explanation of the curricular guide for the Arabic OSSU Computer Science Curriculum:

Contribution Policy for OSSU Computer Science Curriculum

Introduction

At OSSU (Open Source Society University), we welcome contributions from individuals passionate about advancing computer science education. This policy outlines guidelines and procedures for contributing to our curriculum.

Guidelines for Contribution

  1. Alignment with Objectives: Contributions should align with the objectives and structure of the OSSU Computer Science Curriculum.

  2. Relevance and Quality: Ensure contributions are relevant to computer science education and of high quality.

  3. Openness and Accessibility: Contributions must be openly accessible and available for enrollment by learners.

  4. Adherence to Standards: Contributions should adhere to the curricular standards outlined in the CS 2013: Curriculum Guidelines for Undergraduate Degree Programs in Computer Science.

  5. Review Process: All contributions undergo a review process by the OSSU team to ensure quality and alignment.

  6. Licensing: The project maintainers set the license for all contributions. It is suggested that the project be licensed under the Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0). Adopting this license ensures that the content can be freely shared and adapted, fostering a community-driven and open exchange of knowledge.

  7. Respect for Code of Conduct: Adhere to the OSSU code of conduct and promote a positive learning environment.

Contribution Process

  1. Submission: Submit contributions via GitHub pull requests to the relevant repository in the OSSU organization.

  2. Review: The OSSU team reviews contributions, providing feedback if necessary.

  3. Approval: Approved contributions are merged into the curriculum repository.

  4. Acknowledgment: Contributors are acknowledged for their contributions.

  5. Continuous Improvement: Contributions are subject to ongoing review and improvement.

Conclusion

By adhering to these guidelines, individuals can contribute to enhancing the OSSU Computer Science Curriculum, empowering learners worldwide.

سياسة المساهمة في منهج علم الحاسوب لدى OSSU

المقدمة

في OSSU (Open Source Society University)، نرحب بالمساهمات من الأفراد الذين يشعرون بالحماسة لتقدم التعليم في مجال علوم الحاسوب. توضح هذه السياسة الإرشادات والإجراءات المتبعة للمساهمة في منهجنا.

الإرشادات للمساهمة

  1. موافقة على الأهداف: يجب أن تتماشى المساهمات مع أهداف وهيكل منهج علوم الحاسوب لدى OSSU.

  2. الصلة والجودة: تأكد من أن المساهمات ذات صلة بتعليم علوم الحاسوب وذات جودة عالية.

  3. الشفافية والوصولية: يجب أن تكون المساهمات متاحة بشكل علني ومتاحة للتسجيل لدى المتعلمين.

  4. الالتزام بالمعايير: يجب أن تلتزم المساهمات بالمعايير الفنية المحددة في CS 2013: Curriculum Guidelines for Undergraduate Degree Programs in Computer Science.

  5. عملية المراجعة: تخضع جميع المساهمات لعملية مراجعة من قبل فريق OSSU لضمان الجودة والتوافق.

  6. الترخيص: المسؤولون عن إدارة المشروع يحددون الترخيص لجميع المساهمات. يُقترح ترخيص المشروع بموجب رخصة المشاع الإبداعي التسمية-المشاركة بالمثل 4.0 دولي (CC BY-SA 4.0). اعتماد هذا الترخيص يضمن أن يتمكن المحتوى من الانتشار والتكيف بحرية، مما يعزز التبادل المجتمعي والمفتوح للمعرفة.

  7. احترام قواعد السلوك: يتوقع من المساهمين الالتزام بقواعد السلوك لدى OSSU وتعزيز بيئة تعليمية إيجابية.

عملية المساهمة

  1. التقديم: يمكن للمساهمين تقديم مساهماتهم عبر طلبات السحب في GitHub إلى المستودع المناسب في منظمة OSSU.

  2. المراجعة: يقوم فريق OSSU بمراجعة المساهمات، وتقديم التعليقات إذا لزم الأمر.

  3. الموافقة: بعد الموافقة، تُدمج المساهمات المعتمدة في مستودع المنهج.

  4. الاعتراف: يتم الاعتراف بمساهمات المساهمين .

  5. التحسين المستمر: تخضع المساهمات لمراجعة وتحسين مستمرين.

الخلاصة

من خلال الالتزام بهذه الإرشادات، يمكن للأفراد المساهمة في تحسين منهج علوم الحاسوب لدى OSSU، وتمكين المتعلمين في جميع أنحاء العالم.


Explanation of OSSU Computer Science Curricular Guide

Overview

The OSSU Computer Science Curriculum offers a structured path for comprehensive education in computer science. It mirrors undergraduate degree requirements, excluding general education courses.

Structure

  1. Intro CS: Provides an introduction to computer science for beginners.

  2. Core CS: Covers essential topics such as programming, math, tools, systems, theory, security, applications, and ethics.

  3. Advanced CS: Focuses on specialized topics allowing learners to delve deeper into areas of interest.

  4. Final Project: Enables learners to apply knowledge and skills to solve real-world problems.

Duration and Flexibility

Resources and Support

Recognition and Next Steps

Conclusion

The OSSU Computer Science Curriculum provides a structured and accessible path for individuals to obtain a comprehensive education in computer science. With emphasis on self-directed learning, flexibility, and community support, it empowers learners to pursue educational goals and advance careers in the field.

شرح دليل منهج العلوم الحاسوبية لدى OSSU النظرة العامة يقدم منهج علوم الحاسوب لدى OSSU مسارًا مُنظَّمًا للتعليم الشامل في علوم الحاسوب. يتماشى مع متطلبات الدرجة الجامعية الجامعية، باستثناء المقررات التعليمية العامة.

الهيكل

  1. مقدمة علوم الحاسوب: تقدم مقدمة في علوم الحاسوب للمبتدئين.

2- الأساسيات في علوم الحاسوب: تغطي مواضيع أساسية مثل البرمجة، والرياضيات، والأدوات، والأنظمة، والنظرية، والأمان، والتطبيقات، والأخلاقيات.

3- المستوى المتقدم في علوم الحاسوب: يركز على مواضيع متخصصة تسمح للمتعلمين بالتعمق في المجالات المهتمين بها.

4- المشروع النهائي: يمكن للمتعلمين تطبيق المعرفة والمهارات لحل المشكلات الحقيقية.

المدة والمرونة

الانتهاء منه في حوالي سنتين مع جهود دراسية مستمرة. المرونة تسمح للمتعلمين بالتقدم بمعدلهم الخاص واختيار المقررات الاختيارية بناءً على الاهتمامات.

الموارد والدعم

جميع المواد متاحة عبر الإنترنت، مع العديد من الدورات المجانية. الدعم والإرشاد متاح من خلال مجتمع OSSU.

الخطوات التالية

عند الانتهاء، يكتسب المتعلمون ما يعادل درجة البكالوريوس الكاملة في علوم الحاسوب. يُشجع على عرض الإنجازات، والبحث عن فرص العمل، ومواصلة التعلم، والمساهمة في المجتمع.

الخلاصة

يوفر منهج علوم الحاسوب لدى OSSU مسارًا منظمًا ومتاحًا للأفراد للحصول على تعليم شامل في علوم الحاسوب. بالتركيز على التعلم الذاتي، والمرونة، ودعم المجتمع، يمكنهم متابعة أهدافهم التعليمية وتطوير مساراتهم المهنية في هذا المجال.

waciumawanjohi commented 7 months ago

The contribution guideline looks good. I only have one not about it:

Licensing: Contributors must have necessary rights and specify the appropriate license for contributed content.

Contributor do not set the license of their contribution; the maintainers set a license for the project. I highly recommend the Creative Commons Attribution-ShareAlike 4.0 International License.

waciumawanjohi commented 7 months ago

The curricular guide you have written is a fine introduction (or guide) to the proposed curriculum. I should have used more accurate language earlier; you must determine what will be your curriculum's guideline. As I noted above, the english CS curriculum uses the CS2013. The Data Science curriculum uses this guideline.

In the contribution guide you state that contributions must adhere to the CS2013. That is a perfectly fine decision, you can choose the CS2013 as your guidelines. You just need to clarify if that is the choice you are making.

Bassamejlaoui commented 7 months ago

The contribution guideline looks good. I only have one not about it:

Licensing: Contributors must have necessary rights and specify the appropriate license for contributed content.

Contributor do not set the license of their contribution; the maintainers set a license for the project. I highly recommend the Creative Commons Attribution-ShareAlike 4.0 International License.

Thank you for your feedback! I've made the necessary updates to the contribution guidelines regarding licensing. Contributors do not set the license for their contributions; instead, the project maintainers determine the appropriate license for the project. I suggest adopting the Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0).

Bassamejlaoui commented 7 months ago

The curricular guide you have written is a fine introduction (or guide) to the proposed curriculum. I should have used more accurate language earlier; you must determine what will be your curriculum's guideline. As I noted above, the english CS curriculum uses the CS2013. The Data Science curriculum uses this guideline.

In the contribution guide you state that contributions must adhere to the CS2013. That is a perfectly fine decision, you can choose the CS2013 as your guidelines. You just need to clarify if that is the choice you are making.

Yes, I have chosen the CS2013 Guideline for the Curriculum.

Bassamejlaoui commented 6 months ago

Greetings @waciumawanjohi , I'd like to confirm whether you received my last response or not.

waciumawanjohi commented 6 months ago

I have. Thanks for your patience. I've created a team under OSSU for developing the Arabic CS curriculum. You should have an invitation to the team. I've assigned a repo to that team, which is currently private. The only thing currently in the repo is a license file. You should be able to get started right away with some of the material (contributing guidelines, curricular guide, etc) that you've prepared above.

I've also created a Discord channel for discussion of the curriculum development. I'm happy to make an announcement in Discord inviting users to the channel once you have joined.

Next steps:

Bassamejlaoui commented 6 months ago

what about Hello @waciumawanjohi , thank you for your response and feedback. I've indeed received the invitation to join the team. I'm ready to Start working on the repository today. Also, I'm already a member of the Discord server, with the username "@samej2023."