AIC / START / 01
AI literacy
How AI works and where it fails, for younger pupils.
Open the syllabusGermany · AI for pupils · Ages 13 to 19
A pupil in Germany can finish school having used AI tools every week and never once having trained a model. That is not a lack of talent. Whether Informatik is even on the timetable depends on the Land, and the maths that explains how a model learns sits in a different classroom, under a different name. This page joins the two up, and shows a model learning a rule with nothing but school maths and a few lines of Python.
Teaching live since 2020 · 10,000+ students worldwide · models trained by the pupil, never pasted in
The short answer
The AI course for school students in Germany at Modern Age Coders is a live online course in English for pupils aged 13 to 19. Pupils learn Python, then train and test real models using the derivatives and probability they meet in school maths. A regular mentor matches each pupil's pace and accent, in a group of fifteen to twenty or one to one, and prepares projects fit for the BWKI or Jugend forscht.
Three ways in
Most pupils start with the first. A younger pupil with no Python yet may begin with the second, and a pupil aiming at a competition adds the third.

AIC / 01
The main course for 13 to 18. From the first loop in Python to models a pupil trains, measures and can explain to a jury.
Open the syllabus →
AIC / 02
For a pupil who has never programmed. Every AI idea on this page needs Python first, and this course builds it properly.
Open the syllabus →
AIC / 03
The Informatik-Biber, the Bundeswettbewerb Informatik and the BWKI, with practice problems we write ourselves.
Open the syllabus →What school gives
Pupils meet AI as a topic in many subjects, but building a model is computer science, and how many pupils take computer science in the upper school differs enormously between Länder.
In 2026 the KMK, the conference of the Länder education ministers, adopted an update of its competence framework Bildung in der digitalen Welt that adds competences related to artificial intelligence. That covers how pupils use, question and judge AI across their subjects.
It does not mean that a pupil writes code. A history lesson that asks whether a chatbot answer is reliable is part of that framework, and so is a German lesson on AI-written text.
The Gesellschaft für Informatik counts, in its Informatik-Monitor 2026/27, how many pupils take Informatik in the Qualifikationsphase of the Gymnasium upper school. Across Germany the average is about 15 percent.
Behind that average the Länder sit far apart. In the 2024/25 figures, Sachsen and Mecklenburg-Vorpommern are above 40 percent, while Baden-Württemberg is at 7 percent and Niedersachsen at 9.
| Land | Share taking Informatik |
|---|---|
| Sachsen | 43 % |
| Mecklenburg-Vorpommern | 40 % |
| Thüringen | 33 % |
| Rheinland-Pfalz | 26 % |
| Hamburg | 22 % |
| Brandenburg | 15 % |
| Saarland | 15 % |
| Nordrhein-Westfalen | 14 % |
| Sachsen-Anhalt | 14 % |
| Berlin | 12 % |
| Schleswig-Holstein | 12 % |
| Bayern | 11 % |
| Hessen | 10 % |
| Niedersachsen | 9 % |
| Baden-Württemberg | 7 % |
Source: Gesellschaft für Informatik, Informatik-Monitor 2026/27, map of the gymnasiale Oberstufe, each Land marked "Stand 2024/25". Read on 3 November 2026. Bremen is left out because the same page gives two figures for it that do not agree.
Read the table the other way round and it says that in most Länder, eight or nine pupils in every ten leave the Gymnasium without a single Informatik course in their final two years. Many of them are strong in maths. They simply never had the place where maths turns into a program that learns. Our AI course is meant for exactly those pupils, and also for the ones who do take Informatik and want to go further than the school course has time for. It runs alongside school; the school course is the one that counts for grades and the Abitur.
The maths already in the timetable
Far less new maths than people fear. The three areas of the German Abitur maths exam are the same three areas that machine learning is built from.
The IQB, the Länder institute that coordinates the shared Abitur task pools, describes the structure of the maths exam in its own paper on the pool tasks: a Part A without aids and a Part B where aids are allowed, and both parts contain tasks on each of Analysis, Analytische Geometrie/Lineare Algebra and Stochastik. Shared pools for maths have existed since the 2017 exam year. A pupil in the Oberstufe therefore spends two years on precisely the topics our course leans on, usually without hearing what they are for outside school.
| Abitur area | What the pupil does at school | What it does in machine learning |
|---|---|---|
| Analysis | Derivatives, slopes, finding a minimum | Gradient descent: walk downhill on the error until it is as small as it gets |
| Analytische Geometrie / Lineare Algebra | Vectors, lines, planes, dot products | Every input becomes a vector; a simple model is a weighted sum, a dot product |
| Stochastik | Probability, expected value, distributions | Judging a model: how often is it right, and how sure should we be? |
Source for the three areas: IQB, Beschreibung der Struktur der Aufgaben für die Abiturprüfung im Fach Mathematik, and the IQB Abitur page on the shared pools. The right-hand column is our own teaching map, not an IQB statement.
A younger pupil has not met derivatives yet, and does not need to. We start with what they know: a line through points, an average, a percentage. The idea that a model guesses, measures how wrong it is and adjusts can be shown with a slope and a ruler long before the word derivative appears.
When the derivative arrives in Klasse 10 or 11, it has an obvious use already waiting.
An Oberstufe pupil can follow every line of the example below on paper. The two partial derivatives in it are a small step beyond the school course, and we take that step slowly, in English, with the German words beside the English ones where it helps: Ableitung, Steigung, Tiefpunkt.
Pupils often tell us that their maths lessons make more sense once they have watched a model use them.
Worked example, ours
Give a program pairs of temperatures in Celsius and Fahrenheit and nothing else. It starts by guessing zero for everything, and by following the slope of its own error it finds the rule on its own. How fast it gets there depends on one number: the step size.
The model is a straight line, prediction = w times Celsius + b. At the start w and b are both zero, so every prediction is zero and the average squared error, the loss, is 3,290.7.
At each step the program works out the two partial derivatives of the loss, which say in which direction w and b should move to make the error smaller, and moves them a little that way. The size of that move is the learning rate.
Large language models and image recognisers have billions of numbers instead of two, but they are trained by the same idea: measure the error, take its derivative, step downhill, repeat.
Every engineer who trains a model has to choose a step size, and a bad choice wastes days or ruins the run. A pupil can see both failures here in a second.
# Celsius readings and the Fahrenheit values that go with them (our own example data)
celsius = [-10, -3, 0, 4, 9, 15, 21, 28, 34]
fahrenheit = [c * 9 / 5 + 32 for c in celsius]
n = len(celsius)
def loss(w, b):
return sum((w * c + b - f) ** 2 for c, f in zip(celsius, fahrenheit)) / n
def step(w, b, rate):
# the two partial derivatives of the loss, straight from Oberstufe Analysis
dw = sum(2 * (w * c + b - f) * c for c, f in zip(celsius, fahrenheit)) / n
db = sum(2 * (w * c + b - f) for c, f in zip(celsius, fahrenheit)) / n
return w - rate * dw, b - rate * db
for rate in [0.0001, 0.001, 0.003]:
w, b = 0.0, 0.0
for _ in range(5000):
w, b = step(w, b, rate)
print("rate", rate, " w =", round(w, 3), " b =", round(b, 3), " loss =", f"{loss(w, b):.3g}")It prints rate 0.0001 w = 2.399 b = 14.837 loss = 183, then rate 0.001 w = 1.802 b = 31.935 loss = 0.00259 and rate 0.003 w = 1.8 b = 32.0 loss = 4.18e-14.
The true rule is Fahrenheit = 1.8 times Celsius + 32, and nobody typed it in. With the smallest step the model is still far off after 5,000 steps: it has found a slope near 2.4 and an offset near 15, a line that is roughly right in the middle of the data and wrong at the ends. With a step ten times larger it is almost there. With 0.003 it has found 1.8 and 32 to the last digit shown. So is a bigger step always better? Version 2 answers that.
for rate in [0.003, 0.005]:
w, b = 0.0, 0.0
history = []
for _ in range(6):
w, b = step(w, b, rate)
history.append(f"{loss(w, b):.0f}")
print("rate", rate, " loss after steps 1 to 6:", ", ".join(history))Run after Version 1. It prints rate 0.003 loss after steps 1 to 6: 2672, 2195, 1827, 1543, 1324, 1154 and rate 0.005 loss after steps 1 to 6: 12669, 55174, 247728, 1119912, 5070438, 22964118.
| Learning rate | Steps until the loss is under 0.01 | What happens |
|---|---|---|
| 0.0001 | 44,584 | Learns, but very slowly |
| 0.001 | 4,456 | Learns steadily |
| 0.003 | 1,484 | Learns fastest of the three |
| 0.005 | Never | Each step overshoots; the loss grows about four to five times per step |
The data, the code and every number in this section are our own, run with Python 3 on 3 November 2026. The temperatures are a teaching example, not measurements.
Between 0.003 and 0.005 lies a cliff. Our calculation puts the edge at about 0.0032: beyond that, every step jumps across the valley of the error and lands higher up the other side, and the next step jumps further. The edge is set by how steeply the loss curves, and the Celsius values up to 34 make it curve steeply in the w direction. That is why engineers rescale their inputs before training, and why a pupil who understands a second derivative understands a real training problem. We work through that argument with Oberstufe pupils on paper after they have watched it happen on screen.
Competitions
Three established routes accept a pupil's own AI work. They differ in age, in what they want to see and in how you enter.
| Route | Who can enter | What is handed in | Dates and entry |
|---|---|---|---|
| Bundeswettbewerb Künstliche Intelligenz (BWKI), Tübingen AI Center | Pupils in Sekundarstufe I and II, alone or in a team | Written documentation, runnable code and a video pitch; German or English | 2026 round: registration from 1 March 2026, projects due 20 September 2026, final 13 November 2026 |
| Jugend forscht, field Mathematik/Informatik | Ages 15 to 21; Jugend forscht junior up to 14, from Klasse 4 | A written research report, then a stand at the contest | Online registration by 30 November; the site already lists the Bundeswettbewerb 2027 |
| Dr. Hans Riegel-Fachpreise | Pupils shortly before the Abitur or Matura | A final paper with its focus in subjects including Mathematik or Informatik | Run separately by each partner university for its region |
Sources: bw-ki.de (Teilnahmebedingungen and the 2026 timeline); jugend-forscht.de (age groups, the timeline at a glance, the Mathematik/Informatik field); hans-riegel-fachpreise.com (competition page and checklist). Read on 3 November 2026.
The BWKI wants a machine-learning method at the centre and says so in its conditions. Jugend forscht is a research competition: the question and how carefully it is answered matter more than the size of the model. The Riegel prizes reward a written school paper, such as a Facharbeit or seminar paper, judged by a university; the organisers say about 300 prize winners are honoured each year.
The BWKI also runs an award for schools, KI-Schule des Jahres, whose new round started on 1 August 2026.
We are not connected with the Tübingen AI Center, Jugend forscht, the Dr. Hans Riegel-Stiftung or any school, and we never enter work on a pupil's behalf. The project and the entry are the pupil's own.
What we teach is the craft underneath: a precise question, data the pupil is allowed to use, a model they can explain line by line, an honest test, and a write-up a jury can follow. A pupil who can explain the step-size table above to a stranger is well on the way.
Age rules
Each provider sets its own minimum age in its terms, and a course for school students has to follow them.
Anthropic's consumer terms say, in their own words: "You must be at least 18 years old or the minimum age required to consent to use the Services in your location, whichever is higher." So Claude is for adults only, and we never use it with a pupil under 18, in class or as homework. Other tools have different rules; OpenAI, for example, allows teenagers with a parent's permission. We keep every provider's quoted rule, with the date it was read, in our AI tools age guide.
The age rules matter less in our course than parents expect, because the course does not run on chatbots. Pupils write the model themselves, in Python, on their own computer, as in the example above. No account with an AI company is needed for any of it. Where a pupil wants to try a chatbot for a project, the mentor checks the provider's rule first and the family decides.
Class times
After school on weekdays and at weekends. Mentors are in India, a few hours ahead, which puts German afternoons in the Indian evening.
| Germany | India, until 28 March 2027 | India, from 28 March 2027 |
|---|---|---|
| 16:15 | 20:45 | 19:45 |
| 18:15 | 22:45 | 21:45 |
| Saturday 12:15 | 16:45 | 15:45 |
| Sunday 10:00 | 14:30 | 13:30 |
German clocks run at UTC+1 (MEZ) through the winter and UTC+2 (MESZ) through the summer, as the Einheitenzeitgesetz sets out; they went back on 25 October 2026 and go forward on 28 March 2027. India never changes from UTC+5:30, which leaves it 4 hours 30 ahead of Germany in winter and 3 hours 30 in summer. The times are examples, not fixed batches.
The booking form shows trial slots in the time of your own device. In the weeks before the Abitur or a class test a one-to-one pupil can move lessons, and a group pupil can catch up with the mentor afterwards.
Progress
The stages we use to place a pupil and to report to parents. They are ours, not a school standard.
| Stage | Usually reached | The pupil can |
|---|---|---|
| 1. Python basics | First weeks | Write loops, lists and functions without help |
| 2. Data | Month 2 | Load a table, count and average it, draw a chart |
| 3. Learning by steps | Months 3 to 4 | Train a line by gradient descent and choose a step size |
| 4. Judging a model | Months 5 to 6 | Split data, measure accuracy and say how sure the result is |
| 5. Own project | Month 7 onwards | Plan, build and present a model, with its limits written down |
Run the code before you believe the explanation, and change one number to see what breaks.
If you cannot say what your model gets wrong, you do not know it yet.
Ask your child to show you one model and explain a single line of it. That tells you more than any certificate.
Progress shows in the questions they start asking, not only in the projects.
More courses
Each one is taught live in English by a mentor who keeps to the pupil's pace, in a group or one to one.
AIC / START / 01
How AI works and where it fails, for younger pupils.
Open the syllabusAIC / START / 02
Models built by dragging blocks, before the code.
Open the syllabusAIC / START / 03
School maths, explored in Python.
Open the syllabusAIC / SCHOOL / 01
Analysis, geometry and Stochastik for the Abitur.
Open the syllabusAIC / SCHOOL / 02
Support for the school Informatik course.
Open the syllabusAIC / SCHOOL / 03
The Stochastik behind judging a model.
Open the syllabusAIC / MORE / 01
Real datasets, cleaned and questioned.
Open the syllabusAIC / MORE / 02
The thinking behind efficient programs.
Open the syllabusAIC / MORE / 03
Using AI tools well, within their age rules.
Open the syllabusHow it runs
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.
After school
Weekday slots from about 16:00 German time.
Weekends
Saturday and Sunday mornings and early afternoons.
Private
A time fixed with the mentor, moved around exams.
Nothing is pasted in from a chatbot.
Derivatives and probability, shown at work.
Spoken at the pupil's pace, rephrased gladly.
The same person every week.
No adult-only tools for under-18s.
Fifteen to twenty pupils, or just one.
Student work
A few projects by our students in different countries; the student labs page has many more.

AI and ML
An AI nutrition coach that reads what you eat and works you toward a target.

AI and ML
A chatbot that answers mathematics and programming questions, built and deployed by a student.

AI and ML
An assistant that helps a young person recognise unsafe situations online.

Web app
A weather forecasting site with live conditions for any location.
Fees
Each month covers eight live classes. We show the fee in euro, converted at the European Central Bank reference rate, but take the payment in US dollars, so it is your bank that converts it and your statement may differ by a little.
Free first class
Free
no card required
Group batch
€90
a month, eight live classes, charged in US dollars
One to one
€134
a month, eight live classes, charged in US dollars
What families say
What parents and students wrote about us on Google, word for word.
★★★★★
"The one step solution for my son. Modern Age Coders make learning coding so simple that kids love it. The teachers explain complex concepts clearly with practical exercises and interactive content."
Ria Mukherjee
Parent
★★★★★
"Modern Age Coders has been a game-changer for me. I struggled to grasp IT concepts and coding before joining, but their classes transformed everything. I can now confidently write complex programs with ease."
Samriddha Mondal
Student
★★★★★
"One of the most wonderful education centres out there. Education is not limited to school syllabus but focuses on skill development."
Vansh Agarwal
Student
★★★★★
"My child Dhairya is really enjoying the Modern Age Coders classes. This is his first online class and he eagerly looks forward to it. I can already see his improvement, and the teachers are very cooperative."
Sonam Oswal
Parent of Dhairya
★★★★★
"Modern Age Coders have wonderful teachers who teach in a clear, easy and practical way. The teacher boosts students' confidence and inspires them to learn without hesitation."
Sonu Goyal
Parent
★★★★★
"I highly recommend this computer coding class! The teachers are incredibly knowledgeable and passionate about coding."
Ritu Kedia
Parent
Families in Germany ask
No. All classes are live and in English only, with a mentor based in India who matches the pupil's pace and accent. Python itself uses English keywords, so the code looks the same whatever language a pupil thinks in.
Usually yes. Most of the lesson is code on a shared screen, and the mentor speaks slowly, repeats in simpler words and waits for answers. Pupils at German schools often find their English improves as a side effect.
For pupils aged 13 to 19, from about Klasse 7 to the Abitur year. Younger children can start with our AI literacy course for ages 8 to 14.
No. According to the Informatik-Monitor 2026/27, only about 15 percent of upper-school pupils across Germany take Informatik in the Qualifikationsphase. The course starts from Python basics for anyone who has not programmed.
It uses the same maths, Analysis, geometry and Stochastik, and many pupils say school maths makes more sense afterwards. It does not replace school and awards no German grade or qualification; the school course is the one that counts.
Yes, if they meet the organisers' conditions. The BWKI accepts projects in German or English from Sekundarstufe I and II, and Jugend forscht has a Mathematik/Informatik field for ages 15 to 21, with a junior section up to 14. We are not connected with either and do not enter work for pupils.
Not as part of the course: pupils write their models in Python. Anthropic's terms put Claude at 18 or over, so we never use it with anyone under 18. Rules for other tools are quoted in our AI tools age guide.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays. In German time that usually means after school or on weekend mornings.
Fees appear in euro at the European Central Bank reference rate and are charged in US dollars, which your bank converts, so the exact amount on your statement can vary slightly. The first class costs nothing.
A group of fifteen to twenty pupils suits a steady pace and costs less. One to one suits a pupil with a competition deadline, exam weeks to plan around or a project of their own.
Also on this site
Further reading for pupils and parents in Germany.
Every page we have written for Germany.
The wider guide, for teens and adults.
The exam whose maths this page uses.
Help with the school subject, in German.
Contests for teenagers around the world.
Minimum ages, quoted from the providers.
Start here
The mentor talks with your child about school, maths and what they want to build, gives a short task to judge the level, and suggests where to begin. All in English, at your child's pace.
Want to know more first? Read how we teach or look through all courses.
WhatsApp us · +91 91233 66161 · connect@modernagecoders.com
Classes are live online and taught in English by mentors based in India. WhatsApp, in English, is the fastest way to reach us.
A priority demo is a full class of about 45 to 60 minutes. After the class the mentor sends a written skill report and a personal learning roadmap on WhatsApp. If you enrol, the demo fee is adjusted against your first month's fee. Share your demo Order ID with us on WhatsApp and we take it off.
Book a priority demo