
دراسة علوم الحاسوب ذاتيا من خلال منهج متكامل
محتويات المقالة :
الان يمكنك دراسة علوم الحاسوب ذاتيا من خلال منهج متكامل ومجاناا
ما هي جامعة مجتمع المصدر المفتوح؟
قد يتساءل الكثيرون: كيف يمكن للطالب أن يجد منهجاً متكاملاً يعادل دراسة البكالوريوس في علوم الحاسوب دون الحاجة إلى الالتحاق بجامعة تقليدية؟ هنا تبرز فكرة جامعة مجتمع المصدر المفتوح (OSS University).
هي مبادرة غير ربحية انطلقت عبر منصة GitHub، حيث اجتمع عدد من المبرمجين والمتخصصين في المجال تحت مظلة “التعلّم المفتوح” ليصمموا منهجاً شاملاً يوازي المناهج الأكاديمية الرسمية. الهدف الرئيسي هو إتاحة فرصة دراسة علوم الحاسوب لأي شخص حول العالم، بشكل مجاني ومرن.
جامعة مجتمع المصدر المفتوح OSS UNIVERSITY
ما تقدمه جامعة مجتمع المصدر المفتوح ليس مجرد مجموعة من الكورسات ولكن هذا المنهج يعادل المحتوى الأساسي لمنهج درجة البكالوريوس في علوم الحاسوب .
التعريف بالفكرة:
هي فكرة بدأت في الموقع الشهير Github منذُ فترة وجيزة٬ حيثُ قام بعض المبرمجين – يطلقون على أنفسهم “جامعة مجتمع المصدر المفتوح OSS” – بتصميم منهج متكامل من مصادر مجانية كلياً لدراسة علوم الحاسوب كأنك تدرس في أحد الجامعات النظامية تماماً.
تم تصميم هذا المنهج بالاعتماد على توصيات شركة جوجل لمن يريدون تعلّم علوم الحاسوب٬ كما ويحتوي المنهج على كل المواضيع الحديثة حالياً٬ ومرّ المشروع بعديد من التغييرات منذ أن بدأ حتى تم الوصول للصورة النهائية المستقرة له التي سنقدمها لكم.
مزايا منهج OSS University
-
شمولية المحتوى: يعادل منهج بكالوريوس كامل في علوم الحاسوب.
-
مجانية ومرونة: جميع المواد متاحة بشكل مجاني 100%، ويمكن للطالب التعلم وفق سرعته الخاصة.
-
اعتماد معايير الشركات الكبرى: صُمم المنهج بناءً على توصيات خبراء في Google وغيرها، مما يضمن مواكبته لاحتياجات السوق.
-
مجتمع نشط: وجود آلاف المتعلمين حول العالم الذين يتبادلون الخبرات والنصائح عبر GitHub ووسائل التواصل.
-
تحديث مستمر: يتم تطوير وتعديل المنهج بشكل دوري ليتماشى مع أحدث التقنيات والاتجاهات في المجال.
التجهيز:
قبل أن تبدأ في دراسة المنهج ربما يفيدك هذا الــ MOOC بعنوان “تعلّم كيف تتعلم” على منصة كورسيرا٬ حيثُ سيعلمك تقنيات التعلّم بكفاءة والتي يستخدمها الخبراء في كل المجالات
https://www.coursera.org/learn/learning-how-to-learn
كيف تقوم بالدراسة:
يفترض أن تسير بطريقة خطية في هذه المقررات٬ فعليك أن تأخذها بالترتيب٬ كمثال تبدأ بمقدمة إلى علوم الحاسوب وتدخل إلي الرابط سوف تجد مجموعة من الكورسات الفرعية تنتهي منها بترتيبها المقرر في الموقع٬ ويجبُ عليكَ أن تنتهي من كل الكورسات الفرعية في كل موضوع رئيسي.
مدة دراسة هذا المنهج سوف تختلفُ من شخص لآخر تبعاً للحافز والتفاني والعوامل الشخصية الأخرى٬ ولكن نصيحتنا أن تركز على جعل دراسة هذا المنهج عادة ولا تفكر في الأهداف حالياً٬ استثمر من وقتك على الأقل ساعتان يومياً.
كُنّ مبدعاً! تستطيع أن ترفع كفاءة تعلمك بعديد من الطرق كمثال قم بكتابة تدوينات تلخص فيها ما تتعلمه بانتظام وقم بنشر أكوادك البرمجية وملفات مشاريعك كي يستفيد منها الآخرين٬ يمكنك حتى أن تكون مجموعة دراسية وتسيرون معاً خلال هذه الرحلة.
بعد نهاية الرحلة قم باستخدام ما تعلمته لحل مشاكل في العالم الواقعي٬ ليس شرطاً أن تعمل علي مشاريع كبيرة٬ ولكن الهدف أن تقوم بالتأكيد على ما تحصلت عليه من علم.
-Curriculum المنهج
A-Introduction to Computer Science
1-Introduction to Computer Science – CS50
https://www.edx.org/course/cs50s-introduction-computer-science-harvardx-cs50x#!
2-Introduction to Computer Science and Programming using Python
https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-11
—————————————————————————————
B-Core Computer Science
1-Core programming:-
1.1-How to Code – Simple Data
https://www.edx.org/course/how-code-simple-data-ubcx-htc1x
1.2-How to Code – Complex Data
https://www.edx.org/course/how-code-complex-data-ubcx-htc2x
1.3-Software Construction – Data Abstraction
https://www.edx.org/course/software-construction-data-abstraction-ubcx-softconst1x
1.4-Software Construction – Object-Oriented Design
https://www.edx.org/course/software-construction-object-oriented-ubcx-softconst2x
1.5-Programming Languages, Part A
https://www.coursera.org/learn/programming-languages
1.6-Programming Languages, Part B
https://www.coursera.org/learn/programming-languages-part-b
1.7-Programming Languages, Part C
https://www.coursera.org/learn/programming-languages-part-c
—————————————————————————————
2-Core math:-
2.1-Essence of Linear Algebra
https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab
2.2-Linear Algebra – Foundations to Frontiers
https://www.edx.org/course/laff-linear-algebra-foundations-to-frontiers#!
2.3-Calculus One
https://www.coursera.org/learn/calculus1
2.4-Calculus Two: Sequences and Series
https://www.coursera.org/learn/advanced-calculus
2.5-Mathematics for Computer Science
—————————————————————————————
3-Core systems:-
3.1-Build a Modern Computer from First Principles: From Nand to Tetris
https://www.coursera.org/learn/build-a-computer
3.2-Build a Modern Computer from First Principles: Nand to Tetris Part II
https://www.coursera.org/learn/nand2tetris2
3.3-Introduction to Computer Networking
https://lagunita.stanford.edu/courses/Engineering/Networking-SP/SelfPaced/about
3.4-ops-class.org – Hack the Kernel
—————————————————————————————
4-Core theory:-
4.1-Algorithms: Design and Analysis, Part I
https://lagunita.stanford.edu/courses/course-v1:Engineering+Algorithms1+SelfPaced/about
4.2-Algorithms: Design and Analysis, Part II
https://lagunita.stanford.edu/courses/course-v1:Engineering+Algorithms2+SelfPaced/about
—————————————————————————————
5-Core applications:-
5.1-Databases
https://lagunita.stanford.edu/courses/DB/2014/SelfPaced/about
5.2-Machine Learning
https://www.coursera.org/learn/machine-learning
5.3-Computer Graphics
https://www.edx.org/course/computer-graphics-uc-san-diegox-cse167x-3
5.4-Cryptography I
https://www.coursera.org/learn/crypto
5.5-Software Engineering: Introduction
https://www.edx.org/course/software-engineering-introduction-ubcx-softeng1x
5.6-Software Development Capstone Project
https://www.edx.org/course/software-development-capstone-project-ubcx-softengprjx
—————————————————————————————
—————————————————————————————
C-Advanced Computer Science
1-Advanced programming:-
1.1-Compilers
https://lagunita.stanford.edu/courses/Engineering/Compilers/Fall2014/about
1.2-Software Debugging
https://eg.udacity.com/course/software-debugging–cs259
1.3-Software Testing
https://eg.udacity.com/course/software-testing–cs258
1.4-LAFF: Programming for Correctness
https://www.edx.org/course/laff-programming-correctness-utaustinx-ut-p4c-14-01x
1.5-Introduction to Parallel Programming
https://eg.udacity.com/courses/all
1.6-Software Architecture & Design
https://eg.udacity.com/course/software-architecture-design–ud821
—————————————————————————————
2-Advanced math:-
2.1-Calculus: Parametric Equations and Polar Coordinates
2.2-Multivariable Calculus
https://ocw.mit.edu/courses/mathematics/18-02sc-multivariable-calculus-fall-2010/index.htm
2.3-Introduction to Probability – The Science of Uncertainty
https://www.edx.org/course/introduction-probability-science-mitx-6-041x-2
—————————————————————————————
3-Advanced systems:-
3.1-Reliable Distributed Systems, Part 1
https://www.edx.org/course/reliable-distributed-algorithms-part-1-kthx-id2203-1x-0
3.2-Reliable Distributed Systems, Part 2
https://www.edx.org/course/reliable-distributed-algorithms-part-2-kthx-id2203-2x
3.3-Electricity and Magnetism, Part 1
https://www.edx.org/course/electricity-magnetism-part-1-ricex-phys102-1x-1
3.4-Electricity and Magnetism, Part 2
https://www.edx.org/course/electricity-magnetism-part-2-ricex-phys102-2x-0
3.5-Computation Structures 1: Digital Circuits
https://www.edx.org/course/computation-structures-part-1-digital-mitx-6-004-1x-0
3.6-Computation Structures 2: Computer Architecture
https://www.edx.org/course/computation-structures-2-computer-mitx-6-004-2x
3.7-Computation Structures 3: Computer Organization
https://www.edx.org/course/computation-structures-3-computer-mitx-6-004-3x-0
—————————————————————————————
4-Advanced theory:-
4.1-Introduction to Logic
https://www.coursera.org/learn/logic-introduction
4.2-Automata Theory
https://lagunita.stanford.edu/courses/course-v1:ComputerScience+Automata+Fall2016/about
4.3-Computational Geometry
https://www.edx.org/course/ji-suan-ji-he-computational-geometry-tsinghuax-70240183x
4.4-Introduction to Formal Concept Analysis
https://www.coursera.org/learn/formal-concept-analysis
4.5-Game Theory
https://www.coursera.org/learn/game-theory-1
—————————————————————————————
5-Advanced applications:-
5.1-Robotics (Specialization)
https://www.coursera.org/specializations/robotics
5.2-Data Mining (Specialization)
https://www.coursera.org/specializations/data-mining
5.3-Big Data (Specialization)
https://www.coursera.org/specializations/big-data
5.4-Internet of Things (Specialization)
https://www.coursera.org/specializations/internet-of-things
5.5-Cloud Computing (Specialization)
https://www.coursera.org/specializations/cloud-computing
5.6-Full Stack Web Development (Specialization)
https://www.coursera.org/specializations/full-stack-mobile-app-development
5.7-Data Science (Specialization)
https://www.coursera.org/specializations/jhu-data-science
5.8-Functional Programming in Scala (Specialization)
https://www.coursera.org/specializations/scala
—————————————————————————————
—————————————————————————————
D-Final project
You can create something entirely new, or you can find an existing project that needs help via websites like
CodeTriage
or
First Timers Only.
https://github.com/shanselman/firsttimersonly
or other
—————————————————————————————
—————————————————————————————
Groub:- (علم يُنتفع به)
https://www.facebook.com/groups/539941523592573/
—————————————————————————–
Source