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 November 2020
Instructor since November 2020
Computer Programming - Python - Java - C# - JavaScript - C++
course price icon
From 69.98 C$ /h
arrow icon
Computer Science courses:
Schools:

- AULA Escola
- Escuela Suiza
- Zürich Schule Barcelona
- The British School BCN
- St. Peter’s School

In my class, your children will learn essential programming concepts and develop problem-solving skills that will help them in their future endeavors. No prior background in mathematics or computer science is necessary to get started with coding. With dedication and practice, your child will be surprised at how coding can change their life's trajectory.

- Algorithms
- Computational complexity
- Python, C++

--------


My classes will be in English.

I have over 15 years of experience in software development using multiple languages and have completed several medium and large scale projects.

Teaching languages: Python,C++, Java, C#, VBA, VB.NET

Education:

M.Sc. in Computer science (MIRI) - Advanced Computing
Universidad Politécnica de Catalunya - UPC (BarcelonaTech)

M.Sc. in Civil Engineering - Earthquake Engineering
Sadra Institute of Higher Education, Tehran, Iran

Experience / Qualifications
Enterprise Software Architecture from Tahlil Dade Institute. (2015-Tehran)

Some titles in this course:

- Test-Driven Development (TDD)
- Agile software development concepts
- Domain-Driven Design (DDD)
- Common design patterns
Extra information
Bring your laptop.
Location
green drop pin icon
|
Use Ctrl + wheel to zoom!
zoom in iconzoom out icon
location type icon
At teacher's location :
  • Carrer de València, Barcelona, Spain
About Me
Date of Birth: August 21, 1981, Tehran
Marital Status: Married

I have over 15 years of experience in software development using multiple languages and have completed several medium and large scale projects.

Teaching languages: Python, Java, C#, VBA, VB.NET
Education
M.Sc. in Computer science (MIRI) - Advanced Computing
Universidad Politécnica de Catalunya - UPC (BarcelonaTech)

M.Sc. in Civil Engineering - Earthquake Engineering
Sadra Institute of Higher Education, Tehran, Iran
Experience / Qualifications
Enterprise Software Architecture from Tahlil Dade Institute. (2015-Tehran)

Some titles in this course:

- Test-Driven Development (TDD)
- Agile software development concepts
- Domain-Driven Design (DDD)
- Common design patterns
Age
Teenagers (13-17 years old)
Adults (18-64 years old)
Student level
Beginner
Intermediate
Advanced
Duration
60 minutes
90 minutes
The class is taught in
English
Reviews
Availability of a typical week
(GMT -05:00)
New York
at teacher icon
At teacher's location
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
I'm offering these courses because I'd like to get some hands-on experience tutoring Computer Science Fundamentals. I'm an experienced educator with a Masters from Columbia University Teachers College and extensive tutoring experience from Geometry to SAT Math. I create instructional materials for companies in New York City and provide private tutoring for clients.
verified badge
An experienced tutor with 7+ years experience of tutoring in Amsterdam, Spain and India. I have experience teaching IB students, bachelor's and master's student.
- I adapt to the learning style of the student.
- Maths is fun if its taught with right examples.
verified badge
I am a professor of computer engineering with a master's degree in applied statistics. I teach mathematics, statistics and computer engineering and telecommunications subjects such as programming, databases, etc.
I have more than 10 years of experience teaching these subjects, the pass rate is high. I help to understand concepts, to prepare exams and practices.
I have a lot of experience in UOC students.
verified badge
Having 9 years experienced in IT industry, with 6 years in Servicenow.
Agenda of System Admin crash course Session :
What is ServiceNow
ITIL and ITSM
User Interface and Navigation
ICP Form
Self-Service and Service Catalog
Knowledge bases and Articles
Reporting and Dashboards
Visual task boards
Other admin accesses Development Crash course, day courses, REST Integration and Service Portal sessions are also taken.
verified badge
I'm a Mathematics & Computer Science student wishing to share my passion for these topics with others! I find it essential to present the topic intuitively and pleasantly, with plenty of examples and visual aids.

I teach the following courses:
Mathematics: Calculus, Discrete Mathematics, Galois Theory, Group Theory, Linear Algebra, Real & Complex Analysis, and Topology.
Computer Science: Artificial Intelligence, C/C++, Data Structures, Data Science, HTML5, Java, and Python.
verified badge
This course is suitable for all levels and will be adapted according to your projects, the principles are applicable to any type of programming whether for web development, application programming or video games.

The same principles therefore apply to the CMS Joomla, Drupal and the online commerce platforms WooCommerce, Magento, Prestashop and Shopify themes.

Introduction to Web Development
- Overview of web technologies
- Client side vs server side development

HTML (Hypertext Markup Language)
- Structuring web content
- HTML5 Features and Tags

CSS (Cascading Style Sheets)
- Formatting of web pages
- CSS and SCSS

JavaScript, PHP, MySQL
- Fundamentals of JavaScript, PHP and MySQL
- DOM manipulation
- Asynchronous and AJAX programming

Front-End Development
- Responsive web design
- Cross-browser compatibility
- Using CodeKit

Back-End Development
- Choose a suitable web hosting
- Server management and hosting options
- Use of SFTP server
- Create and manage MySQL databases
- Web security, how to avoid hacks
- SEO and speed optimization

WordPress
- Configuration and installation of WordPress
- Installation and customization of themes (Avada in particular)
- Installation and configuration of WooCommerce
- How to manage payments on WooCommerce
- Adapt the colors of a plug-in

SilverStripe
- Install via composer
- Configuration and installation of SilverStripe
- Create a custom theme
- Create a custom back end for SilverStripe
- Create new objects in OOP
- Create templates to visualize objects
- Program routines in PHP and JQuery
verified badge
You will learn to model, texture, rig, animate and program for video games with Blender, Unity software and more!

UNITY: Application to develop 2D and 3D video games
BLENDER: Application to model, texturize, animate, riggear in 3D
verified badge
Learn programming step by step, tailored to your needs. With more than 25 years of experience in teaching and eLearning content creation, I provide personalized lessons that adapt to your pace.

You will build strong foundations in programming (Python, Java, C, JavaScript), understand algorithms and data structures, and progress to advanced concepts like web development and databases.

The lessons include practical exercises, problem-solving strategies, and project-based learning so you can apply your knowledge immediately – whether you’re a beginner, a university student, or a professional who wants to upgrade skills.
verified badge
Robotics classes focused on building and programming the official First Lego League robot.
Aimed at all levels: from those who want to learn to program and design from scratch, to those who want to strengthen and expand their knowledge.

I have several years of experience in this competition and in building and programming robots, as well as one year of experience teaching specialized robotics classes for children.
My goal is to pass on the passion that motivated me to inspire other students. I'm currently a computer engineering student.
verified badge
I am a telecommunications engineer specializing in audiovisuals, a career choice born from my passion and devotion to music. However, life took me down a different path, and I ended up developing my career in the world of computer science. Over the years, I have worked in a variety of areas within this field, which has allowed me to acquire a comprehensive view of technology. In recent years, I have specialized in cloud infrastructure management, a field that demands not only solid programming skills but also a deep understanding of computer infrastructure, communications, and systems. Although my current focus is not as centered on daily programming, the technical background that comes with my position allows me to maintain a strong and up-to-date foundation in programming languages and their application in complex environments. This balance between programming, infrastructure, and my audiovisual background allows me to offer a unique perspective when teaching, making technical concepts more accessible and applicable to my students, regardless of their experience level.

In my programming classes, I adapt the content and methodology to all types of learners, from beginners to those with some experience. However, my approach is especially geared towards first-year engineering students, who often find programming a complex and abstract subject. I know that the leap into programming can seem overwhelming at first, especially when the concepts seem intangible. That's why my goal is to simplify these concepts, bringing them closer to you in a clear and practical way. Using languages like Python, C++, SQL, and Java, we'll break down the fundamentals of programming, focusing on real-world examples and applications that will help you understand the "why" behind each line of code. In addition to these subjects, I also offer classes in cloud design and programming. As a telecommunications engineer specializing in audiovisuals, my approach is dynamic and visual, helping you connect the abstract with the concrete. I'll guide you step by step, making the logic and structure of the code meaningful and accessible. You'll soon see how programming ceases to be a barrier and becomes a powerful tool in your career!
verified badge
This class should help students learn how to write programs and, more importantly, how to think while programming.

It covers core ideas such as variables, conditions, loops, functions, and debugging, with explanations adjusted to the student’s level and chosen language.

The class welcomes all levels, from first-time programmers to students who want help with assignments or a deeper understanding. Students can request specific languages or topics, and lessons can follow school or university curricula.
message icon
Contact Ali
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
I'm offering these courses because I'd like to get some hands-on experience tutoring Computer Science Fundamentals. I'm an experienced educator with a Masters from Columbia University Teachers College and extensive tutoring experience from Geometry to SAT Math. I create instructional materials for companies in New York City and provide private tutoring for clients.
verified badge
An experienced tutor with 7+ years experience of tutoring in Amsterdam, Spain and India. I have experience teaching IB students, bachelor's and master's student.
- I adapt to the learning style of the student.
- Maths is fun if its taught with right examples.
verified badge
I am a professor of computer engineering with a master's degree in applied statistics. I teach mathematics, statistics and computer engineering and telecommunications subjects such as programming, databases, etc.
I have more than 10 years of experience teaching these subjects, the pass rate is high. I help to understand concepts, to prepare exams and practices.
I have a lot of experience in UOC students.
verified badge
Having 9 years experienced in IT industry, with 6 years in Servicenow.
Agenda of System Admin crash course Session :
What is ServiceNow
ITIL and ITSM
User Interface and Navigation
ICP Form
Self-Service and Service Catalog
Knowledge bases and Articles
Reporting and Dashboards
Visual task boards
Other admin accesses Development Crash course, day courses, REST Integration and Service Portal sessions are also taken.
verified badge
I'm a Mathematics & Computer Science student wishing to share my passion for these topics with others! I find it essential to present the topic intuitively and pleasantly, with plenty of examples and visual aids.

I teach the following courses:
Mathematics: Calculus, Discrete Mathematics, Galois Theory, Group Theory, Linear Algebra, Real & Complex Analysis, and Topology.
Computer Science: Artificial Intelligence, C/C++, Data Structures, Data Science, HTML5, Java, and Python.
verified badge
This course is suitable for all levels and will be adapted according to your projects, the principles are applicable to any type of programming whether for web development, application programming or video games.

The same principles therefore apply to the CMS Joomla, Drupal and the online commerce platforms WooCommerce, Magento, Prestashop and Shopify themes.

Introduction to Web Development
- Overview of web technologies
- Client side vs server side development

HTML (Hypertext Markup Language)
- Structuring web content
- HTML5 Features and Tags

CSS (Cascading Style Sheets)
- Formatting of web pages
- CSS and SCSS

JavaScript, PHP, MySQL
- Fundamentals of JavaScript, PHP and MySQL
- DOM manipulation
- Asynchronous and AJAX programming

Front-End Development
- Responsive web design
- Cross-browser compatibility
- Using CodeKit

Back-End Development
- Choose a suitable web hosting
- Server management and hosting options
- Use of SFTP server
- Create and manage MySQL databases
- Web security, how to avoid hacks
- SEO and speed optimization

WordPress
- Configuration and installation of WordPress
- Installation and customization of themes (Avada in particular)
- Installation and configuration of WooCommerce
- How to manage payments on WooCommerce
- Adapt the colors of a plug-in

SilverStripe
- Install via composer
- Configuration and installation of SilverStripe
- Create a custom theme
- Create a custom back end for SilverStripe
- Create new objects in OOP
- Create templates to visualize objects
- Program routines in PHP and JQuery
verified badge
You will learn to model, texture, rig, animate and program for video games with Blender, Unity software and more!

UNITY: Application to develop 2D and 3D video games
BLENDER: Application to model, texturize, animate, riggear in 3D
verified badge
Learn programming step by step, tailored to your needs. With more than 25 years of experience in teaching and eLearning content creation, I provide personalized lessons that adapt to your pace.

You will build strong foundations in programming (Python, Java, C, JavaScript), understand algorithms and data structures, and progress to advanced concepts like web development and databases.

The lessons include practical exercises, problem-solving strategies, and project-based learning so you can apply your knowledge immediately – whether you’re a beginner, a university student, or a professional who wants to upgrade skills.
verified badge
Robotics classes focused on building and programming the official First Lego League robot.
Aimed at all levels: from those who want to learn to program and design from scratch, to those who want to strengthen and expand their knowledge.

I have several years of experience in this competition and in building and programming robots, as well as one year of experience teaching specialized robotics classes for children.
My goal is to pass on the passion that motivated me to inspire other students. I'm currently a computer engineering student.
verified badge
I am a telecommunications engineer specializing in audiovisuals, a career choice born from my passion and devotion to music. However, life took me down a different path, and I ended up developing my career in the world of computer science. Over the years, I have worked in a variety of areas within this field, which has allowed me to acquire a comprehensive view of technology. In recent years, I have specialized in cloud infrastructure management, a field that demands not only solid programming skills but also a deep understanding of computer infrastructure, communications, and systems. Although my current focus is not as centered on daily programming, the technical background that comes with my position allows me to maintain a strong and up-to-date foundation in programming languages and their application in complex environments. This balance between programming, infrastructure, and my audiovisual background allows me to offer a unique perspective when teaching, making technical concepts more accessible and applicable to my students, regardless of their experience level.

In my programming classes, I adapt the content and methodology to all types of learners, from beginners to those with some experience. However, my approach is especially geared towards first-year engineering students, who often find programming a complex and abstract subject. I know that the leap into programming can seem overwhelming at first, especially when the concepts seem intangible. That's why my goal is to simplify these concepts, bringing them closer to you in a clear and practical way. Using languages like Python, C++, SQL, and Java, we'll break down the fundamentals of programming, focusing on real-world examples and applications that will help you understand the "why" behind each line of code. In addition to these subjects, I also offer classes in cloud design and programming. As a telecommunications engineer specializing in audiovisuals, my approach is dynamic and visual, helping you connect the abstract with the concrete. I'll guide you step by step, making the logic and structure of the code meaningful and accessible. You'll soon see how programming ceases to be a barrier and becomes a powerful tool in your career!
verified badge
This class should help students learn how to write programs and, more importantly, how to think while programming.

It covers core ideas such as variables, conditions, loops, functions, and debugging, with explanations adjusted to the student’s level and chosen language.

The class welcomes all levels, from first-time programmers to students who want help with assignments or a deeper understanding. Students can request specific languages or topics, and lessons can follow school or university curricula.
Good-fit Instructor Guarantee
favorite button
message icon
Contact Ali