REP / YOUNG / 01
Maths through coding
School maths explored with short Python programs.
Open the syllabusRemscheid · Python · Live online
"Online" can mean anything from a video you watch alone to a teacher who sees your screen and asks why you wrote that line. Ours is the second kind. This page explains, minute by minute, what a live Python class looks like from a desk in Remscheid, how the path runs from a first line of code to real data, and a project on the city's trees that teaches the most useful idea in statistics: line everything up, then read the positions.
Live classes since 2020 · 10,000+ students worldwide · a mentor who sees your code as you write it
In short
Online Python classes for Remscheid at Modern Age Coders happen live, in English, on a video call where the mentor watches the learner write and run real Python in their own editor. Children from 9 begin with typed Python and games, teenagers and adults move on to files, data and small models. Pick a class of fifteen to twenty or private lessons, with the same India-based mentor each week, at Remscheid afternoon, evening or weekend times.
Three ways in
The same language at three ages. The mentor suggests one after the free first class, based on what the learner already knows.

REP / 01
From 9 to 12. A child types every line, makes turtle pictures and quiz games, and later teaches a tiny program to sort examples.
Open the syllabus →
REP / 02
From 13 to 18. Variables to classes, files to small data projects, at a pace that also suits pupils taking Informatik at school.
Open the syllabus →
REP / 03
For adults starting cold. Syntax first, then scripts for real files and tables, then the libraries people use at work.
Open the syllabus →Live, not recorded
A lesson lasts an hour and runs on an ordinary video call. Nothing is pre-recorded, and the learner is typing for most of it. Here is a typical hour for a Remscheid teenager in month two.
This is our own lesson plan, not a fixed script. Children of 9 to 12 work in shorter blocks with more drawing and games; adults spend longer on their own data.
A laptop or desktop computer with a keyboard, a webcam and microphone, and a stable connection. Python itself is free. A tablet works for Scratch but not well for typed Python, so we suggest a proper keyboard from the start.
Not for watching faces. The mentor needs to see the learner's screen and hear them think aloud. Most mistakes are visible a few seconds before the learner notices them, and that is the moment a good question helps.
Lessons are only in English. Mentors slow down, repeat in simpler words and wait for answers. Python's own words, print, if, for, while, are English, so a Remscheid pupil who learns English at school is practising two subjects at once.
The Python path
In small steps, each one checked before the next. The stages below are the same for every age; only the speed and the examples change.
| Stage | What the learner can do | Children 9 to 12 | Teens and adults |
|---|---|---|---|
| 1. Output and input | Print, ask for a value, do arithmetic with it | Weeks 1 to 3 | Week 1 |
| 2. Decisions and loops | Write if, for and while, and trace them on paper | Months 1 to 3 | Weeks 2 to 5 |
| 3. Lists and functions | Store many values, write a function and reuse it | Months 3 to 6 | Months 1 to 2 |
| 4. Files and data | Open a CSV or database file, sort, count and summarise | Months 6 to 10 | Months 2 to 4 |
| 5. Own project | Plan, build and explain something new | Month 10 and up | Month 4 and up |
In North Rhine-Westphalia, Informatik is compulsory in grades 5 and 6 at every general school, so most Remscheid pupils meet programming ideas at ten or eleven. At a nine-year Gymnasium it returns as a Wahlpflicht option in grades 9 and 10, and in the Oberstufe as a Grundkurs of three hours or a Leistungskurs of five, where a school offers it.
The written Informatik Abitur in NRW is set centrally and answered without a computer, so tracing code on paper, stage 2 above, is a skill the exam values directly.
We teach alongside school, never in place of it; grades and the Abitur come from the school course alone. A pupil who takes Informatik can join our Informatik companion for Klasse 5 to 10 or the Informatik Abitur course in Java and Python, which follow school topics in English.
For a target outside school, the Jugendwettbewerb Informatik is open from grade 3 and now has Bronze, Silver and Gold levels by grade. Our Jugendwettbewerb page explains it.
Sources: Gesellschaft für Informatik, Informatik-Monitor 2026/27, North Rhine-Westphalia page; Bundesweite Informatikwettbewerbe, Jugendwettbewerb Informatik pages. Read on 2 November 2026. NRW also holds central exams at the end of grade 10 (ZP10) in German, maths and English.
A Remscheid data project
In September 2026 a new open dataset appeared: the position, height and crown of every tree that could be found in Remscheid on aerial images taken on 2 July 2025. It is free to reuse under CC BY 4.0. Our learners use it for the idea behind every percentile, box plot and exam grade boundary.
The dataset is published by the Stadt Wuppertal for the cities of Remscheid and Solingen as part of the smart.wuppertal project. A company called EFTAS found the trees automatically: an AI method first marked which pixels were vegetation, then 3D templates were matched to a height model of the ground and everything on it. The publisher speaks of around 406,000 trees in Remscheid.
The file is a GeoPackage, which is really an SQLite database, so Python can read it with nothing but its own standard library. It holds 406,290 rows. 805 carry the flag inside = 0, which the documentation does not explain, so we keep only the 405,485 rows marked inside = 1.
The notes are honest about limits. In dense woodland, crowns grow together and smaller trees stand hidden below them, so the method finds far fewer trees than are really there; sample counts in forest suggested a correction factor of 1.6. The stem positions are estimates taken from the middle of each crown.
So our questions are about the trees the method found, not every tree in Remscheid. Saying that out loud is part of the lesson.
import sqlite3
db = sqlite3.connect("remscheid_trees.gpkg") # a GeoPackage is an SQLite file
rows = db.execute("SELECT height_max FROM Baumstandorte_Mittelpunkte_Remscheid "
"WHERE inside = 1")
heights = sorted(h for (h,) in rows)
n = len(heights)
print("Trees inside the city:", n)
def percentile(p): # the value p percent of the way along the sorted list
return round(heights[round(p / 100 * (n - 1))], 1)
for p in (0, 25, 50, 75, 90, 99, 100):
print(f"{p:>3}th percentile:", percentile(p), "m")
print("Mean:", round(sum(heights) / n, 1), "m")It prints Trees inside the city: 405485, then 0th percentile: 2.5 m, 25th percentile: 14.7 m, 50th percentile: 21.3 m, 75th percentile: 25.9 m, 90th percentile: 29.0 m, 99th percentile: 34.2 m, 100th percentile: 108.6 m and Mean: 20.2 m.
Sorting once does all the work. After that, the 50th percentile, the median, is simply the value halfway along the list: 21.3 metres. A quarter of the trees are below 14.7 metres and a quarter above 25.9, so the middle half of all the trees the method found lies between those two heights. The mean, 20.2 metres, is a little lower than the median, because the list has a long tail of short trees and young growth below it.
low, high = percentile(25), percentile(75)
print("Middle half of all trees:", low, "to", high, "m")
for limit in (40, 50, 60):
taller = n - sum(1 for h in heights if h < limit)
print(f"Trees of {limit} m or more:", taller)It prints Middle half of all trees: 14.7 to 25.9 m, Trees of 40 m or more: 430, Trees of 50 m or more: 68 and Trees of 60 m or more: 19.
| Position in the sorted list | Height |
|---|---|
| Shortest (0th percentile) | 2.5 m |
| A quarter of the way (25th) | 14.7 m |
| Halfway, the median (50th) | 21.3 m |
| Three quarters (75th) | 25.9 m |
| Nine tenths (90th) | 29.0 m |
| 99th percentile | 34.2 m |
| Tallest (100th) | 108.6 m |
Data: Stadt Wuppertal, Einzelbaum Stammpositionen aus Luftbildern (2025) Remscheid und Solingen, Remscheid GeoPackage, CC BY 4.0, column height_max, rows with inside = 1; downloaded 3 November 2026. The percentiles, the counts and the reading of them are ours.
Now the part that makes learners sit up. Ninety-nine trees in a hundred are 34.2 metres or shorter, yet the tallest row says 108.6 metres, and 19 rows claim 60 metres or more. No tree in the Bergisches Land is anywhere near that tall. Those rows are almost certainly something else the height model saw from the air, a mast or a chimney or a bad patch of data, that slipped through the vegetation mask. The percentiles barely notice them; the maximum is made of them. That is the second half of the lesson: the far end of a sorted list is where data errors gather, so look there before you quote a record.
The crown templates tell a quieter story. Gaussian and spherical shapes, which the publisher assigns to broadleaf trees, account for 210,521 of the trees found; parabolic, hyperbolic and conical shapes, used for conifers, account for 189,009; 5,955 rows have no shape at all. Those are our sums from a second query, and the template is the method's own guess, not a botanist's.
Class times
Remscheid evenings are Indian late evenings, Remscheid weekend mornings are Indian afternoons. Most families find a slot that suits both without trouble.
| Remscheid | India now (winter) | India from 28 March 2027 |
|---|---|---|
| 15:45 | 20:15 | 19:15 |
| 17:15 | 21:45 | 20:45 |
| Saturday 12:00 | 16:30 | 15:30 |
| Sunday 16:00 | 20:30 | 19:30 |
Remscheid runs on Central European Time, UTC+1, in winter and Central European Summer Time, UTC+2, in summer, as the Einheitenzeitgesetz sets out; this year's summer time finished on 25 October 2026 and next year's begins on 28 March 2027. Indian time stays at UTC+5:30. The slots above are illustrations, not batch times.
NRW school holidays in 2026/27, from the Kultusministerkonferenz table: autumn from 17 to 31 October 2026, Christmas from 23 December 2026 to 6 January 2027, Easter from 22 March to 3 April 2027, a single Whitsun day on 18 May 2027, and summer from 19 July to 31 August 2027. Live classes carry on through them unless you pause. Learners join us from every part of Remscheid and from neighbouring Wuppertal, Solingen, Wermelskirchen, Radevormwald and Hückeswagen.
Checkpoints
Our own checkpoints. A learner moves on when they can do the task without help, not when a set number of weeks has passed.
| Checkpoint | The task | Passed when |
|---|---|---|
| A | Predict the output of a ten-line program before running it | The prediction is right, line by line |
| B | Fix a program with one deliberate bug | The learner finds it from the error message |
| C | Write a function and three tests for it | All three tests pass, one of them an edge case |
| D | Summarise a data file in five numbers | The learner can explain each number aloud |
| E | Present a small project | Someone else can run it from the instructions |
Checkpoint D is the tree project in miniature: sort, then read the minimum, quartiles, median and maximum.
You see what your child can explain, not how long the camera was on.
Before you trust the biggest number in a list, read the ten rows next to it.
A median is just the middle of a sorted list. Sorting is the hard part, and Python does it for you.
After the first course
Where Python can lead next. Every course is live and in English, in a class or one to one.
REP / YOUNG / 01
School maths explored with short Python programs.
Open the syllabusREP / YOUNG / 02
Scratch, Roblox and Minecraft before typed games.
Open the syllabusREP / YOUNG / 03
A second language once Python feels easy.
Open the syllabusREP / TEEN / 01
Models trained on data and tested fairly.
Open the syllabusREP / TEEN / 02
The thinking contests and Informatik reward.
Open the syllabusREP / TEEN / 03
Databases, the language the tree file speaks.
Open the syllabusREP / WORK / 01
Scripts that do the repetitive part of a job.
Open the syllabusREP / WORK / 02
From cleaning data to models and reports.
Open the syllabusREP / WORK / 03
Django and Flask applications.
Open the syllabusPractical details
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.
Weekday afternoons
For pupils once school and homework are done.
Weekday evenings
For adults, until about half past six.
Private
A slot you settle with the mentor, Saturday and Sunday too.
Each an hour, with a short task in between.
Code lives on the learner's own computer.
The mentor sees each line as it is typed.
One person follows the whole path.
Slower when needed, never rushed.
Fifteen to twenty learners, or private.
Student work
A selection of work by Python learners around the world; there is more on our student labs page.

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 a month for one monthly fee. The euro amounts are calculated with the European Central Bank reference rate; when you pay, the charge is in US dollars, and your bank turns it into euro, so its figure can be a few cents 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
What students and parents wrote on Google, left exactly as posted.
★★★★★
"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
Remscheid learners ask
No. We only teach in English, always live, and the mentor adjusts speed and accent to the learner. For many Remscheid pupils that is a bonus: English lessons and Python practice in one hour.
For programming it is often better, because the mentor sees the learner's own screen up close and every line of code is saved on their own computer. What matters is that the class is live and the learner types, not watches.
A laptop or desktop computer with a keyboard, a webcam, a microphone and a steady internet connection. Python is free and the mentor helps install it in the first class.
From about 9, when typing and reading are comfortable. Younger children start with Scratch blocks and move to Python later.
Often, yes. NRW makes Informatik compulsory in grades 5 and 6 and offers it later as an elective and in the Oberstufe. We teach alongside school; marks and the Abitur come only from the school course.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays. School-age learners usually come in the afternoon and adults in the early evening.
Experienced programmers based in India who teach live over video, in English. Your learner keeps the same mentor every week.
Monthly. The page shows the amount in euro using the European Central Bank reference rate; the payment is processed in US dollars and your bank converts it, so the booked amount may differ slightly. The first class costs nothing.
An exercise on the open dataset of trees found in Remscheid from aerial images of 2 July 2025. Learners sort 405,485 heights, read the percentiles (the median is 21.3 metres) and discover that the tallest rows, up to 108.6 metres, cannot be real trees.
Yes. Adults have their own classes and start from the first line, at a pace that fits work and family.
Elsewhere on this site
More reading for Remscheid learners.
Our hub page for the whole country.
School rules and dates across NRW.
The national Python page.
Python for children of 9 to 12.
How live lessons work for younger children.
Our teaching method in detail.
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
The first class is a real lesson: the learner writes and runs a few lines of Python while the mentor watches how they work and how comfortable they are in English, then suggests a course and group.
To read more first, see how we teach, or browse every course.
WhatsApp us · +91 91233 66161 · connect@modernagecoders.com
All lessons are live online with mentors in India, in English only. For a quick question, WhatsApp us 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