Recently, Moscow Fall Workshops has taken place (it ended about one week ago), and I wanted to address some issues that came into my mind during that period. As you might notice, it took me some time to build the courage and get in the right mindset to write about this.
First of all, I want to say that I am a huge supporter of programming camps and, in general, initiatives to enhance the joy of doing competitive programming and I respect the efforts of building communities around CP. I have always had a kind of excitement when thinking about participating in programming camps (Petrozavodsk, Moscow Workshops, etc.) and their “hardcore” style with lots of contests. I therefore appreciate the immense efforts of organizers, problem setters, and testers, when preparing this camp.
Main point
Coming towards the main point of the blog, I felt that the last programming camp was a bit… underwhelming. Moreover, I’m having a hard time trying to justify the costs of doing such a camp, given the participation fees. For some quick overview, there were around 120 Div1 + Div2 teams participating in the contest, and the participation fees were varying from 30000 rubles (approx. $400) for EA/EU participants to $480 for other participants. Some discounts are applicable, but let’s say for the sake of it that the average price for a participation was $400. This comes to a total of $48000. I’m not including sponsors here (e.g. Yandex), mainly because I’m not sure if they contributed with money and what not, but this would be a good enough (albeit underestimated) budget for the camp.
Let’s get more technical
Let’s analyze possible costs of doing such a programming camp.
Accommodation & Extra activities
This should not apply, as this edition was held remotely.
Problem setting
Problem-setting is another part of the story. It is well known that making a good problem set is very time consuming and involves a lot of hard work. However, after having the surprise of recalling an already-solved problem during one of the contests, I did some quick research and found that most of the contests consisted in problems that were taken from past contests (e.g. Seoul Regional 2020, Shanghai 2004, as well as several problems from the japanese AIZU Online Judge). Amongst the ones that were not taken from other sources, one day was an Opencup contest, and the others are probably going to make for a future Opencup contest.
This essentially means that problems shouldn't require much work to be prepared. There is, nonetheless, still some work to be done in order to find the right problems, port them to the different judging system, rephrase statements. However, going back to the main point: does this explain the budget?
It’s very important to emphasize the fact that I have nothing against making problem sets from past contests; I think it’s highly educational and efficient. However, I simply can’t ignore the fact that this camp had a budget of about $50K.
Editorials & Analysis
I don’t want to say too much about editorials. I think they were pretty well written. I don’t think were the most insightful, and often they were very short, but some may appreciate their conciseness. The video analyses on the other hand, were not the greatest quality, and more often than not they were rushed in the interest of time. I’m curios about opinions from other participants, but I felt that the analysis did not provide much more on top of the editorials.
Contest platform
The contest platform might impose extra costs, because servers have to be kept up and running for a premium contest. Oh no, I think I’ve just opened Pandora’s box! Aaargh!
The contest system was bad, there's no doubt about it. A lot of the times there were no standings, a lot of the times the standings shown on the platform were from 2 hours before the current time. On top of that, I remember on one of the days the system wasn’t evaluating any submissions in queue for the first 30 minutes of a contest (and the chat suggested that it had been down even before we started), which made me essentially want to just skip the day.
Of course, this would be very much understandable, except for the fact that the exact same problems happened in the previous camp. Participants suggested using other platforms like Codeforces last time; I understand that it makes sense to use the Yandex platform because sponsors & what not, but at least make it work.
Div 2
What about Div2? I’m not too sure about how the Div2 experience was felt (maybe you could help me with this); however, I couldn’t help but notice the fact that the lessons and contests prepared for Div2 were, more or less, identical to the ones in the Moscow Pre-Finals Workshop last year. I’m not sure if Div2 participants were aware of this fact before signing up, but I’d certainly not want to experience the surprise of having participated in the last workshop, and realizing that I’m just finding the same lessons and problem sets. Again, please take this information with a grain of salt, as I haven’t participated in Div2, and just took a couple of glances over the materials.
Happy thoughts
On a positive note, I think that this camp (and last ones) had one pretty awesome thing: the Telegram chat. In my past participation in programming camps, I felt that I could have benefited a lot from interacting more with the participants, sharing ideas, or even doing some basic chit-chat. In this sense, I think the recent system comes much closer to that goal, and I actually felt a lot more of the “community” aspect of CP. I think this relates to the fact that, due to the “permanent” nature of chats, it’s easy to record and recall conversations and ideas.
Conclusion
I don’t think the last programming camp was bad. I think there is room for improvement, but the overall experience was okay. However, I do think that the camp was overpriced, and I’m having a hard time reasoning about where this budget is spent. The main reason why I’ve made this blog post is partly to try to understand the situation, and partly to open up to the community about this. My intention is not to hate on people who make these events happen, but rather to try to figure out what proportion of these camps are genuine interest in making the CP community more engaged and improve people’s skills, and what proportion is financial interest.
Did I miss anything? I would very much appreciate to hear about your opinion, and I'm certainly open (and hoping) to change my mind about this.