Learn to code · تعلم البرمجة
Code · الكود
Write real code and see it run — HTML, CSS, Python, Java, C, SQL, LaTeX, and Linux — with nothing to install. · اكتب كوداً حقيقياً وشاهد كيف يعمل — HTML, CSS, Python, Java, C, SQL, LaTeX, و Linux — بدون الحاجة لتثبيت أي شيء.
17 coursesHTML/CSS · Python · Java · C · SQL · LaTeX · LinuxRuns in your browser · يعمل في متصفحك
Today's work · عمل اليوم
Foundations · أساسيات
Python Basics · أساسيات بايثون
Your very first steps in programming — no experience needed. · خطواتك الأولى جداً في البرمجة — لا حاجة للخبرة.
22 Lessons · دروس
Python Basics · أساسيات بايثون
Your very first steps in programming — no experience needed. · خطواتك الأولى جداً في البرمجة — لا حاجة للخبرة.
Course overview and progress →
00
Run it! · شغله!
Your first program · برنامجك الأول
Variables · المتغيرات
Numbers & operators · الأعداد & العمليات
Getting input · الحصول على إدخال
Working with strings · التعامل مع النصوص
Project: Mad Libs · مشروع: Mad Libs
Making decisions · اتخاذ القرارات
Counting loops · حلقات العد
While loops · حلقات While
Project: Guess the number · مشروع: تخمين الرقم
Lists (1-D arrays) · القوائم (مصفوفات 1-D)
Project: Quiz with a score · مشروع: اختبار مع درجة
Functions · الدوال
Project: Rock, paper, scissors · مشروع: صخرة، ورقة، مقص
Scope & arguments · المجال والحجج
Dictionaries (records) · المخازن (سجلات)
Project: Text adventure · مشروع: مغامرة نصية
Planning & pseudocode · التخطيط والكود الوهمي
Errors & testing · الأخطاء والاختبار
Putting it all together · دمج كل شيء معًا
Project: Hangman · مشروع: شنق
A short history of Python · نبذة قصيرة عن بايثون
What Python is used for · ما يُستخدم بايثون له
Where to learn more · أين تتعلم المزيد
Set up your computer · إعداد حاسوبك
Where to learn more · أين تتعلم المزيد
- freeCodeCamp — Learn Python · freeCodeCamp — تعلم بايثون Free, hands-on Python certification · شهادة بايثون مجانية وعملية
- PyChallenger Learn Python by solving bite-size challenges · تعلم بايثون بحل تحديات صغيرة
- CodeCombat Learn to code by playing a real game · تعلم البرمجة بلعب لعبة حقيقية
- Official Python Tutorial · الدليل الرسمي لبايثون The clear, free, step-by-step intro from python.org · المقدمة الواضحة والمجانية خطوة بخطوة من python.org
- Python for Everybody (free course) · بايثون للجميع (دورة مجانية) A beloved beginner course by Dr. Chuck · دورة محبوبة للمبتدئين من د. تشاك
- Visual Studio Code The free editor for writing Python on your own computer · المحرر المجاني لكتابة بايثون على حاسوبك الخاص
- A-Level Computer Science (this site) · A-Level علوم الحاسب (هذا الموقع) Take Python further, toward the Cambridge exam · استمر في بايثون نحو امتحان كامبريدج
- AP CS Principles (this site) · مبادئ AP CS (هذا الموقع) The big ideas of computing, in Python · الأفكار الكبرى للحوسبة، بلغة Python
JavaScript · جافاسكريبت
The language of the web. Make things happen — runs right in your browser. · لغة الويب. اجعل الأشياء تحدث — تعمل مباشرة في متصفحك.
15 Lessons · دروس
JavaScript · جافاسكريبت
The language of the web. Make things happen — runs right in your browser. · لغة الويب. اجعل الأشياء تحدث — تعمل مباشرة في متصفحك.
Course overview and progress →
A short history of JavaScript · قصة مختصرة لجافاسكريبت
What JavaScript is used for · ما يُستخدم منه جافاسكريبت
Where to learn more · أين تتعلم المزيد
Run JavaScript anywhere · شغّل جافاسكريبت في أي مكان
console.log and comments · console.log والتعليقات
Variables — let and const · المتغيرات — let و const
Numbers and maths · الأرقام والرياضيات
Strings · النصوص
Template literals · السلاسل القالبية
Booleans and comparisons · القيم المنطقية والمقارنات
if / else
for loops · حلقات for
while loops · حلقات while
Functions · الدوال
Arrow functions · الدوال السهمية
Arrays · المصفوفات
Array methods · دوال المصفوفة
Objects · الكائنات
Putting it together · دمج العناصر معًا
Where to learn more · أين تتعلم المزيد
- Web Basics — HTML & CSS (this site) · أساسيات الويب — HTML & CSS (هذا الموقع) Build the page; JavaScript makes it move · ابنِ الصفحة؛ جافاسكريبت يجعلها تتحرك
- MDN — JavaScript · MDN — جافاسكريبت The reference every web developer uses · المصدر المرجعي الذي يستخدمه كل مطور ويب
C Programming · برمجة C
From printf to pointers, memory, and data structures — compile and run in your browser. · من printf إلى المؤشرات والذاكرة وهياكل البيانات — اجمع وشغل في متصفحك.
23 Lessons · دروس
C Programming · برمجة C
From printf to pointers, memory, and data structures — compile and run in your browser. · من printf إلى المؤشرات والذاكرة وهياكل البيانات — اجمع وشغل في متصفحك.
Course overview and progress →
A short history of C · قصة قصيرة عن C
What C is used for · ما يُستخدم منه C
Where to learn more · أين تتعلم المزيد
Set up your computer · إعداد حاسوبك
C basics: main, printf, and functions · أساسيات C: main، printf، والدوال
Variables, types, and arithmetic · المتغيرات، الأنواع، والعمليات الحسابية
Booleans and selection: if, else, switch · المنطقيات والاختيار: if، else، switch
Loops: while, for, and accumulation · الحلقات: while، for، والتراكم
Functions, parameters, and return values · الدوال، المعاملات، وقيم الإرجاع
Nested loops and patterns · الحلقات المتداخلة والأنماط
1-D arrays: store, index, and traverse
Pointers: &, *, and pass-by-pointer · المؤشرات: &، *، والتمرير عبر المؤشر
Strings: char arrays and the null terminator · النصوص: مصفوفات الأحرف والمُ终结 null terminator
Array algorithms: max, count, search, average · خوارزميات المصفوفات: الحد الأقصى، العد، البحث، المتوسط
2-D arrays: working with a grid · 2-Mصفوف: التعامل مع الشبكة
Searching: linear and binary · البحث: الخطي والثنائي
Sorting: bubble, selection, and insertion · الترتيب: فقاعي، اختيار، وإدراج
Recursion: base case and recursive case · التراجع: الحالة الأساسية والحالة المتراجعة
Structs and typedef: . vs -> · الهياكل و typedef: . مقابل ->
Dynamic memory: malloc, free, and realloc · الذاكرة الديناميكية: malloc, free, realloc
Linked lists · القوائم المرتبطة (Linked lists)
Stacks and queues (array-backed) · الكدوس وال queues (مدعومة بالمصفوفات)
Text files: write then read · الملفات النصية: كتابة ثم قراءة
Error handling with return codes · معالجة الأخطاء مع رموز الإرجاع
Bits, binary, and bitwise operators · البتات، الثنائية، ومشغلات البت
Run-length encoding (compression) · ترميز الطول المتتابع (الضغط)
Preprocessor, const, static, and enum · المعالج المسبق، const، static، و enum
Where to learn more · أين تتعلم المزيد
- Learn-C.org Free, hands-on C lessons you run in the browser · دروس C مجانية وتفاعلية تشغلها في المتصفح
- Exercism — C track · Exercism — مسار C Small exercises with friendly mentor feedback · تمارين صغيرة مع تغذية راجعة مرشدة ودودة
- HackerRank — C Practice problems, from easy to hard · مسائل للتدريب، من السهل إلى الصعب
- cppreference — C The careful, free reference for every C function · المرجع الدقيق والمجاني لكل دالة في C
- The C Programming Language (K&R) · لغة برمجة C (K&R) The classic book by the makers of C · الكتاب الكلاسيكي من صُناع C
- Visual Studio Code The free editor for writing C on your own computer · المحرر المجاني لكتابة C على جهازك الخاص
- C practice problems (this site) · مسائل تدريب C (هذا الموقع) Extra C challenges to test yourself · تحديات إضافية لـ C لاختبار نفسك
- AP CS A (this site) · AP CS A (هذا الموقع) Learn Java, another close cousin of C · تعلم Java، قريب آخر قريب لـ C
Web Basics — HTML & CSS · أساسيات الويب — HTML و CSS
Start from zero. Short steps. Build a real web page. · ابدأ من الصفر. خطوات قصيرة. أنشئ صفحة ويب حقيقية.
21 Lessons · دروس
Web Basics — HTML & CSS · أساسيات الويب — HTML و CSS
Start from zero. Short steps. Build a real web page. · ابدأ من الصفر. خطوات قصيرة. أنشئ صفحة ويب حقيقية.
Course overview and progress →
A short history of the web · قصة موجزة عن الويب
What a web page is made of · مما تتكون صفحة الويب
Where to learn more · أين تتعلم المزيد
What you need (almost nothing) · ما تحتاجه (شبه لا شيء)
Your first web page · صفحتك الأولى على الويب
Headings and paragraphs · العناوين والفقرات
Bold, italic and line breaks · الخط العريض، والمائل، وكسور السطر
Lists · القوائم
Links
Images · الصور
Make it a real page · تحويلها لصفحة حقيقية
Comments and neat nesting · التعليقات والترتيب المتداخل النظيف
Tables
Forms · تشكيلات
Boxes and sections
Add some style
Selectors — class and id
Colours and backgrounds · الألوان والخلفيات
Styling text · تنسيق النص
The box model
Spacing — margin and padding
Showing and hiding (display) · إظهار وإخفاء (display)
Width and centering
Rows with Flexbox · صفوف بـ Flexbox
Mini-project: a profile card
Where to learn more · أين تتعلم المزيد
- MDN — Learn web development · MDN — تعلم تطوير الويب The clear, free reference from Mozilla · المصدر المرجعي الواضح والمجاني من موزيلا
- web.dev — Learn HTML · web.dev — تعلم HTML A free, modern HTML course from Google · دورة HTML مجانية وحديثة من جوجل
- web.dev — Learn CSS · web.dev — تعلم CSS A free, modern CSS course from Google · دورة CSS مجانية وحديثة من جوجل
- freeCodeCamp — Responsive Web Design · freeCodeCamp — تصميم الويب المتجاوب Free, hands-on HTML + CSS certification · شهادة مجانية عملية في HTML + CSS
- W3Schools — HTML Tutorial · W3Schools — درس HTML Try-it-yourself examples for every tag · أمثلة جربها بنفسك لكل وسم
- Python Basics (this site) · أساسيات بايثون (هذا الموقع) New to coding? Try Python next · مبتدئ في البرمجة؟ جرب بايثون بعد ذلك
Exam courses · كورسات الامتحانات
Python for IGCSE CS · بايثون لـ IGCSE علوم الحاسوب
Programming, algorithms, databases and logic for Cambridge IGCSE 0478. · البرمجة والخوارزميات وقواعد البيانات والمنطق لاختبار كامبريدج IGCSE 0478.
14 Lessons · دروس
Python for IGCSE CS · بايثون لـ IGCSE علوم الحاسوب
Programming, algorithms, databases and logic for Cambridge IGCSE 0478. · البرمجة والخوارزميات وقواعد البيانات والمنطق لاختبار كامبريدج IGCSE 0478.
Course overview and progress →
Sequence, input & output · التسلسل، الإدخال والإخراج
Variables, constants & data types · المتغيرات، الثوابت وأنواع البيانات
Selection — IF and CASE · الاختيار — IF وCASE
Iteration — loops · التكرار — الحلقات
Totalling & counting · الجمع العددي والعد
Procedures & functions · الإجراءات والدوال
Validation & verification · التحقق والتأكيد
1-D arrays (lists) · مصفوفات 1-D (قوائم)
2-D arrays · مصفوفات 2-D
Searching & max / min · البحث والقيمة القصوى/الصغرى
Bubble sort · ترتيب الفقاعات
Text files · ملفات النص
Databases & SQL · قواعد البيانات و SQL
Boolean logic & truth tables · المنطق البولياني وجداول الحقيقة
Where to learn more · أين تتعلم المزيد
- IGCSE CS handouts (this site) · أوراق عمل علوم الحاسب IGCSE (هذا الموقع) Read the theory behind these topics — exam revision · اقرأ النظرية وراء هذه المواضيع — مراجعة الامتحانات
- IGCSE CS Pseudocode (this site) · الكود الزائف لـ IGCSE CS (هذا الموقع) The 0478 exam writes algorithms in pseudocode — practise it here · يكتب اختبار 0478 الخوارزميات بلغة الوصف الوهمي — تدرب عليها هنا
- Cambridge IGCSE Computer Science 0478 · كامبريدج IGCSE علوم الحاسوب 0478 The official syllabus and past papers · المنهج الرسمي والاختبارات السابقة
IGCSE CS Pseudocode · IGCSE CS كود زائف
Write and run the pseudocode in the Cambridge IGCSE 0478 syllabus for 2026, 2027 and 2028. · اكتب وشغّل الكود الزائف في منهج كامبريدج IGCSE 0478 لعامي 2026، 2027 و 2028.
19 Lessons · دروس
IGCSE CS Pseudocode · IGCSE CS كود زائف
Write and run the pseudocode in the Cambridge IGCSE 0478 syllabus for 2026, 2027 and 2028. · اكتب وشغّل الكود الزائف في منهج كامبريدج IGCSE 0478 لعامي 2026، 2027 و 2028.
Course overview and progress →
OUTPUT and sequence · الإخراج والتسلسل
Variables, DECLARE and CONSTANT · المتغيرات، DECLARE وCONSTANT
INPUT and data types · INPUT وأنواع البيانات
Arithmetic, DIV and MOD · العمليات الحسابية، DIV و MOD
Selection: IF · الاختيار: IF
Selection: CASE · الاختيار: CASE
Iteration: FOR · التكرار: FOR
Iteration: WHILE and REPEAT · التكرار: WHILE و REPEAT
String handling · التعامل مع النصوص
1-D arrays · مصفوفات 1-D
2-D arrays · مصفوفات 2-D
Procedures · الإجراءات
Functions · الدوال
Putting it together · دمج العناصر معًا
Text files · ملفات النص
16
Logic: AND, OR, NOT · المنطق: AND, OR, NOT
17
Nested decisions · قرارات متداخلة
18
ROUND, RANDOM and a trace · ROUND, RANDOM و جدول التتبع
19
Bubble sort · ترتيب الفقاعات
Where to learn more · أين تتعلم المزيد
- Pseudocode handout (this site) · ورقة عمل الوصف الزائف (هذا الموقع) The 0478 appendix for 2026–2028, with every example runnable · ملحق 0478 لعامي 2026–2028، مع كل مثال قابل للتشغيل
- Python for IGCSE CS (this site) · بايثون لـ IGCSE CS (هذا الموقع) The same ideas, written in Python you can run · نفس الأفكار مكتوبة بلغة بايثون يمكنك تشغيلها
- IGCSE CS handouts (this site) · أوراق عمل علوم الحاسب IGCSE (هذا الموقع) Algorithm design and programming theory · تصميم الخوارزميات ونظرية البرمجة
- AS-level CS Pseudocode (this site) · خوارزميات مستوى AS في علوم الحاسوب (هذا الموقع) The 9618 guide, for the AS paper — different rules · دليل 9618، لورقة AS — قواعد مختلفة
Python for A-Level CS · بايثون لمستوى A-Level في علوم الحاسوب
Data structures, algorithms, and OOP for Cambridge 9618. · هياكل البيانات، الخوارزميات، وكائنات البرمجة لكامبريدج 9618.
15 Lessons · دروس
Python for A-Level CS · بايثون لمستوى A-Level في علوم الحاسوب
Data structures, algorithms, and OOP for Cambridge 9618. · هياكل البيانات، الخوارزميات، وكائنات البرمجة لكامبريدج 9618.
Course overview and progress →
Nested loops & 2-D lists
Text files · ملفات النص
Exceptions · الاستثناءات
Stacks · المكدسات (Stacks)
Queues · الطوابير (Queues)
Linked lists · القوائم المرتبطة (Linked lists)
Searching
Sorting · الترتيب
Recursion · العودية
Classes & objects
Inheritance & encapsulation
Programming paradigms · نماذج البرمجة
Hash tables · جداول التجزئة
Binary search trees · أشجار البحث الثنائية
Graphs
Where to learn more · أين تتعلم المزيد
- AS-level CS Pseudocode (this site) · خوارزميات مستوى AS في علوم الحاسوب (هذا الموقع) The 9618 exam writes algorithms in pseudocode — practise it here · امتحان 9618 يكتب الخوارزميات بلغة الوصف الزائف — تدرب هنا
- Pseudocode handout (this site) · ورقة عمل الوصف الزائف (هذا الموقع) Every construct, and where 9618 differs from 0478 · كل بناء، وأين differs 9618 عن 0478
- A-Level CS handouts (this site) · أوراق عمل علوم الحاسوب بمستوى A-Level (هذا الموقع) Read the theory behind these topics — exam revision · اقرأ النظرية وراء هذه المواضيع — مراجعة الامتحانات
AS-level CS Pseudocode · كود زائف لمستوى AS في علوم الحاسوب
Write and run the pseudocode in the Cambridge 9618 guide for exams in 2026, and for 2027, 2028 and 2029. · اكتب ونفّذ الكود الزائف في دليل كامبريدج 9618 لاختبارات 2026، و2027، و2028، و2029.
19 Lessons · دروس
AS-level CS Pseudocode · كود زائف لمستوى AS في علوم الحاسوب
Write and run the pseudocode in the Cambridge 9618 guide for exams in 2026, and for 2027, 2028 and 2029. · اكتب ونفّذ الكود الزائف في دليل كامبريدج 9618 لاختبارات 2026، و2027، و2028، و2029.
Course overview and progress →
OUTPUT and sequence · الإخراج والتسلسل
Variables and DECLARE · المتغيرات والإعلان DECLARE
Types and constants · الأنواع والثوابت
Arithmetic, DIV and MOD · العمليات الحسابية، DIV و MOD
Selection: IF · الاختيار: IF
Selection: CASE · الاختيار: CASE
Iteration: FOR · التكرار: FOR
Iteration: WHILE and REPEAT · التكرار: WHILE و REPEAT
String handling · التعامل مع النصوص
1-D arrays · مصفوفات 1-D
2-D arrays · مصفوفات 2-D
Procedures and BYREF · الإجراءات و BYREF
Functions · الدوال
Records · السجلات Records
Text files · ملفات النص
Putting it together · دمج العناصر معًا
17
Linear search and bubble sort · البحث الخطي وفرز الفقاعات
18
Built-in functions from the insert · دوال مدمجة من الإدراج
19
Logic: AND, OR, NOT · المنطق: AND, OR, NOT
Where to learn more · أين تتعلم المزيد
- Pseudocode handout (this site) · ورقة عمل الوصف الزائف (هذا الموقع) Topic 11 is where the 9618 guide differs from IGCSE 0478 · الموضوع 11 هو حيث يختلف دليل 9618 عن IGCSE 0478
- Python for A-Level CS (this site) · بايثون لمستوى A في علوم الحاسوب (هذا الموقع) The same ideas, written in Python you can run · نفس الأفكار مكتوبة بلغة بايثون يمكنك تشغيلها
- A-Level CS handouts (this site) · أوراق عمل علوم الحاسوب بمستوى A-Level (هذا الموقع) Programming and data structures for 9618 · البرمجة وهياكل البيانات لـ 9618
- IGCSE CS Pseudocode (this site) · الكود الزائف لـ IGCSE CS (هذا الموقع) The 0478 rules for 2026–2028 — they are not the same · قواعد 0478 لـ 2026–2028 — ليست نفسها
Python for AP CS Principles · بايثون لـ AP CS Principles
Big ideas of computing — data, algorithms, the Internet, and impact. · المفاهيم الكبرى للحوسبة — البيانات، الخوارزميات، الإنترنت، والأثر.
15 Lessons · دروس
Python for AP CS Principles · بايثون لـ AP CS Principles
Big ideas of computing — data, algorithms, the Internet, and impact. · المفاهيم الكبرى للحوسبة — البيانات، الخوارزميات، الإنترنت، والأثر.
Course overview and progress →
What computing is · ما هو علم الحاسوب
Bits and binary · الببت ثنائي الأرقام
Data compression · ضغط البيانات
Variables and expressions · المتغيرات والتعبيرات
Lists and data abstraction · القوائم تجريد البيانات
Selection · الاختيار
Iteration · التكرار
Procedures and abstraction · الإجراءات والتجريد
Algorithms: searching · الخوارزميات: البحث
Randomness and simulation · العشوائية والمحاكاة
Algorithmic efficiency
The Internet and how data travels · الإنترنت وكيفية انتقال البيانات
Parallel and distributed computing · الحوسبة المتوازية والموزعة
Impact of computing · تأثير الحوسبة
The Create Performance Task (guided) · إنشاء مهمة الأداء (بإرشادات)
Java for AP CS A · Java لـ AP CS A
Java programming for the AP Computer Science A exam. · برمجة Java لامتحان علوم الحاسوب AP.
19 Lessons · دروس
Java for AP CS A · Java لـ AP CS A
Java programming for the AP Computer Science A exam. · برمجة Java لامتحان علوم الحاسوب AP.
Course overview and progress →
A short history of Java · تاريخ قصير لـ Java
What Java is used for · ما يُستخدم منه Java
Where to learn more · أين تتعلم المزيد
Set up your computer · إعداد حاسوبك
Java basics: classes, main, and output · أساسيات جافا: الفئات، الرئيسية، والإخراج
Using objects: String, Math, and wrappers · استخدام الكائنات: String، Math، والأغطية
Booleans and selection: if/else and logic
Loops: while, for, and accumulation · الحلقات: while، for، والتراكم
Strings and nested loops · السلاسل والحلقات المتداخلة
Writing a class: fields, constructor, methods
Encapsulation: private fields, getters, setters
1-D arrays: store, index, and traverse
Array algorithms: max, count, search, average · خوارزميات المصفوفات: الحد الأقصى، العد، البحث، المتوسط
ArrayList: a list that grows · ArrayList: قائمة تنمو
ArrayList algorithms: filter and the remove bug · خوارزميات ArrayList: التصفية وخطأ الإزالة
2-D arrays: working with a grid · 2-Mصفوف: التعامل مع الشبكة
Searching: linear and binary · البحث: الخطي والثنائي
Sorting: selection and insertion sort · الفرز: الفرز بالاختيار والفرز بالإدراج
Recursion: base case and recursive case · التراجع: الحالة الأساسية والحالة المتراجعة
Text files: write and read with Scanner · ملفات النص: الكتابة والقراءة باستخدام Scanner
Inheritance: extends, super, and overriding · الوراثة: extends، super، والـ overriding
Polymorphism: dynamic dispatch and toString() · تعدد الأشكال: التوزيع الديناميكي وtoString()
FRQ workshop: the 4 question types · ورشة عمل FRQ: أنواع أسئلة 4
Where to learn more · أين تتعلم المزيد
- Exercism — Java track · Exercism — مسار Java Free coding exercises with friendly feedback · تمارين برمجة مجانية مع تغذية راجعة ودودة
- CodinGame Learn Java by solving fun coding games · تعلم Java عن طريق حل ألعاب برمجية ممتعة
- HackerRank — Java Short challenges, from easy to hard · تحديات قصيرة، من السهل إلى الصعب
- dev.java (official) · dev.java (الرسمي) The official Java site, with clear guides for learners · الموقع الرسمي لـ Java، مع أدلة واضحة للمتعلمين
- The Java Tutorials · دروس Java Oracle's step-by-step lessons · دروس Oracle خطوة بخطوة
- Visual Studio Code The free editor for writing Java on your own computer · المحرر المجاني لكتابة Java على حاسوبك الخاص
- Java practice problems (this site) · مسائل ممارسة Java (هذا الموقع) Exam-style questions to test your Java · أسئلة بأسلوب الامتحانات لاختبار Java الخاص بك
- AP CS Principles (this site) · مبادئ AP CS (هذا الموقع) The big ideas of computing, in Python · الأفكار الكبرى للحوسبة، بلغة Python
Topics & tools · المواضيع والأدوات
Databases & SQL · قواعد البيانات و SQL
Query, design, and change relational databases — right in your browser, no setup. · استعلام وتصميم وتغيير قواعد البيانات العلائقية — مباشرة في متصفحك، بدون إعداد.
17 Lessons · دروس
Databases & SQL · قواعد البيانات و SQL
Query, design, and change relational databases — right in your browser, no setup. · استعلام وتصميم وتغيير قواعد البيانات العلائقية — مباشرة في متصفحك، بدون إعداد.
Course overview and progress →
A short history of SQL · تاريخ قصير لـ SQL
What SQL is used for · ما يُستخدم SQL فيه
Where to learn more · أين تتعلم المزيد
Set up your computer · إعداد حاسوبك
Databases and SELECT · قواعد البيانات وSELECT
Choosing columns · اختيار الأعمدة
Filtering with WHERE · التصفية باستخدام WHERE
AND, OR, NOT
Sorting with ORDER BY · الفرز باستخدام ORDER BY
Counting and averaging · العد والمتوسط الحسابي
LIKE, IN and BETWEEN
Grouping with GROUP BY · التجميع باستخدام GROUP BY
Tables, keys and relationships · الجداول والمفاتيح والعلاقات
INNER JOIN
Joins with grouping · الروابط مع التجميع
Creating tables · إنشاء الجداول
Changing the schema · تغيير المخطط
Inserting rows · إدراج الصفوف
Updating rows · تحديث الصفوف
Deleting rows · حذف الصفوف
Normalisation · التعديل
Where to learn more · أين تتعلم المزيد
- SQLBolt Learn SQL step by step with interactive exercises · تعلم SQL خطوة بخطوة مع تمارين تفاعلية
- SQLZoo Practice real queries on real tables in your browser · ت practice استعلامات حقيقية على جداول حقيقية في متصفحك
- Mode SQL Tutorial A friendly, hands-on tutorial from basic to advanced · دليل ودّي وعملي من الأساسي إلى المتقدم
- W3Schools SQL Short, clear pages for every SQL keyword · صفحات قصيرة وواضحة لكل كلمة SQL
- PostgreSQL Tutorial A thorough guide using a popular database · دليل شامل باستخدام قاعدة بيانات شائعة
- SQLite documentation The official docs for the database this course uses · وثائق الرسمية لقاعدة البيانات التي يستخدمها هذا kursus
- A-Level Computer Science (this site) · A-Level علوم الحاسب (هذا الموقع) Includes a unit on databases and SQL · يتضمن وحدة عن قواعد البيانات و SQL
Linux & the command line · لينكس وسطر الأوامر
Drive a computer by typing. Practise real shell commands in a safe in-browser terminal. · تشغيل الحاسوب عن طريق الكتابة. تدرب على أوامر قوقعة حقيقية في طرفية آمنة داخل المتصفح.
14 Lessons · دروس
Linux & the command line · لينكس وسطر الأوامر
Drive a computer by typing. Practise real shell commands in a safe in-browser terminal. · تشغيل الحاسوب عن طريق الكتابة. تدرب على أوامر قوقعة حقيقية في طرفية آمنة داخل المتصفح.
Course overview and progress →
What is Linux? · ما هو لينكس؟
Why learn the command line? · لماذا تتعلم سطر الأوامر؟
Helpful resources · موارد مفيدة
Get a real terminal · الحصول على طرفية حقيقية
01
The shell and the prompt · الصدفة والأمر الرئيسي
02
Moving around · التنقل
03
Reading files · قراءة الملفات
04
Creating and removing · إنشاء وحذف
05
Wildcards · الرموز النمطية
06
Saving output to files · حفظ المخرجات في ملفات
07
Pipes — joining commands · الأنابيب — ربط الأوامر
08
Searching with grep · البحث باستخدام grep
09
Finding files with find · إيجاد الملفات باستخدام find
10
Sorting and columns · الفرز والأعمدة
11
File permissions · صلاحيات الملف
12
Users and sudo · المستخدمون وسودو
13
Programs and processes · البرامج والعمليات
14
Software, settings, next steps · البرمجيات والإعدادات والخطوات التالية
Where to learn more · أين تتعلم المزيد
- explainshell Paste a command, see what every part does · لصق أمر، ورؤية ما تفعله كل جزء
- The man pages · صفحات الدليل (man pages) The official manual for every command · الدليل الرسمي لكل أمر
- tldr pages · صفحات tldr Short, practical examples instead of long manuals · أمثلة قصيرة وعملية بدلاً من الأدلة الطويلة
- OverTheWire: Bandit Learn the shell by playing a hacking game · تعلم الطرفية من خلال اللعب بلعبة اختراق
- Linux Journey A friendly, free Linux course · دورة لينكس ودودة ومجانية
LaTeX
Typeset beautiful documents and maths — write LaTeX, compile on our servers, see the PDF. · تنسيق مستندات ورياضيات جميلة — اكتب LaTeX، قم بالتجميع على خوادمنا، وراقب PDF.
14 Lessons · دروس
LaTeX
Typeset beautiful documents and maths — write LaTeX, compile on our servers, see the PDF. · تنسيق مستندات ورياضيات جميلة — اكتب LaTeX، قم بالتجميع على خوادمنا، وراقب PDF.
Course overview and progress →
What is LaTeX? · ما هو LaTeX؟
Where LaTeX is used · أين يُستخدم LaTeX
Helpful resources · موارد مفيدة
Use LaTeX on your own computer · استخدم LaTeX على جهازك الشخصي
01
Your first document · وثيقتك الأولى
02
Sections and titles · الأقسام والعناوين
03
Bold, italic and emphasis · التغميق، التمييز الخطي والتأكيد
04
Bulleted and numbered lists · القوائم النقطية والمرقمة
05
Maths — your first formula · رياضيات — معادلتك الأولى
06
Fractions, roots and sums · الكسور والجذور والمجموع
07
Aligning equations · محاذاة المعادلات
08
Tables · الجداول
09
Drawing with TikZ · الرسم باستخدام TikZ
10
Labels and cross-references · التسميات والإشارات المتقاطعة
11
Citations and bibliography · المراجع والمراجعية
12
Page layout and margins · تخطيط الصفحة والهوامش
13
Colour and links · الألوان والروابط
14
Capstone: a one-page report · مشروع ختامي: تقرير صفحة واحدة
Where to learn more · أين تتعلم المزيد
- Overleaf Write and compile LaTeX in your browser — no install · اكتب وجمّع LaTeX في متصفحك — بدون تثبيت
- Learn LaTeX in 30 minutes · تعلم LaTeX في 30 دقيقة Overleaf's friendly getting-started guide · دليل البدء الودود لـ Overleaf
- Detexify Draw a symbol, get its LaTeX command · ارسم رمزاً، واحصل على أمر LaTeX الخاص به
- CTAN The archive of LaTeX packages · مستودع حزم LaTeX
Cyber security · الأمن السيبراني
How attacks work and how to stop them — ciphers, hashing, and safe computing, hands-on. · كيف تعمل الهجمات وكيفية إيقافها — الشيفرات، التجزئة، والحوسبة الآمنة، تطبيق عملي.
16 Lessons · دروس
Cyber security · الأمن السيبراني
How attacks work and how to stop them — ciphers, hashing, and safe computing, hands-on. · كيف تعمل الهجمات وكيفية إيقافها — الشيفرات، التجزئة، والحوسبة الآمنة، تطبيق عملي.
Course overview and progress →
What is cyber security? · ما هو الأمن السيبراني؟
Why it matters · لماذا يهم
Helpful resources · موارد مفيدة
Nothing to install · لا حاجة للتثبيت
01
Security, privacy and integrity · الأمان والخصوصية والنزاهة
02
Malware · البرمجيات الخبيثة
03
Attacks and brute force · الهجمات والقوة الغاشمة
04
Social engineering · الهندسة الاجتماعية
05
Defending a system · الدفاع عن النظام
06
Passwords and authentication · كلمات المرور والمصادقة
07
Storing passwords safely · تخزين كلمات المرور بأمان
08
Encoding is not encryption · التشفير ليس تشفيراً
09
Symmetric encryption · التشفير المتماثل
10
Asymmetric encryption · التشفير غير المتماثل
11
Hashing and digital signatures · التجزئة والتواقيع الرقمية
12
HTTPS, SSL/TLS and certificates · HTTPS وSSL/TLS والشهادات
13
Data integrity · سلامة البيانات
14
SQL injection · حقن SQL
15
Access control and least privilege · التحكم في الوصول والأقل امتيازًا
16
Ethics, law and staying safe · الأخلاقيات والقانون والبقاء آمناً
Where to learn more · أين تتعلم المزيد
- A-Level CS security handouts (this site) · أوراق عمل أمن علوم الحاسب A-Level (هذا الموقع) Topics 6 Security, 7 Ethics, 17 Encryption — exam revision · المواضيع 6 الأمن، 7 الأخلاقيات، 17 التشفير — مراجعة الامتحانات
- IGCSE CS handouts (this site) · أوراق عمل علوم الحاسب IGCSE (هذا الموقع) Topics 2.3 Encryption and 5.3 Cyber security · المواضيع 2.3 التشفير و 5.3 الأمن السيبراني
- OWASP Top 10 The most common web security risks, explained · أكثر مخاطر الأمن الشائع على الويب، مشروحة
- picoCTF Learn security by solving fun challenges · تعلم الأمن بحل تحديات ممتعة
- Have I Been Pwned Check if your email appeared in a data breach · تحقق مما إذا كان بريدك الإلكتروني ظهر في تسريب بيانات
Practice · تدريب
Sharpen your skills with challenges from 1★ to 5★. Pick a language. · احذر مهاراتك مع تحديات من 1★ إلى 5★. اختر لغة.
01
Print a word · طباعة كلمة
★☆☆☆☆
02
Print another word · طباعة كلمة أخرى
★☆☆☆☆
03
Print a sentence · طباعة جملة
★☆☆☆☆
04
Print with a ! · طباعة مع علامة تعجب
★☆☆☆☆
05
Print two lines · طباعتين
★☆☆☆☆
06
Print three lines · ثلاثة أسطر
★☆☆☆☆
07
Print a number · طباعة رقم
★☆☆☆☆
08
Print a bigger number · اطبع رقماً أكبر
★☆☆☆☆
09
Add two numbers · جمع رقمين
★☆☆☆☆
10
Add bigger numbers · جمع أرقام أكبر
★☆☆☆☆
11
Subtract · طرح
★☆☆☆☆
12
Multiply · ضرب
★☆☆☆☆
13
Divide · قسمة
★☆☆☆☆
14
Remainder · باقي القسمة
★☆☆☆☆
15
Use a variable · استخدم متغيراً
★☆☆☆☆
16
A number variable · متغير رقم
★☆☆☆☆
17
Change a variable · غيّر متغيراً
★☆☆☆☆
18
Add two variables · جمع متغيرين
★☆☆☆☆
19
Multiply two variables · ضرب متغيرين
★☆☆☆☆
20
Join two words · دمج كلمتين
★☆☆☆☆
21
Greet a name · تحية اسم
★☆☆☆☆
22
Repeat text · تكرار النص
★☆☆☆☆
23
Ask for a name · اطلب اسماً
★☆☆☆☆
24
Echo a number · إعادة رقم
★☆☆☆☆
105
Call a function · استدعاء دالة
★☆☆☆☆
106
Use what it gives back · استخدم ما تُرجعه
★☆☆☆☆
107
Finish the function · أنهِ الدالة
★☆☆☆☆
108
Write one yourself · اكتب واحدة بنفسك
★★☆☆☆
25
Your first function · دالتك الأولى
★☆☆☆☆
26
Is it positive? · هل هو موجب؟
★☆☆☆☆
27
The bigger one · الأكبر
★☆☆☆☆
28
The last item · العنصر الأخير
★☆☆☆☆
29
Is it even? · هل هو زوجي؟
★☆☆☆☆
30
Sum a list · اجمع قائمة
★☆☆☆☆
31
Reverse a string · عكس نصاً
★★☆☆☆
32
Count the vowels · عد الحروف المتحركة
★★☆☆☆
33
FizzBuzz · فيزباز
★★★☆☆
34
Letter frequencies · ترددات الأحرف
★★★☆☆
35
Remove duplicates · إزالة التكرارات
★★★☆☆
36
Second largest · الثاني الأكبر
★★★☆☆
37
Group anagrams · تجميع الأنagrams
★★★★☆
38
Flatten a nested list · تسطيح قائمة متداخلة
★★★★☆
39
RPN calculator · آلة حاسبة RPN
★★★★★
40
Run-length encoding · ترميز المسارات
★★★★★
41
Count to ten · عد إلى عشرة
★★☆☆☆
42
Even numbers · الأعداد الزوجية
★★☆☆☆
43
Liftoff · الإقلاع
★★☆☆☆
44
Star triangle · مثلث النجوم
★★☆☆☆
45
The 3 times table · جدول الضرب لـ 3
★★☆☆☆
46
Running total · المجموع المتسلسل
★★★☆☆
47
Largest without max · الأكبر بدون دالة max
★★★☆☆
48
Smallest without min · الأصغر بدون دالة min
★★★☆☆
49
Count the positives · عد الموجبات
★★☆☆☆
50
Average of a list · متوسط قائمة
★★★☆☆
51
Add up 1 to 100 · اجمع من 1 إلى 100
★★☆☆☆
52
Upside-down triangle · مثلث مقلوب
★★☆☆☆
53
FizzBuzz with 4 and 6 · فيزبز برقمي 4 و 6
★★★☆☆
54
Until you type stop · حتى تكتب إيقاف
★★★☆☆
55
A list of squares · قائمة المربعات
★★☆☆☆
56
Count a value · عد قيمة معينة
★★☆☆☆
57
Keep the evens · احتفظ بالزوجيات
★★☆☆☆
58
Find the position · إيجاد الموقع
★★★☆☆
59
Smallest and largest · الأصغر والأكبر
★★★☆☆
60
Above average · فوق المتوسط
★★★☆☆
61
Binary to denary · ثنائي عشري
★★★★☆
62
Denary to binary · عشري ثنائي
★★★★☆
63
Digital root · الجذر الرقمي
★★★★☆
64
Caesar cipher · تشفير قيصر
★★★★☆
65
Bank account · حساب بنكي
★★★★☆
66
Transpose a grid · نقل مصفوفة
★★★★☆
67
Most common word · أكثر كلمة تكرارًا
★★★★★
68
Sieve of Eratosthenes · منخل إراتوستينيس
★★★★★
69
A row of Pascal's triangle · صف من مثلث باسكال
★★★★★
70
Tic-tac-toe winner · فائز لعبة X O
★★★★★
71
Is it big? · هل هو كبير؟
★☆☆☆☆
72
Pass or fail · نجاح أو رسوب
★☆☆☆☆
73
Positive, negative or zero · موجب، سالب أو صفر
★☆☆☆☆
74
The bigger number · الرقم الأكبر
★☆☆☆☆
75
Even or odd · زوجي أو فردي
★☆☆☆☆
76
Is it in range? · هل هو في النطاق؟
★★☆☆☆
77
Free entry · دخول مجاني
★★☆☆☆
78
Grade letter · حرف الدرجة
★★☆☆☆
79
Divisible by both · قابل للقسمة على كلا العددين
★★☆☆☆
80
Ticket price · سعر التذكرة
★★☆☆☆
81
Finish the countdown · أنهِ العد التنازلي
★☆☆☆☆
82
The loop that never ends · الحلقة التي لا تنتهي
★☆☆☆☆
83
Count up to five · عد إلى خمسة
★☆☆☆☆
84
Add up to five · اجمع إلى خمسة
★☆☆☆☆
85
Double until it passes 100 · ضعف حتى يتجاوز 100
★★☆☆☆
86
Stop at the first over fifty · توقف عند أول عدد يتجاوز الخمسين
★★☆☆☆
87
Count down in twos · عد تنازليًا بخطوتين
★★☆☆☆
88
Until they type stop · حتى يكتبون إيقاف
★★☆☆☆
89
How many halvings? · كم عدد القسومات؟
★★☆☆☆
90
A row of the times table · صف من جدول الضرب
★★☆☆☆
91
The first letter · الحرف الأول
★☆☆☆☆
92
The last letter · الحرف الأخير
★☆☆☆☆
93
The first three letters · أول ثلاثة أحرف
★☆☆☆☆
94
How long is it? · كم طوله؟
★☆☆☆☆
95
Shout it · اكتبه بصوت عالٍ
★☆☆☆☆
96
Initials · الأحرف الأولى
★★☆☆☆
97
Ask for a name · اطلب اسماً
★☆☆☆☆
98
Ask for two things · اطلب شيئين
★☆☆☆☆
99
A number from input · رقم من الإدخال
★☆☆☆☆
100
Add two numbers you were given · اجمع عددين مُعطيين
★★☆☆☆
101
Each letter on its own line · كل حرف على سطر مستقل
★☆☆☆☆
102
Zero to four · من صفر إلى أربعة
★☆☆☆☆
103
Count the letters · عد الأحرف
★☆☆☆☆
104
Add up one to five · اجمع من واحد إلى خمسة
★☆☆☆☆
01
Print a word · طباعة كلمة
★☆☆☆☆
02
Print another word · طباعة كلمة أخرى
★☆☆☆☆
03
Print a sentence · طباعة جملة
★☆☆☆☆
04
Print with a ! · طباعة مع علامة تعجب
★☆☆☆☆
05
Print two lines · طباعتين
★☆☆☆☆
06
Print a number · طباعة رقم
★☆☆☆☆
07
Add two numbers · جمع رقمين
★☆☆☆☆
08
Subtract · طرح
★☆☆☆☆
09
Multiply · ضرب
★☆☆☆☆
10
Divide · قسمة
★☆☆☆☆
11
Remainder · باقي القسمة
★☆☆☆☆
12
A number variable · متغير رقم
★☆☆☆☆
13
A text variable · متغير نصي
★☆☆☆☆
14
Add two variables · جمع متغيرين
★☆☆☆☆
15
Your first method · طريقتك الأولى
★☆☆☆☆
16
Is it positive? · هل هو موجب؟
★☆☆☆☆
17
Cube a number · تكعيب رقم
★☆☆☆☆
18
The smaller one · الأصغر منهما
★☆☆☆☆
19
Square a number · تربيع رقم
★☆☆☆☆
20
Largest of three · الأكبر بين ثلاثة
★☆☆☆☆
21
Count the vowels · عد الحروف المتحركة
★★☆☆☆
22
Reverse the word order · عكس ترتيب الكلمات
★★☆☆☆
23
Palindrome check · فحص التناظر
★★★☆☆
24
Running sum · مجموع تراكمي
★★★☆☆
25
Most frequent character · أكثر حرف تكراراً
★★★☆☆
26
Binary search · البحث الثنائي
★★★☆☆
27
Factorial (mind the size) · المضروب (انتبه للحجم)
★★★★☆
28
Count primes below n · عد الأعداد الأولية أقل من n
★★★★☆
29
Roman numerals · الأرقام الرومانية
★★★★★
30
Longest common prefix · أطول بادئة مشتركة
★★★★★
01
Print a word · طباعة كلمة
★☆☆☆☆
02
Print another word · طباعة كلمة أخرى
★☆☆☆☆
03
Print a sentence · طباعة جملة
★☆☆☆☆
04
Print with a ! · طباعة مع علامة تعجب
★☆☆☆☆
05
Print two lines · طباعتين
★☆☆☆☆
06
Print three lines · ثلاثة أسطر
★☆☆☆☆
07
Print a number · طباعة رقم
★☆☆☆☆
08
Add two numbers · جمع رقمين
★☆☆☆☆
09
Subtract · طرح
★☆☆☆☆
10
Multiply · ضرب
★☆☆☆☆
11
Remainder · باقي القسمة
★☆☆☆☆
12
A number variable · متغير رقم
★☆☆☆☆
13
Add two variables · جمع متغيرين
★☆☆☆☆
14
Multiply two variables · ضرب متغيرين
★☆☆☆☆
15
Your first function · دالتك الأولى
★☆☆☆☆
16
Is it positive? · هل هو موجب؟
★☆☆☆☆
17
Cube a number · تكعيب رقم
★☆☆☆☆
18
The smaller one · الأصغر منهما
★☆☆☆☆
19
Square a number · تربيع رقم
★☆☆☆☆
20
Sign of a number · إشارة رقم
★☆☆☆☆
21
Largest of three · الأكبر بين ثلاثة
★★☆☆☆
22
Factorial · المضروب
★★☆☆☆
23
Greatest common divisor · القاسم المشترك الأكبر
★★☆☆☆
24
Count the 1-bits · عد البتات ذات القيمة 1
★★☆☆☆
25
Sum an array · مجموع مصفوفة
★★★☆☆
26
Swap two values · تبديل قيمتين
★★★☆☆
27
String length · طول سلسلة نصية
★★★☆☆
28
Count a character · عدّ حرفاً
★★★☆☆
29
Reverse in place · العكس في المكان
★★★★☆
30
Palindrome · عكسي
★★★★☆
31
Bubble sort · ترتيب الفقاعات
★★★★☆
32
Points with a struct · نقاط بـ struct
★★★★☆
33
Binary search · البحث الثنائي
★★★★★
34
Parse an integer · تحليل عدد صحيح
★★★★★
All courses, one page each · جميع الكورسات، صفحة لكل منها
- Python Basics · أساسيات بايثون
- Python for IGCSE CS · بايثون لـ IGCSE علوم الحاسوب
- IGCSE CS Pseudocode · IGCSE CS كود زائف
- Python for A-Level CS · بايثون لمستوى A-Level في علوم الحاسوب
- AS-level CS Pseudocode · كود زائف لمستوى AS في علوم الحاسوب
- Databases & SQL · قواعد البيانات و SQL
- Python for AP CS Principles · بايثون لـ AP CS Principles
- Java for AP CS A · Java لـ AP CS A
- C Programming · برمجة C
- Web Basics — HTML & CSS · أساسيات الويب — HTML و CSS
- JavaScript · جافاسكريبت
- LaTeX
- Linux & the command line · لينكس وسطر الأوامر
- Cyber security · الأمن السيبراني
- Python Practice · تدريب بايثون
- Java Practice · تطبيق Java
- C Practice · تدريب C