Vision

When students learn programming they develop a broad skill set that goes way beyond simply using a programming language. Programming is an applied way to teach mathematical thinking, while writing and debugging their code students explore the real-world applications of mathematical concepts.
This is our vision and we are happy to encourage children to explore the fascinating world of computer programming. To aid our students in this exploration, we adapted a 5 semester programming course for students starting from 8th grade. (Full Article)
Structure
5 semesters
is the duration of the course. By the end of the course, participants will have developed their programming skills and will be familiar with advanced topics such as memory management, advanced algorithms and data structures, recursion.
3 hours
is the duration of a single lesson. The lesson is split into an hour of lecture and 2 hours of practice led by experienced programming teachers and software engineers.
16 lessons
in a semester (one class per week). The lessons will take place in the evening on workdays online (due to the COVID-19 situation), starting in October 2020. The specific time, day of the week will be decided based on preferences of the participants.
6–12 students
in a single group. We start the course only when at least 6 students are enrolled.
Requirements
8–12 grade
school or gymnasium students can be enrolled for the course.
CHF 160
The course costs CHF 160 during the first semester. The price may be adjusted in the follow up semesters.
Mathematics
knowledge is a prerequisite for the course. The candidates should confirm it by providing an academic transcript and during the interview, which is part of the application process.
English
is the main language of the course. Participants should speak English at a conversational level.
The first semester curriculum
An overview of topics covered during 16 classes in the first semester.
-
1
Introduction and simple programs.
-
2
Variables, assignments and values. Arithmetics.
-
3
Logical operations, simple control flows (choices).
-
4
Control flows (loops).
-
5
Structured programming. Functions.
-
6
Deep dive into primitive types. Type conversion.
-
7
Introduction to arrays.
-
8
Advanced array topics
-
9
Introduction to strings.
-
10
Advanced string manipulation.
-
11
File input and output. Error processing.
-
12
Introduction to multidimensional arrays and lookup data structures.
-
13
Deep dive into multidimensional arrays and lookup data structures.
-
14
Introduction to efficient algorithms.
-
15
Information representation. Structures.
-
16
More about packages, text-based user interface.
Our Team

Jaroslavs Samčuks
course creator, teacher, software engineer

Pavel Zaichenkov, PhD
course creator, teacher, software engineer