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 December 2017
Instructor since December 2017
Java, C, C# Programming for University Students in all levels
course price icon
From 61 C$ /h
arrow icon
Learning computer programming for university students in all levels. Could be very basic or for advanced courses. Suitable for reinforcement for university courses of: Java. Object Oriented, Data Structure, Advanced Java, Software Engineering, Database, Web Development.. etc. Can be given in: Java, C, C#, Javascript

Course Outline:

Section 1 - Getting Started

Java Basics
Data Types
Arrays and References
Operators and Constructs
Java Objects
Dynamic Memory Allocation
Java Methods
Java Strings


Section 2 - Cla1sses and Objects

Class Design
Fields and Access Control
Constructors
Method Overloading
Static Methods
Inheritance
Method Overriding
Using final and super
Abstract Classes and Methods
Dynamic Binding
Polymorphism


Section 3 - Working with Classes

Using instanceof
Interfaces
Exception Handling
Exception Objects
throw points, throws clause
try, catch, finally


Section 4 - User Interfaces

Window Applications
Layout Managers
Event Handlers and Listeners
Anonymous Classes and Lambdas
Java Swing APIs
Basic GUI Controls
Menus and MenuBars


Section 5 - Generics and Collections

Why Use Generics?
Generic Classes and Interfaces
Generic Iterators
Collections
ArrayList, LinkedList, HashMap


Section 6 - Threads

Thread States
Extending the Thread class
Timer Thread
Implementing the Runnable interface


Section 7 - File I/O

Input and Output Streams
Binary and Text Files
Files and Directory Methods
Extra information
Lessons will be in English
Location
location type icon
Online from Israel
About Me
Led software projects and machine learning algorithms that solve real-life problems from scratch into production.

8 years of experience with software engineering , algorithm development and customer-facing experience.

Professional mentor and technical consultant; completed 220+ mentoring sessions with 5.0/5.0 rating on codementor.io; have been selected for 7 times as featured mentor of the week.

Developed ML algorithms for prediction of customer purchase behavior, customer segmentation, and future purchase status.

Masters graduate in computer vision and machine learning; introduced a new method of Multiple Object Tracking using Kernelized Correlation Filters which increased tracking accuracy by 4%.
Education
Bahçeşehir Üniversitesi
M.A. of Computer Engineering
2014 – 2017
Areas of Study: Computer Vision. Artificial Intelligence. Machine Learning. Cyber Security. Network Cryptography

Birzeit University
B.A. of Computer Engineering
2007 – 2012
Experience / Qualifications
Lead Software Engineer

Nov 2020 - Present (3 years 1 month)
Leading the technical design and implementation of a SAAS AI-based IT support tickets automatic
routing service. In addition to data ETL process and customer-facing follow up and support.
Technologies: Python, PostgreSQL, Node.js, Google Cloud GCP, Containers, Kubernetes,
Microservices, Airflow, Git


R&D Team Lead

2019 - Aug 2020 (1 year)
Leading a team of 4 developers in full-stack development and architecture of an e-commerce live
solution. In addition, developing machine learning algorithms for prediction of customer behavior.
Technologies: Node.js, Python, AWS, MongoDB, Redis, MySQL


Mentor
Codementor
Aug 2018 - Jul 2020 (2 years)
Providing software and technical consultancy, mentorship and support through one-to-one live sessions
for tasks in various technologies and programming languages.
Achieved more than 220 sessions with a rating of 5.0/5.0, and have been selected as a "Featured
Mentor" for six times.


Senior Software Developer

2017 - Jun 2018 (1 year)
Design, development and maintenance at 3 e-commerce projects. Starting from system design of
entities and components to implementation and maintenance.
Technologies: .NET, C#, SQL, Entity Framework, Blockchain Network, JavaScript, HTML, CSS
Achievements:
- Design and implementation of a Bitcoin mining web platform and Blockchain transaction
- Implementation and maintenance for e-commerce website


Full Stack Developer

2015 - 2017 (2 years)
Development and maintenance for e-commerce web site. Implementing payment methods API’s and all
other forms and views.
Technologies: .NET, C#, SQL,Javascript, HTML, CSS
Achievements:
o Integrated multiple payment methods and services: Papara, Wirecard Mobile Payment, Inininal
o Created new Coupon system for discounts and mailing and SMS messaging system for automated
daily messages


Software Engineer

May 2011 - Feb 2014 (2 years 10 months)
Worked on Cisco’s classification engine that recognizes a wide variety of applications, including webbased and other difficult-to-classify protocols that utilize dynamic TCP/UDP port assignments
Built Web applications in JavaScript. The application was used by company’s customers to display and
monitor web traffic and show different details in charts and tables
Age
Teenagers (13-17 years old)
Adults (18-64 years old)
Seniors (65+ years old)
Student level
Beginner
Intermediate
Advanced
Duration
30 minutes
60 minutes
The class is taught in
English
Arabic
Hebrew
Turkish
Reviews
Availability of a typical week
(GMT -04:00)
New York
at teacher icon
Online via webcam
Mon
Tue
Wed
Thu
Fri
Sat
Sun
00-04
04-08
08-12
12-16
16-20
20-24
Machine Learning is a first-class ticket to the most exciting careers in data analysis today. As data sources proliferate along with the computing power to process them, going straight to the data is one of the most straightforward ways to quickly gain insights and make predictions.

Machine learning brings together computer science and statistics to harness that predictive power. It’s a must-have skill for all aspiring data analysts and data scientists or anyone else who wants to wrestle all that raw data into refined trends and predictions.

This is a class that will teach you the end-to-end process of investigating data through a machine learning lens. It will teach you how to extract and identify useful features that best represent your data, a few of the most important machine learning algorithms, and how to evaluate the performance of your machine learning algorithms.
Read more
This course provides a step-by-step overview and instructions that help you get started with the SQL language. We use MSSQL, but you can use this course to get started with understanding data structures and techniques for all SQL engines including Access, Oracle and MySQL. We show you how to create SQL statements including SELECT, DELETE, UPDATE and INSERT. Then, we show you how to create and design tables. We show you how to create stored procedures, which allow you to run the same SQL statement multiple times without reprogramming your database. Finally, we show you how to use cursors, use transactions to preserve data integrity, and creating views for larger data sets.
Read more
Show more
arrow icon
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
Engineer and senior professor of engineering sciences provides support courses in analog and digital electronics at all levels, engineering schools. having a scientific and technical knowledge, five years of experience in the field of teaching, teaching and a sense of listening and analysis, I am able to help pupils and students and train them in the chapters of which they have difficulties. for more info please contact me
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
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
Don't settle for anything less than excellence.
I am an Aerospace Engineer with a Master's degree in Quantum Physics and have completed Ph.D. work at the University of Cambridge in Computational Physics. Additionally, I have 4 years of experience developing MATLAB and possess deep programming skills in MATLAB/Simulink family, C/C++, Fortran, and Python.

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

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

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

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

I have a highly flexible schedule and can adapt to accommodate your needs.
If you have any questions about my teaching method, availability, or pricing, please don't hesitate to reach out. I am here to assist you and provide the support you need.
verified badge
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
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
Discover programming lessons suitable for children! With a fun and educational approach, my lessons allow young minds to dive into the fascinating world of programming. Provide your children with an enriching learning opportunity in a fun and stimulating environment.
verified badge
Whether you are a beginner writing your first lines of code or an advanced learner tackling complex concepts, I tailor lessons to suit your needs. Together, we will focus on practical skills, problem-solving, and real-world projects to make programming intuitive and rewarding. Let’s work together to turn your goals into achievements!
verified badge
PhD Candidate in Informatics – Private Lessons & Pancyprian Exams

I am a PhD Candidate in Informatics and I offer private lessons in Informatics to High School students (Pancyprian Exams) as well as to University students, with an emphasis on correct understanding and methodical thinking.

Pancyprian Exams – Informatics

Systematic preparation with an emphasis on:
• understanding of the material
• correct algorithmic thinking
• methodology for solving problems
• analysis of old Pancyprian exam questions

We cover, for example: pseudocode, tables, repetitions, control structures and common exam errors.

Students & General Computing

Support in:
• Programming (C / C++ / Python)
• Operating Systems
• Computer Architecture
• Code Understanding & Debugging

In-person or online courses, with emphasis on understanding and proper study organization.

English text below

PhD Candidate in Computer Science – Private Tutoring & Pancyprian Exams

I am a PhD candidate in Computer Science offering private tutoring for high school students (Pancyprian Exams – Computer Science) and university students.

Pancyprian Exams – Computer Science

Structured exam preparation focusing on:
• understanding the syllabus
• correct algorithmic thinking
• exam-oriented problem-solving
• analysis of past Pancyprian exams

Topics include pseudocode, arrays, loops, control structures, and common exam mistakes.

University & General Computer Science

Support in:
Programming (C/C++/Python)
• Operating Systems
• Computer Architecture
• Code understanding and debugging

Lessons are available in person or online, with emphasis on understanding concepts rather than memorization.
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
Professeur agrégé de informatique, j’aide élèves et étudiants à réussir examens et concours. J’interviens aux classes préparatoires (MPSI, MP, PSI, ECS...) et jusqu’à l’université (Licence & Master en sciences ou économie). Ma méthode : comprendre le cours, pratiquer avec rigueur, structurer le raisonnement et ha des exercices et problèmes bien choisis. Chaque séance inclut exercices ciblés, conseils méthodologiques, et suivi personnalisé. Vous recevez un enregistrement vidéo plus un PDF annoté après chaque cours. Cours en ligne via Google Meet, 5 jours sur 7, avec flexibilité horaire. Je reste joignable entre les séances pour répondre aux questions. Contactez-moi pour un premier échange.
verified badge
Hi, I'm Elton, a Computer Science student at Hochschule München. I've been coding for eight years, and Java is the language I work with most. At university and in my own projects I build real applications with Java write tests with JUnit to make sure everything works. That's why I know both sides: how it feels to be stuck on a bug, and how to get unstuck.

I'm convinced that anyone can learn to program. Often all that's missing is a clear explanation that shows step by step how and why the code works.

Also important to me:

Take away your fear of programming and error messages
Explain topics in an understandable way, gladly several times and in different ways
Close gaps in your knowledge so new topics make sense
Create a relaxed learning situation where every question is welcome
Repeat and practice what you've learned with small exercises

I also help with Java for school curricula such as IB Computer Science, AP Computer Science A and Informatik at German Gymnasium, including homework, projects and exam preparation.
message icon
Contact Ibrahim
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
Engineer and senior professor of engineering sciences provides support courses in analog and digital electronics at all levels, engineering schools. having a scientific and technical knowledge, five years of experience in the field of teaching, teaching and a sense of listening and analysis, I am able to help pupils and students and train them in the chapters of which they have difficulties. for more info please contact me
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
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
Don't settle for anything less than excellence.
I am an Aerospace Engineer with a Master's degree in Quantum Physics and have completed Ph.D. work at the University of Cambridge in Computational Physics. Additionally, I have 4 years of experience developing MATLAB and possess deep programming skills in MATLAB/Simulink family, C/C++, Fortran, and Python.

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

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

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

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

I have a highly flexible schedule and can adapt to accommodate your needs.
If you have any questions about my teaching method, availability, or pricing, please don't hesitate to reach out. I am here to assist you and provide the support you need.
verified badge
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
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
Discover programming lessons suitable for children! With a fun and educational approach, my lessons allow young minds to dive into the fascinating world of programming. Provide your children with an enriching learning opportunity in a fun and stimulating environment.
verified badge
Whether you are a beginner writing your first lines of code or an advanced learner tackling complex concepts, I tailor lessons to suit your needs. Together, we will focus on practical skills, problem-solving, and real-world projects to make programming intuitive and rewarding. Let’s work together to turn your goals into achievements!
verified badge
PhD Candidate in Informatics – Private Lessons & Pancyprian Exams

I am a PhD Candidate in Informatics and I offer private lessons in Informatics to High School students (Pancyprian Exams) as well as to University students, with an emphasis on correct understanding and methodical thinking.

Pancyprian Exams – Informatics

Systematic preparation with an emphasis on:
• understanding of the material
• correct algorithmic thinking
• methodology for solving problems
• analysis of old Pancyprian exam questions

We cover, for example: pseudocode, tables, repetitions, control structures and common exam errors.

Students & General Computing

Support in:
• Programming (C / C++ / Python)
• Operating Systems
• Computer Architecture
• Code Understanding & Debugging

In-person or online courses, with emphasis on understanding and proper study organization.

English text below

PhD Candidate in Computer Science – Private Tutoring & Pancyprian Exams

I am a PhD candidate in Computer Science offering private tutoring for high school students (Pancyprian Exams – Computer Science) and university students.

Pancyprian Exams – Computer Science

Structured exam preparation focusing on:
• understanding the syllabus
• correct algorithmic thinking
• exam-oriented problem-solving
• analysis of past Pancyprian exams

Topics include pseudocode, arrays, loops, control structures, and common exam mistakes.

University & General Computer Science

Support in:
Programming (C/C++/Python)
• Operating Systems
• Computer Architecture
• Code understanding and debugging

Lessons are available in person or online, with emphasis on understanding concepts rather than memorization.
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
Professeur agrégé de informatique, j’aide élèves et étudiants à réussir examens et concours. J’interviens aux classes préparatoires (MPSI, MP, PSI, ECS...) et jusqu’à l’université (Licence & Master en sciences ou économie). Ma méthode : comprendre le cours, pratiquer avec rigueur, structurer le raisonnement et ha des exercices et problèmes bien choisis. Chaque séance inclut exercices ciblés, conseils méthodologiques, et suivi personnalisé. Vous recevez un enregistrement vidéo plus un PDF annoté après chaque cours. Cours en ligne via Google Meet, 5 jours sur 7, avec flexibilité horaire. Je reste joignable entre les séances pour répondre aux questions. Contactez-moi pour un premier échange.
verified badge
Hi, I'm Elton, a Computer Science student at Hochschule München. I've been coding for eight years, and Java is the language I work with most. At university and in my own projects I build real applications with Java write tests with JUnit to make sure everything works. That's why I know both sides: how it feels to be stuck on a bug, and how to get unstuck.

I'm convinced that anyone can learn to program. Often all that's missing is a clear explanation that shows step by step how and why the code works.

Also important to me:

Take away your fear of programming and error messages
Explain topics in an understandable way, gladly several times and in different ways
Close gaps in your knowledge so new topics make sense
Create a relaxed learning situation where every question is welcome
Repeat and practice what you've learned with small exercises

I also help with Java for school curricula such as IB Computer Science, AP Computer Science A and Informatik at German Gymnasium, including homework, projects and exam preparation.
Good-fit Instructor Guarantee
favorite button
message icon
Contact Ibrahim