Fifteen years of teaching across four countries, and a platform built because a PDF behind a login is not a course.
Teaching
I have taught mathematics in Egypt, Australia, Kuwait and Qatar, to students who arrived with very different preparation and almost identical anxiety. The one thing that has held across all of it: students do not disengage because mathematics is hard. They disengage because they get stuck, alone, at eleven at night, and nothing in the course is awake.
What I am actually trying to fix
The lecture is not the problem. The problem is the hours between lectures.
A student sits down with a problem set. Three lines in, something does not work. They do not know whether they have made an algebra slip or misunderstood the method, and those two need completely different help. So they stop. By the next class the moment has passed, the question feels embarrassing to ask, and the gap quietly stays open. Do that for a semester and you have a student who believes they are bad at mathematics, when what actually happened is that nobody was there at eleven at night.
Everything I have built is aimed at that hour.
Why AI, and what I refuse to use it for
I am not interested in AI that delivers content faster. Content was never scarce. A student can already find a hundred videos on integration by parts, and the hundred videos are not what they are missing.
What has never been available at scale is the thing a good tutor does: look at your work, find the exact line where it went wrong, and ask you a question instead of telling you the answer. That is expensive, it does not scale by hiring, and it is the only part that reliably moves a student. So it is the part worth automating, and the only part I have automated.
Which means the tutor on the platform is built with a set of refusals:
- It does not give the answer to a problem that counts. It gives the next step, or a question. A student who gets answers from it learns nothing and finds out in the exam.
- It reads what the student actually wrote. Work on screen with a stylus, photograph a page, upload a problem: the point is to diagnose this attempt, not a normalised version of it that the model finds more familiar.
- It knows the course. It has read the same pages the student has and knows which topic they are on and what they have already got wrong, so nobody has to explain themselves from scratch every time.
- It is not the authority on whether an answer is right. Every answer that drives marking has been re-derived independently by a computer algebra system before a student ever meets it. A language model is good at teaching and not trustworthy at arithmetic, and the design should reflect that rather than hope.
That last one is the difference between a tool I would put in front of my own students and a demo.
Engagement is a schedule, not a feature
The other half is more boring and matters just as much. Students forget, on a curve that is well documented and almost never designed around. A course that teaches a topic once and tests it twelve weeks later is choosing to lose most of it.
So the platform keeps a profile: what is mastered, what needs review, and when. It brings a topic back just before it would be forgotten, and the interval grows each time it is remembered. The student experiences this as a short list of what to do next. That list is the whole engagement mechanism, and it works because it asks for ten minutes rather than an evening.
It is not only my courses
This matters to me more than the features.
The platform was built for my own teaching, but nothing in it is specific to me. A course is a set of content files, a problem bank and a manifest, and the system is being rebuilt so that several mathematics courses run side by side, each with its own students, its own content and its own record, and none able to see another's.
The aim is that any mathematics instructor can bring a syllabus and get a course out of it: chapters, worked examples, verified problems, a tutor grounded in their material. Not a licence, not a platform to be onboarded onto. The mathematics of a first calculus course is the same everywhere, and the work of making it teachable this way should be done once.
It is built and funded personally, and used with real classes before any part of it is made general. That order is deliberate. Software for teaching that has never survived a real semester is a prototype with a marketing page.
The platform
learn.mabroklab.com is where the courses live. In practice it gives a student:
- Worked examples that stay closed until they have tried the problem. Reading a solution is not the same as solving one.
- Practice that explains. Every question comes back with the reasoning, and answers are checked on the server, so the key is not sitting in the page.
- A tutor with context, as above.
- A pen. Write on screen with a stylus, zoom in like paper, and hand in written work to be read and marked.
- A verified problem bank, re-derived by computer algebra.
- A profile that follows them, with review scheduled rather than hoped for.
Students reach their course with a join code from their instructor.
Whether any of it works
Spring 2026 was the first term the platform carried a whole course. It is the part of this I was least sure about, so the evaluation asked about it directly, and these are the answers as students wrote them.
واداه الذكاء الاصطناعي عجيبة كونها ترد على سؤال الطالب من محتوى المادة من دون اي زيادة زي باقي ادوات الذكاء.
The AI tool is remarkable, in that it answers the student's question from the course content itself, without the padding you get from other AI tools.
A student, Spring 2026translated from Arabic
The website is incredibly helpful especially during quizzes and exams times because it's a really organized source of information so it helps organize my ideas as well. The practice questions after every section were really useful to make sure i grasp that concept before starting the next one. Last thing AI was genuinely a good addition as it focuses on this course so it know what is the background am asking from and it explains it really well.
A student, Spring 2026
كان مفيد جداً الحمدلله استخدمته عشان افهم ترتيب الأفكار والخطوات وكنت أشوف منه حل بعض الأسئلة وكمان الذكاء الاصطناعي استخدمته كثير كان ممتاز خاصة فكرة انه بقدر استفسر منه عن كل النقاط الي ما فهمتها او مش واضحة بالنسبة لي أو حتى النقاط الي بلخبط فيها، كان يساعدني في تنظيم معلوماتي وكيف اعرف متى استخدم كل طريقة.
It was very useful. I used it to understand the order of the ideas and the steps, and to see how some of the questions were solved. I also used the AI a great deal and it was excellent, especially being able to ask it about every point I had not understood, or that was unclear to me, or that I kept confusing. It helped me organise what I knew, and work out when to use each method.
A student, Spring 2026translated from Arabic
The second of those is the one I care about most. A general chatbot will answer a differential equations question from anywhere on the internet, confidently and sometimes wrongly. The point of building this rather than pointing students at an existing tool is that it answers from the course, and stops.
Courses
Calculus II
Differential Equations
Mathematics for Engineering
Foundations of Mathematics
Linear Algebra
Mathematics for Electrical Engineering
Also taught over the years: Calculus III, Real Analysis, PDEs, Numerical Analysis, Applied Mathematics, Physics and MATLAB programming.
What students say
Across four terms of the engineering mathematics course, 145 students answered an anonymous evaluation. The mean satisfaction was 9.4 out of 10, and 86 per cent gave a 9 or a 10. That is the number; the comments are more useful.
You have completely changed my perspective on math and calculus, which used to intimidate me. I was scared to take this course because everyone said it was difficult, but you made everything so much easier and more understandable. When I started this course, I was worried about my performance. I thought I would only manage to get a D or D+ grade. However, as soon as you started teaching, my fears started to fade away.
A student, Spring 2023
Explaining the mathematical reason for every topic or formula we study instead of just telling us to “memorize” how to solve the questions. That helps with understanding the topics more.
A student, Spring 2023
Patience to answer every question even if we aren’t able to phrase it correctly, being very elaborate and detailed, sparking the interest in the topic by giving real-life examples of applications of the topic.
A student, Spring 2023
The connection between the theoretical content of the course and the real world. Every time. Giving a summary of the last lesson[s] at the beginning of each lesson. SO helpful in maths.
A student, Spring 2023
The small recap on the start of every lecture on what we did previously. I feel like repeating them everyday really helps in sticking them in the head. I also really liked how you always connect what we study to why we need them as Engineers and where are we gonna use them in every major.
A student, Spring 2024
What I liked most about your teaching style was the use of mind maps, as they helped me connect ideas and see how different concepts relate to one another. Your explanations were very clear, and you took the time to explain each step in detail.
A student, Spring 2026
The written answers are also where the real criticism lives, and it is consistent: not enough time solving problems together in class, and a wish for one complete source rather than several. Both are fair, and both are on the list.
Approach
The method is not complicated: show where a result comes from, when it applies, and what it looks like when it goes wrong, then give people something to do with it. Everything above is an attempt to keep doing that at two in the morning, when I am asleep and the student is not.