Skip to main content
Mohammed Ehab ElNomanyPERSONAL ENGLISH & STEM TUTORING

PROGRAMMING · COMPUTER SCIENCE · UNIVERSITY

Learn to think through code, not just copy it.

Online programming and computer science tutoring that turns confusing errors, abstract algorithms and technical lectures into problems you can reason through and solve yourself.

Discuss a learning plan Online first · Egypt in-person requests considered individually

THE LEARNING APPROACH

A good answer matters. The reasoning matters more.

Programming can feel overwhelming when code compiles one moment and fails the next. Computer science courses add a further layer: algorithms, databases, operating systems and systems concepts that make sense only when the underlying ideas are clear.

I teach by unpacking a problem, tracing a small example, checking assumptions and working toward an explanation the learner can reproduce independently. School-level programming and selected university topics are both considered, with the exact course and difficulty agreed first.

WHAT WE CAN WORK ON

A clearer route through the subject.

Topic selection follows the learner's actual course, level and starting point.

01

Python and Java fundamentals

Variables, control flow, functions, objects, data representation, testing and writing code that is understandable rather than merely functional.

02

Algorithms and data structures

Trace logic step by step, compare alternative approaches, reason about efficiency, and learn why a data structure is appropriate for a particular problem.

03

Databases, networks and systems

Support for SQL, data modelling, networking concepts, operating systems and introductory software engineering, aligned to the student's actual course requirements.

04

Selected data science and AI foundations

Where appropriate, explore descriptive statistics, data preparation, basic modelling concepts and evaluation. Advanced or specialist modules are discussed individually before commitment.

HOW A SESSION WORKS

A plan that responds to real progress.

Sessions can be private, paired or small-group when the learners are suitably matched. Frequency and programme length are agreed personally; financial quotations remain private.

  1. 01 · Make the problem concrete

    Start from a small input, error message or conceptual example to understand the source of the difficulty.

  2. 02 · Trace and explain

    Walk through a program or algorithm, ask why it behaves that way, and practise debugging with increasing independence.

  3. 03 · Generalise the lesson

    Apply the same idea to another example, test edge cases and agree on focused practice between meetings.

QUESTIONS FAMILIES ASK

Useful answers, before you decide.

Can you help with a university programming assignment?

I can explain concepts, review the student's reasoning and help troubleshoot code while preserving academic integrity. I do not complete graded work for students.

Do I need experience before starting Python or Java?

No. We can begin with core programming ideas and progress at a suitable pace after understanding the learner's goals.

Do you teach every computer science module?

No blanket promise. Send the exact module topics or learning outcomes. I confirm subject fit and level before proposing sessions.

START WITH A CONVERSATION

Tell me what you're working towards.

Share the subject, year or university module, curriculum and one goal. For a school-age learner, a parent or guardian should make contact. I'll help you understand the next step and provide a personal quote when the fit is clear.

Get in touch