The history of sports programming has been counted since 1970, when the first student ICPC programming competition was held at the University of Texas (USA). At different times, technology giants became sponsors of international tournaments - IBM, Apple, Microsoft.
The first programming Olympiad in Russia was held in 1981 among Moscow school student's, in which only four people participated. In the 90s, students joined the Olympiad movement. Interest in programming, as in sports grew in the 2000s - the Internet developed and geographical barriers collapsed.
Today ICPC is a world competition: in 2019, about 50 thousand participants from 110 countries took part in the Olympiad. We tell you how sports programming is arranged, what prospects it has and who it is designed for.
What is sports programming?
Today, the popularity of sports programming is growing. The number of participants in the ICPC championship over 20 years increased by 2000%. But what does programming have in common with sports? Reference to sports here is not accidental - in order to achieve high results in the competition according to algorithms it is necessary to spend a lot of time on preparation, solve problems on speed and work in a team. That is, to make efforts and train in free time to show class at competitions.
You can participate several times a year in various competitions and track professional growth. To participate, you need to know the basic algorithms and have programming skills from university courses, somewhere you need knowledge of mathematics in order to come up with more complex algorithms or combinations of them.
The main thing is participation, and not only victory
As in Olympic sports, programming competitions have their own stars. Russia occupies a leading position in a number of competitions: for the past eight years, our students have won the ICPC International Student Championship.
Drawing a parallel with professional sports, in each of its forms there is always a small group of tough athletes - they play sports for the sake of results and victories, strive to achieve the impossible. But there are always few of these, in sports programming there will also be only a hundred people throughout the country who are fighting for medals of the championships.
Therefore, participation in sports programming is important, not victory. In the first place is a massive interest in the IT sphere among tens and hundreds of thousands of participants. This practice helps to move the IT industry forward, to raise new personnel.
Olympic programming is a career springboard
Modern IT companies actively interact with technical universities and organize their own educational programs according to Computer Science. So they look for future talented employees and make a contribution to the development of IT education.
The Olympiad in computer science for school students is now quite a massive phenomenon: thousands of children enter universities in Olympiads without worrying about the exam. Olympiads are willingly accepted not only in the best universities, but also in leading technology companies. Often, at interviews, developers are given tasks of the same level of difficulty or a little easier than at Olympiads.
To get into Google or Facebook, you need to solve Olympiad problems, and that is why graduates of the Olympiad community find themselves in a big win. You can argue for a long time about the benefits of skills developed in competitions. But we see that both leading universities and leading IT companies are unanimous in opinion that such guys should be taken to study and work.
What time to start to achieve success?
Competitive programming is not about strength, but about intelligence. It seems that if you do not start studying in junior school, the path to the professional community will be closed - such a trend dictates time.
It's never too late! I personally know people who begin to solve problems by algorithms at the age of 40 in order to pass an interview with a large IT company. But it is also wrong to think that programming is intended only for high school students or students. This stereotype is associated exclusively with the fact that the school educational program in computer science appeared much later than in mathematics. And therefore, mathematics is taken for granted, and fear arises of computer science, it is perceived as something complex.
And yet, while the school and student community of sports programming is much more active, and those who want to get into it are recommended to start coding as early as possible.
The sooner preparation begins, the better results can be achieved.
You can start learning programming (including sports) from junior school. There are many teaching approaches for children, simple learning languages. This is useful since it develops the brain - and for this you do not need to have some big backstory in mathematics and physics.
What will happen next?
Sports programming is relatively young, when compared with mathematics and physics, but there is already a huge demand for it. The organizers of educational programs and competitions are increasingly focused on helping people take the first step in programming, showing that this is not something terrible and unattainable, but that everyone can become a programmer if they want.
It is necessary that business with tasks come to universities for young specialists, change formats. Then everything will become not only for the sake of medals, but a deeper symbiosis will begin between the industry and the community that likes to solve problems.