12 مستودعات
Educational channels covering general programming languages and computer science fundamentals.
Explore 12 awesome GitHub repositories matching part of an awesome list · Programming Foundations. Refine with filters or upvote what's useful.
أتقن البرمجة من خلال إعادة بناء تقنياتك المفضلة من الصفر.
Tutorials for building projects across various technical domains.
هذا المشروع عبارة عن مستودع مركزي مفتوح الوصول يعمل كدليل منظم للتعليم التقني والتطوير المهني. يعمل كقاعدة معرفية يقودها المجتمع، حيث يجمع مواد تعليمية عالية الجودة لدعم الوصول العالمي إلى موارد علوم الحاسوب وهندسة البرمجيات. تتميز المنصة بنموذج حوكمة تعاوني يستخدم سير عمل مراجعاً من قبل الأقران لجميع الإضافات والتعديلات على المحتوى. من خلال الاستفادة من الملفات النصية المهيكلة والتحكم اللامركزي في الإصدار، يحتفظ المستودع بفهرس قابل للبحث ومقروء بشرياً يتم تحديثه وتصنيفه باستمرار من خلال وضع العلامات الوصفية (metadata tagging) التي يقودها المجتمع. تشمل المجموعة مجموعة واسعة من الأصول التعليمية، بما في ذلك الأدبيات التقنية الشاملة، والدورات التدريبية المنظمة عبر الإنترنت، ودروس البرمجة التفاعلية. يمكن للمستخدمين الوصول إلى موارد لاكتساب المهارات، والتحضير للمقابلات، والمراجع السريعة لبناء الجمل البرمجية، مع تنظيم المحتوى حسب لغة البرمجة، والمجال التقني، واللغة البشرية لتسهيل الدراسة الذاتية.
Extensive collection of free programming books and courses.
هذا المشروع عبارة عن خارطة طريق تعليمية شاملة مصممة لتوجيه مهندسي البرمجيات نحو إتقان أساسيات علوم الحاسوب والتحضير للمقابلات التقنية. يوفر مساراً تعليمياً منظماً وواعياً بالتبعية ينظم مفاهيم الحوسبة المعقدة في منهج هرمي، مما يمكن المستخدمين من بناء أساس هندسي مهني من خلال الدراسة التكرارية والتنفيذ العملي. يتميز المنهج بدمج المعرفة النظرية مع التطوير المهني، حيث يقدم فهرساً موحداً للموارد المرجعية المتبادلة بما في ذلك الكتب، والأوراق الأكاديمية، ودروس الفيديو. ويؤكد على توحيد كفاءة الخوارزميات من خلال تحليل التعقيد المقارب (asymptotic complexity analysis) ويوفر تفكيكاً دقيقاً ومعيارياً للمواضيع لتسهيل التعلم المركز والتراكمي عبر مجالات تقنية واسعة. بعيداً عن الخوارزميات وهياكل البيانات الأساسية، يغطي المستودع نطاقاً واسعاً من القدرات بما في ذلك تصميم بنية النظام، والأنظمة الموزعة، وأمن الحاسوب، والنمذجة الرياضية المتقدمة. كما يوفر توجيهاً استراتيجياً لدورة التوظيف بأكملها، بدءاً من تحسين السيرة الذاتية والتحضير للمقابلات السلوكية وصولاً إلى النمو الوظيفي طويل الأمد. يتم الحفاظ على قاعدة المعرفة بأكملها كمستودع خاضع للتحكم في الإصدار ومدعوم بـ markdown، مما يسمح بنهج تعاوني ومستقل عن المنصة للتعليم التقني.
Comprehensive self-study plan for software engineering interviews.
هذا المشروع عبارة عن مورد تعليمي شامل ودليل دراسي يركز على بنية الأنظمة الموزعة وتصميم البنية التحتية للـ backend. يوفر منهجاً منظماً لإتقان مبادئ القابلية للتوسع، والموثوقية، والأداء المطلوبة لتصميم أنظمة برمجية معقدة. يتميز المستودع بتقديم نهج منهجي للتحضير للمقابلات التقنية، حيث يدمج أنماط التصميم، والمقايضات المعمارية، وأدوات التكرار المتباعد لمساعدة المستخدمين على الاحتفاظ بالمفاهيم المعقدة. ويؤكد على التحليل القائم على القيود، حيث يعلم المستخدمين كيفية تقييم المتطلبات المتنافسة مثل زمن الوصول (latency)، والاتساق، والتوافر عند صياغة التصاميم المعمارية. يغطي المحتوى طيفاً واسعاً من قدرات تصميم النظام، بما في ذلك استراتيجيات توسيع قواعد البيانات، وإدارة حركة المرور، وتحسين البنية التحتية. ويفصل تقنيات التوسع الأفقي، والتخزين المؤقت متعدد الطبقات، والتواصل غير المتزامن، واكتشاف الخدمات، مع توفير أطر عمل لإجراء تقديرات الموارد وتخطيط السعة. يتم تنظيم التوثيق كدليل دراسي، مما يوفر مساراً منهجياً عبر أساسيات هندسة الـ backend وتصميم الأنظمة واسعة النطاق.
Guide for learning how to design large-scale systems.
This repository is a comprehensive collection of data structures and algorithms implemented in JavaScript, designed primarily as an educational resource for computer science study and technical interview preparation. It provides modular implementations of fundamental programming concepts, allowing developers to explore algorithmic logic and data organization through self-contained, verifiable code examples. The library distinguishes itself by pairing every implementation with formal Big O notation, providing predictable insights into time and space scaling requirements. Each algorithm is stru
Algorithms and data structures implemented in JavaScript.
This project is a comprehensive educational platform designed to facilitate the mastery of computer science algorithms and data structures. It provides a structured learning curriculum, a library of practice problems, and an integrated toolkit that supports both academic study and competitive programming preparation. By combining theoretical roadmaps with practical implementation exercises, the system enables users to build a deep understanding of core computational concepts. The platform distinguishes itself through its focus on integrated learning and visual clarity. It offers AI-powered gu
LeetCode-based guide for mastering algorithmic techniques.
Algorithm Visualizer is a web-based platform designed to bridge the gap between abstract code and concrete behavior by rendering logical operations into interactive animations. It functions as an educational environment where users can observe the step-by-step execution of computational logic, providing a visual browser for exploring how algorithms process data and change state in real time. The platform distinguishes itself through a custom instruction set that maps algorithmic operations to graphical primitives, ensuring consistent rendering across different programming languages. By utiliz
Interactive tool for visualizing algorithm execution.
This project is a comprehensive technical knowledge base and study guide focused on data structures, algorithms, and computer science fundamentals. It provides a curated collection of tutorials and educational resources designed to support technical growth and academic learning. The repository distinguishes itself through a heavy emphasis on visual learning, utilizing mind maps, diagrams, and illustrated breakdowns to explain complex algorithmic logic. It further supports career readiness by providing a repository of company-specific interview questions and real-world candidate experiences.
Illustrated collection of high-frequency interview algorithm problems.
This project is an educational platform and tutorial series designed to teach the Go programming language through the practice of test-driven development. It provides a structured path for developers to master language fundamentals, concurrency, and standard library usage by building functional applications in small, verifiable increments. The core methodology centers on the test-driven development cycle, where failing tests are written before implementation to define requirements and ensure code correctness. This approach is applied across a wide range of practical scenarios, including the c
Test-driven learning approach for mastering language features and development principles.
This project is an introductory programming course and educational resource designed to teach the basics of the Python language. It serves as a beginner guide to foundational programming concepts and syntax through a structured learning path. The curriculum focuses on Python language learning and scripting basics, enabling learners to build a foundational understanding of how to write and run code. Instructional materials are delivered through an example-driven curriculum that pairs runnable code snippets with hands-on exercises. The content is organized into a modular lesson structure using
Provides a foundation in general programming principles and computer science basics tailored for those new to coding.
A comparison between Go and Javascript
Bridge guide for developers transitioning from JavaScript to Go.
Learning Go Book in mmark
Online resource featuring exercises and answers for beginners.