SMR / KIDS / 01
Block coding for kids
The gentlest start, with blocks and characters.
Open the syllabusSan Martín · Live online, in English · Ages 6 to adult
Moyobamba is the capital, Tarapoto is the busiest town, and families from Rioja and Nueva Cajamarca down to Juanjuí and Tocache live along the same valleys. San Martín has been publishing good news about learning and connectivity. Here we set out the census picture, those results, what a home needs for a live class, and a mapping lesson built on the region's list of waterfalls, caves and viewpoints.
Live online classes since 2020 · more than 10,000 students taught · mentors who make learners explain each step
Short version
Yes. Learners anywhere in the San Martín region, in Tarapoto, Moyobamba, Rioja, Lamas, Juanjuí or Tocache, can take live online coding and AI classes in English with Modern Age Coders. Children from six learn through blocks and maths puzzles, most move to typed Python by nine or ten, teenagers build web pages, apps and data projects, and adults learn websites, Python or AI tools for work. Classes are either a group of fifteen to twenty or private, at the times the family chooses, and the first is free. Every learner is taught to think a problem through rather than copy an answer.
Good starting points
Maths and code together for younger children, interactive web pages for teenagers, and website building for adults whose work lives online, from tourism to farming co-operatives.

SMR / 01
Ages 8 to 12. Coordinates, patterns, fractions and angles from the primaria syllabus, explored by writing small programs that draw and check them.
Open the syllabus →
SMR / 02
Ages 13 to 18. Buttons, games and maps that respond in the browser, built line by line by secundaria students starting from zero.
Open the syllabus →
SMR / 03
For adults and older teens. HTML and CSS from the first tag to a finished, tidy site, useful for a guesthouse, a tour business or a co-operative.
Open the syllabus →Population
The 2025 census counted 967,938 people in the department of San Martín, in ten provinces. The capital is Moyobamba, though the province of San Martín, home to Tarapoto, is the most populous.
| Area | Population, 2025 |
|---|---|
| Department of San Martín | 967,938 |
| San Martín (Tarapoto) | 231,719 |
| Rioja | 146,055 |
| Moyobamba (capital) | 138,325 |
| Lamas | 97,450 |
| Tocache | 87,852 |
| Mariscal Cáceres (Juanjuí) | 76,773 |
| Bellavista | 70,990 |
| Picota | 44,448 |
| El Dorado | 43,013 |
| Huallaga | 31,313 |
Census 2025, INEI demographic indicators, table 1: people enumerated on 15 September 2025 plus INEI's estimate of those not reached, inside boundaries current on 15 July 2026. We list each figure exactly and never add provinces together.
Town figures for 2025 are not out yet. INEI's 2017 count gave the capital, Moyobamba, 50,073 people. Its 2017 directory of populated centres lists Tarapoto at 74,804, with La Banda de Shilcayo at 36,201 and Morales at 30,708 next door.
Further along the valleys the same directory lists Juanjuí 28,453, Nueva Cajamarca 25,812, Rioja 22,080 and Tocache 15,752. Tarapoto, Morales and La Banda touch one another, but INEI lists them separately and so do we.
The census reached 949,469 people in San Martín in person. Of them, 107,708 were aged 6 to 11 and 114,383 were 12 to 17, the primaria and secundaria years.
Whether that learner lives on a cacao farm near Juanjuí or a street in Tarapoto, the class is the same: live, over video, with a mentor who knows them.
School
The regional education office reports clear gains in reading and maths, and the region has approved a large ICT classrooms project. Programming, however, is still not a school subject anywhere in Peru.
| Area | 2023 | 2025 |
|---|---|---|
| Reading | 42.2 | 58.8 |
| Mathematics | 31.6 | 47.7 |
From the DRE San Martín's note of 19 May 2026 on results of MINEDU's national learning assessment (ENLA), published by MINEDU's measurement office. The note also says the number of pupils at an adequate level in maths rose from 6,073 to 9,167.
In January 2026 San Martín's regional council prioritised an investment project called "Conectando y Educando". The DRE San Martín describes it as covering 944 classrooms in 57 public schools, across 37 districts in all ten provinces, for more than 24 thousand pupils.
The plan includes ICT classrooms, technology equipment, digital platforms and teacher training. When it is delivered, those pupils will have better machines. Learning to program on them is a separate step.
Peru's national curriculum, the CNEB, has one technology competency, number 28, and makes it transversal, so every area shares it. The regular secundaria timetable of 35 hours sets aside four for Matemática and none for programming.
Grades follow Law 28044, six years of primaria and five of secundaria, with MINEDU fixing each child's grade by age on 31 March.
| Level | Public | Private |
|---|---|---|
| Primaria | 116.0 | 5.6 |
| Secundaria | 96.1 | 4.2 |
MINEDU school census figures as reprinted in INEI's Compendio Estadístico Perú 2026 (enrolment cuadros 5.16, 5.17, 5.22 and 5.23). Decimal point ours; no totals added.
Nearly every San Martín pupil is in a public school. MINEDU's national coding initiative, Fábrica de Programadores, began in July 2025 with a thousand pupils of the last two secundaria years in Lima Norte, studying Python with the PCEP exam open to them afterwards; San Martín pupils were not part of that first group. Families who want programming now still find it outside school.
Connection
Internet, increasingly yes; computers, still often no. INEI's household survey shows home internet in San Martín rising from under one home in ten in 2015 to over half in 2025.
| San Martín | 2015 | 2022 | 2025 | All Peru, 2025 |
|---|---|---|---|---|
| Share of homes owning a computer | 16.0 | 21.1 | 25.5 | 33.9 |
| Homes with an internet service | 8.8 | 41.6 | 52.6 | 56.8 |
| Residents 6 and older who go online | 22.6 | 63.4 | 78.4 | 81.1 |
INEI's 2026 compendium, cuadros 11.5, 11.6 and 11.13, which publish the ENAHO household survey by department each year. Decimal commas written as points; the three years chosen by us.
Between 2015 and 2025 the share of San Martín homes with internet rose from 8.8 to 52.6 per cent, close to the national 56.8. Internet use among people aged six and over reached 78.4 per cent.
Computer ownership grew more slowly, to about one home in four. For coding that is the real constraint, because a learner over nine needs to type, run and correct programs.
Young children can start block coding on a tablet. Older learners use a shared family laptop, a relative's computer, or a parent's office machine outside working hours.
The free first class tests sound, screen sharing and the connection, so that nothing is paid before we know it works.
English
English only. Mentors teach from India in live video lessons, go at the learner's speed, and keep the lesson in English throughout.
On EF's English Proficiency Index 2025 Peru scores 519 and ranks 52nd of 123 countries. The same page lists San Martín at 460, in EF's low band and below the national score.
So most San Martín children are early English learners, and we plan lessons on that basis rather than hoping for the best.
One idea per sentence, the same word for the same thing each week, and a live code example for every new word. Mentors check understanding by asking the learner to predict what the program will do.
Spanish answers are fine; the mentor responds with the English phrase and continues. Coding words such as if, while and print become familiar within weeks.
Parents who want to know how a child moves from blocks to typing can read Python for kids in Peru, and our national page on coding and AI classes in Peru explains our approach for every age.
A San Martín data project
The regional government publishes an inventory of 308 tourist resources with latitude and longitude for each. Before drawing them on a map, a careful programmer checks that every point could actually be in San Martín.
The Gobierno Regional de San Martín shares "Inventario de recursos turísticos de la región San Martín" through Peru's open data portal under ODC-By, the attribution licence: anyone, a company included, may reuse it provided the regional government is named. Its data is dated 21 June 2026 and the page was last updated on 16 July 2026.
We saved the CSV as recursos_turisticos_san_martin.csv on 9 November 2026. Of its 308 resources, 206 are natural sites, among them 56 rows typed CATARATAS and 25 typed CASCADAS: waterfalls, under two subtype names. Each row has a name, a category, a district and two coordinates.
Where is the centre of San Martín's tourism, on average? A first program simply averages all the latitudes and all the longitudes.
Coordinates in Peru are south of the equator and west of Greenwich, so both numbers should be negative: latitude around minus six or seven, longitude around minus seventy-six or seventy-seven.
import csv
with open("recursos_turisticos_san_martin.csv", newline="", encoding="utf-8-sig") as f:
places = list(csv.DictReader(f))
lats = [float(p["LATITUD"]) for p in places]
lons = [float(p["LONGITUD"]) for p in places]
print("Places:", len(places))
print("Average point:", round(sum(lats) / len(lats), 3), round(sum(lons) / len(lons), 3))It prints: Places: 308 and Average point: -6.574 -75.332.
The answer looks believable, which is exactly the danger. Yet not one of the 301 points that later pass our check lies as far east as minus 75.332: the average sits outside the very places it is meant to summarise. One bad value can drag an average a long way, and this file has more than one.
Version 2 draws a loose box of our own around the region, deliberately generous, and keeps only points inside it. For a point outside the box, it tries two repairs, without saving them: first make both numbers negative, in case a minus sign was lost; then swap latitude and longitude, in case they were typed in the wrong columns. If neither repair puts the point in the box, the point is reported as unexplained.
import csv
LAT_BOX = (-9.0, -5.0) # a loose box we drew by hand
LON_BOX = (-78.5, -75.0) # around the San Martin region
def inside(lat, lon):
return LAT_BOX[0] < lat < LAT_BOX[1] and LON_BOX[0] < lon < LON_BOX[1]
good, flagged = [], []
with open("recursos_turisticos_san_martin.csv", newline="", encoding="utf-8-sig") as f:
for p in csv.DictReader(f):
lat, lon = float(p["LATITUD"]), float(p["LONGITUD"])
if inside(lat, lon):
good.append((lat, lon))
elif inside(-abs(lat), -abs(lon)):
flagged.append("sign lost: " + p["NOMBRE_RECURSO"])
elif inside(-abs(lon), -abs(lat)):
flagged.append("swapped: " + p["NOMBRE_RECURSO"])
else:
flagged.append("unexplained: " + p["NOMBRE_RECURSO"])
print("Inside the box:", len(good))
print("Average point:", round(sum(a for a, b in good) / len(good), 3),
round(sum(b for a, b in good) / len(good), 3))
for note in flagged:
print(note)It prints: Inside the box: 301, Average point: -6.657 -76.72, then seven notes: sign lost: MIRADOR NATURAL DEL GALLINAZO, unexplained: RAPIDOS DE SAN JERONIMO, swapped: BOSQUE SHIRINGAL, unexplained: CUEVA DE LOS FRANCESES, sign lost: CUEVA DEL TIGRE PERDIDO, unexplained: CASCADA TIMON and swapped: EMBARCADERO TURISTICO DEL PUERTO CALLAO DE HUICUNGO.
Seven of 308 points were off. Two had lost a minus sign, two had latitude and longitude swapped (one of those had also lost its signs), and three could not be explained. Those three are all in the district of Huicungo, with longitudes near minus 82.9, which is far out in the Pacific Ocean, nowhere near San Martín. They might share a typing slip, but the file does not tell us which digit is wrong, so we leave them out rather than invent a fix.
Leaving seven points out moved the average longitude from minus 75.332 to minus 76.72, a shift of 1.388 degrees. At this latitude one degree of longitude is about 110 kilometres, so the first answer was roughly 150 kilometres too far east (our calculation). A map drawn from Version 1 would have put the region's tourist heart in the wrong place.
| Result | Points |
|---|---|
| Inside our box as published | 301 |
| Minus sign lost | 2 |
| Latitude and longitude swapped | 2 |
| Unexplained, longitude near minus 82.9 | 3 |
Data credit: Gobierno Regional de San Martín, tourist resource inventory, reused under ODC-By. The box, the repairs we test and the classification are ours; the regional government has not reviewed them. Our box is a rough rectangle, not the region's real border, so a point inside it is plausible, not proven.
Age by age
Choose by age, then by what the learner enjoys. Grades follow MINEDU's normative ages counted on 31 March.
| Age | Most likely grade | Course | First projects |
|---|---|---|---|
| 6 and 7 | First and second of primaria | Block coding | Moving characters, simple stories |
| 8 to 10 | Third to fifth of primaria | Maths through Coding or Scratch | Shapes, patterns, small games |
| Keyboard-ready, about 9 to 12 | Upper primaria | Python and AI for Kids | Number games written as code |
| 13 to 15 | First to third of secundaria | JavaScript for Teens | Interactive pages and browser games |
| 15 to 17 | Third to fifth of secundaria | Python, then data or apps | Projects like the map check above |
| 18 and over | University, work, family business | Websites, Python or AI tools | A business site, automations |
Course ages are ours. MINEDU places pupils by their age on 31 March, so a child with a later birthday may be a grade below the one shown.
Lessons that link code with the maths they meet at school, in groups of similar age, with something visible to show at the end of each class.
Real languages, real projects and a portfolio, with harder problems for anyone eyeing the national olympiads.
People in tourism, agriculture, trade and offices learn to build sites, handle data and use AI tools carefully in their work.
Teenagers and parents can find more on coding classes for teens in Peru. Working adults should look at AI and coding for professionals in Peru.
Olympiads
Yes. Entry runs through each colegio, which hosts the opening round. We are a private tutor and have no tie to MINEDU, the DRE San Martín or the olympiad.
On Wednesday 8 July 2026 colegios across Peru held the school round of the ONEM, with pupils grouped by year into three levels. According to El Peruano, more than 1.7 million pupils sat the 2026 edition.
We train olympiad thinking with problems we write ourselves, and never reproduce official ones.
Four map points are (2, 3), (4, 5), (6, 7) and (8, 85). What is their average, and what would it be without the last point? (Ours. Answer: (5, 25) with it, and (4, 5) without it. One faulty point moved the second coordinate from 5 to 25.)
It is the map project in miniature, and a question about averages that every olympiad student should be able to answer quickly.
Hours
When your family says. San Martín keeps Peru's clock, and your mentor arranges the Indian working day to fit.
| Peru time, Tarapoto | India time | Date in India |
|---|---|---|
| 07:15 | 17:45 | Same date |
| 10:00 | 20:30 | Same date |
| 11:30 | 22:00 | Same date |
| 16:30 | 03:00 | Next date |
| 19:30 | 06:00 | Next date |
The tz database records America/Lima at UTC minus five with no summer time since 1994; INACAL is in charge of Peru's official hour. India runs five and a half hours ahead of UTC, which leaves Tarapoto is ten and a half hours behind India every day of the year.
With no clock changes on either side, the hour you book stays put through the year. Many families start during the long summer break from January to March and keep the same time when school returns.
Milestones
Our own milestones, for learners from six to sixty and beyond. They help a mentor place a learner and show families concrete progress.
| Stage | Often by | The learner can |
|---|---|---|
| 1. Steps | Age 6 or 7 | Put instructions in order |
| 2. Loops | Age 7 to 9 | Repeat with a loop |
| 3. Coordinates | Age 8 to 10 | Place things on a grid with x and y |
| 4. Typing | Around 9 to 12 | Write Python that chooses and repeats |
| 5. Averages | Age 11 to adult | Summarise data and spot an outlier |
| 6. Plausibility | Age 13 to adult | Test whether each value could be true before using it |
The map project belongs to stages five and six: getting a number, then asking whether each input deserved to be in it.
We show progress through projects your child can explain to you.
Before you average, look for the point that does not belong.
If you cannot explain a bad value, report it. Do not invent a fix.
Also available
Listed from the youngest learners up. Whichever you pick, lessons happen live, in English, with the mentor who already knows the learner, privately or alongside fourteen to nineteen others.
SMR / KIDS / 01
The gentlest start, with blocks and characters.
Open the syllabusSMR / KIDS / 02
Children design and code their own games.
Open the syllabusSMR / KIDS / 03
Typed Python and small AI ideas.
Open the syllabusSMR / TEEN / 01
Complete Python for secundaria students.
Open the syllabusSMR / TEEN / 02
Modern web apps once JavaScript feels easy.
Open the syllabusSMR / TEEN / 03
Real datasets, charts and first models.
Open the syllabusSMR / ADULT / 01
Python for adults at a steady pace.
Open the syllabusSMR / ADULT / 02
From pages to working web applications.
Open the syllabusSMR / ADULT / 03
Clear designs for a business or community group.
Open the syllabusThe format
Any day, any time, flexible: choose a batch, or for a very personalised plan choose 1-on-1 at the hour that suits your family.
Mornings
Evening in India, and a fresh hour for young learners before school.
Afternoons and evenings
Also bookable; mentors adjust their day.
Private
One-to-one lessons on the days you agree.
The same person each week, who knows the learner.
Short sentences backed by code on screen.
Every line written and run by the learner.
Children, teens and adults in their own groups.
Device and connection tested for free.
A group of fifteen to twenty, or one to one.
Student work
Students who stick with it build games, sites and tools that others use. Some are below; the student labs list 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
Fees are a monthly amount in US dollars. Your card pays in dollars and your bank converts them into soles at the rate it uses that day, so the statement may not match the figure here to the cent.
Free first class
Free
no card required
Group batch
$100 USD
a month, eight live classes
One to one
$150 USD
a month, eight live classes
What families say
Word-for-word reviews from parents and learners on Google.
★★★★★
"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
San Martín families ask
No. Our classes are always live, online and taught only in English. Mentors talk clearly and patiently, adapt to each learner's speed and accent, and turn a Spanish answer into English for the learner.
Yes. Everything happens over live video, so Tarapoto, Moyobamba, Rioja, Juanjuí, Tocache or a village in Lamas all work the same, given a connection and a suitable device.
Any day, any time, flexible: choose a batch, or for a very personalised plan choose 1-on-1 at the hour that suits your family. India is ten and a half hours ahead, so 10:00 in Tarapoto is 20:30 for the mentor.
Not as a subject. The national curriculum spreads digital skills across all areas. San Martín's "Conectando y Educando" project will equip 944 classrooms with ICT, but programming lessons are not part of the regular timetable.
For a young child doing blocks, a tablet can work. From about nine a learner needs a laptop or desktop to type and test code. The free class checks your device.
Six. Young children start with blocks and puzzles; most move to typed Python at nine or ten, and the mentor judges readiness in the free class.
Yes, in adult groups or one to one. Many start with websites, Python or AI tools that help with work in tourism, farming businesses or offices.
We build olympiad reasoning with our own problems, never official papers. Pupils enter through their colegio. We have no link with MINEDU, the DRE San Martín or the ONEM.
A monthly fee, paid by card in US dollars, converted into soles by your bank. Visitors from India see rupees. The first class is free and no card is asked for.
Where the course includes one, learners receive our own Modern Age Coders certificate of completion. It is not a Peruvian qualification, and neither MINEDU, the DRE San Martín nor any school issues or endorses it.
Also here
Next reading for learners across the region.
Our national page and Peru index.
From blocks to typed Python.
Small AI builds for children.
AI projects for secundaria.
Each AI tool's age rules.
What a lesson looks like.
Part of the guide: Every Peru page
More guides: Coding and AI classes in Peru · En español: clases de programación en inglés · Start here: English-medium coding in Lima · By age and stage: AI and coding for professionals · Subjects and courses: AI agents course · Exams, olympiads and school holidays: IB computer science tutor · Guides to choosing: An English-taught option to Crack The Code · Cities: Arequipa: coding for every age · Lima and Callao districts: Programación para niños en Ancón
Start here
In the trial the mentor gives a small puzzle, guides a first program and checks your device and sound. Afterwards you receive a suggested course and group, based on how the learner reasoned and how well they followed the English.
Like to read first? How we teach covers a lesson in detail, and the course list has every syllabus.
WhatsApp us · +91 91233 66161 · connect@modernagecoders.com
Teaching is live and in English, from mentors in India. WhatsApp is quickest; please write to 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