⬆️ ⬇️

Interview with Alexander Skidanov in a meeting with the winners of ICPC 2008

As you probably know, on April 10 at the finals of the prestigious ACM ICPC championship, Russian students once again proved to the whole World that they still have no equal in sports programming. It's no joke - the names of Russian universities are inscribed in three of the top five lines of the final results table.



The team of Izhevsk State University (IzhSTU) ISTU # 1 Godlike took third place in the overall standings and was awarded gold medals (according to ACM, “gold” goes to the top three). I want to present an interested public with an interview with Alexander Skidanov, the captain of Izhevsk programmers.



ISTU#1 Godlike

')



First we need to say that the interview took place within the framework of the meeting of the prize-winners with the employees of the IT company in which I work (we have been sponsoring the Olympiad movement in the region for several years now). The guys talked about a trip to the finals to Canada, the event itself, highlighted some nuances and subtleties of such a competition. After the meeting I was able to ask Sasha several questions prepared in advance.



“In general, the term“ sports programming ”does not give an unambiguous understanding of the direction of the Olympiads. What is more in sports programming today, directly programming or nevertheless mathematics? ”



Each tournament has its own specifics. For example, on the whole chain - the quarter-finals, the semi-finals, the final - is guaranteed more programming than mathematics. In almost all the tasks, it was necessary just to reason logically and invent a new algorithm, some classical algorithms that were well known to everyone almost did not fit. Although the organizers manage to include in the list and tasks with an emphasis on various branches of mathematics.



There are a lot of mathematics at local competitions in Petrozavodsk or the open CBOSS Cup, especially geometric tasks. I don’t like them very much, other members of the team, too, so sometimes we don’t perform in such competitions in the best way.



“Is there any specificity in various tournaments? For example, the tasks in the Urals Championship have some fundamental difference from the final ICPC tasks? ”



There are no fundamental differences. The only thing to note is that in local tournaments a shift in emphasis towards mathematics is noticeable. Well, of course in local tournaments, we feel much more comfortable. Tasks for the Ural Championship in Yekaterinburg are literally written by 3-5 experts from year to year, so over the years of participation we have already learned, one can say “predict” the direction of upcoming work.



“They say sports programming today is an industry. Accordingly, the requirements for tournament participants are constantly growing. Does it happen that in order to maintain one’s level one has to “slaughter” some disciplines in a university? Simply put, do situations happen when before the dean's office your name is printed in the list of winners and the list of deductions? ”



Well, I think everyone is so clear that there is no connection between success in the Olympiad and overall performance. My surname is not on the list of assignments, only because the dean's office is trying in every possible way to help the olympians of their faculty and to delay the deadlines for passing certain disciplines. On the other hand, it often happens that the situation with the study of children from the list for deduction is much better than mine. There's nothing you can do - you have to pull up, take the material.



“In general, how does sports programming intersect with traditional industrial?” Can't you train today to solve Olympiad tasks just for the sake of Olympiad? Do you think these skills will be useful to you in further “adult life”? ”



Firstly, participation in olympiads taught me how to at least write code unmistakably and quickly. When in the last minutes you write the 400th line of code in the last task of the final, it is very acutely impossible to further debug in case of an error. The task “came in” from the first time, the code was written correctly - how could such skills not be useful in industrial programming? In addition, I believe that with today's development of information technologies and, in particular, the Internet, I will be able to find a worthy use for my knowledge and skills.







"What plans do you have for the future? In front of you TopCoder and ImagineCup. What do you expect from these tournaments? ”



I am afraid that I will have to skip the ImagineCup - I didn’t do it at all, although there is still time. On the other hand, there are not so many of them left, and if the other applicants had two months to prepare, and I decide everything on the last day, then the result will be appropriate.



TopCoder semi-finals, which will be held in Las Vegas, I definitely will not miss. Another thing is that only 10 people will go to the finals, but for now I am in 23rd place in the overall standings.



“What happened at the end of February, where did the TopCoder graphics failure come from? Preparing for ACM? "



Not. Training before the ICPC did not distract me from TopCoder at all. The February disruption of the schedule is associated exclusively with a single contest, which for some reason I didn’t immediately know. TopCoder sometimes reminds me of a lottery, just not lucky - it happens. On the other hand, I restored my rating in the next match.



“The current ACM final is the last tournament for you in this series. Despite the fact that you “slammed the door loudly,” taking gold, would it not be a pity to part with this event forever? Will you take part in alternative championships after graduation? ”



Of course it's a pity. For several years I had a steady goal in my life, which I, in fact, reached, but the ICPC road was closed for me. Of course, I will continue to participate in TopCoder, like many other finalists. It may not be such a popular tournament as ACM events, but at least there is no age limit. Yes, and much more disciplines - you can try yourself, for example, in application programming. Without constant training, my rating will certainly decline with time, but at least I can continue to do what I love. In addition, the online TopCoder seems to me more interesting than the long and sometimes even tedious ACM ICPC.



“How are roles assigned to your team? Are they clearly assigned to each participant, or vary in the process of solving each specific task? ”



We have two coders - me and Zhenya. At tournaments we deal directly with programming. The code has to be written quickly, a lot, and most importantly unmistakably. Vitya knows how to think outside the box, so as part of a team he is engaged in the generation of ideas. He has to invent solutions for especially "mean" mathematical problems.



“The title of team captain implies some additional duties or responsibilities?”



I do not know about other teams, but in our captain is essentially an informal leader. No additional responsibilities assigned to me. Often before major tournaments, we agree on whose decision we will use in case of a dispute. It happens that radically different solutions appear to me and Viti. Earlier, being confident each in his own version, we tried to prove to each other the correctness of our own decision. From a certain point in order not to waste time, we simply began to agree in advance whose word would be decisive. In any case, the title of captain of the team does not give me any additional privileges to other members and does not burden me with duties.



“How much time did you spend on training, well, let's say, in the last six months?”



In general, during the most intense and crucial period, we had to train 4 times a week for 5 hours. Of course, it did not always work, but I tried not to miss training, I think the result is from here.







“Among the formats of programming competitions there are so-called“ marathons ”. The team is given a task that does not have the perfect solution. It is required to solve it in the most effective way, depending on the rating system. Don't you think that such marathons have a future for sports programming, which in this way will somehow begin to come into contact with industrial marathons? ”



In general, sports programming has its opponents. Probably it speaks about the maturity of the industry (laughs). It often happens that when we return from the next Olympiad, we have to read somewhere in forums and conferences that sports programming is the last century, it has no practical value and has long become obsolete. They say a lot that all effective algorithms have been written for a long time, and today at tournaments participants simply adapt them for specific tasks. I do not want to argue with this - in fact, there are cases when we use classical, though not ordinary, algorithms for solving competitive problems. In the task list of a major tournament there are always simple tasks that most of the participants can solve using a standard algorithm. At the same time, in the same list there is always a task or tasks that will not be solved by any team in a tournament. Therefore, I believe that it is incorrect to say that we got the gold by “rewriting” classical algorithms for speed.



As for the marathons, I can say that such contests are certainly more interesting than ordinary Olympiads, but I didn’t manage to achieve any significant results in them, as I haven’t tried. In any case, I think that marathons will gain popularity and I would like the code to have an event comparable in scale to the ICPC, but at the same time using the marathon model for evaluating the results.



“The table of results of the ICPC finals is rather similar to the results of the“ small party ”teams of the former CIS. As rightly noted in the comments to the news on the web: "It is not clear why in this country everyone is a fan of football." What is missing in sports programming to become a national sport, how did chess become at one time? Can you make a show of sports programming? ”



Unfortunately, I have no idea what reforms need to be carried out to turn the ICPC into a show (laughs). Although I know for certain that some people follow this competition from sports bars by the same principle that football, hockey, etc. are watching. On the other hand, there are not so many of such people. TopCoder in this regard is much more spectacular event. In order to be watched and do not have to do anything - the audience of viewers steadily grow every year. Regarding the transformation of sports programming in the national sport I can answer with the words of my coach. Vladimir Georgievich believes that this requires first of all state intervention at the highest level. At least today, he sees no other way.



“The profession of a programmer is well paid, even in our country. Is it possible to earn comparable money by participating in tournaments in sports programming? ”



If your name is Peter Mitrichev - yes, if in some other way - no. I get a lot of different scholarships - state, university, sponsorship. I get cash rewards for participating in TopCoder'e. But even if we take all these small sources of income that I have thanks to my skills in sports programming, their sum will not be closer to the average salary of a programmer in our city.



"Pink pig mascot really works?)"

Of course not (laughs). Pink pig is marketing.



- ps. Fans of getting to the bottom of the truth about the origin of the content I want to say that the interview has not been published anywhere before Habr. So consider exclusive.



Pps. More photos from the meeting and photo report on the ACM website .

Source: https://habr.com/ru/post/24786/



All Articles