Where can Subiaco learners find the best coding and AI classes?
Live online lessons, in a small group or one to one, beginning with Scratch at six and moving through Python to data work and AI for teenagers and adults, using real Western Australian data. The 2021 Census counted 9,940 people in Subiaco.
The state's public transport stops file has 29 columns. In Subiaco, five of them hold the same value on every one of the suburb's 58 stop records, so a tidy-minded analyst might delete all five. Run the same check on the whole state file and only two survive the cut.
Facts last verified 12 October 2026. Teaching is online; no Subiaco branch is claimed.
The stops project needs Python, a feel for tables and the habit of testing a conclusion on more than one sample. These courses build it, and the free trial sets the level.

Python with real public tables, from loading to honest conclusions.
See the syllabus
Cleaning and profiling data before any chart or model is built.
See the syllabus
Core Python: lists, sets, dictionaries and files.
See the syllabus
First typed Python and AI projects in short steps.
See the syllabusBrowse the course atlas for more than one hundred options and use the coding roadmap to check prerequisites.
The four we are known for
These run underneath everything above. Every one is live and online, placed by ability rather than by age, and the first class is free.

Python, web and AI projects where the learner still owns the thinking.
See the syllabus
Automate the work you already do, then let AI carry part of it.
See the syllabus
Train a model, read what it learned, and be able to say why it is wrong.
See the syllabus
Run AI coding agents on real work without losing control of the codebase.
See the syllabusSelected 2021 Census QuickStats for the suburb of Subiaco (ABS code SAL51416), alongside the Western Australian figure.
| Measure | Subiaco |
|---|---|
| Residents | 9,940 |
| Median age | 40 |
| Families | 2,549 |
| Private dwellings | 5,333 |
| People per household | 2.1 |
| Indicator | Subiaco | Western Australia |
|---|---|---|
| Flats or apartments | 41.7% (1,869) | 6.5% |
| Adults with a bachelor degree or higher | 56.2% (4,795) | 23.8% |
| Employed people in professional jobs | 48.4% (2,676) | 22.0% |
| Workers who took the train to work | 6.2% (342) | 1.8% |
| Workers who took a bus to work | 8.5% (473) | 2.9% |
Subiaco counted 446 residents aged 5 to 9, 515 aged 10 to 14 and 379 aged 15 to 19.
On Census day 666 employed residents, 12.0%, worked from home, against 7.5% across the state.
The ABS boundary of Subiaco takes in about 3.1 square kilometres west of the Perth city centre.
Census counts carry deliberate small adjustments for privacy, so we copy them unchanged and build no new totals from them.
A column whose value never changes cannot separate one row from another, so it is safe to drop. The catch is the word never. We counted distinct values in all 29 columns of the stops file, first for Subiaco's records and then for the whole state.
| Column | In Subiaco (58 records) | Statewide (16,822 records) |
|---|---|---|
| accessible | 1 | 1, every record is Y |
| shelter | 1 | 1, every record is Y |
| status | 1 | 2: 16,821 Active, 1 Planned |
| area_lg | 1 | 17 service areas |
| sunphear | 1 | 2: 16,718 records hold 0, 104 hold 1 |
| stoptype | 3 | 8 |
Two columns, accessible and shelter, read Y on all 16,822 records. Whatever they were meant to describe, in this file they cannot tell any stop from another.
Three more look constant in Subiaco but vary statewide. Drop them on local evidence and a later model of the whole network loses the regional areas and the one planned stop.
The other 24 columns already change inside Subiaco, from stop names to the three stop types: 50 standard, 5 rail and 3 marked Standard/CAT.
Decide which columns to drop using the data the code will actually run on. A sample of 58 stop records from one inner suburb is uniform in ways the state is not: every Subiaco record sits in the Perth Metro area, while statewide there are 17 service areas. A check that passed in Subiaco would quietly break a statewide analysis.
Stop records are open data from the Public Transport Authority of Western Australia. Membership of Subiaco is our point-in-boundary check, and every distinct-value count is our calculation. We describe what the columns contain, not what each was intended to mean, since the file carries no data dictionary.
The check is short in plain Python or in pandas. What matters is where you run it.
| Approach | Code idea | Statewide result |
|---|---|---|
| Plain Python | len(set(row[c] for row in rows)) == 1 | accessible, shelter |
| pandas | df.columns[df.nunique() == 1] | Same two columns |
| Count missing too | df.nunique(dropna=False) | Same answer here |
| Compare samples | Run on one suburb, then the state | 5 locally, 2 statewide |
Sort a bag of buttons and notice which feature, like having holes, is the same on every button.
Profile the Subiaco records in Python, then rerun on the state file and explain the difference.
Profile work spreadsheets on the full dataset before deleting columns that look useless in a filtered view.
A constant column is not always an error. Sometimes it is a placeholder for data not yet collected. The useful habit is to report it, ask what it was meant to hold, and only then decide whether to drop it.
Local markers from the stops file, our boundary checks and the WA school calendar.
By our boundary check, the 58 stop records inside Subiaco include five rail platform records, at Subiaco, Daglish and West Leederville stations.
Of those 58 records, 52 carry the suburb label Subiaco, 5 say Daglish and 1 says West Leederville, a reminder that a label and a boundary can disagree.
WA public school Term 1 of 2027 runs from Monday 1 February to Friday 9 April.
Subiaco alone
Figures here describe the suburb of Subiaco only. Bagot Road carries the most stop records, 12. Neighbouring suburbs such as Shenton Park, Jolimont and West Leederville have their own separate numbers, none added in.
These bands are rough; a learner's trial class shows where they really belong.
Games and puzzles that train careful observation.
Scratch Coding for KidsProblem Solving and Computational Thinking for KidsLists, sets and counting things in code.
Python and AI for KidsMaths Through CodingReal tables, profiling and honest summaries.
Data Science for TeensPython for TeensCleaning, profiling and modelling data for work or study.
Data Analysis CourseData Science CourseWhatever it was given. AI tools profile the data in front of them, and a filtered sample is easy to hand over by mistake.
Give an assistant the Subiaco records and ask it to remove useless columns, and it will reasonably remove five. The advice is correct for those 58 rows and wrong for the file the analysis was meant to cover.
Learners who have run the check at both scales ask the follow-up question every time: is this sample the whole story? That one question is the difference between using an AI tool and trusting it blindly.
In Subiaco, the learner who checks the full dataset keeps the columns that matter. The longer argument is in why teenagers should still learn to code in 2026.
Lessons happen over live video, so nobody travels anywhere.
Subiaco learners write every line themselves while the teacher watches and questions.
Plans follow the Western Australian school year and break for its holidays.
One complete lesson at no cost, then a plain suggestion of what fits.
Matched by level and pace, or one to one.
Fixed weekly times, about eight lessons a month.
A 5pm Subiaco lesson starts at 2:30pm India time, all year.
Perth time, all year
Western Australia last used daylight saving in a trial that ended in March 2009 (IANA time zone database), and India does not use it, so lesson times never shift.
Three prices for every family.
The first lesson is free and ends with a clear suggestion.
A month of group classes, about eight lessons, with fifteen to twenty learners at one level.
About eight lessons a month with one teacher for one learner.
Subiaco families pay in US dollars, only after the trial and once a course and time are agreed. The pricing page covers school holidays, missed lessons and switching between group and private.
Rated 4.9 across 547 Google reviews. These are real reviews, reproduced as written.
★★★★★
"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
Let us know how old the learner is and what they like doing. Teenagers could open by profiling the stops file at two scales, and younger children with a Scratch sorting game.
What Subiaco parents and adult learners usually want to know.
The 2021 Census QuickStats record 9,940 residents in the suburb of Subiaco, with 2,549 families and a median age of 40.
A column in a table that holds the same value in every row. It cannot distinguish one row from another, so it adds nothing to a filter, a chart or a machine learning model.
Count the distinct values in each column with df.nunique() and list the columns where the count is 1. Run it on the full dataset, not a filtered sample.
Across the 58 stop records inside Subiaco, 5 of 29 columns were constant. Across all 16,822 records in the state file, only 2 were, so 3 would have been dropped wrongly.
Six is a comfortable start, using Scratch blocks. Most children move on to typing Python somewhere around nine.
No. Courses that use Claude admit adults of 18 and older; school students learn on other AI tools instead.
No. Lessons are live online only, we have no Australian office, and our listed phone number is Indian.
The first lesson is free. Group classes cost USD 100 a month for two live lessons a week, about eight a month, in groups of fifteen to twenty, and one-to-one classes cost USD 150 a month. You agree the course and time before paying.
Fifteen to twenty learners at a similar level and pace, not sorted by age or suburb. One-to-one lessons suit anyone no group time fits.
No. Copilot Studio lessons run privately, one learner and one teacher; group classes write their agents in Python.
See the Perth page for the whole city and coding for Perth children for younger learners. The Western Australia guide covers the state.