For one Saturday evening, the mansard of ITMO University’s Technopark at the Birzhevaya Line campus became the most important location on the world map of competitive programming. Here Mikhail Mirzayanov, the founder of the largest competitive programming community Codeforces, was receiving congratulations. In 2009, he decided to create a platform where programming competitions’ fans could not only compete with each other, but also communicate, share their experiences, and train. Today, there are more than 600,000 active users. Codeforces holds tournaments, hackathons, and even quantum programming competitions.
The celebration was attended by the project’s partners, coaches, champions, former volunteers and staff. Some of them now work at the biggest hi-tech companies, leading universities and institutes.
“The public here belongs to several generations of people who happen to know me and Codeforces: starting from people much older than me, who I consider to be my teachers, and ending with very young people, school students, for whom we are working hard right now,” comments Mikhail Mirzayanov. “At first, when I was thinking about the anniversary, I thought that maybe there’s no need to arrange a celebration as it’s not that important. But then, when people who used to be connected to Codeforces, started to say things like “yeah, I’ll come from Switzerland”, “yeah, I’ll come from Ireland”, “yeah, I’ll come from Moscow”, I realized that it does mean something. I think it may give me additional motivation and strength for moving forward.”
Just what the community needed
At the party, people who are well-known in the Russian programming community were remembering how Codeforces had been created, and discussed future projects and competitions. Among those who know how it all began is a competitive programming coach Andrei Lopatin. He met Mikhail in 2002 and introduced him to Pavel Durov, the founder of VK, the biggest Russian social network, who’s been supporting Codeforces for many years since then. Lopatin believes that Codeforces is successful because it was just the thing that the community needed.
“There used to be an American project Topcoder, but it started to die out gradually already in 2008,” he says. “Plus, it was only about forums and competitions. Within the community there was a longing for something more. Misha managed to put it all together, and so a fully equipped platform with exercises, blogs and comments was created.”
It’s hard to imagine what would happen if it wasn’t for Codeforces
Edvard Davtian, who now works as a software engineer at Google Switzerland, also remembers the first stages of Codeforces. While Mikhail Mirzayanov was working on his platform, Edvard was studying at Saratov State University and was into programming. Gradually he became a part of the project’s team and was participating in competitions.
“I remember the very first Codeforces competition that took place in 2011,” says Davtian. “I was its participant. The distribution wasn’t big back then, there were about 200 people. We had completed the tasks and had some cake: that’s how it all started. It’s hard to imagine what will change in the next ten years. Now Codeforces is more diverse, there are various types of competitions, companies, tournaments and schools.”
One of the first Codeforces users was Gennady Korotkevich, a world champion in competitive programming. He attended the celebration wearing a signature t-shirt with his nickname – “tourist” – on it. He gained worldwide fame under that nickname.
“I don’t even remember where I first saw a link to Codeforces,” he says. “It was a work-in-progress project back then, and it was a platform with communicative functions. There were lots of blogs, and when the programming world cup was happening, its participants and visitors posted pictures and fascinating stories about it. There started to appear tournaments between the most skilled participants, which was intriguing. Today, it is the world's most popular community-driven project.”
On the threshold of the future
Codeforces is not only a platform for competitions and communication, but also an important studying resource where you can find a huge amount of useful materials. Today, many coaches and teachers use this content in their work.
“It’s a very useful platform for me,” says Andrey Stankevich, a coach that has trained several ICPC champions. “Me and my team often pick some tasks from recent competitions and complete them. As it’s an international platform, people from all over the world can suggest their tasks. You can train and compare your results with those of teams from other countries. Among all the rest, I use it to train school students. There’s a very user-friendly interface that allows you to create training competitions, and there are tags that you can use to find specific tasks.”
Lots of school students have attended the party. They are learning to code at Codeforces. One of them is a 16-year-old Physics and Mathematics Lyceum No. 366 student Ivan Klimov. He’s been into programming for three years now, and all this time he’s been using Mikhail Mirzayanov’s platform.
“When I first visited the platform, I was 13,” he says. “I didn’t get the global idea of the project, but still it was fascinating and exciting. It amazes me that there’s such a huge community full of people who just love completing the tasks. I visit Codeforces every day now. There I can improve my skills or just spend my time, and solve some tasks. It’s a way of distracting yourself from everyday life and a way to find like-minded people.”
As Mikhail Mirzayanov has announced at the party, there will soon be even more educational content on Codeforces. A new educational section that is being created with ITMO University’s support is now at the beta testing stage.
“Just over a week ago, on February 19, the educational section of Codeforces that had been created at the initiative and with the support of ITMO University was opened for beta testing,” he says. “The first lecture of the pilot course has already been launched and gained positive feedback from the community. This is nice as it suggests that we are on the right track. It’s nice to make an effort where it’s in demand, and I think we are doing a good deed.”
Translated by Kseniia Tereshchenko