aviralx's blog

By aviralx, history, 9 months ago, In English

This isn’t one of those "how I became Candidate Master in 6 months" stories.
This is what happens when you say "I’ll do it tomorrow" for 3 straight years.

I’m not red. Not purple. Hell, I’m not even consistent.

I’m just someone who started CP with big dreams — and then made every mistake possible.

If you’re stuck, lazy, unmotivated, scared, or feeling like you’re not improving...
Read this before you waste the same time I did.


Mistake #1: Practicing only when I felt motivated

I’d solve 5 problems in one random burst, feel proud… and then disappear for 10 days.
I blamed mood, college, stress, sleep.

But here’s the thing:

CP doesn’t care how you feel.
If you're not consistent, you're not improving.


Mistake #2: Clicking the editorial the second I got scared

I’d read the statement. Felt hard. Editorial. Copy-paste. Move on.
And then I told myself, "Well, at least I understood the idea."

No. I didn’t.

I skipped the thinking part — and that’s where real growth happens.
Every time you avoid the pain, you're avoiding the progress.


Mistake #3: Avoiding math like it was the plague

I told myself:
"Math is for smart kids. I’ll just get better at implementation."

And that’s how I stayed stuck.

You can’t dodge math in CP.
It’s not optional. It's the core.


Mistake #4: Spamming contests, never upsolving

My routine:
Div 2 contest → A, B → Fail at C → Rage → Wait for the next contest
Upsolve? Nope. Analyze? Nah. Just pray I magically get better next time.

Guess what?

Contests are where you test.
Upsolving is where you learn.

No upsolve = no level up.


Mistake #6: Waiting for a "perfect plan"

I kept designing pretty schedules:
"30-day roadmap to Expert!"
"Revise graphs in 7 days!"

Followed them? Not once.

Planning felt productive. But it was just procrastination wearing a tie.


What All This Did to Me:

  • My rating? Flatlined.
  • Confidence? Gone.
  • Motivation? Dead.
  • I started believing: "Maybe I’m just not built for this."
  • Spent more time scrolling CF than solving problems.

And worst of all?

I lied to myself. Repeatedly. "I’m trying." — when I wasn’t.


If You’re Still Reading:

You don’t need a new tutorial.
You don’t need more motivation.
You just need to stop lying to yourself.

Put in the work. Sit with the pain.
Make this the moment you change.


The Fix (Because complaining doesn't increase rating)

I got tired of my own excuses. So instead of making another useless study timetable, I coded a reality check.

I built myalgorise.in.

No marketing BS. It just looks at your Codeforces profile, finds exactly where you suck, and tells you what to solve next.

  • Fixes the fake planning: It gives you a clear rating roadmap based on your actual weak topics.
  • Fixes the skipped upsolves: It throws your weak areas right in your face so you can't ignore them.
  • Fixes the inconsistency: It gives you a daily plan. Just open it and solve.

I need you guys to test this.

I built this to fix my own bad habits, but I want to know if it actually helps other people stuck in the Pupil/Specialist hell.

Go use it: myalgorise.in

Don't hold back. If the UI is confusing, tell me. If a feature is useless, tell me. Tell me exactly what a stuck CPer actually needs to see to get better. Roast it so I can improve it.

Final Words:

Don’t be me. Don’t waste your time.

If you're lazy, inconsistent, scared, or just tired of staying stuck — I get it.
But you can still turn it around. I'm trying. You can too.

Let’s suffer together. Let’s level up together.
But this time, for real.

From a guy who wasted years — but hasn’t given up yet.

  • Vote: I like it
  • +88
  • Vote: I do not like it

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by aviralx (previous revision, new revision, compare).

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Sometimes it seems impossible to improve.

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it +1 Vote: I do not like it

    Yeah I feel that too.. A lot actually But I've realized something: Improvement isn’t a straight line it’s a long, boring, frustrating mess...

    Sometimes you grind for weeks and nothing moves!! And then one day something clicks..

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

haha I do them all

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it +2 Vote: I do not like it

    That’s literally why I wrote this because I’ve lived every single mistake on that list... But now that we can laugh about it I guess we’ve finally started to see it. Time to stop the cycle

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

I've been making the same mistakes for two straight years. I needed to realize this. Thank you.

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    that really means a lot. I was stuck in the same loop for a long time — just repeating the same things and wondering why I wasn’t improving. It took me a while to finally see what I was doing wrong. Glad it connected with you..

»
9 months ago, hide # |
 
Vote: I like it +47 Vote: I do not like it

I would just like to comment that mistake 1 is not a mistake

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    Why?

    • »
      »
      »
      9 months ago, hide # ^ |
       
      Vote: I like it 0 Vote: I do not like it

      for folks who are CM or above. They've built up so much muscle memory that solving A–C in 30–45 mins is like warmup. But for beginners (like I was), only practicing when motivated usually leads to big gaps and no growth. So yeah — not a mistake for everyone..

    • »
      »
      »
      9 months ago, hide # ^ |
       
      Vote: I like it +27 Vote: I do not like it

      if you're not motivated, then quit CP. if you want to get good at programming, then you must be willing to put in the time and effort to solve problems, learn, and get better. (this is perhaps why colleges care about good results in olympiads. they separate the ones who are truly interested and motivated about the subject from those who only try to get a good score for colleges(which is nearly impossible if you're not motivated)).

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    i think its not a mistake to the guys who are CM and above

    because they have already practiced alot and get there so for them soving till C in 30 min is nothing,..

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it +17 Vote: I do not like it

    It's kind of a mistake not to do it

    For those asking why: If you make yourself practice even when you don't feel like it, you're much more likely to give up, or just stop diong cp for a long time. Also if you're not motivated it's almost impossible to stay consistent anyway. It's ok to take a break if you feel like it

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Another mistake which i did a lot is ignoring theory , i mean you need to study advanced topics and practice questions on it.Learning new things also make me feel motivated.

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    But I’ve realized theory alone isn’t enough. You can read 10 blogs on segment trees but unless you actually implement and solve problems, it won’t stick. Practice is what really builds that muscle memory the more you solve, the easier everything starts to feel even the theory

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Why are Indians like this. cya in a year when you're still grey

tldr: stop complaining and do harder problems bruh I don't understand Indians sometimes

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it +8 Vote: I do not like it

    bro i shared that post just to put it out there for people like me who wasted time and are trying to fix it you don’t have to like it but dragging race into it and saying “why are indians like this” is just straight up weird if you didn’t connect with it cool just move on but there’s no need to be disrespectful to an entire group over one blog good luck with your own grind tho

    • »
      »
      »
      9 months ago, hide # ^ |
       
      Vote: I like it 0 Vote: I do not like it

      Most comparisons like "why are Indians like this" or "why are Chinese like this" most likely happen because there are more of these people on the planet and if 100 people involved in programming make a mistake, it is only because of the larger population, among these 100 people, say, 70 will be Indians. And from this people draw the false conclusion "Only Indians make this mistake", although in fact any person from any country and any nationality makes this with absolutely equal probability.

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    theory is imp too, can't solve a problem if u don't even know what syntax to type or what is the problem in you code and even if u can solve problem but you need to know some STL or any other functions to make code simpler or to do it in time limit... Secondly giving opinion like "Theory is important" isn't complaining ...may god assist you.. sorry if u find something offending

    • »
      »
      »
      9 months ago, hide # ^ |
       
      Vote: I like it 0 Vote: I do not like it

      hey just to be clear i never said theory isn’t important i totally agree that without theory you won’t even know what tools to use or how to code things properly

      my point was just that reading theory without actually solving problems won’t help much in the long run they go hand in hand but practice is what really makes things click

      no offense taken btw appreciate your thoughts

»
9 months ago, hide # |
 
Vote: I like it +11 Vote: I do not like it

Maybe write a blog without using chatgpt first

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    maybe read the blog without assuming it’s written by chatgpt first

    oh no i forgot to add 3 spelling mistakes and bad grammar so it looks human enough my bad bro next time i’ll write it half asleep on my phone at 2am so you know it’s real

»
9 months ago, hide # |
 
Vote: I like it +3 Vote: I do not like it

I checked your profile and it seems fine tbh. Consistency doesn't necessarily mean solving a specific number of problems a day or something. The longest time where you didn't solve any problems since last year was about 2 weeks which is fine.

Anyway, to everyone who thinks they're making these mistakes, here's my opinion and advice on avoiding them:

Editorials:
Decide on a specific time you must spend actually trying to solve a problem before reading the editorial (it's easier when you have a specific "rule"). However, if you're stuck on a problem reading the editorial can actually help you improve. Also read the editorial after you solve a problem to check if there are alternative/better solutions

Upsolving:
Tbh, I don't usually upsolve in contests, but I agree it's a mistake, so try solving the first problem you haven't solve after each contests. Still, it's always possible that that problem is too hard for you to solve yet, so read the editorial if you're stuck

About consistency:
First of all, read my other comment. Also, you shouldn't just practice when you feel like it, but also practice the way you feel like practicing. If you don't want to solve problems but just do a VC, that's fine/ If you want to solve CSES problems, that's fine, too. If you don't enjoy it, you'll never be able to stay consistent

Planning:
What you said about trying to make a perfect plan being a mistake is true, but having a specific way to practice can help you stay consistent. You can try solving problems of a specific difficulty (you can start with 1000, for example) and increase it when they start feeling fairly easy (you solve them in about 15 minutes). You'll be more motivated to practice if you don't have to decide what to do. (What I said about doing whatever you feel like doing is still true, this is mostly for when you don't have a specific thing in mind)

PS. Sometimes you're making progress without realizing at all. Also, even when your rating doesn't increase by a lot, that doesn't mean you aren't improving

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    hey man i really appreciate your comment you’re right consistency doesn’t always mean x problems a day, and sometimes we don’t realize we are making progress

    but honestly for me the problem wasn’t just about “taking breaks” it was about lying to myself during those breaks i’d say i was tired or busy, but deep down i knew i was avoiding the hard stuff scared of failing, scared of not improving

    i used to solve problems just to get AC and move on never really proved the logic to myself never sat down to understand why it worked or how it could break so when a slightly twisted version showed up in a contest, i’d freeze

    i also watched editorials way too early and thought “yeah i get it now” when i actually didn’t i wasn’t doing deep work just surface level effort

    i made schedules i never followed i spammed contests without upsolving i copied templates i didn’t understand and slowly, my confidence dropped even more than my rating

    what you said about doing things the way you enjoy — that hit now i’m trying to rebuild from there: solve problems honestly, explain them to myself, upsolve at least one problem, and stop rushing

    your comment is one of the most helpful things i’ve read in a while thanks again for taking the time to share it — really means a lot

    • »
      »
      »
      9 months ago, hide # ^ |
       
      Vote: I like it 0 Vote: I do not like it

      I'm really glad you found these helpful!

      It's not surprising to feel less motivated when solving hard problems. The key is to choose problems that are not too easy, or you'll not improve, but also not too hard. They should take you about 30-45 minutes

      Good luck!

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

i cant focus man.! i fell low as i cant even solve a easy problem....

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    i know it feels like you're stuck but you're not everyone hits this point don't quit just because today feels hard take a break if you need to then come back and solve just one slowly it'll click just don’t give up now

»
9 months ago, hide # |
 
Vote: I like it +6 Vote: I do not like it

Mistake #1 is not a mistake, the reason why all high-rated contestants here improve is because they are interested and motivated. If you don't like CP/don't feel motivated, just leave.

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    if you’re just reading the heading, please read the full part too it’s not about quitting if you don’t feel motivated it’s about how waiting for motivation kept me stuck for years motivation helps, sure but consistency is what actually builds skill.. progress needs consistency, not just interest

    • »
      »
      »
      9 months ago, hide # ^ |
       
      Vote: I like it +5 Vote: I do not like it

      Problem solving require creativity/curiosity to the problem, it's not like doing chore where you can force yourself to finish it. If you are not interested in a problem, I can hardly believe you can come up with sth new but just apply everything you've already know, which I won't call it "progress".

»
9 months ago, hide # |
 
Vote: I like it +5 Vote: I do not like it

This is exactly what happens when you are doing CP without discipline:  Look at my performance, even crypto is more stable than it.

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it -8 Vote: I do not like it

    newbie to master then expert then specialist idk what this graph is like…

    you’ve already achieved those ratings so you know how to reach there

    my blog is for people who are doing something but doing it wrong solving only easy problems not trusting the process just wanting results now like me

    btw thanks for sharing!!

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it -10 Vote: I do not like it

    What website is this? I'm very curious about my performance :)

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

For a second I thought someone wrote my story.After many years of trying I thought that probably cp is not for me but last week I decided to give it an another try and trying to avoid all the mistakes that I made previously.Anyway thanks for sharing your story.

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

this is me 🙂

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

You don’t need a new tutorial. You don’t need more motivation. You just need to stop lying to yourself.

Thanks man I just needed to hear this.****

»
9 months ago, hide # |
 
Vote: I like it +22 Vote: I do not like it

Why do you need CF this badly to justify “going through pain”? Even if you succeed in breaking out of grey this way, every stage of rating is more challenging than the previous, the amount of resources and energy it takes will be even higher, and if you already spend every bit of resources (mental+time) you can at this stage, you will not make it much further.

If you still decide to need CF this badly (e.g. you are externally pressured), then that is your reason. Many people are not under in this situation, at least have a mix of reasons. If you really are: then motivation does not matter, confidence does not matter, what you need is raw, calculated efficiency. Even a cold machine needs to know exploration-exploitation trade off. This is strong evidence that you do need a new training method (may or may not be a plan). The mistakes you say are small-mid scale and are definitely not enough to account for the harsh reality you are facing.

Do not take hard-work and discipline as the golden standard. Only put faith in them after they have proven their worth. This is especially false in highly dynamic, complicated environments like Codeforces. Be open to other ways to succeed. It is totally ok to give up, temporarily or forever -- because you always bring new ideas when you decide to return.

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    appreciate the perspective you’re right cf gets harder and just grinding blindly won’t work forever my post was more about calling myself out for not even showing up properly discipline for me wasn’t about pain it was about finally being honest and fixing my basics but yeah, i’ll definitely keep in mind that i need to work smarter as i go forward too thanks for sharing this, really gave me something to think about

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

This is almost exactly my story

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Let’s suffer together. Let’s level up together.

I feel like you might not enjoy codeforces all that much. If you are just doing it to get better at technical interviews, then do leetcode instead.

  • »
    »
    9 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    i get that but trust me i actually enjoy cp just messed up my approach for a long time trying to fix that now

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

after reading this i am questioning my approach thanks for this

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

same same

»
9 months ago, hide # |
Rev. 2  
Vote: I like it 0 Vote: I do not like it

Checkout this spreadsheet recommended by tmwilliamlin168 -who is the winner of IOI 2020- in one of his youtube videos : https://www.youtube.com/watch?v=bVKHRtafgPc

the link to the blog talking about the sheet :

https://mirror.codeforces.com/blog/entry/65133

it's very unique, and this is only the junior one, after it there is a semi-senior and a senior one, and all of them consist of really well chosen and varied problems, and this is the link of the video which explains how to use this sheet :

https://www.youtube.com/watch?v=4yt_PV3tflA

hope you find it useful, I firmly believe this is going to save you tons of time, share your experience if it helps you so other people make use of it

Best wishes Bro

»
9 months ago, hide # |
Rev. 4  
Vote: I like it 0 Vote: I do not like it

Fuck all discipline and just solve however you like to do!

»
9 months ago, hide # |
 
Vote: I like it +10 Vote: I do not like it

Fuck all discipline and just solve however you like to do!

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

I think your post is a game changer for some beginners like myself Keep up the good work!

»
9 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

My favorite is the third mistake, haha. I find every math problem so boring and useless, I just can't enjoy them. Also, in my opinion, the first mistake isn’t that bad. I mean, 10 days sounds crazy to me, but if I'm completely unmotivated for a day or even a few, it might be risky to push myself into hard work.

»
2 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by aviralx (previous revision, new revision, compare).

»
6 days ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

The site looks great , very impressive given it's a personal project. Just have a small doubt though, how accurate is the ICPC readiness tab? It says my level of readiness is 63/100, but I highly doubt it given I haven't made it past newbie after 3 years of CP. What criteria is used to judge the readiness? If I solve a bunch of hard problems by peeking editorials, will that boost my readiness score and inflate it past my actual skill level?
Although it does say it's gonna take me 9 months to be ready given my current pace, so it's fair I guess. I'll just take it with a grain of salt for now.

»
6 days ago, hide # |
 
Vote: I like it +10 Vote: I do not like it

Discipline is not the key and it's not a mistake to only practice whenever you are motivated .

»
6 days ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

sign in with google is not working

»
6 days ago, hide # |
 
Vote: I like it +4 Vote: I do not like it

Why does this have upvotes? This is a cheap ripoff of https://mirror.codeforces.com/blog/entry/98621 by a cheater to advertise his paid AI generated course

»
5 days ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

what is the point if i have to buy sheet to improve?

»
5 days ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

I consistently solve problems(hard ones), make some mashups with limited time, but there is no that feeling that I am actually improving.