Raise the IT level of Russia: how the Moscow School of Programmers works

Sergey Shedov - Founder and director of the Moscow School of Programmers. Graduated from Moscow State University, faculty

computational mathematics and computer science andMaster's program MBA. He teaches at the Moscow Institute of Physics and Technology at the Department of Algorithms and Programming Technologies, and is a member of the Federal Subject Commission of the authors of the exam in computer science. In 2001, he founded the School of Programmers in Mytishchi. Chairman of the subject-methodological commission on computer science of the Ministry of Education of the Moscow region.

Semen Obukhov - Moscow School Development Directorprogrammers. Graduated from the HSE Faculty of Computer Science in 2018. Since 2018, she studies at the Institute of Education of the Higher School of Economics. He has been teaching IT disciplines at the School of Programmers for five years. Since 2015, he has been organizing olympiads, including the school, municipal and regional stages of the All-Russian Olympiad of schoolchildren in computer science in the Moscow region, as well as the annual International Space Olympiad.

How to become a programmer before it became a trend

Sergey Shedov:

- I started programming in high schoolschools in the early nineties. Parents bought a computer, but without a monitor - there simply wasn’t enough money for it. I did not wait for it to appear, and began to compile Basic programs, focusing on the sound signals of the system unit.

After graduating from Moscow State University, he worked at the office for two years.the programmer. But I soon realized that I was not interested. And when my computer science teacher offered to work at the school, which I graduated, I immediately agreed. At first, it was classes only on Saturdays, and then decided to permanently change jobs. My parents did not approve of this decision, because I lost a lot of money - in the office I received $ 1,000, and in school the salary was only $ 50. But I realized that I like it, and then my requests were small - if only enough on the Internet.

Sergey Shedov. Photo: Anton Karliner / High Tech

I understood that not all students are interestedprogramming, and that it’s impossible to prepare IT specialists in computer science lessons. Then I decided to create my own school of programmers. That was in 2001. At first it was an ordinary circle, where children from nearby schools attended. Few people understood what programming was; this was not yet a trend.

Gradually the circle grew, and after six years Iregistered a private institution of continuing education. Now we have a little more than 4,000 children studying, 30% of them are online. Full-time students from Moscow and the Moscow region are engaged - in addition to Mytishchi, there are branches in Moscow, Pushkin, Korolev and Dolgoprudny, there are nine in all. Children from all over Russia study online, there are even guys from Kazakhstan.

About fundamental knowledge, music and programming

Sergey Shedov:

- In 2001, there were no analogues of such a school. It was necessary to draw an idea in my head. I studied at a music school for 10 years and decided to combine this experience with the experience of studying at Moscow State University. So the idea was born that the child should not just learn for several months and leave. I wanted to give not only applied information, but also fundamental knowledge, because without this it would be impossible to become a serious programmer. Therefore, 11th graders are not accepted into the school - it is impossible to give serious knowledge in one year, and we do not want to engage in profanity. Students are taken to school from the second grade and taught them until the 11th.

It is believed that programming is not necessaryhigher education. It depends on what a person has to do. For example, a person engaged in machine learning must graduate from a university, because this requires knowledge of mathematics that is not given at school. It is necessary to look in the future what will be in demand in the future. Now you will write programs in a scripting programming language, and in 20 years it will not be necessary. And for admission to good universities, one must begin to study computer science at school.

We try to keep up to date and constantlyintroduce new disciplines. Now the school has courses on the Internet of things, blockchain, cybersecurity, big data - all that appeared relatively recently, but without which it is already impossible to do.

Who “lights” students

Semen Obukhov:

- When applying for a job, candidates passmulti-stage selection. The initial interview for teachers is an open lesson. The role of students is played by our methodologists, who imitate the behavior of children. For example, if a teacher is going to work with fifth graders, methodologists can start fighting with rulers. We watch how a person copes with such a situation. Those who have passed the initial stage are invited to train in teaching methods. Among those who come to teach, there are many IT specialists and students of IT universities who have not worked with children before. Therefore, it is very important for them to give pedagogical skills. The final decision is made after the final exam, which also takes place in the format of an open lesson for methodologists. There, candidates must demonstrate how well they have mastered the pedagogical skills acquired in the trainings.

Semen Obukhov. Photo: Anton Karliner / Haytek

Sergey Shedov:

- I am sure that the teacher can captivate the studentonly if he "burns" with his subject. In addition, he must be well versed in the material and be able to find a common language with schoolchildren. Therefore, the approach to the selection of teachers is very serious. About half of the teachers are our graduates. They return not only to teach, but also participate in the development and work as analysts. I believe that it is very important to analyze the data, and over 18 years we have accumulated a lot of material for analysis. For example, children learn to program and make some kind of mistakes. If there is a database, you can skip the data through machine learning and predict what kind of errors a child will have after three years. And arrange training in advance so as to avoid them. Or to tell the child: Python does not suit you, it is better to choose Photoshop and web design. To remain school number one, we must always do progressive things.

About a predisposition to programming

Sergey Shedov:

- I have not met children who would havecontraindications to programming. But for successful learning, a child needs to love and understand math. Upon admission, we do not require initial knowledge of programming, but we verify it is mathematical knowledge.

If we talk about personal qualities, the main thing for a child who is engaged in programming is determination. He should not be afraid of mistakes, treat them calmly and be able to correct them.

Not everyone wants to be a programmer. It happens that parents bring the child and say that he will be, for example, a dentist. But at the same time, they want him to have programming skills, because this is useful in the profession. The school trains not only programmers, graduates can work at the intersection of sciences. There are examples when children came to study as a programmer, but in the end they went to the Ostankino Institute because they liked the video editing. Among our graduates, there is a man who became interested in editing, went to Hollywood and uploads photos with Spielberg.

Training is divided into semesters, simultaneously inone semester in a child, depending on age, can go from one to three subjects. Two control measures are provided for each subject - in the middle of the semester and at the end of the semester. This is mainly practical work - you need to write programming tasks or submit a project. But there are also subjects with a more complex, university system. Where you first need to write practical tasks, and then you hand over the oral part. This is not enough, these are subjects related to Olympiad programming, algorithms and data structures. Olympics are not tied to subjects and are a separate competition, an independent test of knowledge. They usually go in the second half of March - the first half of April.

If the child has not passed the second time, they mayto expel. Also, the student can be expelled for non-attendance. Circumstances or interests change, he can no longer or does not want to walk - this is a normal situation for further education. But the school has a good indicator of children who remain - 91%.

Sergey Shedov. Photo: Anton Karliner / High Tech

Semen Obukhov:

- Entrance exams vary in age. For young children, they take the form of an open lesson when you need to answer questions on the computer. Starting from the fifth grade, this is a classic written math exam; for high school students, we test the knowledge of the school curriculum. Many non-standard tasks to test the ability to think logically. All tests are developed by school teachers. But many children are afraid to write something non-standard, something that they have not been taught. At meetings, they are told that they should not be afraid to write the most non-standard solutions, because this, unfortunately, is not often taught in a comprehensive school.

If the child did not pass the points, but we seewhat he wants to do, we’ll offer to go through entrance tests again. At each exam, we give out badges as evidence that the child passed the exam. There was a boy who traveled to all our departments and still did the fourth time.

In each department of the school, classrooms are calleddifferently. This is done in order to motivate children to great achievements. The school should create a fabulous atmosphere where you want to return. We want the children to come to us, anticipating something interesting.

About real practice in Yandex

Sergey Shedov:

- We have a final training course -industrial programming, an analogue of industrial practice. Real programming, teamwork, and we teach this to the guys. They choose a project and distribute roles: someone will be a programmer, someone - a designer, team lead and so on.

Yandex is our key partner, we are with themWe have been cooperating since 2014. Children go to their office and study technology, for example, Alice, Yandex.Maps. The second partner is GK Osnova, with whom we signed an agreement two years ago. There, our guys undergo an internship on the blockchain. We also cooperate with the MIPT technopark.

All our students do graduation projects forschool, so you can try to apply skills in real life. For example, they came up with powerbanking: when a person takes a powerbank at one metro station and charges the phone on the way, and then hands it off at another station. It was not just a paper project: there was a station that issued power banks, and a base that counted minutes, virtual money. This and similar projects are actually an IT startup that high school students do throughout the year and defend in the Yandex office.

About olympiads and competitive spirit

Semen Obukhov:

- All students of the school participate in olympiads into programming. We have two types of olympiads: personal and team. On team children, they are specially given one computer for three, so that they learn to negotiate and distribute work.

In computer science, in addition to programming andRobotics, there are information security Olympiads, which are very popular among students. In 2014, it was held for the first time for schoolchildren in Moscow, before that there were such competitions in Yekaterinburg. In the first year they announced a month before the event and everyone went with the knowledge that they had, because no one knew how to prepare. Our team won it, and then for four years took first places, while yesterday's winners returned as coaches and prepared new participants. Four years later, the organizers refused to hold these competitions. But during this time, a community of students who wanted to engage in this particular area has developed. And we held a new Olympiad on the basis of the technopark, which is now the largest in the Moscow region in terms of information security.

Photo: Anton Karliner / Haytek

Our last achievement is a victory in the WorldOlympiad in robotics. This year there were more than 70 countries, and a team of students from our school won a gold medal for Russia in the most prestigious senior age group.

It is important for the child to participate in the Olympiadmovement. Firstly, he will follow others, and secondly, he will get the skill to solve complex problems. In addition, the Olympics provide an opportunity to enter a university without exams. For example, this year in the HSE, where a very high score in IT specialties, more than 50 of our students entered. While we do not keep complete statistics on the enrollment of our graduates in universities, this year we plan to hold our first “Alumni day 2020” and invite all graduates to their native school, which gave them a ticket to life.

Passing points in 2019 to large universities in IT specialties *:

  • Moscow State University: informatics - 440, fundamental informatics and information technology - 438;
  • HSE: informatics and computer engineering - 275, software engineering - 300;
  • MSTU named after Bauman: computer science and computer engineering - 280, applied computer science - 279;
  • MIPT: informatics and computer engineering - 389.

* In universities, they pass a different number of subjects, from three to five.

About school IT education

Sergey Shedov:

- The global trend - children beginto program everything earlier. When I started programming, only high school students did it, and now they are using a tablet in the elementary grades. Over time, basic scripting skills will become as common as reading and writing. Learning programming, a child develops algorithmic thinking - learns to plan activities, break down a task into subtasks - and gets skills in working with information. Now the problem in the world is that there is a lot of information, and it is not clear how to find the necessary data and analyze it. Therefore, for example, in the HSE, students are taught the skills to work with data regardless of their specialty.

A few years ago, many schools appeared.programming. Competition has grown, but for us it has become only a plus. When there are many schools, there’s no need to explain why it’s good - to learn programming, it’s enough to demonstrate good quality.

We want a global impact on IT educationschoolchildren of Russia. To do this, we participate in various projects. For example, this year we launched our own Mark programming language for students from the second to the fifth grade. It is built on top of Python, but in a playful way. Thanks to this, primary school students can deeply study programming. In principle, we want to increase the level of computer science in Russia, for this we have become Yandex's partner in a new school course. We redesigned the seventh grade program, now it is being adapted in 30 regions of Russia. This year they started writing a program for the eighth grade. It is important not just to learn, but to disseminate the accumulated knowledge.