Greetings dear Codeforces community,
I always wanted to write a post that reflects my progress in turning purple after starting competitive programming for three years, and also to record such a short moment, so here it is.
I just reached a 1900+ rating after participating in Codeforces Round 963 (Div. 2) by finishing ABC super quickly, meanwhile, six thousand contestants solved them during the contest. So my 'purpleness' is shaky and I wanted to secure it in the upcoming contests.
Yesterday night, when I was studying a certain dp topic, I was asked by my friend YJ365723 "Do you think problem solving skill in CP is much like sports".
I was intrigued by this analogy. I always treat Codeforces contests pretty seriously, but my initial motive for doing CP is to get a taste of computer science. I then realized doing contests is a way to boost my ego.
Back to the sports analogy, in my case, I do sport solely because I want good health and to entertain myself. People have goals like having a super strong bicep or winning Olympic medals. But I'm too lazy to make the effort for these goals, they are too specific to me.
My attitude on CP is very similar to this if replaces "health" with "problem-solving skill". They both benefit me in general. The "specific goal" is an analogy to the Codeforces rating, which is much less important than problem-solving skills, and CP itself.
Some people always complain that "the problem-setting of this contest is so bad", "problem C in this contest is way too simple/hard"...
To be super straightforward, these complaints are nothing but saying "This contest isn't allowing me to demonstrate my skills so my rating drops, it's not my fault."
If you deserve your current rating, you can defend it; otherwise, it's likely to drop. If you feel significantly depressed or stressed when your rating drops, why don't take a break from the contest and focus on studying different data structures or algorithms instead of yelling at the problems? It's always good to improve your problem-solving skills and knowledge in programming, which will help you secure your rating in the future.
I'm turning blue again as I flunked the contest this morning(in my time), does that mean that I don't deserve the purple handle? Probably, I have complaints too. I know my level, probably I cannot reach purple in the next ten rounds, but I know I will reach the rating that reflects my skill and level, for me, it's even better than bluffing with the purple handle.
(But I'm using the purple handle for this blog, ha!)
Finally couple advice:
Study for CS. Study algorithms & data structures. Practice problem-solving skills. To some extent, study for CP. Don't study for Codeforces, but of course study on Codeforces.
Best wishes
UPD:
After struggling for a little while, I improved my programming skills and regained the purple handle after Codeforces Round 969 (Div. 2), in which I reached my best contest rank and rating. Unfortunately, I'm still questioning myself, mainly because the ratings of all the problems I solved are below 2000 and I struggled a lot when solving them. I wish I could secure the "purpleness" and maintain my performance after.
People take colours and ratings too seriously. It's just a website for crying out loud. Competitive programming is supposed to be fun.
I agree, however for some people it can be quite demotivating when you practice a lot but don't see any change in your rating. After a long enough period of time, your rating will reflect your ptoblem solving skill relatively well.
I agree people take ratings too seriously, but trivializing it to 'just a website' is not correct, when for many people it has real world consequences. A hyperbole might be "money's just paper, for crying out loud. It is supposed to make life fun."
Curious, what do you mean by real world consequences?
You can flaunt your rating in front of your friends ,lol
Getting an advantage in internship and placement rounds (during screening, before actual tests and interview begin).
many people used to give (though most of them have stopped doing so now, given the rise in cheating) referrals to people based on rating and some other things.
It just gets you popularized among your peers and seniors, which grows network. Although many people may recognize your rating is not real, many won't, and the people who are obsessed with rating are usually willing to take their chances because it gets them work and many things just so that they can put it on resume and LinkedIn, participate in hackathons, etc.
These things may not be true for everyone, but is true for college students who only want to somehow get a job and are unable to see the damage this does to them in long run.
And I now remember another reason someone might run for rating, which is especially true for my college right now. Our teachers are quite strict regarding attendance (which is a bullshit rule), but they will give you an exception if you impress them. In India's lower tier colleges, majority of people start (serious) programming in 1st year and CP in 1/2nd year of college, so there are not many 'experts' during the start of 3rd year.
I somehow got to the expert rating, and my academic coordinator now advertises my name everywhere saying y'all need to get to that rating too. And I also have a free hand on attendance, lmao :)
I am sure there might be many such 'weird' reasons for people to get too fixated on their ratings.
You said everything from the heart, thanks for a moment of reflection.
Really needed this. Thanks!
I'm turning blue again as I flunked the contest this morning(in my time), does that mean that I don't deserve the purple handle? Probably, I have complaints too. I know my level, probably I cannot reach purple in the next ten rounds, but I know I will reach the rating that reflects my skill and level, for me, it's even better than bluffing with the purple handle.
This hit home bro. The last line hit hard. Thank you.
needed this one. thanks man
It's cool to get a new rating, Your rating increases as part of your improvement journey but rating was never the purpose but just an indicator of your improvement.
Agree, the blog is very well said.
We all know the problem itself is out of place, still it's absolutely no reason to cry so hard and spread the hate.
As a learner I'm looking for solution and re-solve it after contest by discussion and checking others code (if I like the problem tho). That's it, no hard feelings
Thanks!
Auto comment: topic has been updated by AirCircles (previous revision, new revision, compare).
what does "CP" means?
Competitive programming