APMS / BLK / 01
Scratch coding
The home of the Machine Learning for Kids games.
Open the syllabusUnited States · Grades 6 to 8 · Projects with real code
The difference between a middle schooler who has heard about AI and one who understands it is usually a single project: one they built, broke and fixed themselves. The right project for grades 6 to 8 is small enough to finish in a few weeks, needs no adult accounts, and teaches one real idea, such as learning from examples, or why a model trained on lopsided data gets things wrong. Below are ten such projects, two of them written out in full Python with the output we got, and the route by which a good one can become a science fair entry.
Live teaching since 2020 · 10,000+ students · Projects your child writes, not ones we write for them
The short answer
Strong AI projects for middle school students teach one real idea each: a rock-paper-scissors bot that learns a friend's habits, a message sorter that learns topics from examples, a Scratch game trained in Machine Learning for Kids, or AI for Oceans. Modern Age Coders runs live online project classes for grades 6 to 8 (ages 11 to 14) in Python and Scratch, in a batch or one to one.
Build with a teacher
Each is live, with a regular teacher who helps a student finish what they start.

APMS / 01
Ages 9 to 12. Typed code, games and the first smart programs.
Open the syllabus →
APMS / 02
Ages 8 to 14. Projects that show how AI learns and where it fails.
Open the syllabus →
APMS / 03
Ages 8 to 12. Twelve weeks of building toward one finished project.
Open the syllabus →Ten projects
Our list, ordered from a first afternoon to a science fair entry. The Scratch and browser projects come from free tools described on their own pages; the Python ones are written out in full further down.
| Project | Tool | The idea it teaches | Grade |
|---|---|---|---|
| AI for Oceans | CodeAI, in the browser | Training: "train a real machine learning model to identify sea creatures and trash in the ocean" | 6 |
| Rock, Paper, Scissors | Machine Learning for Kids and Scratch | Images: "Make a Rock, Paper, Scissors game in Scratch that learns to recognise hand shapes." | 6 to 7 |
| Journey to school | Machine Learning for Kids | Prediction: "Train the computer to be able to predict how you travel to school in the morning." | 6 to 7 |
| Smart Classroom | Machine Learning for Kids and Scratch | Language: a smart assistant that controls virtual devices | 6 to 8 |
| Top Trumps | Machine Learning for Kids and Scratch | Numbers: "Train a computer to be able to play the Top Trumps card game in Scratch." | 7 |
| Fooled | Machine Learning for Kids | Bad data: how computers make mistakes if they are trained badly | 7 to 8 |
| Rock-paper-scissors bot | Python, no installs | Learning a habit from history (project 1 below) | 7 to 8 |
| Sport or music sorter | Python, no installs | Learning words from examples (project 2 below) | 7 to 8 |
| Headline testing | Machine Learning for Kids and Scratch | Testing: "Create a testing tool in Scratch to measure how good a machine learning model is." | 8 |
| Chatbot on a topic | Machine Learning for Kids and Scratch | Questions: a chatbot that answers questions about a topic you choose | 8 |
Pick by the idea, not the tool. A sixth grader who has never trained anything learns most from AI for Oceans or Rock, Paper, Scissors, where the training step is visible and quick.
Seventh and eighth graders get more from the Python projects, because nothing is hidden. Every line that does the learning is on the screen, and they can change it.
It is finished, it was tested on examples it never saw, and the student can say why it got something wrong. Those three together are what a teacher or a science fair judge looks for.
A project that only works on the examples it was trained on has not learned anything yet. Testing on new examples is the step to make sure is never skipped.
Sources, read 17 October 2026: Machine Learning for Kids (worksheet descriptions from its published English text) and CodeAI Hour of AI. We are not connected with either. For younger children's projects, ages 6 to 12, see AI projects for kids.
Project 1, in Python
This bot keeps a record of every move a friend has made, finds the friend's favorite, and plays whatever beats it. It is the simplest honest example of learning from data. It is our own script, built only on the collections module that comes with Python, and its output below is from a run on 17 October 2026 with Python 3.13.
# Project 1: a rock-paper-scissors bot that learns (ours)
from collections import Counter
BEATS = {"rock": "paper", "paper": "scissors",
"scissors": "rock"}
def bot_move(history):
if not history:
return "paper" # no data yet: just pick
favorite = Counter(history).most_common(1)[0][0]
return BEATS[favorite] # beat their usual move
friend = ["rock", "rock", "paper", "rock", "scissors",
"rock", "rock", "paper", "rock", "rock"]
wins = 0
for turn, move in enumerate(friend):
bot = bot_move(friend[:turn])
if BEATS[move] == bot:
wins += 1
print("bot won", wins, "of", len(friend))Output on our run: bot won 7 of 10, which is 7 / 10 = 70%. Python describes a Counter as a dict subclass for counting hashable objects, and most_common(1) returns the single most frequent move with its count.
Our pretend friend plays rock seven times out of ten. After a couple of turns the bot has seen enough rocks to play paper almost every time, and paper beats rock.
That is the simplest kind of prediction: find the most common pattern in the past and bet on it continuing. When people are predictable, it works well.
Play a different move every turn and the bot's favorite keeps changing; its wins drop. Ask the student to try, and to explain why.
Then improve the bot: let it look only at the last five moves, or at what the friend plays after a win. Each change is a small experiment with a number to compare.
Project 2, in Python
This program learns which words belong to sport and which to music from six example sentences, then sorts four new ones. The first version gets half of them wrong, which is the most useful thing it does. Our script again, run the same day.
# Project 2: sort messages into sport or music (ours)
from collections import Counter
training = [
("the team scored a goal in the last minute", "sport"),
("our coach said the match starts at noon", "sport"),
("she ran the fastest race of the season", "sport"),
("the band played a new song tonight", "music"),
("he practiced guitar chords for the concert", "music"),
("that album has a great drum beat", "music"),
]
tests = [("the goal came late in the match", "sport"),
("a quiet song on the piano", "music"),
("the drummer joined the band", "music"),
("the race was on a rainy day", "sport")]
def train(skip=()):
words = {"sport": Counter(), "music": Counter()}
for text, label in training:
words[label].update(w for w in text.split()
if w not in skip)
return words
def classify(words, text):
score = {label: sum(words[label][w] for w in text.split())
for label in words}
return max(score, key=score.get)
for skip in [(), {"the", "a", "of", "in", "on", "at"}]:
words = train(skip)
right = sum(classify(words, t) == label
for t, label in tests)
print("skipping", len(skip), "words:", right, "of 4")Output on our run: skipping 0 words: 2 of 4, then skipping 6 words: 4 of 4. The only change between the two runs is the set of words the program ignores.
The sport sentences happen to use "the" more often. So in the first run, any new sentence full of "the", such as the drummer joined the band, scores higher for sport. The model learned the wrong pattern.
This is a real problem in real systems. Common words like the and a carry almost no meaning but appear everywhere, and they can drown out the words that matter.
Telling the program to skip six very common words lets the useful ones, band, song, goal, race, decide. The score goes from 2 of 4 to 4 of 4.
Four test sentences are far too few to prove much, and a curious student should say so. Writing ten more tests, including some tricky ones, is the natural next step.
Without typed code
For sixth graders, or anyone not ready for typed code, Machine Learning for Kids connects real training to Scratch. Its own description: "This free tool introduces machine learning by providing hands-on experiences for training machine learning systems and building things with them."
| Point | What the site says |
|---|---|
| Step 1 | "Collect examples of things you want to be able to recognise" |
| Step 2 | Use the examples to train a computer to recognize them |
| Step 3 | Make a game in Scratch that uses what the computer learned |
| Without an account | "Try without registering"; with Try it now you can only create one project at a time |
| How long it has run | The tool was first made available in 2017 |
| Project worksheets | Each project has a downloadable worksheet; we counted 63 titled worksheet entries in its English text |
Rock, Paper, Scissors suits a first try: the student photographs their own hand shapes as examples, trains, and then plays. When the game misreads a hand, the fix is obvious and physical, more examples, better lighting.
The Fooled worksheet then makes the point deliberately. Its description is "Learn about how computers can be confused and can make mistakes if they're trained badly", and it is the lesson most worth having by grade 7.
Scratch projects hide the learning step inside the tool. Once a student asks how it works inside, they are ready for projects 1 and 2 above, where the counting is on screen.
A good order is one project of each kind: a Scratch one to see AI working, then a Python one to see how.
Science fair
The national competition for grades 6 to 8 is reached through science fairs affiliated with Society for Science; ask whether your local fair takes computer science entries. Here is the route as Society for Science describes it, then our template for the write-up.
| Point | What Society for Science says |
|---|---|
| Who | Students in 6th, 7th and 8th grade in the United States |
| How to enter | Students must first compete at a Society-affiliated science fair |
| Nomination | The top 10% of the 6th, 7th, and 8th grade competitors at Society-affiliated fairs in the U.S. are eligible for nomination |
| 2026 numbers | 1,997 entrants, a Top 300, and 30 finalists |
| 2026 Finals Week | October 23 to 28, in Washington, DC |
A fair project needs a question, not just a program. "Can a bot beat my sister at rock-paper-scissors?" becomes "Does a bot that remembers only the last five moves beat one that remembers all of them?"
Then it needs a fair test: the same opponent moves for both bots, enough games to mean something, and the results in a table. Project 1 above is most of that already.
Question. Prediction before testing. Method, including the code and the test examples. Results, with numbers. What went wrong and what you would change.
The fifth part matters most. A judge learns more from a student who can explain why the sorter failed than from one who only shows it working.
Our rough check of the published 2026 numbers: 1,997 x 0.15 is about 300, so the Top 300 was roughly the top 15% of entrants. That is our arithmetic on Society for Science's figures. Your school or district fair is the first step; ask a science teacher which affiliated fair it feeds. Source: Society for Science, Thermo Fisher JIC. We are not connected with Society for Science or Thermo Fisher Scientific.
For parents and teachers
Middle schoolers need help to finish projects, and the help is where projects go wrong. These are the rules we teach by.
When a student is stuck, ask what they expected and what happened. The fix they find themselves is the one they remember.
A finished project with four test examples beats an ambitious one that never runs. Scope down early and often.
The Python projects here need nothing but Python. For any online tool, read its terms for the child's age first.
For more on how AI fits this age, see AI literacy for students and our AI tool age guide. Students who outgrow these projects can move on to AI projects for high school students.
Project by project
Where a first project leaves a student, and what the next one adds.
| Level | What the student can show |
|---|---|
| 1. Trainer | Has trained a model in a tool such as AI for Oceans |
| 2. Tester | Tests on new examples and counts the right answers |
| 3. Coder | Has written a learning program in Python |
| 4. Investigator | Changes one thing, measures it, and explains why |
Stage 2 is the leap. Ask "did you test it on something new?" after every project.
Stage 4 is science fair ready, whatever the grade.
When your model gets something wrong, celebrate. You just found your next experiment.
Keep a notebook of every change and its score. It becomes your write-up.
The course catalog
Live online with a regular teacher, in a batch or one to one. Teen courses suit eighth graders who have turned 13.
APMS / BLK / 01
The home of the Machine Learning for Kids games.
Open the syllabusAPMS / BLK / 02
How AI learns, shown with builds.
Open the syllabusAPMS / BLK / 03
Ages 8 to 12: apps built from blocks.
Open the syllabusAPMS / TYP / 01
Where projects 1 and 2 are taught.
Open the syllabusAPMS / TYP / 02
Counting, chance and averages in Python.
Open the syllabusAPMS / TYP / 03
Building with AI help, explained.
Open the syllabusAPMS / MOR / 01
Bigger programs and real datasets.
Open the syllabusAPMS / MOR / 02
The next step after these projects.
Open the syllabusAPMS / MOR / 03
Ages 14 and up, with basic Python.
Open the syllabusHow lessons 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.
Weekdays
After school, at a time that suits your US time zone.
Weekends
Weekend mornings, good for longer builds.
1-on-1
Paced to a science fair date.
Who knows the project from day one.
We help shape it; they build it.
Every project meets new examples.
The five-part template, used in class.
Live video, any state.
Fifteen to twenty students, or one to one.
Student work
Work by learners who started with a first small project. The student labs page has 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
Every project on this page can be built for free at home, and we say so. Our classes add a teacher, billed monthly in US dollars with no long contract; stop after any month.
Free first class
USD 0
no card required
Group batch
USD 100
a month, billed in US dollars
One to one
USD 150
a month, billed in US dollars
What families say
Parents on Google, quoted 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
Questions from families and teachers
One that teaches a single real idea and can be finished in a few weeks: a rock-paper-scissors bot that learns habits, a message sorter that learns topics, a Scratch game trained in Machine Learning for Kids, or AI for Oceans.
Yes. Browser and Scratch tools let a sixth grader train a model with no typed code. CodeAI's AI for Oceans has students train a real machine learning model to identify sea creatures and trash in the ocean.
Not for the Python projects on this page, which need only Python. Machine Learning for Kids offers a Try without registering option, limited to one project at a time.
Yes, if your school or district fair accepts computer science entries; ask your science teacher. For grades 6 to 8, the Thermo Fisher Scientific Junior Innovators Challenge is reached by competing first at a Society-affiliated science fair.
Society for Science says the top 10% of 6th, 7th and 8th grade competitors at its affiliated fairs in the US are eligible for nomination. In 2026 there were 1,997 entrants and 30 finalists.
Because common words like the appeared more in the sport examples, so any sentence full of them looked like sport. Skipping six common words fixed it, which is a real technique in language AI.
Help by asking questions, not by writing code. Ask what they expected and what happened. A project the student can explain is worth more than a polished one they cannot.
No. We teach the ideas and the code so students build their own projects. That is also what science fairs expect.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.
The first class is free. After that, families pay monthly, and the fees section of this page gives the figure in US dollars.
Elsewhere on this site
More for US families with a young builder.
All our pages for US families.
Ten account-free builds, ages 6 to 12.
The next ladder up.
Our live AI classes for children.
For eighth graders ready for more.
Activities that need no tools.
AI research programs for US high schoolers, from the 2026 to 2027 rules, with a fair-test experiment.
Four AI and Python certification exams for US high schoolers, compared from the issuers' own pages.
AI summer programs for US high schoolers in 2027, and an eight-week AI summer you can run at home.
Start here
Tell us your child's grade and any project idea, however rough. In the first class they start building it, and you see how we teach.
Before booking you can read how we teach or look through all courses and their syllabuses.
WhatsApp us · +91 91233 66161 · connect@modernagecoders.com
Our teachers teach from India over live video, so any US family can join from home. WhatsApp is the quickest 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