September 2022 Update
Hey everyone, it’s been too long since I last took the time to sit down and write a blog post. There’s a multitude of reasons why I haven’t written anything lately. Mainly, once college started, any time to devote to CP instantly evaporated thanks to classes, clubs, and socializing. But also, I just didn’t have anything to write. Typically, when I write a blog post, I write with some topic or intent in mind, usually to educate or as an opinion piece. I’ve started a number of drafts for my next article but have tentatively scrapped all of them, simply because I realized midway that I either didn’t have too much to say or I didn’t feel qualified enough to write on the subject.
So what is this post then? To be honest, this is just a post for myself. To write down my thoughts on CP right now. My progress in my CP journey and where I want to go next. And also where I want to go with this blog.
The Current State of CP
Should qualify this section with the obvious disclaimer that this is my opinion, of course. This is from the perspective of someone who first started actively doing competitive programming and Codeforces in mid 2019. I have seen the platform change significantly over the course of those 3 years.
Right now, it feels like CP is in a plateau. I’m not talking about problem quality; problem quality has always been fine. Rather, I’m referring to innovation in the sport.
To get my point across, let me compare to the state of CP during the inception of COVID. When COVID hit, people had no choice but to turn to indoor activities, such as competitive programming. Codeforces saw a huge influx of people, with the average number of registrants for Div. 2s skyrocketing from below 10k to 20k+. Quarantine also marked the start of many high rated users’ YouTube channels and streaming careers. More community Discord servers and big events like Lockouts began cropping up. It might be nostalgia talking, but it really did feel like the CP community was more alive at the time.
CF rounds also felt more memorable back in the day, maybe a big part due to community engagement. I still vividly remember two CF rounds I took part in 2 years ago: Global Round 9 and Codeforces Round 659. When Global Round 9 dropped, that was an experience. Before the round even started, there was the peak moment of the “as a tester” memes, marking the last time that meme would be funny as it proceeded to get beaten into to the ground and buried six feet under in the following 2 years. As for the round itself, in my mind the round forever marked a shift in the tone of Codeforces problemsetting and paved the way towards the acceptance of troll problems and problems with a huge solution search space but simple solution. My friends and I collectively lost our shit in our group chat and the comment section of the announcements blog was flooded by exasperated or amused competitors. CF Round 659 was somehow so unbalanced that it was hilarious. In Div. 1, just solving AB got you a red performance and C-F were all 2800+, while Div. 2 got a 2200 rated problem B. And D1A was also super submit bait as it was too easy to come up with something wrong for that problem. Personally, I solved a whopping 0 problems as a wee Candidate Master that round. I think that was the first time I ever solved 0 problems in a round. They just don’t make CF rounds the same anymore 😔.
In many ways, this golden time obviously could not last forever. Eventually, quarantine would end and people would go back to the real world. And don’t get me wrong, that’s for the better. Personally, despite the CP boon, I prefer and am much healthier physically and mentally post COVID. It’s just that with most of my old CP friends no longer doing CP and me no longer recognizing most of the handles on the leaderboards these days, I can’t help but look fondly upon CP in the past. Most YT channels don’t upload anymore, streams aren’t a thing anymore, and CP for me has lost a lot of the “magic” it used to have when I first started.
I’m also just growing old. I’m about to turn 20 in a few months. I find the majority of posts on CF nowadays cringe or unfunny. The average age on CF is probably around the high school range, 16-18. And I’ve also just probably been doing CP for too long and am starting to feel burn out.
My Progress in CP
It has been one year since I first hit red, and I’m still around the same rating one year later 😅. But to be fair, I believe myself to be much stronger than a year ago. In my mind (even if the data and contest results don’t always back me up), I am now stable GM and essentially on the cusp, if not already over, the IGM line. So I certainly won’t be quitting until I reach IGM, because I do firmly believe I have the capability to do so.
At the same time, I no longer grind anywhere close to as much as in the past. During quarantine, I devoted an unhealthy amount of time to CP and would do every contest possible. My practice was also unfocused; I was just trying to solve as many problems as I can, majority of which were editorial assists, so I was still hardstuck purple for half a year despite the volume of problems I was solving. Fast forward to now, and all of my engagement with CP is now either doing the occasional CF contest if it fits in my schedule, running my university’s CP club, or teaching classes on the side. I hardly ever practice now, mostly because it’s hard to find time to, and also because a part of me feels I shouldn’t. When all of my HS friends have moved on from CP and gone to enjoy other activites and hobbies, I can’t help but feel a little foolish still clinging onto CP as a primary hobby of mine. To avoid getting rusty, I’ve switched my practice focus now to mainly thinking, something I can do passively while walking to class or doing other daily activities. I’m more likely now to read some problems but not bother implementing them, which I feel ok with doing because I’m reasonably confident in my implementation skills up to this point.
As a tangent, I am starting to find the “magic” in other things I do. For example, I recently started climbing (specifically bouldering), and it’s so much fun because it integrates thinking and puzzle solving (figuring out the best approach to a course and which limbs to use where) with getting a good workout. Also, because I’m just starting out, I’m in the golden phase where I feel improvement every session, so I feel motivated to keep trying. The feeling of joy from trying out a tip from a YouTube video or from a friend during my next session can be compared to the feeling of unlocking a new set of problems you can now solve after learning a new algorithm in competitive programming. I think this will be great for my personal development but also for my relationship with CP. During quarantine, CP was the only thing on my mind. I would literally do every contest possible on every platform, whether it be Codeforces, AtCoder, CodeChef, or even HackerEarth and LeetCode. I did CP so much because it was my only hobby during quarantine, and without CP I would feel empty. But if I can shift my focus to other activities where I’m making more progress, then I can maintain a healthy relationship with CP where I don’t do it all the time and therefore still find it fun whenever I occasionally pick up the keyboard. It’s all about balance.
What’s Next for the Blog?
Frankly, I’m not sure. Now that I’ve had a blog for a while, I can see why people stop making YT videos or streaming after a while. When you first start out, you have all these great ideas, and you just make banger after banger to share on the internet. But after you’ve exhausted all your great ideas, you don’t know where to go next, and keeping the blog updated starts to feel more like an obligation than a form of enjoyment.
That being said, I do have some ideas to post next. I just need to sit down some day and type them out. So hopefully you’ll stick around for that! And of course, if you have any ideas on what you want to see, or any thoughts about anything I wrote, please leave a comment! I assure you, I read every comment on all of my blogs. Thanks for reading, and I’ll see you next time (in hopefully less than a month).