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 January 2017
Instructor since January 2017
Here you can learn C, Java, Python and also Computer Networks
course price icon
From 25 € /h
arrow icon
Hello, !

Join an experienced IT Manager with 8+ years in the telecom industry to master Python, Java, and C. This course is perfect for beginners and intermediate learners looking to build a strong foundation in programming. You’ll gain hands-on coding experience, learn practical applications, and understand how these languages are used in real-world IT projects.

Start your programming journey today and develop the skills to excel in the tech industry!
Location
location type icon
Online from Morocco
About Me
Working actually as a System Engineer at a big Telecom company. I worked as a tutor and as a Lab assistant and would like to work with students who have little or no experience in programming or students having difficulties in understanding computers science subjects.
Education
IIHEM, bachelor in Management information System, GPA=3.52, 2011
Al Akhawayn University, Masters in Software Engineering, GPA=3.58, 2015
AL Akhawayn University, PhD, Currently
Experience / Qualifications
Actually wroking as a System Engineer at a big Telecom company.
5 working Years as an IT Manager at an international recruitment agency
3 working Years as a Tutor in IIHEM
1 working Year as a Help Desk at Devoteam
1 working Year as a Lab Instructor at Al Akhawayn University
Age
Teenagers (13-17 years old)
Adults (18-64 years old)
Seniors (65+ years old)
Student level
Beginner
Intermediate
Duration
60 minutes
90 minutes
The class is taught in
English
Arabic
French
Availability of a typical week
(GMT -05: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
Curious about computer science but don’t have a technical background? This course is designed just for you! Led by an experienced IT Manager with 8+ years in the telecom industry, you’ll explore the fundamental concepts of computer science—such as algorithms, data structures, and programming logic—in a clear, beginner-friendly way.

Whether you’re a business professional, creative, or student in another field, this class will help you understand the tech world and build practical skills for the digital age.
Read more
Are you new to computer science ? are you struggling in understanding the foundation of computer science and programming ? is computer science not your first choice and you wanna get a good grade at it ?

If you answer "yes" to one of the above question then this course is for you . I have three years experience teaching computer science foundation to junior university students and here to help you in understanding all what you need to pass the course .
Read more
Show more
arrow icon
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
Learn to code with method and logic
Whether it's to succeed in the NSI (Digital Sciences and Technology) specialization in high school, design personal projects, or prepare for higher scientific studies, mastering code relies on solid algorithmic thinking. I help students understand the structure of programming languages and the logic of data.

Subject areas and languages taught:

Algorithms & Logic: Designing data structures and solving problems.

Programming Languages: Python, C/C++, C# and Java.

Data Management: Analysis and SQL queries / databases.

Basic Web Development: HTML & CSS for creating structured pages.

The goal is to take the student from simply writing code to true autonomy in development.
verified badge
Doctor trainer in IT teaches you the basics of designing static and dynamic (programmed) web pages.
- Design of HTML web pages
- Applying CSS and SASS styles
- Make the web pages "Responsive"
-Angular framework
- Backend programming: PHP language, or Java/JSP
- Web API
- connection to a MYSQL Database, FireBase
verified badge
Python is the programming language these days. It is simple, nice and almost all modern applications use it. With Python, we can now create artificial intelligence models that reduce human effort and give us more accurate and reliable results. The Java and C languages are not lacking in importance, they also make it possible to create applications optimized in terms of RAM.

The composition of the course depends on the level of the student and his own objectives. The first session is a one-hour evaluation session which allows the diagnosis of the level and the needs of the student. From this diagnosis we establish together a program that we will follow during our course.

Generally the course allows the student to assimilate:
* Predefined Data Types & Variables;
* Conditional Structures & Loops;
* Functions ;
* Object-oriented programming (OOP);
* Digital engineering;
* An introduction to databases (Examples and uses)
* Relational Algebra
* LDD, LCD, LMD, LCT
* SQL queries (SELECT, UPDATE, ...)
* Creation of a database and automation of queries using the Python language
* Handling files (TXT, Excel, CSV, JSON, Word);
* Data science;
* Introduction and some applications of Artificial Intelligence.

I am waiting for you to start this adventure.
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
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
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
Do you need a boost in mathematics to better understand lessons, pass your exams or prepare for a competition? Do you want to learn to program in C, C++, Python or Java to develop skills sought after in the digital world?
This comprehensive and personalized academic support program is designed to meet your needs and help you succeed!

💡 Why Choose this Program?
This course offers tailor-made support, adapted to your level and your objectives:

🎯 Progress in mathematics by strengthening your foundations and mastering advanced concepts.
💡 Understand theoretical concepts in depth to better apply them in exercises and problems.
💻 Learn to program in C, C++, Python and Java with clear explanations and practical exercises.
🚀 Develop essential skills in algorithms and computer problem solving.
🎓 Effectively prepare for your exams (Bac, Licence, competitive exams) thanks to targeted revisions and practice subjects.
With a caring educational approach, this course helps you gain confidence and achieve your academic goals.

📘 Mathematics – From Secondary to Bachelor
Mathematics is the key to academic success in many scientific and technical fields.
This module covers:

Secondary Level (Middle and High School):

Arithmetic, fractions, percentages, proportionality.
Algebra: Equations, inequalities, functions (linear, quadratic, exponential, logarithmic).
Geometry: Theorems, trigonometry, analytical geometry.
Statistics and probability: Analyze data, calculate probabilities.
Preparation for exams: Brevet, Bac, entrance exams for grandes écoles.
University Level (Bachelor):

Differential and integral calculus: Derivatives, integrals, sequences and series.
Linear Algebra: Matrices, vectors, systems of linear equations.
Advanced Probability and Statistics: Random variables, probability laws, estimation and hypothesis testing.
Numerical analysis: Methods for approximate resolution of equations and systems of equations.
Discrete Mathematics: Graphs, Boolean logic, combinatorics.
This module offers progressive exercises, clear explanations and detailed corrections to understand in depth and train effectively.

💻 Programming – C, C++, Python and Java
Mastering programming is a major asset for success in the digital and technological field.
This module covers the fundamentals of programming to enable you to:

Understand algorithmic logic and computer problem solving.
Master the syntax of the C, C++, Python and Java languages.
Writing your first programs: Variables, conditional structures, loops, functions.
Work on practical projects: Calculator, data management, simple games, sorting and searching algorithms.
Develop advanced skills:
Object-oriented programming (C++, Java): Classes, inheritance, polymorphism.
Memory management (C, C++): Dynamic allocation, pointers.
File manipulation: Reading and writing data.
Data structures: Lists, stacks, queues, binary trees.
Code optimization for faster and more efficient programs.
This module offers concrete examples, practical exercises and motivating projects to help you learn while having fun while developing skills useful in the professional world.

🎯 Interactive and Motivating Teaching
Dynamic online courses: Learn from home in an interactive format with audio and screen sharing.
Tailor-made method: The courses are designed according to your level and your objectives for learning at your own pace.
Practical exercises and concrete projects: To apply theoretical concepts and develop your skills.
Personalized monitoring: Regular support to monitor your progress and adapt the program to your needs.
Encouragement and motivation: A positive approach to building your confidence in your abilities.
🔔 For Who?
This program is aimed at:

High school students wishing to strengthen their foundations in mathematics or learn to program.
University students in science or computer science looking to deepen their knowledge of math and programming.
Candidates for exams and competitions preparing for the Baccalaureate, a License, or entrance exams to the grandes écoles.
Programming enthusiasts wanting to learn the fundamentals of C, C++, Python or Java.
Adults in professional retraining wishing to acquire programming skills.
🚀 Ready to Succeed?
Join the "🎓 Academic Support – 📘 Maths from Secondary to Bachelor & 💻 Programming in C, C++, Python and Java!" and benefit from personalized support to achieve your goals.
Whether you want to improve your grades, pass your exams or develop programming skills, this program will give you knowledge, confidence and motivation.

Register today and take the first step towards success!
verified badge
This course is designed for anyone interested in learning data science using Python. It provides a hands-on introduction to fundamental data analysis tools such as NumPy, pandas, matplotlib, and seaborn. You'll learn how to manipulate datasets, create visualizations, and lay the foundations for statistical analysis and machine learning.

The course combines theory and practical exercises for effective, practical progress. No prior programming experience is necessary: we'll start with the basics to build solid, usable skills quickly.
verified badge
Private Programming Lessons for you / your family / your company employees
Programming Tutor – IGCSE & Computer Science Subjects
Deeper understanding, stronger results

• Lecturer at the American University AUC
• Over 20 years of experience in training students for government employees, oil companies (BP), food companies (Nestle), banks (CIB), and telecommunications companies (Vodafone).

• Teaching curricula, syllabuses, courses:
o IGCSE (Computer Science 0478, ICT 0417)
o Programming and computer courses for all educational levels (from primary to university)
o Microsoft Windows, Word, Excel, PowerPoint, Outlook, MS-Project
o Programming, C, C++, VB.NET, C#, Python, Database, SQL, MQL, VBA
o HTML, CSS, JavaScript, Angular
o Different database systems
o Data analysis using Excel
o Computer and Information Colleges Curricula
o Using artificial intelligence in life and work

• Master office applications to improve your job performance.
• Prepare yourself to work as a Front-End / Back-End / Full Stack Developer
• Theoretical and practical training for market requirements
• Don't miss out on technology. Lessons are designed for the elderly, in a simple and understandable way (use of computers and their programs, use of mobile phones, dealing with the Internet and social media).
• Lessons are available in person or online.
verified badge
I teach Python, C and C++ one to one, online or in person around Birmingham.

Most of my students fall into one of three groups. Some are at GCSE or A-Level and need to get comfortable with a language before an exam or a coursework deadline. Some are at university, usually on an engineering or computing degree, and have hit something specific that isn't clicking: pointers, memory, recursion, object orientation, or a project that won't compile. And some are adults starting from nothing, often because work has started asking them to automate things.

Lessons are built around code you can run. I'll ask what you're working on and where you got stuck, then we write something small together, break it on purpose, and work out what the error message is actually telling you. Reading error messages properly is half of programming and almost nobody teaches it.

Areas I cover regularly:

Python from the basics through functions, data structures, file handling, object orientation and libraries like NumPy and Pandas
C and C++, including the parts that cause most of the trouble: pointers, memory management, structs, classes and compilation
GCSE and A-Level Computer Science across all exam boards, including pseudocode, trace tables and written paper technique
A-Level NEA projects and university coursework, plus debugging sessions and code review
Embedded C for Arduino, ESP32 and microcontroller projects, which is the work I do professionally

After each lesson I send written notes covering what we did, worked through step by step, so you have something to revise from later rather than trying to remember what was on screen.

First session is free and lasts 30 minutes. We use it to work out what you need and whether I'm the right person for it. If I'm not, I'll say so and point you somewhere better.

Message me with what you're studying and what's giving you trouble, and I'll tell you honestly how I'd approach it.
verified badge
A- TOPICS YOU CAN EXPLORE AND MASTER:
1- PYTHON FOUNDATIONS
• Variables, data types, operators, conditional structures, loops, functions, modules, files, exceptions, and object-oriented programming
• Lists, tuples, dictionaries, sets, comprehensions, debugging, and writing clear, reusable, well-structured code
• Jupyter Notebook, Anaconda, Visual Studio Code, virtual environments, and package management

2 — PROGRAMMING, ALGORITHMS, AND COMPUTER SCIENCE FOUNDATIONS
• Algorithmic thinking, problem decomposition, pseudocode, flowcharts, procedural programming, object-oriented programming, recursion, and modular program design
• Fundamental data structures including arrays, lists, stacks, queues, dictionaries/hash tables, sets, trees, graphs, and their appropriate use
• Searching, sorting, traversal, algorithm efficiency, computational complexity, Big-O notation, debugging, testing, code organization, and problem-solving strategies
• Practical programming exercises ranging from beginner problems to university-level algorithmic and computational challenges

3- DATA PREPARATION AND EXPLORATION
• NumPy and pandas for importing, cleaning, transforming, filtering, grouping, reshaping, and merging data
• Missing values, duplicates, outliers, inconsistent formats, data leakage, and data-quality validation
• Exploratory data analysis using descriptive statistics, Matplotlib, Seaborn, and graphical interpretation

4- MATHEMATICAL FOUNDATIONS
• Linear algebra, vectors, matrices, derivatives, optimization, probability, and statistics
• Loss functions, gradients, distance measures, regularization, likelihood, and model complexity
• Mathematical concepts are explained according to the learner’s level and the requirements of the selected algorithms

5- SUPERVISED MACHINE LEARNING
• Linear and polynomial regression, logistic regression, and regularized models
• k-nearest neighbours, decision trees, random forests, gradient boosting, support vector machines, and Naive Bayes classifiers
• Classification, regression, model assumptions, decision boundaries, feature importance, and interpretation of results

6- UNSUPERVISED LEARNING
• Clustering using k-means, hierarchical clustering, and density-based methods
• Principal component analysis, dimensionality reduction, anomaly detection, and pattern or structure discovery
• Method selection, evaluation of data structure, and interpretation of results without predefined labels

7- MODEL EVALUATION AND IMPROVEMENT
• Training, validation, and test sets; cross-validation; hyperparameter optimization
• Accuracy, precision, recall, specificity, F1 score, ROC–AUC, confusion matrices, MAE, MSE, RMSE, and R2
• Underfitting, overfitting, bias–variance trade-off, class imbalance, feature engineering, feature selection, scaling, and regularization

8- DEEP LEARNING
• Neural-network foundations, activation functions, forward propagation, backpropagation, and gradient descent
• Multilayer perceptrons, convolutional neural networks, recurrent neural networks, and Transformer foundations
• TensorFlow, Keras, or PyTorch depending on the learner’s project and working environment

9- ARTIFICIAL INTELLIGENCE APPLICATIONS
• Natural language processing, text classification, embeddings, sentiment analysis, and foundations of language models
• Computer vision, image classification, fundamental principles of object detection, and image preprocessing
• Recommendation systems, forecasting, anomaly detection, intelligent automation, and decision-support applications

10- GENERATIVE AI AND LARGE LANGUAGE MODELS
• Transformer architecture, tokens, embeddings, attention mechanisms, prompt engineering, Retrieval-Augmented Generation (RAG), and model evaluation
• Use of artificial-intelligence APIs, vector databases, document-retrieval systems, and structured AI-enabled workflows when relevant
• Reliability, hallucinations, bias, privacy, responsible use, and appropriate human validation

11- TOOLS AND LIBRARIES
• Python, NumPy, pandas, Matplotlib, Seaborn, scikit-learn, SciPy, Statsmodels, TensorFlow, Keras, and PyTorch
• Jupyter Notebook, Anaconda, Visual Studio Code, Git, GitHub, SQL, Excel, and Power BI when useful to the project
• Additional libraries may be introduced depending on the selected specialization and dataset

12- PROJECTS, RESEARCH, AND INTERVIEW PREPARATION
• Complete projects covering data preparation, model development, evaluation, interpretation, and presentation of results
• University assignments, dissertations, theses, research projects, portfolio projects, technical interviews, and professional applications
• Code review, debugging, documentation, reproducibility, model comparison, and communication of results

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
B- PERSONALIZED TUTORING: LEARNING HOW TO REASON
Machine learning and artificial intelligence become much more accessible when mathematics, algorithms, Python code, data, and real-world applications are clearly connected.

My lessons help you move beyond simply copying code or using models as “black boxes.” You will learn how to define the problem correctly, prepare the data, select an appropriate algorithm, understand how it works, train and evaluate the model, diagnose errors, improve performance, and interpret results rigorously and responsibly.

Each lesson is personalized according to your current level, mathematical background, programming experience, dataset, university work, research project, interview preparation, or professional objective. We begin by identifying your existing knowledge, software environment, expected outcomes, and main conceptual or technical difficulties. We then establish a structured learning plan.

The first lesson combines a discussion of your background, objectives, and tutoring needs; an initial assessment of your current knowledge; personalized planning and organization of future sessions; and a short trial lesson to determine the most effective learning approach.

A typical session may include conceptual explanation, development of mathematical intuition, live coding, guided implementation, model evaluation, technical problem solving, and a concise summary of the next steps.

You may work with your own dataset, university assignment, research project, or professional problem, provided that confidential information is handled appropriately. I can also provide structured examples and datasets suited to your level.

My goal is not simply to help you run an algorithm. It is to help you understand why it is appropriate, how it learns from data, how to evaluate it correctly, why it may fail, and how to build a reliable, interpretable, and scientifically rigorous solution.
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
Learn Python with a structured, hands-on approach! Whether you are a absolute beginner looking to start coding, a student needing help with coursework, or a professional aiming to automate tasks, these lessons are tailored for you.What we will cover:
Core Fundamentals: Variables, loops, functions, and data structures.Object-Oriented Programming: Building reusable and clean code.Real-World Projects: Creating scripts, data analysis, or web scraping based on your goals.

Problem Solving: Learning how to debug and think like a programmer. Lessons are highly interactive. We will write code together from day one, and you will receive practical exercises after every session to build your confidence.
verified badge
Are you interested in learning Python but don't know where to start? This course is designed to help you understand the fundamentals of Python programming in a simple, practical, and enjoyable way.

Python is one of the most popular programming languages in the world. It is widely used in software development, automation, data analysis, artificial intelligence, and web development.

Whether you are a complete beginner, a student, or someone looking to develop new technical skills, these lessons will help you build a strong foundation in programming.

You will learn
1. Introduction to Python
2. Python Fundamentals
3. Conditional Statements and Loops
4. Working with Data
5. Functions and Practical Programming
6. Mini Projects
message icon
Contact Rafik
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
Learn to code with method and logic
Whether it's to succeed in the NSI (Digital Sciences and Technology) specialization in high school, design personal projects, or prepare for higher scientific studies, mastering code relies on solid algorithmic thinking. I help students understand the structure of programming languages and the logic of data.

Subject areas and languages taught:

Algorithms & Logic: Designing data structures and solving problems.

Programming Languages: Python, C/C++, C# and Java.

Data Management: Analysis and SQL queries / databases.

Basic Web Development: HTML & CSS for creating structured pages.

The goal is to take the student from simply writing code to true autonomy in development.
verified badge
Doctor trainer in IT teaches you the basics of designing static and dynamic (programmed) web pages.
- Design of HTML web pages
- Applying CSS and SASS styles
- Make the web pages "Responsive"
-Angular framework
- Backend programming: PHP language, or Java/JSP
- Web API
- connection to a MYSQL Database, FireBase
verified badge
Python is the programming language these days. It is simple, nice and almost all modern applications use it. With Python, we can now create artificial intelligence models that reduce human effort and give us more accurate and reliable results. The Java and C languages are not lacking in importance, they also make it possible to create applications optimized in terms of RAM.

The composition of the course depends on the level of the student and his own objectives. The first session is a one-hour evaluation session which allows the diagnosis of the level and the needs of the student. From this diagnosis we establish together a program that we will follow during our course.

Generally the course allows the student to assimilate:
* Predefined Data Types & Variables;
* Conditional Structures & Loops;
* Functions ;
* Object-oriented programming (OOP);
* Digital engineering;
* An introduction to databases (Examples and uses)
* Relational Algebra
* LDD, LCD, LMD, LCT
* SQL queries (SELECT, UPDATE, ...)
* Creation of a database and automation of queries using the Python language
* Handling files (TXT, Excel, CSV, JSON, Word);
* Data science;
* Introduction and some applications of Artificial Intelligence.

I am waiting for you to start this adventure.
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
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
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
Do you need a boost in mathematics to better understand lessons, pass your exams or prepare for a competition? Do you want to learn to program in C, C++, Python or Java to develop skills sought after in the digital world?
This comprehensive and personalized academic support program is designed to meet your needs and help you succeed!

💡 Why Choose this Program?
This course offers tailor-made support, adapted to your level and your objectives:

🎯 Progress in mathematics by strengthening your foundations and mastering advanced concepts.
💡 Understand theoretical concepts in depth to better apply them in exercises and problems.
💻 Learn to program in C, C++, Python and Java with clear explanations and practical exercises.
🚀 Develop essential skills in algorithms and computer problem solving.
🎓 Effectively prepare for your exams (Bac, Licence, competitive exams) thanks to targeted revisions and practice subjects.
With a caring educational approach, this course helps you gain confidence and achieve your academic goals.

📘 Mathematics – From Secondary to Bachelor
Mathematics is the key to academic success in many scientific and technical fields.
This module covers:

Secondary Level (Middle and High School):

Arithmetic, fractions, percentages, proportionality.
Algebra: Equations, inequalities, functions (linear, quadratic, exponential, logarithmic).
Geometry: Theorems, trigonometry, analytical geometry.
Statistics and probability: Analyze data, calculate probabilities.
Preparation for exams: Brevet, Bac, entrance exams for grandes écoles.
University Level (Bachelor):

Differential and integral calculus: Derivatives, integrals, sequences and series.
Linear Algebra: Matrices, vectors, systems of linear equations.
Advanced Probability and Statistics: Random variables, probability laws, estimation and hypothesis testing.
Numerical analysis: Methods for approximate resolution of equations and systems of equations.
Discrete Mathematics: Graphs, Boolean logic, combinatorics.
This module offers progressive exercises, clear explanations and detailed corrections to understand in depth and train effectively.

💻 Programming – C, C++, Python and Java
Mastering programming is a major asset for success in the digital and technological field.
This module covers the fundamentals of programming to enable you to:

Understand algorithmic logic and computer problem solving.
Master the syntax of the C, C++, Python and Java languages.
Writing your first programs: Variables, conditional structures, loops, functions.
Work on practical projects: Calculator, data management, simple games, sorting and searching algorithms.
Develop advanced skills:
Object-oriented programming (C++, Java): Classes, inheritance, polymorphism.
Memory management (C, C++): Dynamic allocation, pointers.
File manipulation: Reading and writing data.
Data structures: Lists, stacks, queues, binary trees.
Code optimization for faster and more efficient programs.
This module offers concrete examples, practical exercises and motivating projects to help you learn while having fun while developing skills useful in the professional world.

🎯 Interactive and Motivating Teaching
Dynamic online courses: Learn from home in an interactive format with audio and screen sharing.
Tailor-made method: The courses are designed according to your level and your objectives for learning at your own pace.
Practical exercises and concrete projects: To apply theoretical concepts and develop your skills.
Personalized monitoring: Regular support to monitor your progress and adapt the program to your needs.
Encouragement and motivation: A positive approach to building your confidence in your abilities.
🔔 For Who?
This program is aimed at:

High school students wishing to strengthen their foundations in mathematics or learn to program.
University students in science or computer science looking to deepen their knowledge of math and programming.
Candidates for exams and competitions preparing for the Baccalaureate, a License, or entrance exams to the grandes écoles.
Programming enthusiasts wanting to learn the fundamentals of C, C++, Python or Java.
Adults in professional retraining wishing to acquire programming skills.
🚀 Ready to Succeed?
Join the "🎓 Academic Support – 📘 Maths from Secondary to Bachelor & 💻 Programming in C, C++, Python and Java!" and benefit from personalized support to achieve your goals.
Whether you want to improve your grades, pass your exams or develop programming skills, this program will give you knowledge, confidence and motivation.

Register today and take the first step towards success!
verified badge
This course is designed for anyone interested in learning data science using Python. It provides a hands-on introduction to fundamental data analysis tools such as NumPy, pandas, matplotlib, and seaborn. You'll learn how to manipulate datasets, create visualizations, and lay the foundations for statistical analysis and machine learning.

The course combines theory and practical exercises for effective, practical progress. No prior programming experience is necessary: we'll start with the basics to build solid, usable skills quickly.
verified badge
Private Programming Lessons for you / your family / your company employees
Programming Tutor – IGCSE & Computer Science Subjects
Deeper understanding, stronger results

• Lecturer at the American University AUC
• Over 20 years of experience in training students for government employees, oil companies (BP), food companies (Nestle), banks (CIB), and telecommunications companies (Vodafone).

• Teaching curricula, syllabuses, courses:
o IGCSE (Computer Science 0478, ICT 0417)
o Programming and computer courses for all educational levels (from primary to university)
o Microsoft Windows, Word, Excel, PowerPoint, Outlook, MS-Project
o Programming, C, C++, VB.NET, C#, Python, Database, SQL, MQL, VBA
o HTML, CSS, JavaScript, Angular
o Different database systems
o Data analysis using Excel
o Computer and Information Colleges Curricula
o Using artificial intelligence in life and work

• Master office applications to improve your job performance.
• Prepare yourself to work as a Front-End / Back-End / Full Stack Developer
• Theoretical and practical training for market requirements
• Don't miss out on technology. Lessons are designed for the elderly, in a simple and understandable way (use of computers and their programs, use of mobile phones, dealing with the Internet and social media).
• Lessons are available in person or online.
verified badge
I teach Python, C and C++ one to one, online or in person around Birmingham.

Most of my students fall into one of three groups. Some are at GCSE or A-Level and need to get comfortable with a language before an exam or a coursework deadline. Some are at university, usually on an engineering or computing degree, and have hit something specific that isn't clicking: pointers, memory, recursion, object orientation, or a project that won't compile. And some are adults starting from nothing, often because work has started asking them to automate things.

Lessons are built around code you can run. I'll ask what you're working on and where you got stuck, then we write something small together, break it on purpose, and work out what the error message is actually telling you. Reading error messages properly is half of programming and almost nobody teaches it.

Areas I cover regularly:

Python from the basics through functions, data structures, file handling, object orientation and libraries like NumPy and Pandas
C and C++, including the parts that cause most of the trouble: pointers, memory management, structs, classes and compilation
GCSE and A-Level Computer Science across all exam boards, including pseudocode, trace tables and written paper technique
A-Level NEA projects and university coursework, plus debugging sessions and code review
Embedded C for Arduino, ESP32 and microcontroller projects, which is the work I do professionally

After each lesson I send written notes covering what we did, worked through step by step, so you have something to revise from later rather than trying to remember what was on screen.

First session is free and lasts 30 minutes. We use it to work out what you need and whether I'm the right person for it. If I'm not, I'll say so and point you somewhere better.

Message me with what you're studying and what's giving you trouble, and I'll tell you honestly how I'd approach it.
verified badge
A- TOPICS YOU CAN EXPLORE AND MASTER:
1- PYTHON FOUNDATIONS
• Variables, data types, operators, conditional structures, loops, functions, modules, files, exceptions, and object-oriented programming
• Lists, tuples, dictionaries, sets, comprehensions, debugging, and writing clear, reusable, well-structured code
• Jupyter Notebook, Anaconda, Visual Studio Code, virtual environments, and package management

2 — PROGRAMMING, ALGORITHMS, AND COMPUTER SCIENCE FOUNDATIONS
• Algorithmic thinking, problem decomposition, pseudocode, flowcharts, procedural programming, object-oriented programming, recursion, and modular program design
• Fundamental data structures including arrays, lists, stacks, queues, dictionaries/hash tables, sets, trees, graphs, and their appropriate use
• Searching, sorting, traversal, algorithm efficiency, computational complexity, Big-O notation, debugging, testing, code organization, and problem-solving strategies
• Practical programming exercises ranging from beginner problems to university-level algorithmic and computational challenges

3- DATA PREPARATION AND EXPLORATION
• NumPy and pandas for importing, cleaning, transforming, filtering, grouping, reshaping, and merging data
• Missing values, duplicates, outliers, inconsistent formats, data leakage, and data-quality validation
• Exploratory data analysis using descriptive statistics, Matplotlib, Seaborn, and graphical interpretation

4- MATHEMATICAL FOUNDATIONS
• Linear algebra, vectors, matrices, derivatives, optimization, probability, and statistics
• Loss functions, gradients, distance measures, regularization, likelihood, and model complexity
• Mathematical concepts are explained according to the learner’s level and the requirements of the selected algorithms

5- SUPERVISED MACHINE LEARNING
• Linear and polynomial regression, logistic regression, and regularized models
• k-nearest neighbours, decision trees, random forests, gradient boosting, support vector machines, and Naive Bayes classifiers
• Classification, regression, model assumptions, decision boundaries, feature importance, and interpretation of results

6- UNSUPERVISED LEARNING
• Clustering using k-means, hierarchical clustering, and density-based methods
• Principal component analysis, dimensionality reduction, anomaly detection, and pattern or structure discovery
• Method selection, evaluation of data structure, and interpretation of results without predefined labels

7- MODEL EVALUATION AND IMPROVEMENT
• Training, validation, and test sets; cross-validation; hyperparameter optimization
• Accuracy, precision, recall, specificity, F1 score, ROC–AUC, confusion matrices, MAE, MSE, RMSE, and R2
• Underfitting, overfitting, bias–variance trade-off, class imbalance, feature engineering, feature selection, scaling, and regularization

8- DEEP LEARNING
• Neural-network foundations, activation functions, forward propagation, backpropagation, and gradient descent
• Multilayer perceptrons, convolutional neural networks, recurrent neural networks, and Transformer foundations
• TensorFlow, Keras, or PyTorch depending on the learner’s project and working environment

9- ARTIFICIAL INTELLIGENCE APPLICATIONS
• Natural language processing, text classification, embeddings, sentiment analysis, and foundations of language models
• Computer vision, image classification, fundamental principles of object detection, and image preprocessing
• Recommendation systems, forecasting, anomaly detection, intelligent automation, and decision-support applications

10- GENERATIVE AI AND LARGE LANGUAGE MODELS
• Transformer architecture, tokens, embeddings, attention mechanisms, prompt engineering, Retrieval-Augmented Generation (RAG), and model evaluation
• Use of artificial-intelligence APIs, vector databases, document-retrieval systems, and structured AI-enabled workflows when relevant
• Reliability, hallucinations, bias, privacy, responsible use, and appropriate human validation

11- TOOLS AND LIBRARIES
• Python, NumPy, pandas, Matplotlib, Seaborn, scikit-learn, SciPy, Statsmodels, TensorFlow, Keras, and PyTorch
• Jupyter Notebook, Anaconda, Visual Studio Code, Git, GitHub, SQL, Excel, and Power BI when useful to the project
• Additional libraries may be introduced depending on the selected specialization and dataset

12- PROJECTS, RESEARCH, AND INTERVIEW PREPARATION
• Complete projects covering data preparation, model development, evaluation, interpretation, and presentation of results
• University assignments, dissertations, theses, research projects, portfolio projects, technical interviews, and professional applications
• Code review, debugging, documentation, reproducibility, model comparison, and communication of results

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
B- PERSONALIZED TUTORING: LEARNING HOW TO REASON
Machine learning and artificial intelligence become much more accessible when mathematics, algorithms, Python code, data, and real-world applications are clearly connected.

My lessons help you move beyond simply copying code or using models as “black boxes.” You will learn how to define the problem correctly, prepare the data, select an appropriate algorithm, understand how it works, train and evaluate the model, diagnose errors, improve performance, and interpret results rigorously and responsibly.

Each lesson is personalized according to your current level, mathematical background, programming experience, dataset, university work, research project, interview preparation, or professional objective. We begin by identifying your existing knowledge, software environment, expected outcomes, and main conceptual or technical difficulties. We then establish a structured learning plan.

The first lesson combines a discussion of your background, objectives, and tutoring needs; an initial assessment of your current knowledge; personalized planning and organization of future sessions; and a short trial lesson to determine the most effective learning approach.

A typical session may include conceptual explanation, development of mathematical intuition, live coding, guided implementation, model evaluation, technical problem solving, and a concise summary of the next steps.

You may work with your own dataset, university assignment, research project, or professional problem, provided that confidential information is handled appropriately. I can also provide structured examples and datasets suited to your level.

My goal is not simply to help you run an algorithm. It is to help you understand why it is appropriate, how it learns from data, how to evaluate it correctly, why it may fail, and how to build a reliable, interpretable, and scientifically rigorous solution.
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
Learn Python with a structured, hands-on approach! Whether you are a absolute beginner looking to start coding, a student needing help with coursework, or a professional aiming to automate tasks, these lessons are tailored for you.What we will cover:
Core Fundamentals: Variables, loops, functions, and data structures.Object-Oriented Programming: Building reusable and clean code.Real-World Projects: Creating scripts, data analysis, or web scraping based on your goals.

Problem Solving: Learning how to debug and think like a programmer. Lessons are highly interactive. We will write code together from day one, and you will receive practical exercises after every session to build your confidence.
verified badge
Are you interested in learning Python but don't know where to start? This course is designed to help you understand the fundamentals of Python programming in a simple, practical, and enjoyable way.

Python is one of the most popular programming languages in the world. It is widely used in software development, automation, data analysis, artificial intelligence, and web development.

Whether you are a complete beginner, a student, or someone looking to develop new technical skills, these lessons will help you build a strong foundation in programming.

You will learn
1. Introduction to Python
2. Python Fundamentals
3. Conditional Statements and Loops
4. Working with Data
5. Functions and Practical Programming
6. Mini Projects
Good-fit Instructor Guarantee
favorite button
message icon
Contact Rafik