We may earn an affiliate commission when you visit our partners.
Course image
Mazen Canada

This is the "First" course, there is another course to be added as part 2.

To be the first to be notified, and to receive coupons for this one, and for part 2, make sure to check my social links on my profile here on udemy.

"هذا هو الكورس "الأول"، وهناك كورس آخر سيتم إضافته كجزء 2. لتكون أول من يتم إخباره، وللحصول على كوبونات لهذا الكورس والجزء 2، تأكد من التحقق من روابط وسائل التواصل الاجتماعي الخاصة بي على ملفي الشخصي هنا على Udemy."

What is programming?

Read more

This is the "First" course, there is another course to be added as part 2.

To be the first to be notified, and to receive coupons for this one, and for part 2, make sure to check my social links on my profile here on udemy.

"هذا هو الكورس "الأول"، وهناك كورس آخر سيتم إضافته كجزء 2. لتكون أول من يتم إخباره، وللحصول على كوبونات لهذا الكورس والجزء 2، تأكد من التحقق من روابط وسائل التواصل الاجتماعي الخاصة بي على ملفي الشخصي هنا على Udemy."

What is programming?

  • Explanation of how computers execute instructions

  • The role of programming languages

  • Differences and similarities between Python and JavaScript

  • Why learn both?

ما هي البرمجة؟

  • شرح لكيفية تنفيذ الكمبيوتر للتعليمات

  • دور لغات البرمجة

  • الاختلافات والتشابهات بين بايثون وجافاسكريبت

  • لماذا نتعلم الاثنين؟

Setting Up the Development Environment

  • Introduction to replit

  • Create a new account

إعداد بيئة التطوير

  • مقدمة إلى replit

  • إنشاء حساب جديد

Memory

  • Concept of storing and manipulating data

  • Variables and Data Types

  • Common data types:

    • numbers

    • Strings

    • Booleans

الذاكرة

  • مفهوم تخزين البيانات ومعالجتها

  • المتغيرات وأنواع البيانات

  • أنواع البيانات الشائعة:

  • الأرقام

  • السلاسل النصية

  • البولينيين (Booleans)

Computing

  • Logical Operators

    • And

    • OR

    • NOT

  • Arithmetic operators

    • +

    • -

    • *

    • /

    • %

    • Exponentiation

  • Comparing operators

    • . =

    • >

    • <

    • >=

    • <=

  • Concatenation operators

    • String Concatenation

الحوسبة

  • المشغلين المنطقيين

    • و (AND)

    • أو (OR)

    • ليس (NOT)

  • المشغلين الحسابيين

    • +

    • -

    • *

    • /

    • %

    • الرفع إلى القوة (Exponentiation)

  • المشغلين المقارنين

    • . =

    • >

    • <

    • >=

    • <=

  • مشغلي الدمج

    • دمج النصوص (String Concatenation)

Control Flow

  • Conditional statements (if/else)

    • What are conditionals statements?

    • How to use flow charts?

    • Example:

      • Create a program that will take a value of the current temperature, and determine the weather state today:

        • HOT (temp more than 28)

        • NICE (temp between 15 and 28)

        • CHILLY(temp between 10 and 14)

        • COLD (temp less than 10)

    • Difference between if/else in python and Javascript

  • Loops

    • For loops

      • How to represent them in flow charts?

      • Difference between for loops in JS and python

      • Examples:

        • Create a counter from 1 to 10

        • Create a counter that will sum all numbers from 1 to 10

        • Create a counter that will sum only even numbers from 1 to 10

    • While loops

      • How to present them in flow charts?

      • Difference between while loops in JS and Python

      • Examples:

        • Create a counter from 1 to 10

        • Create a counter that will sum all numbers from 1 to 10

        • Create a counter that will sum only even numbers from 1 to 10

تدفق التحكم

  • الجمل الشرطية (if/else)

    • ما هي الجمل الشرطية؟

    • كيفية استخدام المخططات الانسيابية؟

    • مثال:

      • إنشاء برنامج يأخذ قيمة درجة الحرارة الحالية ويحدد حالة الطقس اليوم:

        • حار (HOT) (درجة الحرارة أكثر من 28)

        • لطيف (NICE) (درجة الحرارة بين 15 و 28)

        • بارد (CHILLY) (درجة الحرارة بين 10 و 14)

        • بارد جداً (COLD) (درجة الحرارة أقل من 10)

    • الفرق بين if/else في بايثون وجافاسكريبت

  • الحلقات

    • حلقات for

      • كيفية تمثيلها في المخططات الانسيابية؟

      • الفرق بين حلقات for في جافاسكريبت وبايثون

      • أمثلة:

        • إنشاء عداد من 1 إلى 10

        • إنشاء عداد يجمع كل الأرقام من 1 إلى 10

        • إنشاء عداد يجمع الأرقام الزوجية فقط من 1 إلى 10

    • حلقات while

      • كيفية تمثيلها في المخططات الانسيابية؟

      • الفرق بين حلقات while في جافاسكريبت وبايثون

      • أمثلة:

        • إنشاء عداد من 1 إلى 10

        • إنشاء عداد يجمع كل الأرقام من 1 إلى 10

        • إنشاء عداد يجمع الأرقام الزوجية فقط من 1 إلى 10

Data Structure

  • Arrays/lists

    • What are arrays or lists (collections)?

    • Indexes vs elements

    • Lists vs arrays (python vs javascript)

  • Objects/dictionaries

بنية البيانات

  • المصفوفات/القوائم

    • ما هي المصفوفات أو القوائم (المجموعات)؟

    • الفهارس مقابل العناصر

    • القوائم مقابل المصفوفات (بايثون مقابل جافاسكريبت)

  • الكائنات/القواميس

Basic problem-solving

  • Linear search

    • What index has the value "8" . elements = [ The table should display the products of all combinations of these numbers.

  • Control flow and operators

    • Find the prime number in this list of numbers:numbers = [ العناصر = [3، 6، 1، 8، 4، 5]

    • إذا لم يتم العثور على القيمة، اطبع "الفهرس المحدد غير موجود"

  • الحلقات المتداخلة

    • إنشاء برنامج ينتج جدول الضرب للأرقام من 1 إلى 10. يجب أن يعرض الجدول حاصل ضرب جميع تركيبات هذه الأرقام.

  • تدفق التحكم والمشغلين

    • إيجاد الأرقام الأولية في هذه القائمة من الأرقام: numbers = [

  • Add task button:

    • Clicking on this button, adds the value in the entry box to the list of tasks, and remove it from the entry box

    • Should show an error if clicked on it, while the entry box is empty

  • Delete task button:

    • Clicking on this button, will remove the selected task from the list of tasks.

    • Should show error if no task is selected, and was clicked

  • Complete task button:

    • Clicking on this button, will complete the task.

    • Should show error if no task is selected, and was clicked.

المشروع النهائي:

  • بناء تطبيق قائمة المهام، مع الحقول التالية في واجهة المستخدم:

    • مربع الإدخال

    • قائمة المهام:

      • إذا تم إكمال مهمة، فستحتوي على علامة تحقق أمامها.

    • زر إضافة مهمة:

      • بالضغط على هذا الزر، يتم إضافة القيمة في مربع الإدخال إلى قائمة المهام، وإزالتها من مربع الإدخال.

      • يجب أن يظهر خطأ إذا تم النقر عليه بينما مربع الإدخال فارغ.

    • زر حذف المهمة:

      • بالضغط على هذا الزر، يتم إزالة المهمة المحددة من قائمة المهام.

      • يجب أن يظهر خطأ إذا لم يتم تحديد أي مهمة وتم النقر.

    • زر إكمال المهمة:

      • بالضغط على هذا الزر، يتم إكمال المهمة.

      • يجب أن يظهر خطأ إذا لم يتم تحديد أي مهمة وتم النقر.

Enroll now

What's inside

Learning objectives

  • فهم أساسيات البرمجة
  • إعداد واستخدام بيئات التطوير
  • إتقان مفاهيم البرمجة الأساسية
  • تطوير مهارات حل المشكلات العملية

Syllabus

Introduction
What is programming?
Setting Up the Development Environment
Memory
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Designed for beginners, this course provides a solid foundation in programming fundamentals
Introduces essential programming concepts and tools, making it accessible to those new to coding
Covers a wide range of topics, from basic syntax to data structures and algorithms
Students will develop problem-solving skills through hands-on exercises and projects
Provides a strong foundation for further exploration in programming languages like Python and JavaScript

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Fundamentals of programming for beginners

According to learners, this course is excellent for beginners and those with zero prior programming experience. It provides a strong foundation in core programming concepts and helps build a solid understanding of programming logic. Students consistently praise the instructor's ability to deliver clear and simplified explanations in a passionate and exceptional manner. The course's unique approach of offering practical examples and comparing concepts across Python and JavaScript is highly valued. While most find the course comprehensive for its level, one reviewer wished for more exercises. Many students eagerly await part two.
Students are excited for the continuation of the course series.
"I am so excited for part two."
"We are waiting for the second part."
"We look forward to the second part."
"Can't wait to continue my learning journey with the next part of this course!"
Effectively covers foundational concepts in both languages.
"The instructor gives examples for the two languages."
"Provides good examples in both languages python and javascript."
"It explains two different languages, Python and JavaScript."
"I will come out with a good understanding of Python and Javascript syntax."
Builds a solid understanding of basic programming principles.
"I completed the whole course within two weeks, and it was so valuable and rich."
"It really helps you to understand the logic of programming from zero..."
"The course is very useful and structured, as it simplifies concepts in an easy way."
"The best course to start with in programming... you will come out of it with a strong foundation."
The instructor simplifies complex ideas with passion and clarity.
"The instructor is very creative and passionate, and the way he delivers the information is very easy and simple."
"The lecturer is very good and tries to simplify the information as much as possible for the student..."
"The instructor's communication skills and method are exceptional and simplified."
"I liked the course so much, and the lecturer explains the information in a simple way."
Perfect for new learners seeking a straightforward introduction.
"This course is for beginners, and for people who have zero experience in programming... If you are a beginner, then this course is a must."
"The course is great for beginners, easy to understand..."
"Amazing course for beginners. Covers all basic programming concepts."
"From the zero point, I came out with a good understanding of programming logic and Python and Javascript syntax."
Some learners desire additional practice opportunities.
"However, I hoped it included more exercises so we can practice more."
"It would be even better with more practical application tasks to solidify understanding."
"I would appreciate more coding challenges to reinforce the concepts taught."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in أساسيات البرمجة بلغة جافا سكريبت و بايثون (1) with these activities:
Review Python and JavaScript fundamentals
Reviewing the basics of Python and JavaScript will help you better understand the concepts covered in this course.
Browse courses on JavaScript Fundamentals
Show steps
  • Read through the course syllabus and identify the key topics that will be covered.
  • Review your notes or textbooks from previous programming courses.
  • Go through online tutorials or resources to refresh your memory on Python and JavaScript syntax and concepts.
Watch video tutorials on specific programming topics
Watching video tutorials can help you learn about new programming topics or reinforce your understanding of existing concepts.
Show steps
  • Identify a programming topic that you want to learn more about.
  • Find a video tutorial that covers the topic in depth.
  • Watch the video tutorial and take notes.
  • Try out the concepts and code examples shown in the tutorial.
Pair up with a peer and tutor each other on a programming topic
Teaching someone else will help you reinforce your understanding of programming concepts and develop your communication skills.
Browse courses on Mentoring
Show steps
  • Find a peer who is interested in learning about the same programming topic.
  • Set up regular study sessions.
  • Take turns teaching each other concepts and working on problems.
  • Provide feedback and support to each other.
Two other activities
Expand to see all activities and additional details
Show all five activities
Solve coding problems on LeetCode or HackerRank
Solving coding problems will help you improve your problem-solving skills and deepen your understanding of programming concepts.
Show steps
  • Choose a problem to solve.
  • Analyze the problem and come up with a solution.
  • Implement the solution in Python or JavaScript.
  • Test your solution and fix any bugs.
Write a blog post or article about a programming topic
Writing about programming will help you solidify your understanding of the concepts and share your knowledge with others.
Browse courses on Blogging
Show steps
  • Choose a topic to write about.
  • Research the topic and gather information.
  • Write the blog post or article.
  • Edit and proofread the content.
  • Publish the blog post or article online.

Career center

Learners who complete أساسيات البرمجة بلغة جافا سكريبت و بايثون (1) will develop knowledge and skills that may be useful to these careers:

Reading list

We've selected 50 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in أساسيات البرمجة بلغة جافا سكريبت و بايثون (1).
A must-read for Java developers, covering best practices for writing object-oriented code.
Gathers hundreds of battle-tested recipes covering network programming, memory management, data structures, and functional decorators for veteran application developers.
Provides a comprehensive overview of data science concepts and techniques, with a focus on business applications.
Delivers the canonical blueprint for numeric analysis from the creator of pandas, thoroughly detailing NumPy structures, data cleaning, and high-speed transformations.
Introduces clean architecture, domain-driven design, and event-driven microservices to Python developers, demonstrating repository patterns and dependency inversion.
Emphasizes writing readable, maintainable, and testable code. Its principles directly apply to structuring control flow for clarity and understandability, reducing complexity and potential errors. It's a widely recommended book for improving code quality.
Developed by ex-McKinsey partners, this book presents a structured, seven-step approach to problem-solving used in top consulting firms. It emphasizes a highly visual, logic-tree method applicable to business and global challenges. is particularly relevant for undergraduate and graduate students interested in consulting or business, as well as working professionals seeking a robust framework for tackling complex issues. It valuable reference tool.
Demystifies programming for practical utility, guiding beginners through real-world automation projects including web scraping, spreadsheet generation, and file audits.
Delves into how top strategy consultants approach and solve complex business problems. It provides a four-step process informed by consulting and cognitive psychology, highlighting how to avoid common biases that lead to poor decisions. This is an excellent resource for graduate students and working professionals, especially those in business, management, or consulting, offering practical insights and techniques used in the industry.
A comprehensive guide to the C++ programming language, including object-oriented concepts.
This Japanese translation of the renowned textbook 'Introduction to Algorithms' provides a comprehensive overview of arrays, including their analysis, implementation, and applications in algorithm design. It is an excellent resource for readers seeking a thorough understanding of the topic.
Focuses on static typing, structural subtyping, and defensive design techniques, demonstrating how modern type annotations prevent regressions in enterprise codebases.
Classic in the JavaScript community, and it is still one of the best books on the language. Crockford leading expert on JavaScript, and his book is full of insights and best practices.
Known as 'CLRS', this comprehensive reference for algorithms. Loops are integral to the implementation and analysis of many algorithms, and this book provides a rigorous treatment of their application in various computational problems. It standard textbook for undergraduate and graduate-level algorithms courses and is an essential reference for anyone looking to deepen their understanding of how loops are used in efficient problem-solving.
A comprehensive reference guide to data science, covering a wide range of topics from data collection to model deployment.
A comprehensive guide to object-oriented analysis and design, covering the Unified Modeling Language (UML).
This foundational book explores the two systems of thought that drive our decisions: the fast, intuitive system and the slower, more deliberate system. Understanding these systems is crucial for recognizing cognitive biases that can impede effective problem-solving. It provides a strong theoretical background for anyone looking to improve their decision-making and analytical skills, making it valuable for undergraduate and graduate students, as well as professionals. While not a how-to guide, it offers deep insights into the human mind's approach to problems.
Unpacks professional testing methodologies using pytest, explaining fixture management, parameterized tests, coverage tracking, and automated CI test execution.
Provides a clear and concise introduction to systems thinking, explaining how to perceive and understand the interconnectedness of elements within a system. This perspective is vital for identifying root causes of problems and developing effective, long-term solutions. It is valuable for advanced undergraduates, graduate students, and professionals across various fields who need to analyze and address complex issues with multiple interacting factors.
Save
Following up on 'Thinking, Fast and Slow,' this book examines the impact of 'noise' – unwanted variability in judgments – on decision-making in various fields. It provides insights into identifying and reducing noise to improve the quality of decisions and problem resolution. This contemporary and relevant book for graduate students and professionals, particularly those involved in complex decision-making processes or system design.
A classic in the field of mathematical problem-solving, Pólya's book outlines a four-step method: understanding the problem, devising a plan, carrying out the plan, and looking back. While focused on mathematics, its principles are widely applicable to problem-solving in any domain. is highly recommended for high school students and undergraduates, particularly those in STEM fields, and provides a solid framework for approaching unfamiliar problems.
Authored by the creators of C, this concise book provides a clear and fundamental explanation of C's control flow structures. It is essential for understanding the basic building blocks of control flow in a widely influential language. classic and a valuable reference for C programmers. It's not a beginner's guide but excellent for those with some programming background.
Explores various programming paradigms and their underlying computational models. It provides a very broad and deep understanding of different approaches to control flow beyond the typical imperative model, including concepts in declarative and concurrent programming.
Known as 'The Book' within the Rust community, this official guide provides a thorough introduction to Rust, including its distinct approach to control flow and emphasis on memory safety without a garbage collector. It's crucial for understanding contemporary control flow paradigms in systems programming. It's a comprehensive guide for learning Rust.
Investigates advanced software craft, detailing packaging distribution, bytecode internals, scaling architectures, and maintainability across large distributed systems.
Bridges volumetric point cloud analysis with Python, teaching LiDAR processing, spatial meshing, and 3D machine vision using modern scientific computing toolchains.
Presents a welcoming, foundational ramp into computational logic and programming, establishing syntax literacy, object modeling, and error handling for total beginners.
This authoritative book on Go covers the language comprehensively, including its approach to control flow and concurrency, a key contemporary topic. It's valuable for understanding control flow in a modern, concurrent language. It serves as both a tutorial and a reference.
Provides a four-step process to overcome common decision-making biases and make better choices. It offers practical strategies and real-world examples to help individuals navigate difficult decisions. This highly applicable book for students and professionals at all levels, providing a clear and actionable framework for improving decision quality in both personal and professional contexts.
Introduces Design Thinking as a human-centered approach to creative problem-solving. It provides a framework and tools for understanding user needs, brainstorming ideas, prototyping, and testing solutions. This is particularly useful for students and professionals in design, business, and innovation fields, offering a practical methodology for tackling ill-defined problems and generating innovative solutions.
Originally written for Japanese schoolchildren, this book offers a simple and accessible introduction to problem-solving frameworks. It emphasizes practical thinking and provides straightforward techniques applicable to various situations through real-life examples. is excellent for high school students and undergraduates seeking a foundational understanding of structured problem-solving approaches. It serves as a great starting point before delving into more complex methodologies.
A practical guide to data science, covering the entire process from data collection to model deployment, with a focus on real-world applications.
A comprehensive textbook focusing on mathematical problem-solving, this book introduces a wide range of strategies and techniques beyond standard algorithms. It encourages creative thinking and perseverance in tackling challenging problems. This is an excellent resource for high school students and undergraduates participating in math competitions or seeking to develop advanced mathematical problem-solving skills.
Explores the use of arrays in modern programming languages and environments, discussing advanced topics such as concurrent programming, memory management, and performance optimization. It is particularly relevant for readers interested in understanding how arrays are used in real-world software systems.
Provides 50 focused exercise routines and guided breakdowns designed to build instinctive muscle memory across collections, functional pipelines, algorithms, and file I/O.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to أساسيات البرمجة بلغة جافا سكريبت و بايثون (1).
Object-Oriented Programming Concepts
Most relevant
Advanced JavaScript 3: Objects, Collections, Functions
Most relevant
JavaScript Fundamentals & The DOM
Most relevant
Computational Thinking with JavaScript 2: Model & Analyse
Most relevant
JavaScript Data Structures & Algorithms + LEETCODE...
Most relevant
JavaScript essentials for Node-RED
Most relevant
The Full Stack
Most relevant
Visualisation of Data Structures & Algorithms in Python
Most relevant
11 Essential Coding Interview Questions + Coding...
Most relevant

Udemy Buyer Protection & Guarantee

Verified partner policies & purchase protections

Global Marketplace Leader
Free Trial & Audit

Free Lecture Previews

Free preview video lectures available for all courses; optional 7-day free trial on Personal Plan subscriptions (cancel before trial ends to avoid conversion).

Return & Refund Policy

30-Day Money-Back Guarantee

30-day money-back guarantee on all eligible individual course purchases (provided course content has not been substantially consumed or downloaded). Subscription fees are non-refundable once billed.

Buyer Protections

Verified Academic & Industry Partner

Lifetime access to purchased individual courses and future updates, verifiable certificate of completion, and direct student Q&A forums.

Key Purchase Protections
30-day 100% money-back guarantee on course purchases
Lifetime access on web, mobile, and offline
Certificate of completion included with purchase
Direct instructor Q&A and active student community
OpenCourser Verified Partner Policy details last reviewed: 2026-10-22
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser