facebook
favorite button
super instructor icon
Trusted teacher
This teacher has a fast response time and rate, demonstrating a high quality of service to their students.
member since icon
Since April 2021
Instructor since April 2021
Translated by GoogleSee original
Master Algorithms and Data Structures with Python
course price icon
From 38.2 C$ /h
arrow icon
Do you want to understand the essential fundamentals of computer science and improve your problem-solving skills? This course is for you! Together, we will explore algorithms and data structures, which are at the heart of high-performance software development, while putting them into practice with the Python language.

Here's what you'll learn:

Introduction to Algorithms: Understand basic concepts like conditionals, loops, functions, recursion, time and space complexity and much more.
Classic data structures: Arrays, linked lists, stacks, queues, trees, graphs, etc.
Sorting and searching algorithms: Quick sort, insertion sort, binary search, etc.
Hands-on projects: Solve real-world problems to solidify concepts.
Bonus: VSCode Productivity Tools and Tips
Location
location type icon
Online from Morocco
About Me
Osama, graduate of a Bachelor in information systems and software engineering, I am enthusiastic about Javascript technologies.
I really enjoy helping people overcome their computer difficulties.
At first I used to help my colleagues who liked my way of explaining which found it fun and effective, and then I started to give support courses in programming and web development, which m 'helped develop teaching techniques and have the ability to simplify the most complex concepts by giving clear and relevant examples.
Education
Bachelor - Information Systems and Software Engineering - Dhar El Mahraz Faculty of Sciences
BTS - Development of information systems - BTS Settat
BAC - Electrical Sciences and Techniques - Al Khawarizmi Technical High School
Experience / Qualifications
Full-time full stack (React js, Node js, Vue js, Laravel) and python (automation script programming) developer.
Computer teacher.
Age
Children (7-12 years old)
Teenagers (13-17 years old)
Adults (18-64 years old)
Seniors (65+ years old)
Student level
Beginner
Intermediate
Advanced
Duration
60 minutes
The class is taught in
French
English
Arabic
Reviews
Availability of a typical week
(GMT -04:00)
New York
at teacher icon
Online via webcam
Mon
Tue
Wed
Thu
Fri
Sat
Sun
00-04
04-08
08-12
12-16
16-20
20-24
Do you want to become an experienced full stack developer? I have what you need to master the MERN stack which is one of the most requested stacks for job or freelance offers, and above all the most fun to learn!
We will create practical projects together using different frameworks and web technologies:
- Front end: HTML / CSS / Tailwind CSS / Javascript / React js
- Back end: Node js / Express js / Firebase / MongoDB
- Modeling and design: Merise / UML
- Version management tools: Git
- Bonus: Productivity tools and tips on VSCode
Read more
Similar classes
arrow icon previousarrow icon next
verified badge
Farouk
These courses are part of a structured and progressive training in Object-Oriented Programming (OOP) with JavaScript, designed for beginner or intermediate developers who want to understand in depth how the language works, write clearer, more maintainable code and prepare themselves calmly for modern frameworks like React ⚛️.

Object-Oriented Programming is often perceived as complex or abstract.

My goal is simple: to make it logical, concrete, and immediately applicable.

🎯 Training Objectives

Upon completion of this training, you will be able to:

Understanding what Object-Oriented Programming really is (and when to use it)
Create and manipulate objects in JavaScript in a clean and efficient way
Use ES6 classes, constructors, and methods with confidence
Mastering this, the prototype, and the instantiation logic
Apply encapsulation, inheritance, and polymorphism without confusion
Avoiding common mistakes made by OOP beginners
Structure your JavaScript code like a professional developer

📖 Training Plan – Object-Oriented Programming in JavaScript
1. Introduction to Object-Oriented Programming 🧠
Understanding the concept, objectives and benefits of OOP.
2. Procedural Programming vs. OOP
Why unstructured code quickly becomes unmanageable.
3. Objects in JavaScript
Properties, methods and representation of the real world.
4. The keyword this
Understanding the execution context (often poorly understood).
5. Limitations of simple objects
Why duplicating code is a bad idea.
6. Constructive functions
Create multiple objects from the same model.
7. The keyword new
What it's actually doing under the hood.
8. The prototype
Sharing methods and memory optimization.
9. ES6 Classes
Modern syntax and best practices.
10. The builder
Proper initialization of objects.
11. Data Encapsulation
Protect the internal state of objects.
12. Inheritance between classes
Reusing code intelligently.
13. The keyword super
Communication between parent and child in the classroom.
14. Polymorphism
The same behavior, several forms.
15. Composition vs. Inheritance
Choosing the right architecture.
16. Best practices in OOP
Write readable, scalable, and maintainable code.
17. Common mistakes made by beginners
Pitfalls to absolutely avoid.
18. Guided practical exercise
Creation of a concrete class (product, user, etc.).
19. Assessment Quiz (Multiple Choice Questions)
To validate the actual understanding of the concepts.

🛠️ Teaching method: Understand before writing

This training program is based on a progressive and pragmatic approach:
Clear and illustrated explanations
Concrete examples from real projects
Simple but effective exercises
Constant questioning to avoid rote learning
Adaptation to the learner's level and pace
Here, we don't "recite OOP" — we understand it.

🚀 Learner's result

At the end of the training, you will not only know how to write a JavaScript class.
You will know:

1- Why does it exist?
2- When to use it
3- and when not to use it

You will leave with:
a solid understanding of OOP
a cleaner and more professional code
an ideal foundation for learning React, Node.js or any other modern framework
verified badge
Dani
This course provides a comprehensive and professionally structured introduction to computer networking and data communications. It is designed for students who aim to build a strong technical foundation aligned with industry standards such as the Cisco Certified Network Associate (CCNA).

Course Topics Include:

Network architecture and reference models (OSI and TCP/IP)

IPv4 addressing, subnetting, CIDR, and basic IPv6 concepts

Switching fundamentals (MAC address tables, VLANs, trunking)

Routing principles and static routing configuration

TCP and UDP protocols, ports, and socket communication

Core network protocols (ARP, ICMP, DNS, DHCP, HTTP/HTTPS, FTP)

Network infrastructure devices (routers, switches, firewalls, wireless access points)

Introduction to network security fundamentals

Basic network troubleshooting methodologies and CLI analysis

The teaching methodology combines structured theoretical explanation with practical examples to ensure students understand how real-world networks operate in enterprise and campus environments. Packet flow analysis and scenario-based exercises help bridge theory with practical implementation.

Target Audience:

High school and university students in Computer Science, Information Technology, or Engineering

Beginners preparing for CCNA certification

Individuals seeking a strong networking foundation before advancing to cybersecurity, cloud computing, or advanced infrastructure studies

By the end of the course, students will confidently understand how data travels across networks, how routing and switching function, and how modern network infrastructures are designed, implemented, and managed.
message icon
Contact Oussama
repeat students icon
1st lesson is backed
by our
Good-fit Instructor Guarantee
Similar classes
arrow icon previousarrow icon next
verified badge
Farouk
These courses are part of a structured and progressive training in Object-Oriented Programming (OOP) with JavaScript, designed for beginner or intermediate developers who want to understand in depth how the language works, write clearer, more maintainable code and prepare themselves calmly for modern frameworks like React ⚛️.

Object-Oriented Programming is often perceived as complex or abstract.

My goal is simple: to make it logical, concrete, and immediately applicable.

🎯 Training Objectives

Upon completion of this training, you will be able to:

Understanding what Object-Oriented Programming really is (and when to use it)
Create and manipulate objects in JavaScript in a clean and efficient way
Use ES6 classes, constructors, and methods with confidence
Mastering this, the prototype, and the instantiation logic
Apply encapsulation, inheritance, and polymorphism without confusion
Avoiding common mistakes made by OOP beginners
Structure your JavaScript code like a professional developer

📖 Training Plan – Object-Oriented Programming in JavaScript
1. Introduction to Object-Oriented Programming 🧠
Understanding the concept, objectives and benefits of OOP.
2. Procedural Programming vs. OOP
Why unstructured code quickly becomes unmanageable.
3. Objects in JavaScript
Properties, methods and representation of the real world.
4. The keyword this
Understanding the execution context (often poorly understood).
5. Limitations of simple objects
Why duplicating code is a bad idea.
6. Constructive functions
Create multiple objects from the same model.
7. The keyword new
What it's actually doing under the hood.
8. The prototype
Sharing methods and memory optimization.
9. ES6 Classes
Modern syntax and best practices.
10. The builder
Proper initialization of objects.
11. Data Encapsulation
Protect the internal state of objects.
12. Inheritance between classes
Reusing code intelligently.
13. The keyword super
Communication between parent and child in the classroom.
14. Polymorphism
The same behavior, several forms.
15. Composition vs. Inheritance
Choosing the right architecture.
16. Best practices in OOP
Write readable, scalable, and maintainable code.
17. Common mistakes made by beginners
Pitfalls to absolutely avoid.
18. Guided practical exercise
Creation of a concrete class (product, user, etc.).
19. Assessment Quiz (Multiple Choice Questions)
To validate the actual understanding of the concepts.

🛠️ Teaching method: Understand before writing

This training program is based on a progressive and pragmatic approach:
Clear and illustrated explanations
Concrete examples from real projects
Simple but effective exercises
Constant questioning to avoid rote learning
Adaptation to the learner's level and pace
Here, we don't "recite OOP" — we understand it.

🚀 Learner's result

At the end of the training, you will not only know how to write a JavaScript class.
You will know:

1- Why does it exist?
2- When to use it
3- and when not to use it

You will leave with:
a solid understanding of OOP
a cleaner and more professional code
an ideal foundation for learning React, Node.js or any other modern framework
verified badge
Dani
This course provides a comprehensive and professionally structured introduction to computer networking and data communications. It is designed for students who aim to build a strong technical foundation aligned with industry standards such as the Cisco Certified Network Associate (CCNA).

Course Topics Include:

Network architecture and reference models (OSI and TCP/IP)

IPv4 addressing, subnetting, CIDR, and basic IPv6 concepts

Switching fundamentals (MAC address tables, VLANs, trunking)

Routing principles and static routing configuration

TCP and UDP protocols, ports, and socket communication

Core network protocols (ARP, ICMP, DNS, DHCP, HTTP/HTTPS, FTP)

Network infrastructure devices (routers, switches, firewalls, wireless access points)

Introduction to network security fundamentals

Basic network troubleshooting methodologies and CLI analysis

The teaching methodology combines structured theoretical explanation with practical examples to ensure students understand how real-world networks operate in enterprise and campus environments. Packet flow analysis and scenario-based exercises help bridge theory with practical implementation.

Target Audience:

High school and university students in Computer Science, Information Technology, or Engineering

Beginners preparing for CCNA certification

Individuals seeking a strong networking foundation before advancing to cybersecurity, cloud computing, or advanced infrastructure studies

By the end of the course, students will confidently understand how data travels across networks, how routing and switching function, and how modern network infrastructures are designed, implemented, and managed.
Good-fit Instructor Guarantee
favorite button
message icon
Contact Oussama