facebook
favorite button
member since icon
Since July 2023
Instructor since July 2023
Become a full iOS App Developer with guided projects
course price icon
From 75 C$ /h
arrow icon
1. iOS App Environment
1.1. Introduction to iOS SDK
1.2. What’s new in iOS 16
1.3. SDK Tools
1.4. What’s new in Xcode 14.
1.5. Using XCode
1.6. Using Interface Builder
1.7. Using iPhone Simulator
2. Swift Fundamentals
3. Swift Language Basics
3.1. Core Data Types
3.2. String Type
3.3. Tuples & Optionals
3.4. Constants & Variables
3.5. Statements & Operators
3.6. Control Flow & Decisions
3.7. Functions
4. Basic Object Oriented Programming using Swift
4.1. Structs
4.2. Types versus instances
4.3. Member and static methods
4.4. Custom initialization & De-initialization
4.5. Classes
4.6. Initialization
4.7. Methods
4.8. Properties
5. Advanced Object Oriented Programming using Swift
5.1. Optionals
5.2. Introducing optionals
5.3. Unwrapping an optional
5.4. Optional binding
5.5. Nested Types
5.6. Generic Types
5.7. Protocol
6. Memory Management
6.1. Reference Counting Basics
6.2. Automatic Reference Count
6.3. Retain Cycles
7. iPhone Application Basics
7.1. Anatomy of an iPhone application
7.2. Application Life cycle and States
8. User Interface Programming – Basics
8.1. UIKit Framework
8.2. XIB and Interface Builder
8.3. Window & View
8.4. Basic User Controls
8.5. Labels, Text Fields, Buttons, Sliders, Picker etc.
8.6. Building application screens
8.7. Alerts and Action Sheets
9. Auto-layout and Constraints
10. View Controllers
10.1. Basics
10.2. Creating View Controllers
10.3. Content vs Container View Controllers
10.4. Orientation Management
11. User Interface – Special Views
11.1. Image View
11.2. Scroll View
11.3. Table Views
11.4. Populating and configuring Table View
11.5. Data Source and Delegate
11.6. Table View Cells
11.7. Custom Cells
11.8. Editing Table View
11.9. Collection View
12. Multiple View Controllers
12.1. Applications with Multiple Views
12.2. Presenting View Controllers
12.3. Animating View Switching
12.4. Tab based applications (Tab Bar Controller)
12.5. Configuring the Tab Bar
12.6. Navigation based applications (Navigation Controller)
12.7. Working with the Navigation Bar
13. Storyboards
13.1. Storyboard File
13.2. View Controller and Scene
13.3. Segue
13.4. Invoking a Segue
13.5. XIB and Storyboards
13.6. Table View Cell Prototype
14. Multi Touch and Gestures API
14.1. Events and Touches
14.2. Gesture Recognition
15. Data Persistence – 1
15.1. File System
15.2. SQLite
16. 16. Data Persistence – 2
16.1. Core Data
16.2. NSUserDefaults
17. Concurrency and Background Execution
17.1. GCD and Closures
17.2. NSOperation and NSOperationQueue
17.3. Background execution
18. Networking, Connectivity etc.
18.1. Making web request
18.2. Restful services
18.3. JSON
18.4. Apple Push Notification Service
19. Multimedia
19.1. Audio and Video
20. iOS App Architectures
21. MVC, MVP & Clean Architectures
22. Reactive Programming
23. Introduction to unit testing & TDD
24. Introduction to Git
25. Best Practices, Profiling and Performance Tuning
Location
location type icon
Online from Lebanon
About Me
I'm Mojtaba, a seasoned software engineer with six years of experience in the industry. As a passionate trainer and tutor, I specialize in teaching newcomers the foundations of programming, as well as essential concepts like algorithms and data structures. Join me on this learning journey and let's unlock your programming potential together!
Education
Lebanese University, Applied Mathematics Department
Sept 2013-June 2017
• Major And Certificate: BS in Computer Science
• Programming Coursework: Algorithms & Data Structures, Operating Systems, Networks,
Computer Programs Vision & Interpretation
• EE Coursework: Embedded Systems, Computer Arch., Circuits, Logic Design, Signal Processing
Experience / Qualifications
TEDMOB S.A.L
Senior iOS Developer & Team Lead Nov 2020 - Present
• Lead the digital transformation of solutions in banking and telecommunication industry, specially focusing on Fintech technology, and VAS solutions.
• Improved app functionalities by reducing the complexity of the operations and tasks being executed.
• Supervising a team of 6 iOS developers; collaborating closely with back-end, front-end, and QA
teams.
• Worked on development team with 5 other team leads including product, development, UX design
team, and project manager. iOS development was managed using an Agile/Scrum methodology.
• Responsible for managing and tracking the stories, tasks, issues, and backlog using JIRA.
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
English
Arabic
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
Similar classes
arrow icon previousarrow icon next
verified badge
Python is one of the best, if not the best, language to start learning programming. It is also one of the most widely used languages today, especially in cutting-edge areas such as machine learning.

This popularity means that Python is constantly evolving. It offers a wide range of tools and libraries, which are free and very varied.

As an aeronautical engineer, I like to share my knowledge and derive satisfaction from it by teaching and motivating others.

I'm used to working with people of different ages. I believe in the importance of segmenting learning, visualizing progress, setting concrete goals and practicing regularly.

Beyond these general principles, there is no magic rule or method. Some approaches work with some students but not with others. Adaptation to individual needs is therefore the main objective of private lessons. So I will do my best to find what motivates and helps my student.
verified badge
As a Franco-Belgian management teacher, I give Excel lessons with passion!
Whether remotely or face-to-face, I offer many examples and exercises to accompany you.
I travel without problem throughout the region of Brussels and its surroundings, for lessons of at least 2 hours. For France, courses are only given remotely.

Here are some key words that will be covered in my classes:
Scenario analysis, Year, Rounding, Today, Bdnb, Bdnbval, Bdsum, Search, Column, Copy/paste in values, Copy/paste with transposition, Consolidation, Date, Datedif, Determat, Dollar, Right, Righterg, Equiv, Esterror, Estna, Frequency, Filter (simple and advanced), Format of cells, Left, Large.Value, Printing of documents, Index, Indirect, Inversemat, Day, Weekday, Line, Matrix, Max, Maxa, Max.Si, Min , Mina, Mina.If, Formatting of cells and ranges, Month, Average, Average.If, Nb, Nb.If, Nbval, Naming of cells and ranges, No, Small.value, Product, Productmat, Protection of cells, Lookup (Lookup), Lookupv (VLookup), Lookuph (HLookup), If (If), If.Not.Disp, If.Conditions, Iferror, Sum, Sumproduct, Sum.If, Sum.If.Set, Substitute , Pivot tables, Sorting, Cell locking

Do not hesitate to contact me to organize your lessons according to your needs and availability. Together, we will develop your Excel skills in an efficient and personalized way.
verified badge
If you’ve ever felt that science and math are difficult, it’s probably because no one showed you how to think like a problem solver.
In my classes, you’ll learn not just formulas or code but how to truly understand concepts, apply them, and build strong logical intuition.

I teach:
• 🔢 Mathematics: From algebra and calculus to applied problem-solving for real-world use.
• 💻 Computer Science: Coding fundamentals (Python, C++), algorithms, and logical thinking for beginners and intermediate learners.
• ⚛️ Physics: Mechanics, thermodynamics, and practical examples that make abstract ideas simple and visual.

As a Software Engineer and Master’s student in Engineering at Nagoya University, I bring both academic knowledge and hands-on experience from real projects. My teaching approach is interactive, visual, and deeply focused on understanding over memorization.

Let’s turn complex problems into clear, step-by-step insights — and make learning something you genuinely enjoy.
verified badge
Python is the most in-demand programming language in the world right now — and one of the easiest to learn with the right guidance.
Whether you've never written a line of code or you're a student who needs to pass a programming course, this is a practical, no-fluff introduction that gets you writing real code from session one.
What we can cover depending on your goals:

Python fundamentals: variables, loops, functions, data structures
- Object-oriented programming (OOP)
- Data manipulation with pandas and NumPy
- Introduction to machine learning with scikit-learn
- Database management with SQL
- C and Java upon request
- MATLAB and R available for engineering/science students

Why learn with me?
I'm not a student teaching on the side — I'm a professional engineer who uses Python daily for data analysis, modeling, and automation. I know exactly which concepts matter in the real world and which ones you can skip for now.
Sessions are 100% personalized: I adapt the pace, the examples, and the exercises to your background and your goal — whether that's passing your university exam, building a project, or landing a job.
verified badge
Don't settle for anything less than excellence.
I am an Aerospace Engineer with a Master's degree in Quantum Physics and have completed Ph.D. work at the University of Cambridge in Computational Physics. Additionally, I have 4 years of experience developing MATLAB and possess deep programming skills in MATLAB/Simulink family, C/C++, Fortran, and Python.

With over 12 years of tutoring experience, I have successfully guided more than 50 students worldwide to achieve distinction in various fields. Consistent results are my priority, and I strive for excellence in all aspects of my teaching.

My lessons are customized to meet each student's unique needs and are designed to be engaging and insightful.

Whether you are at a school level or require advanced or professional-level instruction, I offer support in the following areas:
- Preparation for IB/IA, A-Levels, GCSE, University Entry, or equivalent.
- Experience in preparing students to access world-class schools and universities, including Cambridge University, Oxford, Ivy League and other top institutions in the UK and US.
- University levels (undergraduate and postgraduate).
- High school studies and diploma programs.
- Assistance with specific projects at a professional level, including job interview preparation.
- Extensive experience working with children.

Every lesson is meticulously planned in advance to ensure that it aligns with your goals and targets areas for improvement.
I prioritize a dynamic and interactive learning experience, with one-on-one sessions tailored to your individual requirements. Lessons will be conducted via webcam, enabling you to connect from anywhere.

I have a highly flexible schedule and can adapt to accommodate your needs.
If you have any questions about my teaching method, availability, or pricing, please don't hesitate to reach out. I am here to assist you and provide the support you need.
verified badge
Python is a powerful and versatile programming language with countless possibilities. You can use it for data analysis, image processing, automation, software development, hardware control, and much more.

Do you want to create your own software?
Work with data or images?
Automate repetitive tasks?
Control or manage your own hardware?

Whether you are just starting to learn Python or already have a specific project and need some guidance, I would be happy to help you.

My goal is to explain things clearly, adapt to your level, and help you understand not only how to make something work, but also why it works.

Let's turn your ideas into working Python projects!
verified badge
You will learn Systematic Reasoning & Logical Thinking which is a requirement for entering Computer Science program in many universities.
The book “Delftse Foundations of Computation” especially its second chapter will be the main source of our lesson, but other more in-depth books will be also covered if you want to improve even further on logical thinking.
The topics in our lesson include:
• Propositional Logic: Logical operators; Precedence rules; Logical equivalence; Implications in English; Exclusive or; Universal operators; Classifying propositions
• Boolean Algebra: Substitution laws
• Logic Circuits: Logic gates; Combining gates to create circuits; From circuits to propositions; Disjunctive Normal Form; Binary addition.
• Predicate Logic: Predicates; Quantifiers; Tarski’s world and formal structures;
• Deduction: Valid arguments and proofs; Proofs in predicate logic

If you have any additional questions before starting a class, please feel free to ask me. I am here to assist! :)
verified badge
Master Python with Personalized Courses

Discover the art of programming with Python courses tailor-made to meet your specific needs. Whether you are a beginner, intermediate or professional, my lessons are suitable for all levels.

Why Choose My Courses?

Personalized Teaching Approach: Each course is tailored to your skill level and individual goals.

Practical Experience: Learn by doing with real-world projects that build your understanding and skills.

Ongoing Support: Get unlimited email support for any questions you have between sessions.

As a Python expert, I have a passion for teaching and sharing my knowledge. My goal is to guide you effectively in your learning journey.

Book Your First Lesson:

Start your journey to Python mastery now by booking your first lesson. Whether you aspire to enter the development field or hone your existing skills, these courses are designed for you.
verified badge
With over seven years of experience in teaching Computer Science & Information Technology (ICT), I have developed a strong expertise in delivering high-quality education across multiple internationally recognized curricula, including Cambridge IGCSE, GCSE, A-Levels, O-Levels, and Checkpoint. My passion lies in equipping students with coding, cybersecurity, and digital literacy skills, ensuring they are well-prepared for the evolving demands of the digital world.

Expertise & Teaching Areas:
✅ Programming & Software Development: Python, Java, C++
✅ Cybersecurity: Ethical hacking, data protection, network security
✅ Digital Literacy: ICT applications, online safety, cloud computing
✅ Data Science & AI: Data analysis, machine learning fundamentals
✅ Web Development: HTML, CSS, JavaScript

Curriculum & Pedagogical Experience:
🔹 Cambridge IGCSE & GCSE ICT & Computer Science – Teaching core and extended syllabi, focusing on programming logic, databases, and networking.
🔹 Cambridge A-Levels & O-Levels Computer Science – Preparing students for advanced computing concepts, problem-solving, and algorithm development.
🔹 Cambridge Checkpoint ICT – Building foundational skills in digital technology and computer applications.

Professional Impact:
📌 Mentored students to achieve top grades in Cambridge ICT & Computer Science exams.
📌 Developed interactive lesson plans integrating real-world applications of technology.
📌 Conducted coding boot camps and cybersecurity workshops to enhance practical learning.
📌 Guided students in project-based learning, including app development and website design.

With a strong commitment to student-centered learning and technological innovation, I am dedicated to shaping future tech leaders and empowering learners with skills relevant to careers in technology, data science, and software development.
verified badge
# **Master C/C++: Build the Foundation of Modern Software Development**

Unlock the power of one of the most influential programming languages in computing history! Whether you're an absolute beginner or looking to deepen your expertise, this comprehensive C/C++ course delivers structured learning from fundamentals to advanced concepts that power operating systems, game engines, and high-performance applications.

## **Why Choose This C/C++ Program?**

**Industry-Relevant Curriculum:** Learn expert guidance on the design of effective classes, functions, templates, and inheritance patterns that form the backbone of professional C++ development. Move beyond basic syntax to understand how to write clean, efficient, and maintainable code that stands the test of time.

**Templates & Generic Programming Mastery:** Go beyond introductory material with in-depth coverage of templates—the cornerstone of modern C++—enabling you to create robust, reusable code components that work across multiple data types. Discover how function templates, class templates, and variadic templates work to maximize your coding efficiency.

**Practical, Hands-On Approach:** This isn't just theory! You'll build real-world projects that demonstrate memory management, object-oriented programming, and system-level programming techniques used in today's technology landscape.

## **Your Learning Journey**

Our structured path takes you from writing your first "Hello World" program through advanced template metaprogramming, with special attention to modern C++ standards (up to C++20). You'll gain the confidence to tackle complex programming challenges and understand the "why" behind effective C++ practices—not just the "how."

## **Transform Your Career Today**

C/C++ skills remain in high demand across industries from finance to gaming to IoT. By mastering these foundational languages, you'll develop problem-solving abilities that translate to any programming environment.
verified badge
Objective: To understand AI without fear, to use it to simplify one's life, to know how to identify digital traps, and to use Word, Excel, etc. without difficulty.

1: Demystifying AI (What exactly is it?)
AI is not a movie robot: Difference between fiction and reality.

How it works (simply): The image of the "giant library": AI has read billions of books and uses them to predict the continuation of a sentence or create an image.

Where is it already present? Spell checkers, Netflix/YouTube suggestions, GPS, and voice assistants (Siri/Alexa).

2: Using AI to make life easier
Conversing with AI (ChatGPT, Claude, Gemini):

Ask him to write an administrative email or a complex letter.

Summarize a long newspaper article or document.

Plan a travel itinerary or find recipe ideas with what's left in the fridge.

AI for creativity and memory:

Generate images to illustrate a birthday card (Midjourney, DALL-E).

Using AI to restore or colorize old family photos.

3: Learning to "talk" to AI (The Art of the Prompt)
The context method: Why "Give me a cake recipe" is less effective than "I am allergic to gluten and I am hosting 4 people, give me a simple chocolate cake recipe".

The expert's role: Learning to tell AI "Act like a travel guide" or "Act like an expert gardener".

4: Precautions and Critical Thinking (The Survival Guide)
"Hallucinations": Understand that AI can make false claims with complete certainty (never take medical or legal advice from AI without verification).

Privacy protection:

Never give sensitive data (social security number, passwords, bank details) to an AI.

Knowing that everything we write to the AI is potentially used to train it.

Spotting "Deepfakes":

How to recognize a doctored image or video (details on the hands, strange reflections, slightly metallic voice).

Verify the information: the golden rule of cross-referencing sources.

5: Ethics and Impacts (To go further)
Copyright: Who owns an image created by AI?

The environmental impact: The water and energy consumption of AI servers.

The future: Will AI replace us or assist us?
verified badge
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
I'm a working MEP engineer, currently building Python automation for Revit workflows daily - plan checks, model coordination, and repetitive drafting tasks. I teach other engineers, architects, and BIM professionals how to do the same, using pyRevit and real project workflows, not toy examples.

Topics include:
pyRevit fundamentals and setup
Automating repetitive Revit tasks (model checks, plan generation, data extraction)
Writing custom scripts for your firm's specific workflows
Applying Python automation to real MEP/BIM projects
verified badge
I offer engaging and easy-to-understand online classes in Mathematics, Physics, and Computer Science.
My lessons are designed to make difficult concepts simple through clear explanations and practical examples.
I adapt my teaching style to each student’s level, learning pace, and individual needs.
Whether you need help with school topics, homework, exam preparation, or building strong fundamentals, I’m here to help. My goal is to make learning enjoyable while helping every student improve their confidence and achieve better results.
verified badge
Learn how to build modern websites and mobile applications from scratch and develop the practical skills needed for real-world projects.

In this Frontend & Mobile Development course, I’ll guide you step by step through the technologies and tools commonly used by developers, including HTML, CSS, JavaScript, Angular, Git, GitHub, VS Code, and mobile application development.

You’ll learn how to create responsive and interactive websites, build structured applications with Angular, manage your code using Git and GitHub, and use VS Code efficiently for development. We’ll also explore how frontend technologies can be used to create mobile applications.

The course is suitable for beginners and intermediate learners. Lessons are practical and project-based, so you’ll learn by actually building websites and applications rather than only studying theory.

My goal is to help you understand how and why the code works, improve your problem-solving skills, learn professional development practices, and gain the confidence to create your own projects independently.

Lessons can be adapted to your experience level, learning pace, and personal or career goals.
message icon
Contact Mojtaba
repeat students icon
1st lesson is backed
by our
Good-fit Instructor Guarantee
Similar classes
arrow icon previousarrow icon next
verified badge
Python is one of the best, if not the best, language to start learning programming. It is also one of the most widely used languages today, especially in cutting-edge areas such as machine learning.

This popularity means that Python is constantly evolving. It offers a wide range of tools and libraries, which are free and very varied.

As an aeronautical engineer, I like to share my knowledge and derive satisfaction from it by teaching and motivating others.

I'm used to working with people of different ages. I believe in the importance of segmenting learning, visualizing progress, setting concrete goals and practicing regularly.

Beyond these general principles, there is no magic rule or method. Some approaches work with some students but not with others. Adaptation to individual needs is therefore the main objective of private lessons. So I will do my best to find what motivates and helps my student.
verified badge
As a Franco-Belgian management teacher, I give Excel lessons with passion!
Whether remotely or face-to-face, I offer many examples and exercises to accompany you.
I travel without problem throughout the region of Brussels and its surroundings, for lessons of at least 2 hours. For France, courses are only given remotely.

Here are some key words that will be covered in my classes:
Scenario analysis, Year, Rounding, Today, Bdnb, Bdnbval, Bdsum, Search, Column, Copy/paste in values, Copy/paste with transposition, Consolidation, Date, Datedif, Determat, Dollar, Right, Righterg, Equiv, Esterror, Estna, Frequency, Filter (simple and advanced), Format of cells, Left, Large.Value, Printing of documents, Index, Indirect, Inversemat, Day, Weekday, Line, Matrix, Max, Maxa, Max.Si, Min , Mina, Mina.If, Formatting of cells and ranges, Month, Average, Average.If, Nb, Nb.If, Nbval, Naming of cells and ranges, No, Small.value, Product, Productmat, Protection of cells, Lookup (Lookup), Lookupv (VLookup), Lookuph (HLookup), If (If), If.Not.Disp, If.Conditions, Iferror, Sum, Sumproduct, Sum.If, Sum.If.Set, Substitute , Pivot tables, Sorting, Cell locking

Do not hesitate to contact me to organize your lessons according to your needs and availability. Together, we will develop your Excel skills in an efficient and personalized way.
verified badge
If you’ve ever felt that science and math are difficult, it’s probably because no one showed you how to think like a problem solver.
In my classes, you’ll learn not just formulas or code but how to truly understand concepts, apply them, and build strong logical intuition.

I teach:
• 🔢 Mathematics: From algebra and calculus to applied problem-solving for real-world use.
• 💻 Computer Science: Coding fundamentals (Python, C++), algorithms, and logical thinking for beginners and intermediate learners.
• ⚛️ Physics: Mechanics, thermodynamics, and practical examples that make abstract ideas simple and visual.

As a Software Engineer and Master’s student in Engineering at Nagoya University, I bring both academic knowledge and hands-on experience from real projects. My teaching approach is interactive, visual, and deeply focused on understanding over memorization.

Let’s turn complex problems into clear, step-by-step insights — and make learning something you genuinely enjoy.
verified badge
Python is the most in-demand programming language in the world right now — and one of the easiest to learn with the right guidance.
Whether you've never written a line of code or you're a student who needs to pass a programming course, this is a practical, no-fluff introduction that gets you writing real code from session one.
What we can cover depending on your goals:

Python fundamentals: variables, loops, functions, data structures
- Object-oriented programming (OOP)
- Data manipulation with pandas and NumPy
- Introduction to machine learning with scikit-learn
- Database management with SQL
- C and Java upon request
- MATLAB and R available for engineering/science students

Why learn with me?
I'm not a student teaching on the side — I'm a professional engineer who uses Python daily for data analysis, modeling, and automation. I know exactly which concepts matter in the real world and which ones you can skip for now.
Sessions are 100% personalized: I adapt the pace, the examples, and the exercises to your background and your goal — whether that's passing your university exam, building a project, or landing a job.
verified badge
Don't settle for anything less than excellence.
I am an Aerospace Engineer with a Master's degree in Quantum Physics and have completed Ph.D. work at the University of Cambridge in Computational Physics. Additionally, I have 4 years of experience developing MATLAB and possess deep programming skills in MATLAB/Simulink family, C/C++, Fortran, and Python.

With over 12 years of tutoring experience, I have successfully guided more than 50 students worldwide to achieve distinction in various fields. Consistent results are my priority, and I strive for excellence in all aspects of my teaching.

My lessons are customized to meet each student's unique needs and are designed to be engaging and insightful.

Whether you are at a school level or require advanced or professional-level instruction, I offer support in the following areas:
- Preparation for IB/IA, A-Levels, GCSE, University Entry, or equivalent.
- Experience in preparing students to access world-class schools and universities, including Cambridge University, Oxford, Ivy League and other top institutions in the UK and US.
- University levels (undergraduate and postgraduate).
- High school studies and diploma programs.
- Assistance with specific projects at a professional level, including job interview preparation.
- Extensive experience working with children.

Every lesson is meticulously planned in advance to ensure that it aligns with your goals and targets areas for improvement.
I prioritize a dynamic and interactive learning experience, with one-on-one sessions tailored to your individual requirements. Lessons will be conducted via webcam, enabling you to connect from anywhere.

I have a highly flexible schedule and can adapt to accommodate your needs.
If you have any questions about my teaching method, availability, or pricing, please don't hesitate to reach out. I am here to assist you and provide the support you need.
verified badge
Python is a powerful and versatile programming language with countless possibilities. You can use it for data analysis, image processing, automation, software development, hardware control, and much more.

Do you want to create your own software?
Work with data or images?
Automate repetitive tasks?
Control or manage your own hardware?

Whether you are just starting to learn Python or already have a specific project and need some guidance, I would be happy to help you.

My goal is to explain things clearly, adapt to your level, and help you understand not only how to make something work, but also why it works.

Let's turn your ideas into working Python projects!
verified badge
You will learn Systematic Reasoning & Logical Thinking which is a requirement for entering Computer Science program in many universities.
The book “Delftse Foundations of Computation” especially its second chapter will be the main source of our lesson, but other more in-depth books will be also covered if you want to improve even further on logical thinking.
The topics in our lesson include:
• Propositional Logic: Logical operators; Precedence rules; Logical equivalence; Implications in English; Exclusive or; Universal operators; Classifying propositions
• Boolean Algebra: Substitution laws
• Logic Circuits: Logic gates; Combining gates to create circuits; From circuits to propositions; Disjunctive Normal Form; Binary addition.
• Predicate Logic: Predicates; Quantifiers; Tarski’s world and formal structures;
• Deduction: Valid arguments and proofs; Proofs in predicate logic

If you have any additional questions before starting a class, please feel free to ask me. I am here to assist! :)
verified badge
Master Python with Personalized Courses

Discover the art of programming with Python courses tailor-made to meet your specific needs. Whether you are a beginner, intermediate or professional, my lessons are suitable for all levels.

Why Choose My Courses?

Personalized Teaching Approach: Each course is tailored to your skill level and individual goals.

Practical Experience: Learn by doing with real-world projects that build your understanding and skills.

Ongoing Support: Get unlimited email support for any questions you have between sessions.

As a Python expert, I have a passion for teaching and sharing my knowledge. My goal is to guide you effectively in your learning journey.

Book Your First Lesson:

Start your journey to Python mastery now by booking your first lesson. Whether you aspire to enter the development field or hone your existing skills, these courses are designed for you.
verified badge
With over seven years of experience in teaching Computer Science & Information Technology (ICT), I have developed a strong expertise in delivering high-quality education across multiple internationally recognized curricula, including Cambridge IGCSE, GCSE, A-Levels, O-Levels, and Checkpoint. My passion lies in equipping students with coding, cybersecurity, and digital literacy skills, ensuring they are well-prepared for the evolving demands of the digital world.

Expertise & Teaching Areas:
✅ Programming & Software Development: Python, Java, C++
✅ Cybersecurity: Ethical hacking, data protection, network security
✅ Digital Literacy: ICT applications, online safety, cloud computing
✅ Data Science & AI: Data analysis, machine learning fundamentals
✅ Web Development: HTML, CSS, JavaScript

Curriculum & Pedagogical Experience:
🔹 Cambridge IGCSE & GCSE ICT & Computer Science – Teaching core and extended syllabi, focusing on programming logic, databases, and networking.
🔹 Cambridge A-Levels & O-Levels Computer Science – Preparing students for advanced computing concepts, problem-solving, and algorithm development.
🔹 Cambridge Checkpoint ICT – Building foundational skills in digital technology and computer applications.

Professional Impact:
📌 Mentored students to achieve top grades in Cambridge ICT & Computer Science exams.
📌 Developed interactive lesson plans integrating real-world applications of technology.
📌 Conducted coding boot camps and cybersecurity workshops to enhance practical learning.
📌 Guided students in project-based learning, including app development and website design.

With a strong commitment to student-centered learning and technological innovation, I am dedicated to shaping future tech leaders and empowering learners with skills relevant to careers in technology, data science, and software development.
verified badge
# **Master C/C++: Build the Foundation of Modern Software Development**

Unlock the power of one of the most influential programming languages in computing history! Whether you're an absolute beginner or looking to deepen your expertise, this comprehensive C/C++ course delivers structured learning from fundamentals to advanced concepts that power operating systems, game engines, and high-performance applications.

## **Why Choose This C/C++ Program?**

**Industry-Relevant Curriculum:** Learn expert guidance on the design of effective classes, functions, templates, and inheritance patterns that form the backbone of professional C++ development. Move beyond basic syntax to understand how to write clean, efficient, and maintainable code that stands the test of time.

**Templates & Generic Programming Mastery:** Go beyond introductory material with in-depth coverage of templates—the cornerstone of modern C++—enabling you to create robust, reusable code components that work across multiple data types. Discover how function templates, class templates, and variadic templates work to maximize your coding efficiency.

**Practical, Hands-On Approach:** This isn't just theory! You'll build real-world projects that demonstrate memory management, object-oriented programming, and system-level programming techniques used in today's technology landscape.

## **Your Learning Journey**

Our structured path takes you from writing your first "Hello World" program through advanced template metaprogramming, with special attention to modern C++ standards (up to C++20). You'll gain the confidence to tackle complex programming challenges and understand the "why" behind effective C++ practices—not just the "how."

## **Transform Your Career Today**

C/C++ skills remain in high demand across industries from finance to gaming to IoT. By mastering these foundational languages, you'll develop problem-solving abilities that translate to any programming environment.
verified badge
Objective: To understand AI without fear, to use it to simplify one's life, to know how to identify digital traps, and to use Word, Excel, etc. without difficulty.

1: Demystifying AI (What exactly is it?)
AI is not a movie robot: Difference between fiction and reality.

How it works (simply): The image of the "giant library": AI has read billions of books and uses them to predict the continuation of a sentence or create an image.

Where is it already present? Spell checkers, Netflix/YouTube suggestions, GPS, and voice assistants (Siri/Alexa).

2: Using AI to make life easier
Conversing with AI (ChatGPT, Claude, Gemini):

Ask him to write an administrative email or a complex letter.

Summarize a long newspaper article or document.

Plan a travel itinerary or find recipe ideas with what's left in the fridge.

AI for creativity and memory:

Generate images to illustrate a birthday card (Midjourney, DALL-E).

Using AI to restore or colorize old family photos.

3: Learning to "talk" to AI (The Art of the Prompt)
The context method: Why "Give me a cake recipe" is less effective than "I am allergic to gluten and I am hosting 4 people, give me a simple chocolate cake recipe".

The expert's role: Learning to tell AI "Act like a travel guide" or "Act like an expert gardener".

4: Precautions and Critical Thinking (The Survival Guide)
"Hallucinations": Understand that AI can make false claims with complete certainty (never take medical or legal advice from AI without verification).

Privacy protection:

Never give sensitive data (social security number, passwords, bank details) to an AI.

Knowing that everything we write to the AI is potentially used to train it.

Spotting "Deepfakes":

How to recognize a doctored image or video (details on the hands, strange reflections, slightly metallic voice).

Verify the information: the golden rule of cross-referencing sources.

5: Ethics and Impacts (To go further)
Copyright: Who owns an image created by AI?

The environmental impact: The water and energy consumption of AI servers.

The future: Will AI replace us or assist us?
verified badge
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
I'm a working MEP engineer, currently building Python automation for Revit workflows daily - plan checks, model coordination, and repetitive drafting tasks. I teach other engineers, architects, and BIM professionals how to do the same, using pyRevit and real project workflows, not toy examples.

Topics include:
pyRevit fundamentals and setup
Automating repetitive Revit tasks (model checks, plan generation, data extraction)
Writing custom scripts for your firm's specific workflows
Applying Python automation to real MEP/BIM projects
verified badge
I offer engaging and easy-to-understand online classes in Mathematics, Physics, and Computer Science.
My lessons are designed to make difficult concepts simple through clear explanations and practical examples.
I adapt my teaching style to each student’s level, learning pace, and individual needs.
Whether you need help with school topics, homework, exam preparation, or building strong fundamentals, I’m here to help. My goal is to make learning enjoyable while helping every student improve their confidence and achieve better results.
verified badge
Learn how to build modern websites and mobile applications from scratch and develop the practical skills needed for real-world projects.

In this Frontend & Mobile Development course, I’ll guide you step by step through the technologies and tools commonly used by developers, including HTML, CSS, JavaScript, Angular, Git, GitHub, VS Code, and mobile application development.

You’ll learn how to create responsive and interactive websites, build structured applications with Angular, manage your code using Git and GitHub, and use VS Code efficiently for development. We’ll also explore how frontend technologies can be used to create mobile applications.

The course is suitable for beginners and intermediate learners. Lessons are practical and project-based, so you’ll learn by actually building websites and applications rather than only studying theory.

My goal is to help you understand how and why the code works, improve your problem-solving skills, learn professional development practices, and gain the confidence to create your own projects independently.

Lessons can be adapted to your experience level, learning pace, and personal or career goals.
Good-fit Instructor Guarantee
favorite button
message icon
Contact Mojtaba