PSI / YOUNG / 01
Maths through coding
Patterns, sequences and averages in Python.
Open the syllabusSiegen · Python · Live online
Plenty of Python courses can be watched from Siegen; far fewer can watch you back. In a live class the mentor sees the line you just typed, notices the moment you hesitate and asks the one question that gets you moving again. This page explains what that changes, the path from a first program to real data, what NRW schools teach, and a project on the Siegen weather station in which learners deliberately delete days they know and then try to guess them back.
Live classes since 2020 · 10,000+ students worldwide · a mentor who sees your screen
In short
Online Python classes in Siegen with Modern Age Coders are live lessons in English over video: the learner types real Python in their own editor and the mentor follows on the shared screen, asking rather than telling. Children from about 9, teenagers and adults each have their own groups, from first programs to files, data and tests. Every learner keeps one India-based mentor who tunes speed and pronunciation to them; families pick a group of fifteen to twenty or private tuition.
First courses
Three starting points by age. The free first class settles which fits.

PSI / 01
For 9 to 12. Children write their first real programs, draw and play with them, and later try tiny programs that learn from examples.
Open the syllabus →
PSI / 02
For 13 to 18. From basic syntax to files, functions with tests and data work, alongside school Informatik.
Open the syllabus →
PSI / 03
For adults who have never programmed. Foundations first, then real files and the libraries used at work.
Open the syllabus →Live, not recorded
Recorded courses are good at explaining. They cannot see what you are doing. For a beginner that difference decides whether they keep going.
| Moment in learning | Recorded course | Live class with us |
|---|---|---|
| A typing mistake you cannot see | You search alone, sometimes for an hour | The mentor points to the line within seconds |
| An error message in English | You read it, or skip it | You read it aloud together and explain it |
| An idea that does not click | You rewatch the same video | The mentor explains it another way, more simply |
| Losing motivation in week three | Nobody notices | The same mentor notices and adjusts the plan |
| Knowing what to learn next | The next video in the list | The next step for this learner, chosen by someone who knows them |
Our own comparison of formats. Recorded material still has a place: learners sometimes rewatch a short clip after class. The teaching itself is always live.
We teach in English, never in German, and we say so first. Mentors slow down, rephrase and wait. Many Siegen pupils find their school English is more than enough, because Python itself is built from English words.
Learners write code on their own computer, not inside a website that disappears after the course. Everything they build stays with them, ready to change.
Each learner keeps one mentor, based in India, who learns their habits: who rushes, who freezes, who learns most from breaking a working program.
The Python path
The same five steps for every age; children take longer over each, adults often move through the first two quickly.
Our own learning path. Typical pace: children of 9 to 12 reach step 4 in about six to ten months, teenagers and adults in two to four.
A Siegen data project
The Deutscher Wetterdienst publishes daily readings from its Siegen station from 1937 to 2018, free to reuse under CC BY 4.0. Real records have holes. Our learners find out how well a hole can be filled, by first making holes where they already know the answer.
The station is called Siegen (Kläranlage). The file we downloaded on 3 November 2026 has 28,033 days, one row each, and a column for the daily mean temperature. We saved it as siegen_days.txt.
Three stretches are missing entirely: 1945 to 1948, the whole of 1966, and January and February 2008. The last gap ends just as the station moved, on 1 March 2008, to a new site 34 metres lower. No program can honestly invent four lost years.
For short gaps, a guess might be good enough, but how good? The trick is to test on days we know. We take 2009 to 2017, nine complete years measured the same way after the move, hide every tenth day ourselves, and guess each hidden value from its neighbours.
Then we compare the guesses with the real values we hid. That turns "it looks plausible" into a number.
temps = []
with open("siegen_days.txt", encoding="latin-1") as f:
next(f)
for line in f:
c = [x.strip() for x in line.split(";")]
if "20090101" <= c[1] <= "20171231":
temps.append(float(c[13])) # daily mean temperature, C
print("Days 2009 to 2017:", len(temps))
hidden = range(10, len(temps) - 10, 10) # we hide every tenth day ourselves
carry, line = [], []
for i in hidden:
real = temps[i]
carry.append(abs(temps[i - 1] - real)) # copy yesterday
line.append(abs((temps[i - 1] + temps[i + 1]) / 2 - real)) # halfway between neighbours
print("Hidden days:", len(carry))
print("Copy yesterday, average error:", round(sum(carry) / len(carry), 2), "C")
print("Halfway line, average error:", round(sum(line) / len(line), 2), "C")It prints Days 2009 to 2017: 3287, Hidden days: 327, Copy yesterday, average error: 1.74 C and Halfway line, average error: 1.13 C.
Copying yesterday's value is the simplest possible guess, and it is wrong by 1.74 degrees on average. Taking the point halfway between the day before and the day after does clearly better, 1.13 degrees, because it uses information from both sides of the gap. That halfway point is a straight line drawn between two neighbours, and drawing such lines is called linear interpolation. It is used for everything from weather records to animation frames to the brightness of pixels in a resized photo.
def fill(i, gap):
before, after = temps[i - 1], temps[i + gap]
step = (after - before) / (gap + 1)
return [before + step * (k + 1) for k in range(gap)]
for gap in (1, 3, 7, 14):
errors = []
for i in range(20, len(temps) - 20, 20):
guess = fill(i, gap)
errors += [abs(g - temps[i + k]) for k, g in enumerate(guess)]
print(f"{gap:>2}-day gap, average error:", round(sum(errors) / len(errors), 2), "C")It prints 1-day gap, average error: 1.12 C, 3-day gap, average error: 1.77 C, 7-day gap, average error: 2.07 C and 14-day gap, average error: 2.55 C.
| Length of the hidden gap | Average error |
|---|---|
| 1 day, copy the day before | 1.74 C |
| 1 day, straight line | 1.12 C |
| 3 days, straight line | 1.77 C |
| 7 days, straight line | 2.07 C |
| 14 days, straight line | 2.55 C |
Data: Deutscher Wetterdienst, Climate Data Center, daily values for station 04692 Siegen (Kläranlage), daily mean temperature, CC BY 4.0, downloaded 3 November 2026. The hidden days, the guesses and the errors are our own work.
The longer the gap, the worse the line, because weather has fronts and cold snaps that a straight line simply skips. A one-day gap filled by a line is off by about a degree; a two-week gap by more than two and a half. So the honest rule our learners write down is: fill short gaps, label every filled value as estimated, and leave long gaps empty. The four missing years from 1945 to 1948 stay missing.
One more detail rewards careful reading of the metadata. Until 2007 the daily mean at Siegen was calculated from three readings a day, with the evening reading counted twice; from March 2008 it is the average of at least 21 hourly values. That is why we tested only on 2009 to 2017: mixing two methods in one test would blur the answer.
NRW schools
A compulsory start in grades 5 and 6, then choices. Siegen schools follow North Rhine-Westphalia's rules.
According to the Gesellschaft für Informatik, every general school in North Rhine-Westphalia teaches compulsory Informatik in grades 5 and 6. A nine-year Gymnasium offers it again as a Wahlpflicht subject in grades 9 and 10.
In the last two years of the Oberstufe a school can run Informatik as a basic three-hour course or an advanced five-hour one. The written Informatik Abitur is set centrally and, as the monitor notes, answered without a computer.
NRW pupils take central exams, the ZP10, in German, maths and English at the end of grade 10. The written Abitur in 2027 runs from 13 April to 5 May 2027, with Mathematik on the last day.
For older pupils, the 45th Bundeswettbewerb Informatik has its first round from 1 September to 23 November 2026, open to young people up to 21 who are not yet studying or working, and group entries are allowed in that round.
Sources: Gesellschaft für Informatik, Informatik-Monitor 2026/27, North Rhine-Westphalia page; Ministerium für Schule und Bildung NRW, ZP10 and Abitur 2027; Bundesweite Informatikwettbewerbe, Bundeswettbewerb Informatik pages. Read on 2 November 2026.
We teach alongside school and do not replace it; only the school awards marks and the Abitur. For pupils who take the subject, the Informatik Abitur course in Java and Python includes plenty of paper tracing, which the NRW written exam rewards. Our Bundeswettbewerb Informatik page covers the contest. We are not connected with BWINF.
Class times
Siegen afternoons and evenings fall in the Indian evening, weekend mornings in the Indian afternoon. Most learners find a slot quickly.
| Siegen | India this winter | India from 28 March 2027 |
|---|---|---|
| 15:35 | 20:05 | 19:05 |
| 17:05 | 21:35 | 20:35 |
| Saturday 08:45 | 13:15 | 12:15 |
| Sunday 11:45 | 16:15 | 15:15 |
The Einheitenzeitgesetz puts Siegen on UTC+1 in winter (since 25 October 2026) and UTC+2 in summer (from 28 March 2027); India keeps UTC+5:30. These rows only show the difference between the clocks.
For planning: NRW's 2026/27 holidays in the Kultusministerkonferenz table are 17 to 31 October 2026 in autumn, 23 December 2026 to 6 January 2027 at Christmas, 22 March to 3 April 2027 at Easter, 18 May 2027 as a single day, and 19 July to 31 August 2027 in summer. Lessons carry on through holidays unless you pause. Learners join from across Siegen and from nearby Kreuztal, Netphen, Wilnsdorf, Freudenberg and Hilchenbach.
Checks
Our own checks. Each is something the learner does unaided.
| Check | What the learner does | Usually by |
|---|---|---|
| Trace | Predict a short program's output on paper | Month 1 |
| Debug | Fix a planted error from its message alone | Month 2 |
| Test | Write a function with three tests, one at an edge | Month 3 |
| Measure | Hide known values and measure a method's error | Month 4 to 6 |
| Explain | Present a project, limits included | Later |
The "Measure" check is the Siegen project: a learner who tests a guess on known answers has learned how science checks itself.
We report what your child can do and explain.
Before you trust a method, try it where you already know the answer.
A filled-in value is an estimate. Label it, every time.
Where Python leads
All live, all in English, with one mentor, in a class or one to one.
PSI / YOUNG / 01
Patterns, sequences and averages in Python.
Open the syllabusPSI / YOUNG / 02
Logic first, for children who love puzzles.
Open the syllabusPSI / YOUNG / 03
A second language for interactive pages.
Open the syllabusPSI / TEEN / 01
Real data, honest gaps, first models.
Open the syllabusPSI / TEEN / 02
Java and Python for the Abitur, in English.
Open the syllabusPSI / TEEN / 03
Biber, BwInf and BWKI preparation.
Open the syllabusPSI / ADULT / 01
Scripts that save hours every week.
Open the syllabusPSI / ADULT / 02
Statistics and algebra behind the tools.
Open the syllabusPSI / ADULT / 03
Version control for team projects.
Open the syllabusArrangements
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
Pupils log in once the school day ends.
After work
Adults join on weekday evenings.
One to one
Your own time, any day, with your mentor.
Two live hours, a small task between.
The mentor guides from the shared screen.
Functions come with proof they work.
Continuity for the whole course.
Slower and simpler when needed.
Fifteen to twenty learners, or one.
Student work
A few things our Python learners have built; 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
Eight live classes make up a month. Shown here in euro by way of the ECB reference rate, the fee is actually collected in US dollars; your bank converts it at its own rate, so its euro total may be a touch different.
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
Reviews by students and parents, reproduced from Google unchanged.
★★★★★
"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
Siegen learners ask
No. We teach only in English, always live, with a mentor who adapts pace and accent to the learner. Python's keywords are English, so lesson and code use the same words.
Because a live mentor sees your screen. Small mistakes are spotted in seconds, ideas are explained again in other words, and someone notices when motivation drops. Video can supplement that, not replace it.
Around 9, when reading and typing are comfortable. Younger children begin with Scratch blocks.
Two compulsory years, in grades 5 and 6, at all general schools in the Land, the Gesellschaft für Informatik reports. After that pupils opt in, up to an Abitur course of three or five hours a week in the last two years.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays. Most pupils come after school and adults in the evening.
Experienced mentors based in India, live over video and in English. Each learner keeps the same mentor.
Each month. We print euro after converting at the ECB reference rate, then charge in US dollars; your bank's own exchange decides the exact euro booked. There is no fee for the first class.
Learners hide known days in the Siegen temperature record for 2009 to 2017 and guess them back. A straight line between neighbours is off by 1.13 degrees on average, copying the day before by 1.74, and gaps of two weeks are too long to fill well.
It is open to young people up to 21 who are not yet studying or working. The first round of the 45th contest runs from 1 September to 23 November 2026 and allows group work. We are not connected with the organiser.
Yes, in adult groups or one to one, starting from the very first line of Python.
Elsewhere on this site
More for Siegen learners.
All our Germany pages in one place.
NRW school rules and dates.
Our national Python page.
Preparing for the national contest.
For adults moving into tech.
A live class from the inside.
Part of the guide: Coding classes in North Rhine-Westphalia
More guides: Coding classes in Lower Saxony · Coding classes in Land Bremen · Coding classes in Hesse · Coding classes in Bavaria · Coding classes in Saxony-Anhalt · Coding classes in Schleswig-Holstein · Coding classes in Baden-Württemberg · Coding classes in Saarland · Coding classes in Rhineland-Palatinate · Coding and maths in Berlin · Coding and maths in Hamburg · Coding classes in Saxony · Coding classes in Thuringia · Coding classes in Brandenburg · Coding classes in Mecklenburg-Vorpommern
Start here
Expect a proper hour of Python, not a sales call. Your learner writes a short program; meanwhile the mentor notes their approach and their ease with English, and afterwards proposes a course.
Background reading: how we teach and all courses.
WhatsApp us · +91 91233 66161 · connect@modernagecoders.com
Live online lessons in English only, from mentors in India. Quick questions are easiest on WhatsApp, in English.
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