PWU / SCH / 01
Informatik Companion
Klasse 5 to 10 support in English.
Open the syllabusWürzburg · Python, live online · Teens and adults
Is a live online Python class as good as sitting in a classroom? In some ways it is better and in some ways it is not, and we would rather say which. This page compares the two honestly, shows how Bavarian schools teach and examine Informatik, points Würzburg teenagers to a national contest round that closes this month, and builds a Python project on the status of Würzburg's car parks, where the answer to "which one is fullest?" depends on reading two short definitions.
Live online since 2020 · 10,000+ students worldwide · a mentor who knows your code
In short
Online Python classes in Würzburg from Modern Age Coders are live lessons in English over video: a mentor shares the screen, watches your code as you type and adapts to your pace and accent. From the first class, pupils of about 12 and up, students and adults type their own Python, and soon handle real city data, either privately or with fifteen to twenty others.
Three Python routes
A pupil heading for the Oberstufe, an adult with a job to automate, and a teenager who wants the full language.

PWU / 01
The full language for 13 to 17 year olds, with tracing by hand that matches how Bavaria examines Informatik.
Open the syllabus →
PWU / 02
For Oberstufe pupils: Java and Python practice, algorithms and paper-based exam technique, alongside school.
Open the syllabus →
PWU / 03
For adults and students: scripts that read files, clean data and save hours of repetitive work.
Open the syllabus →Online, honestly
For programming, live online has real advantages. It also has two weaknesses, which we try to design around.
| Question | Live online with us | Typical classroom |
|---|---|---|
| Who sees my code? | The mentor, on my shared screen, line by line | The teacher, when they reach my desk |
| Whose computer? | My own, set up the way I will keep using it | Often a lab machine |
| Travel | None | There and back |
| Being with others | On video, less natural | In the room, easier |
| Distractions | Home can be noisy; needs a quiet corner | Classmates and the room itself |
| Language | English only | Usually German |
This comparison is our own opinion, not a study. It is meant to help you decide whether live online suits you, not to claim it suits everyone.
Programming happens on a screen anyway. When the mentor sees your screen, they see exactly what you see: the error, the typo, the half-finished line. Nothing is lost in describing it.
You also learn on the machine you will use afterwards. When the course ends, your editor, your files and your habits are already where they need to be.
Being with other learners feels less natural on video. In a batch, the mentor asks learners to show and explain their programs to each other, so the class still talks, not just listens.
Concentration at home needs a quiet place and a fixed time. We keep classes to an hour, with a task every few minutes, and ask younger learners' parents to help with the quiet corner.
Classes are taught only in English, by mentors based in India, live. They match their pace and wording to each learner and get used to each accent quickly. What we never do is hand over finished code: you plan, type, run and explain your own programs, since thinking a problem through is the skill being taught.
A real Würzburg project
The Smarte Region Würzburg publishes the status of the city's car parks every few minutes as open data. It is a perfect beginner's dataset, because the trap is in the words, not the code.
Parkplatzdaten Würzburg comes from the Smarte Region Würzburg, with readings supplied by WVV/SVG, and GovData records its licence as CC BY 4.0. We exported it on 3 November 2026: 356,842 readings for 18 car parks, from 25 August to 3 November 2026.
Each reading has a car park, a time and one of three status words: frei, fast voll or belegt. We save these as wuerzburg_parking.csv.
The dataset description defines the words exactly; in its own German, "belegt" bedeutet: 2 oder weniger Plätze frei. In English: belegt means two or fewer spaces are free. "fast voll" means at least 85 per cent of spaces are taken and more than two are free. Anything else is "frei".
Read those twice. One rule counts spaces; the other counts a percentage. That difference is the whole lesson.
import csv
from collections import Counter
counts = {}
with open("wuerzburg_parking.csv", encoding="utf-8") as f:
for row in csv.DictReader(f):
counts.setdefault(row["car_park"], Counter())[row["status"]] += 1
def share(c, labels):
return 100 * sum(c[l] for l in labels) / sum(c.values())
ranked = sorted(counts, key=lambda p: share(counts[p], ["belegt"]), reverse=True)
print("Car parks:", len(counts))
for p in ranked[:3]:
print(p, round(share(counts[p], ["belegt"]), 1), "% belegt")It prints Car parks: 18, then Kranengarage 7.3 % belegt, PP Residenz 3.4 % belegt and Juliusspital 3.1 % belegt.
Kranengarage wins clearly: in 7.3 per cent of readings it had two or fewer spaces left. But "two spaces left" is a much easier bar to reach in a small car park than a big one. Our own arithmetic shows why: with 50 spaces, two free means 96 per cent full; with 1,000 spaces, two free means 99.8 per cent full. Ranking by "belegt" quietly favours small car parks; the file gives no sizes, so we cannot say which car parks are small.
So Version 2 counts a reading as nearly full if it is either belegt or fast voll, which brings in the percentage rule as well. Then it lists any car park that never reached even fast voll.
nearly = ["belegt", "fast voll"]
ranked = sorted(counts, key=lambda p: share(counts[p], nearly), reverse=True)
for p in ranked[:3]:
print(p, round(share(counts[p], nearly), 1), "% belegt or fast voll")
never = [p for p in counts if share(counts[p], nearly) == 0]
print("Never even fast voll:", sorted(never))It prints Juliusspital 18.2 % belegt or fast voll, Kranengarage 16.7 % belegt or fast voll, PP Residenz 13.2 % belegt or fast voll and Never even fast voll: ['PH Bahnhof', 'Skyline Hill Parkhaus'].
Now Juliusspital comes first. Neither ranking is "the truth"; they answer different questions. "Where am I most likely to find no space at all?" and "Where is it most often busy?" are both reasonable, and the program must say which it answers. Splitting by day of the week, converted from the file's UTC times to Würzburg time, adds a second surprise: the car parks are not busy on the same days.
| Car park | Tuesday | Saturday | Sunday |
|---|---|---|---|
| Juliusspital | 27.9 % | 10.0 % | 0.0 % |
| Kranengarage | 17.0 % | 36.5 % | 3.4 % |
| PP Residenz | 16.5 % | 24.2 % | 1.2 % |
| Marktgarage | 9.9 % | 28.2 % | 1.5 % |
Data: Parkplatzdaten Würzburg, Smarte Region Würzburg, data from WVV/SVG, licence CC BY 4.0, exported 3 November 2026; the status definitions are quoted from the dataset description. Rankings and shares are our own. The data does not give the number of spaces in each car park, so we do not guess sizes; the 50 and 1,000 space examples are ours.
Bavarian school
Bavaria has gone back to a nine-year Gymnasium, puts Informatik into grade 11 for everyone, and examines it on paper.
| Stage | What the rules say |
|---|---|
| Grades 5 to 13 | The reintroduced nine-year Gymnasium covers all of them in 2025/26 |
| Grades 9 and 10, NTG branch | Compulsory Informatik |
| Grade 11 (Einführungsphase) | Every pupil, in every branch, has two required informatics lessons a week |
| Grades 12 and 13 (Qualifikationsphase) | Informatik as an Abitur subject where chosen |
| Written Abitur | Set centrally; mostly programming on paper, no work at a computer |
Read on 2 November 2026: the Gymnasium pages of the Bavarian education ministry and the Bavarian entry in the GI Informatik-Monitor for 2026/27. Destatis counts Würzburg 133,258 and Bayern at 13,248,928 (31 December 2024). Learners from Höchberg, Veitshöchheim, Gerbrunn, Kitzingen and Ochsenfurt come under the same rules.
Because the Bavarian Informatik Abitur is written without a computer, a pupil cannot test an idea by running it. They need to read code and know what it does. In our classes we often ask for the output before anyone presses Run, and sometimes hide the Run button altogether.
Our role sits next to the school, never above it: grades come from the school course and the Abitur, while we add practice time and someone to ask.
Round 1 of the 45th Bundeswettbewerb Informatik runs from 1 September to 23 November 2026. It is open to young people up to 21 who are not yet studying or working, and group work is allowed in round 1. Round 2, from early 2027 to April 2027, must be done alone and, depending on Land and school, can count as the besondere Lernleistung in the Abitur.
We are not connected to BWINF and never use its tasks in class; learners are pointed to the organisers' own free archive.
Class times
Times are chosen when you book and shown in your own clock. Here is how a few Würzburg slots look for a mentor in India.
| Würzburg | India during German winter time | India during German summer time |
|---|---|---|
| Tuesday 16:10 | 20:40 | 19:40 |
| Wednesday 18:00 | 22:30 | 21:30 |
| Saturday 09:15 | 13:45 | 12:45 |
German winter time (MEZ) is UTC+1 and summer time (MESZ) UTC+2, under the Einheitenzeitgesetz. Winter time began on 25 October 2026; summer time returns on 28 March 2027. Indian time does not change (UTC+5:30), so the mentor's clock reads 4 h 30 later than Würzburg's in winter and 3 h 30 later in summer. The slots illustrate; they are not fixed batches.
| Break | Dates |
|---|---|
| Christmas | 24 December 2026 to 8 January 2027 |
| Easter | 22 March to 2 April 2027 |
| Whitsun | 18 to 28 May 2027 |
| Summer | 2 August to 13 September 2027 |
From the KMK holiday overview for 2026/2027, version of 9 October 2025, row Bayern; the autumn break ran from 2 to 6 November 2026. Classes continue in the holidays if you wish.
Milestones
Five stages of our own, used to place learners and to describe progress. They are not a school or exam scale.
| Stage | The learner can |
|---|---|
| 1. Read | Say what a five-line program prints without running it |
| 2. Write | Write loops and conditions that work first time more often than not |
| 3. Count | Use dictionaries and Counter to summarise a file |
| 4. Define | Turn a written rule, like the belegt definition, into code and test it |
| 5. Question | Explain why two fair rankings of the same data disagree |
The car-park project lives at stage 5. Seeing that a ranking hangs on its definition is useful in any job that touches data.
Progress reports describe what was built and could be explained.
Before you rank anything, write down exactly what the category means.
If two rankings disagree, ask which question each one answers.
More with Python
All taught live, in English, by a mentor who stays with you, privately or in a batch.
PWU / SCH / 01
Klasse 5 to 10 support in English.
Open the syllabusPWU / SCH / 02
BwInf-style problems, written by us.
Open the syllabusPWU / SCH / 03
Algorithms and data structures, step by step.
Open the syllabusPWU / BLD / 01
Websites built in Python, from an empty project to a working app.
Open the syllabusPWU / BLD / 02
Teen projects that turn city data into charts and first predictions.
Open the syllabusPWU / BLD / 03
Databases that Python can query.
Open the syllabusPWU / ADU / 01
The complete language for grown-ups, beginners welcome.
Open the syllabusPWU / ADU / 02
Associate-level Python Institute exam topics.
Open the syllabusPWU / ADU / 03
Interview-level problem solving.
Open the syllabusHow classes run
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
Late afternoons for Würzburg pupils.
After work
Evening slots for students and adults.
Private
Arranged with your mentor.
The mentor sees exactly what you see.
Learn on the computer you will keep using.
Predict the output, then check it.
Clear speech at a pace that suits you.
The same person through the course.
Fifteen to twenty learners, or one.
Student work
Work that some of our older students have finished. You will find many 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
A month of classes, eight live lessons, has one fee. That fee is displayed in euro at the European Central Bank reference rate and collected in US dollars, with your bank converting it, so your statement may show a slightly different euro figure.
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
Google reviews by students and parents, quoted exactly.
★★★★★
"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
Würzburg learners ask
No, never. Lessons happen live, in English. The mentor keeps an even pace, gets used to the way you speak and says things another way if a sentence does not land. Python's keywords are English anyway.
For programming it often works well, because the mentor sees your screen and your exact error. It needs a quiet place and a fixed time at home. The free first class is the easiest way to find out if it suits you.
With the underlying skills, yes. Bavaria writes the paper centrally and asks for code on paper, without a computer, so our lessons include plenty of hand tracing. Grades still come only from the school course and the Abitur itself.
A national informatics contest for young people up to 21 who are not yet studying or working. Round 1 of the 45th contest runs from 1 September to 23 November 2026 and allows group work; round 2, in 2027, is done alone.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays. Pupils usually choose late afternoons, adults evenings or Saturday mornings.
In India. They teach live over video. India is 4 hours 30 minutes ahead of Würzburg in winter and 3 hours 30 minutes in summer.
Only Python and a free code editor; we set both up together during lesson one. Bring a computer with a keyboard and a steady internet line.
A Würzburg batch has between fifteen and twenty people working at about the same level. Learning privately instead means two personal lessons weekly, timed around you.
Each month. You see euro prices based on the reference rate of the European Central Bank, but the card is charged in US dollars and converted by your bank, so expect a small gap on the statement. Lesson one is free of charge.
In class you write your own code and explain it, because that is how you learn to think through a problem. Adults later learn how to check AI-written code with tests rather than trust it.
Elsewhere on this site
Where Würzburg readers usually go next.
Everything Bavaria-wide on one page.
The national Python overview.
Choosing a course as a teenager.
For university students in Germany.
Contests by date and age.
Our live lessons explained.
Part of the guide: Coding classes in Bavaria
More guides: Coding classes in North Rhine-Westphalia · Coding classes in Lower Saxony · Coding classes in Land Bremen · Coding classes in Hesse · 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
Your first class is a short Python task with a mentor and a few minutes on your goals. From that, the mentor suggests a course and whether a batch or private lessons would suit you better.
To read more first, see how we teach or browse all courses.
WhatsApp us · +91 91233 66161 · connect@modernagecoders.com
Classes are live with mentors in India and taught in English only. For questions, 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