facebook
favorite button
member since icon
Since August 2026
Instructor since August 2026
Programming, Data Structures, and Computer Organization
course price icon
From 37 C$ /h
arrow icon
I specialize in tutoring programming, data structures, and computer organization for university students and enthusiastic beginners. Drawing from my daily work as a backend software engineer, my goal is to help you understand not just how to write code, but how the computer actually executes it. We will cover programming fundamentals in languages like C, C++, or Python, while exploring CPU architecture and memory management under the hood. We will also dive deeply into data structures such as linked lists, binary trees, and hash tables where my focus is ensuring you grasp the core theory and logic behind them, not just the code implementations. Having previously tutored mathematics, I know how to break down complex technical topics so you stay challenged but never overwhelmed. I assign hands-on coding exercises during and after every lesson to ensure you build practical, real-world engineering skills.
Extra information
Please ensure you have a stable internet connection, a working microphone, and the ability to share your screen. If possible, please have your preferred code editor (such as VS Code) and relevant compilers installed; however, if you are an absolute beginner, don't worry we can set up your local development environment together during our first session. Lastly, if you are a university student, please send me your syllabus, lecture slides, or current assignments a day before our lesson so I can prepare the most relevant material for our time together.
Location
location type icon
Online from Egypt
About Me
As a Lead Software Engineer and Computer Engineering student, I make programming practical and accessible. My teaching goes beyond memorizing syntax; I help you understand exactly how technology works under the hood, from basic logic to computer architecture and memory management. Whether you are a beginner or a university student tackling data structures, I draw on my experience tutoring math and mentoring junior engineers to break down complex concepts into simple, manageable steps.
Education
Senior Computer Engineering student at AAST. My academic background focuses heavily on software architecture, algorithms, and low-level computer hardware-------
Experience / Qualifications
Lead Software Engineer: Currently leading the technical architecture, design, and delivery of scalable software systems. I oversee the full development lifecycle, manage cloud infrastructures, and actively mentor cross-functional development teams and junior engineers.
Low-Level & Hardware-Software Integration: Hands-on experience developing low-level background services in Python and Bash to interface directly with hardware (e.g., translating 8-bit Arduino digital signals into real-time system inputs for interactive systems).
Education & Academic Background: Senior / final-year Computer Engineering student with a deep foundation in computer organization, data structures, systems programming, and algorithms.
Tutoring Experience: Proven track record as a private remote tutor for IGCSE Mathematics, specializing in simplifying abstract and quantitative concepts for students.
Age
Children (7-12 years old)
Teenagers (13-17 years old)
Adults (18-64 years old)
Student level
Beginner
Intermediate
Duration
45 minutes
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
Most kids think coding is for "smart kids" or "future programmers."
It's not. Coding is how real people solve real problems.
In this class, we skip the theory. Your child creates real things.

What they'll do:
✓ Build real projects in Scratch: a working game, an interactive animation, a story they coded
✓ Program virtual robots: solve real-world challenges (navigate a maze, automate a task, build a system)
✓ Create in Minecraft Education: design worlds, automate constructions, solve logic problems
✓ Experiment with different languages: not just learn "the right way," but understand that there are many ways to think about a problem
✓ Collaborate and share: work with other kids, get feedback, improve their work
✓ Develop logical thinking: not just for coding, but for anything: solving math problems, science challenges, real-world situations


Why this is different:
We don't teach syntax. We teach how programmers think.
Most children's coding courses say "here's the code, copy it." We teach "what problem are we trying to solve? How could we break it into steps? What options do we have?"
When your child learns to think like a programmer, they can learn any language afterward.

What they take home:
A portfolio of 3–4 completed, working projects. The ability to say "I built this." And the deep understanding that code is a tool to make real things happen.

Format: Online or Barcelona | 60–90 min sessions | Flexible pace, no prior experience needed
For curious 8-12 year olds who want to build.
verified badge
Hello, I am a doctoral student in electrical engineering and associate professor in engineering sciences, experienced in the field of electrical engineering, I offer support courses in the subjects of engineering sciences (Electronics, automatics, electrical engineering, automation, programming).

Digital electronics
Analog electronic
electromagnetism (propagation of high frequency waves)
Automatic (continuous, sampled)
electrical engineering (transformers, electrical machines, switching power supply)
C / c ++ programming, Assembler, ARM, STM32
renewable energy (wind, PV)
engineering Sciences
RDM
Python,VHDL
PIC Microprocessor and Microcontroller
Signal processing and data acquisition
Engineering Sciences

These courses allow the student to get up to speed and regain confidence in all scientific subjects, just as they prepare him effectively for the Baccalaureate, the Preparatory Classes or various examinations of the engineering classes.

COURSE OBJECTIVES AND PEDAGOGICAL APPROACH

Resumption and deepening of fundamental concepts through exercises with course reminders.

Put the student in a situation of questioning and research.

Respond to individual issues and questions

Exercise training in order to achieve real mastery of the content.

Learn to build theoretical reasoning from observable facts or hypotheses.

Specific preparation for higher education requirements (in-depth content, increase in work capacity, enrichment of scientific background)

This educational approach is effective since it has often led me to interesting results with my students.

Associate professor provides support courses in electrical engineering
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
doctoral student in engineering sciences provides support courses in analog and digital electronics at any DEUG level and engineering schools. having scientific and technical knowledge, three years of experience in the field of teaching, pedagogy and a sense of listening and analysis, I am able to help pupils and students and train them in the chapters of which they are having difficulty. for more info please contact me
verified badge
Are you a university student, engineer, or professional who needs to actually use data — not just learn theory about it?
This course is built around real problems and real code. We skip the textbook formulas and go straight to applying statistics and data science the way professionals do: with Python (pandas, NumPy, scikit-learn, matplotlib) and R (RStudio).
What we cover, adapted to your level and goals:
- Descriptive and inferential statistics (the ones that actually matter)
- Data cleaning, exploration, and visualization
- Regression, classification, and intro to machine learning
- Time series and forecasting basics
- R for statistical analysis and academic research

Who this is for:
- University students in statistics, economics, engineering, or biology
- Professionals wanting to move into data analysis or data science
- Researchers who need to process and present data properly

I use Python and R professionally as a working engineer — everything I teach comes from real application, not just academic exercises.
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
Experienced and patient teacher of logic for computer science.

I have taught logic, formal languages and automata theory to undergraduates for six years. My tutoring is adapted to the student's level and goals. Whether you need to learn logic for your studies, or you would simply like to know more about the subject, I will be more than happy to help you improve your understanding and skills.

Logic
The sciences presuppose a certain standard of rationality. An ability to distinguish between correct reasoning and claims that do not follow from the assumptions. In this class we study the basic principles of logic and apply mathematical techniques to the study thereof.
Topics include:
Propositional and Predicate Logic
Syntax and semantics
Natural deduction
Semantic tableaux
Correctness and soundness
Completeness

Formal languages and automata
A formal language is an abstraction of general characteristics of programming languages. Such a languages consists of a set of symbols together with some rules to determine whether a string made up out of those symbols is a member of the language.

Topics include:
Regular languages, context-free languages
Finite automata, pushdown automata, Turing machines
Regular expressions
Regular grammar, context-sensitive grammar
Pumping lemmas for regular and context-free languages
verified badge
Understanding algorithms is essential for anyone pursuing computer science or programming. In this course, I provide a structured approach to learning algorithms—from fundamental concepts like sorting and searching to advanced techniques such as dynamic programming and graph theory. Whether you're preparing for exams, coding interviews, or aiming to improve your problem-solving skills, this course is designed to build strong algorithmic thinking. Through practical examples and step-by-step explanations, I help students master the logic and techniques needed to write efficient and elegant code.
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
Session 1: Revolutionizing your Scientific Writing with LaTeX & AI
Duration: 2 Hours | Level: Beginner | Tools: Overleaf + AI**

First Hour: Foundations and Cloud Environment (60 min)

1. Introduction to LaTeX Philosophy (15 min)

- The "WYSIWYM" concept:** Explain the difference between Word (*What You See Is What You Get*) and LaTeX (*What You See Is What You Mean*). Why content takes precedence over form.
- Key advantages:** Unrivaled typographic quality, automatic reference management, stability on long documents (theses), and free of charge.
- The structure of a file:** Distinction between the **preamble** (the brain: settings and packages) and the **body of the document** (the heart: text).

2. Immersion in Overleaf (25 min)

- Configuration:** Creation of an account and first project "Blank Project".
- Exploring the interface:** The file panel (left), the code editor (middle) and the PDF preview (right).
- Real-time collaboration:** How to share a project and leave comments (like on Google Docs).
- History and versions:** How to revert to a previous version in case of a compilation error.

3. Practical Workshop: My First Document (20 min)

* Writing basic commands: `\documentclass`, `\usepackage[french]{babel}`, `\title`, `\author`.
* Compilation of the document and observation of the result.
* Structuring: Use of `\section` and `\subsection`.

Second Hour: Mathematics and the Magic of AI (60 min)

4. The Power of Mathematics (20 min)

- Mathematical modes:** Difference between the text (`$...$`) and the centered block (`\[...\]`).
- Essential syntax:** Fractions `\frac{}{}`, exponents `^`, indices `_`, and roots `\sqrt{}`.
- Introduction to AMS packages: Why amsmath and amssymb are essential for professional rendering.

5. From hand to screen: AI at the service of LaTeX (30 min)

- Presentation of OCR tools:** Use of **Mathpix Snip** (the leader) or models like Gemini/ChatGPT to transform a photo into code.
- Concrete demonstration:
1. Take a picture of a complex handwritten formula (e.g., an integral with matrices).
2. Use AI to generate the corresponding LaTeX code.
3. Correction and insertion: Learn to check the AI-generated code before copying and pasting it into Overleaf.

6. Conclusion and Q&A (10 min)

* Summary of achievements.
* Resources for further exploration
* Definition of the exercise for the next session.
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
Python Level 1Workshop

**Course Description**

Want to learn programming from scratch? This beginner-friendly Python course introduces students to coding through interactive lessons, practical exercises, and fun mini-projects.

Students will learn how to write Python programs, work with different types of data, take user input, make decisions using conditions, and repeat actions using loops. Each concept is explained step by step with real-life examples and hands-on coding activities.

**What You Will Learn**

* **Lesson 1: Your First Python Program** — Learn the `print()` function, display messages, and create simple programs.
* **Lesson 2: Variables and Data Types** — Store and work with text, numbers, and other basic data.
* **Lesson 3: User Input and Calculations** — Build interactive programs that accept user input and perform calculations.
* **Lesson 4: Conditional Statements** — Use `if`, `elif`, and `else` to make programs respond to different situations.
* **Lesson 5: Loops and Mini-Projects** — Use loops to repeat actions and apply your skills in practical coding challenges.

**Hands-On Projects**

Students will apply their learning by building beginner-friendly projects such as a calculator, a number-guessing game, and a Rock-Paper-Scissors game.

**Who Is This Course For?**

* Children and teenagers aged 8–16.
* Complete beginners with no prior programming experience.
* Students who want to develop logical thinking, problem-solving, and computational skills.
* Learners who want to explore programming through practical projects.

**My Teaching Approach**

I explain concepts step by step, use relatable examples, and encourage students to write their own code instead of simply copying solutions. Lessons are adapted to each student's pace, with coding exercises and challenges to strengthen understanding.

**No prior coding experience is required.** Students need a computer and an internet connection to participate.

By the end of Level 1, students will have a solid foundation in Python basics and the confidence to start creating their own simple programs.
message icon
Contact Ahmed
repeat students icon
1st lesson is backed
by our
Good-fit Instructor Guarantee
Similar classes
arrow icon previousarrow icon next
verified badge
Most kids think coding is for "smart kids" or "future programmers."
It's not. Coding is how real people solve real problems.
In this class, we skip the theory. Your child creates real things.

What they'll do:
✓ Build real projects in Scratch: a working game, an interactive animation, a story they coded
✓ Program virtual robots: solve real-world challenges (navigate a maze, automate a task, build a system)
✓ Create in Minecraft Education: design worlds, automate constructions, solve logic problems
✓ Experiment with different languages: not just learn "the right way," but understand that there are many ways to think about a problem
✓ Collaborate and share: work with other kids, get feedback, improve their work
✓ Develop logical thinking: not just for coding, but for anything: solving math problems, science challenges, real-world situations


Why this is different:
We don't teach syntax. We teach how programmers think.
Most children's coding courses say "here's the code, copy it." We teach "what problem are we trying to solve? How could we break it into steps? What options do we have?"
When your child learns to think like a programmer, they can learn any language afterward.

What they take home:
A portfolio of 3–4 completed, working projects. The ability to say "I built this." And the deep understanding that code is a tool to make real things happen.

Format: Online or Barcelona | 60–90 min sessions | Flexible pace, no prior experience needed
For curious 8-12 year olds who want to build.
verified badge
Hello, I am a doctoral student in electrical engineering and associate professor in engineering sciences, experienced in the field of electrical engineering, I offer support courses in the subjects of engineering sciences (Electronics, automatics, electrical engineering, automation, programming).

Digital electronics
Analog electronic
electromagnetism (propagation of high frequency waves)
Automatic (continuous, sampled)
electrical engineering (transformers, electrical machines, switching power supply)
C / c ++ programming, Assembler, ARM, STM32
renewable energy (wind, PV)
engineering Sciences
RDM
Python,VHDL
PIC Microprocessor and Microcontroller
Signal processing and data acquisition
Engineering Sciences

These courses allow the student to get up to speed and regain confidence in all scientific subjects, just as they prepare him effectively for the Baccalaureate, the Preparatory Classes or various examinations of the engineering classes.

COURSE OBJECTIVES AND PEDAGOGICAL APPROACH

Resumption and deepening of fundamental concepts through exercises with course reminders.

Put the student in a situation of questioning and research.

Respond to individual issues and questions

Exercise training in order to achieve real mastery of the content.

Learn to build theoretical reasoning from observable facts or hypotheses.

Specific preparation for higher education requirements (in-depth content, increase in work capacity, enrichment of scientific background)

This educational approach is effective since it has often led me to interesting results with my students.

Associate professor provides support courses in electrical engineering
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
doctoral student in engineering sciences provides support courses in analog and digital electronics at any DEUG level and engineering schools. having scientific and technical knowledge, three years of experience in the field of teaching, pedagogy and a sense of listening and analysis, I am able to help pupils and students and train them in the chapters of which they are having difficulty. for more info please contact me
verified badge
Are you a university student, engineer, or professional who needs to actually use data — not just learn theory about it?
This course is built around real problems and real code. We skip the textbook formulas and go straight to applying statistics and data science the way professionals do: with Python (pandas, NumPy, scikit-learn, matplotlib) and R (RStudio).
What we cover, adapted to your level and goals:
- Descriptive and inferential statistics (the ones that actually matter)
- Data cleaning, exploration, and visualization
- Regression, classification, and intro to machine learning
- Time series and forecasting basics
- R for statistical analysis and academic research

Who this is for:
- University students in statistics, economics, engineering, or biology
- Professionals wanting to move into data analysis or data science
- Researchers who need to process and present data properly

I use Python and R professionally as a working engineer — everything I teach comes from real application, not just academic exercises.
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
Experienced and patient teacher of logic for computer science.

I have taught logic, formal languages and automata theory to undergraduates for six years. My tutoring is adapted to the student's level and goals. Whether you need to learn logic for your studies, or you would simply like to know more about the subject, I will be more than happy to help you improve your understanding and skills.

Logic
The sciences presuppose a certain standard of rationality. An ability to distinguish between correct reasoning and claims that do not follow from the assumptions. In this class we study the basic principles of logic and apply mathematical techniques to the study thereof.
Topics include:
Propositional and Predicate Logic
Syntax and semantics
Natural deduction
Semantic tableaux
Correctness and soundness
Completeness

Formal languages and automata
A formal language is an abstraction of general characteristics of programming languages. Such a languages consists of a set of symbols together with some rules to determine whether a string made up out of those symbols is a member of the language.

Topics include:
Regular languages, context-free languages
Finite automata, pushdown automata, Turing machines
Regular expressions
Regular grammar, context-sensitive grammar
Pumping lemmas for regular and context-free languages
verified badge
Understanding algorithms is essential for anyone pursuing computer science or programming. In this course, I provide a structured approach to learning algorithms—from fundamental concepts like sorting and searching to advanced techniques such as dynamic programming and graph theory. Whether you're preparing for exams, coding interviews, or aiming to improve your problem-solving skills, this course is designed to build strong algorithmic thinking. Through practical examples and step-by-step explanations, I help students master the logic and techniques needed to write efficient and elegant code.
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
Session 1: Revolutionizing your Scientific Writing with LaTeX & AI
Duration: 2 Hours | Level: Beginner | Tools: Overleaf + AI**

First Hour: Foundations and Cloud Environment (60 min)

1. Introduction to LaTeX Philosophy (15 min)

- The "WYSIWYM" concept:** Explain the difference between Word (*What You See Is What You Get*) and LaTeX (*What You See Is What You Mean*). Why content takes precedence over form.
- Key advantages:** Unrivaled typographic quality, automatic reference management, stability on long documents (theses), and free of charge.
- The structure of a file:** Distinction between the **preamble** (the brain: settings and packages) and the **body of the document** (the heart: text).

2. Immersion in Overleaf (25 min)

- Configuration:** Creation of an account and first project "Blank Project".
- Exploring the interface:** The file panel (left), the code editor (middle) and the PDF preview (right).
- Real-time collaboration:** How to share a project and leave comments (like on Google Docs).
- History and versions:** How to revert to a previous version in case of a compilation error.

3. Practical Workshop: My First Document (20 min)

* Writing basic commands: `\documentclass`, `\usepackage[french]{babel}`, `\title`, `\author`.
* Compilation of the document and observation of the result.
* Structuring: Use of `\section` and `\subsection`.

Second Hour: Mathematics and the Magic of AI (60 min)

4. The Power of Mathematics (20 min)

- Mathematical modes:** Difference between the text (`$...$`) and the centered block (`\[...\]`).
- Essential syntax:** Fractions `\frac{}{}`, exponents `^`, indices `_`, and roots `\sqrt{}`.
- Introduction to AMS packages: Why amsmath and amssymb are essential for professional rendering.

5. From hand to screen: AI at the service of LaTeX (30 min)

- Presentation of OCR tools:** Use of **Mathpix Snip** (the leader) or models like Gemini/ChatGPT to transform a photo into code.
- Concrete demonstration:
1. Take a picture of a complex handwritten formula (e.g., an integral with matrices).
2. Use AI to generate the corresponding LaTeX code.
3. Correction and insertion: Learn to check the AI-generated code before copying and pasting it into Overleaf.

6. Conclusion and Q&A (10 min)

* Summary of achievements.
* Resources for further exploration
* Definition of the exercise for the next session.
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
Python Level 1Workshop

**Course Description**

Want to learn programming from scratch? This beginner-friendly Python course introduces students to coding through interactive lessons, practical exercises, and fun mini-projects.

Students will learn how to write Python programs, work with different types of data, take user input, make decisions using conditions, and repeat actions using loops. Each concept is explained step by step with real-life examples and hands-on coding activities.

**What You Will Learn**

* **Lesson 1: Your First Python Program** — Learn the `print()` function, display messages, and create simple programs.
* **Lesson 2: Variables and Data Types** — Store and work with text, numbers, and other basic data.
* **Lesson 3: User Input and Calculations** — Build interactive programs that accept user input and perform calculations.
* **Lesson 4: Conditional Statements** — Use `if`, `elif`, and `else` to make programs respond to different situations.
* **Lesson 5: Loops and Mini-Projects** — Use loops to repeat actions and apply your skills in practical coding challenges.

**Hands-On Projects**

Students will apply their learning by building beginner-friendly projects such as a calculator, a number-guessing game, and a Rock-Paper-Scissors game.

**Who Is This Course For?**

* Children and teenagers aged 8–16.
* Complete beginners with no prior programming experience.
* Students who want to develop logical thinking, problem-solving, and computational skills.
* Learners who want to explore programming through practical projects.

**My Teaching Approach**

I explain concepts step by step, use relatable examples, and encourage students to write their own code instead of simply copying solutions. Lessons are adapted to each student's pace, with coding exercises and challenges to strengthen understanding.

**No prior coding experience is required.** Students need a computer and an internet connection to participate.

By the end of Level 1, students will have a solid foundation in Python basics and the confidence to start creating their own simple programs.
Good-fit Instructor Guarantee
favorite button
message icon
Contact Ahmed